| Port details |
- immich High performance self-hosted photo and video management solution
- 3.2.2_6 www
=2 Package not present on quarterly.This port was created during this quarter. It will be in the next quarterly branch but not the current one. - Maintainer: joneum@FreeBSD.org
 - Port Added: 2026-08-16 18:06:13
- Last Update: 2026-09-23 11:51:11
- Commit Hash: a4cf632
- People watching this port, also watch:: emby-server, sylve, pocket-id, audacious, alpaca
- License: AGPLv3
- WWW:
- https://immich.app/
- Description:
- Immich is a high performance self-hosted photo and video management
solution. It is designed as a privacy-friendly replacement for cloud
photo services and offers automatic mobile backup (iOS/Android apps),
a fast web interface, albums, sharing, timeline and map views,
duplicate detection, smart search and facial recognition.
This port contains the Immich server including the bundled web
frontend. It requires a PostgreSQL database with the pgvector and
vchord extensions and a Redis-compatible cache such as valkey.
Smart search, duplicate detection and facial recognition
additionally require the machine-learning service from
www/immich-ml.
¦ ¦ ¦ ¦ 
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - USE_RC_SUBR (Service Scripts)
-
- Dependency lines:
-
- To install the port:
- cd /usr/ports/www/immich/ && make install clean
- To add the package, run one of these commands:
- pkg install www/immich
- pkg install immich
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.- PKGNAME: immich
- Flavors: there is no flavor information for this port.
- ONLY_FOR_ARCHS: aarch64 amd64
- distinfo:
- TIMESTAMP = 1789565612
SHA256 (immich-freebsd-buildkit-3.2.2.tar.gz) = 7fc5c92a7bb0ef83f55b3af60e4efdc2b1edbc68920f00f8dcee6a3ef81e9aac
SIZE (immich-freebsd-buildkit-3.2.2.tar.gz) = 358150543
Packages (timestamps in pop-ups are UTC):
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- npm : www/npm-node22
- gettext-runtime>=0.26 : devel/gettext-runtime
- gmake>=4.4.1 : devel/gmake
- node : www/node22
- psql : databases/postgresql18-client
- pkgconf>=1.3.0_1 : devel/pkgconf
- python3.12 : lang/python312
- Runtime dependencies:
-
- gzip : archivers/gzip
- exiftool : graphics/p5-Image-ExifTool
- jellyfin-ffmpeg8 : multimedia/jellyfin-ffmpeg
- node : www/node22
- psql : databases/postgresql18-client
- Library dependencies:
-
- libheif.so : graphics/libheif
- libraw.so : graphics/libraw
- libvips.so : graphics/vips
- libintl.so : devel/gettext-runtime
- libglib-2.0.so : devel/glib20
- libintl.so : devel/gettext-runtime
- There are no ports dependent upon this port
Configuration Options:
- No options to configure
- Options name:
- www_immich
- USES:
- cpe gettext-runtime gmake gnome nodejs:22,build,run pgsql:14+ pkgconfig python:build
- FreshPorts was unable to extract/find any pkg message
- Master Sites:
|
| Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
| Commit | Credits | Log message |
3.2.2_6 23 Sep 2026 11:51:11
    |
Jochen Neumeister (joneum)  |
www/immich: Fix immich-admin for any login shell
su -m runs the command in the caller's login shell, so the wrapper
broke wherever root does not use a POSIX shell. chroot(8) drops the
privileges without a shell in between and passes the arguments to
execve(2) unchanged.
Reported by: mfechner
Sponsored by: Netzkommune GmbH |
3.2.2_6 22 Sep 2026 19:15:12
    |
Jochen Neumeister (joneum)  |
www/immich: Add a working immich-admin
Immich ships bin/immich-admin as a stub that calls start.sh from PATH
and needs bash, which only holds inside its container image. The new
wrapper reads immich.env and starts the admin entry point directly; the
stub forwards to it.
Reported by: mfechner
Sponsored by: Netzkommune GmbH |
3.2.2_5 21 Sep 2026 04:17:51
    |
Jochen Neumeister (joneum)  |
www/immich: Set the machine learning URL
Immich defaults to the Docker hostname immich-machine-learning, which
never resolves outside a container, so the service ran unnoticed while
the server reported it unhealthy. The rc script now sets
IMMICH_MACHINE_LEARNING_URL, adjustable with immich_server_ml_url.
Sponsored by: Netzkommune GmbH |
3.2.2_4 20 Sep 2026 18:09:16
    |
Jochen Neumeister (joneum)  |
www/immich: Switch to jellyfin-ffmpeg
Immich builds its HDR filter chain around tonemapx, which only the
Jellyfin patch set provides. The rc script points FFMPEG_PATH and
FFPROBE_PATH at it.
PR: 298378
Requested by: several people
Sponsored by: Netzkommune GmbH |
3.2.2_3 19 Sep 2026 15:07:02
    |
Jochen Neumeister (joneum)  |
www/immich: Disable HDR tone mapping by default
Immich builds its filter chain around tonemapx, which ffmpeg does not
have, so an HDR video got no thumbnail at all.
Sponsored by: Netzkommune GmbH |
3.2.2_2 18 Sep 2026 17:03:11
    |
Jochen Neumeister (joneum)  |
www/immich: Cleanup port
USE_GNOME needs gnome in USES to take effect, so glib20 was never declared.
Stop packaging source maps, type declarations, tests and coverage reports.
Sponsored by: Netzkommune GmbH |
3.2.2_1 18 Sep 2026 16:26:52
    |
Jochen Neumeister (joneum)  |
www/immich: Fix packaging and harden the service
The plist is now generated in full instead of relying on the temporary
one, which caught an undeclared link of sharp against glib and gettext.
Both are declared now.
The rc script gained an environment file, a child pid file so that stopping
the service leaves no orphans, a umask of 027 for the files it creates and
a configurable bind address. It also waits for postgresql and valkey.
pkg-message moved to files/pkg-message.in so that the paths it prints are
substituted, and the log files are rotated by newsyslog.
Sponsored by: Netzkommune GmbH |
3.2.2 16 Sep 2026 14:24:32
    |
Jochen Neumeister (joneum)  |
www/immich: Update to 3.2.2
Changelog:
- fix: skip faces of other users when reassigning faces
Sponsored by: Netzkommune GmbH |
3.2.1 15 Sep 2026 17:46:35
    |
Jochen Neumeister (joneum)  |
www/immich: Update to 3.2.1
Fixes partner shared assets missing from the people page and client
disconnects during sync.
Changes: https://github.com/immich-app/immich/releases/tag/v3.2.1
Sponsored by: Netzkommune GmbH |
3.2.0 11 Sep 2026 13:02:50
    |
Jochen Neumeister (joneum)  |
www/immich: Update to 3.2.0
Adds a new server search API that allows searching within albums and
combining filters with AND and OR, and gives the web search interface
a simpler layout.
Changes: https://github.com/immich-app/immich/releases/tag/v3.2.0
Security: fcc6baaa-adbc-11f1-a655-3497f65b111b
Sponsored by: Netzkommune GmbH |
3.1.0_1 10 Sep 2026 19:50:35
    |
Jochen Neumeister (joneum)  |
www/immich: Add CPE information
Sponsored by: Netzkommune GmbH |
3.1.0_1 25 Aug 2026 04:27:12
    |
Jochen Neumeister (joneum)  |
www/immich: Fix the built-in database backup
immich looks for pg_dump in a path that does not exist, and the port did not
depend on a PostgreSQL client at all. The nightly backup job therefore failed
with ENOENT on every installation while the web interface reported the feature
as enabled. The version range follows the check in the service itself,
PostgreSQL 14 to 18.
Sponsored by: Netzkommune GmbH |
3.1.0 16 Aug 2026 18:03:16
    |
Jochen Neumeister (joneum)  |
www/immich: Add New Port
High performance self-hosted photo and video management solution.
This port contains the Immich server including the bundled web
frontend, built natively with node22/pnpm against the system
libvips. Requires PostgreSQL with the pgvector and vchord
extensions and a Redis-compatible cache such as valkey. Smart
search, duplicate detection and facial recognition additionally
require the machine-learning service from www/immich-ml.
WWW: https://immich.app/
Sponsored by: Netzkommune GmbH |