This repository provides a set of scripts that can be used to generate an unofficial package containing the prebuilt native Immich release for macOS.
The following steps are performed by the installer:
- Install dependencies with Homebrew (see installdependencies.sh)
- Create headless user
immich
- Create PostgreSQL database
immich
and userimmich
- Copy the Immich installation to
/opt/immich/share
- Create Immich configuration in
/opt/immich/etc/immich_server.env
- Create Launchd job configurations for Immich and the Machine Learning microservice in
/Library/LaunchDaemons
- Tested on macOS Sequoia with Apple Silicon
- Uses
pgvector
is used instead ofpgvecto.rs
to remove an additional Rust build dependency - By default Immich listens to
0.0.0.0:2283
and the Machine Learning microservice listens to0.0.0.0:3001
- JPEG XL support may differ official Immich due to base-image's dependency differences
- Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- Install build dependencies
brew install \ node \ npm \ [email protected] \ vips
- Build the package
./build_pkg.sh
The installation can be removed by running the uninstall.sh script as a regular user.
Note that this will remove:
- The Launchd jobs
- The local
immich
user and group - The Immich database and the PostgreSQL
immich
user - The Immich installation directory, including the media directory
For running Immich natively on other platforms, you can check out:
- Linux - arter97's repo
- FreeBSD - zebrapurring's IOCage plugin repo