Documentation
Everlock 0.9.1
The 0.9.1 release repairs Immich mobile sync for photo libraries that carry
duplicate uploads, and moves the container image onto the standard ports.
Binaries are on the download page; the container image is
published as cr.everlock.sh/everlock:0.9.
Fixes
-
Immich app sync survives duplicate photo checksums. 0.9.0 put live-photo motion halves into the sync stream so a still resolves its motion on the client — and on a library holding two copies of the same file, it changed which copy the stream offered. Duplicate copies are what an upload retried after a client-side timeout leaves behind: the first attempt succeeded on the server, the retry created a second asset with the same bytes. The app stores one row per photo checksum, so the newly offered copy collided with the row it already held — and because assets apply in batches, that one collision stopped every asset from syncing.
The stream now tells the client to delete the losing copies ahead of the asset upserts, so the checksum slot is free by the time the winner arrives. The winner is always the live-photo half, regardless of which copy was uploaded last: stills keep their motion, and a retried upload cannot resurface as a stray video in the timeline. Affected phones heal on their next sync — no reinstall, no reset.
-
The container image listens on 80 and 443. A container has no unprivileged-port constraint, so the image now sets the HTTP and HTTPS listeners to the standard ports instead of the binary's native 8080 default —
-p 80:80 -p 443:443works without remapping, and moving a listener stays one environment variable (-e EVERLOCK_FRONTEND_HTTP_LISTEN_HTTP=0.0.0.0:8080). TheEXPOSElist now also names IMAP STARTTLS (143) and SSDP (1900). Discovery — mDNS and SSDP — still needs--network=host, because multicast does not cross Docker's default bridge.
Upgrading
Self-updating servers pick 0.9.1 up on their daily check. For a manual upgrade, download the new binary (or pull the new image tag) and restart — stores, mail, and all versioned content carry over untouched. The full list of changes is in the changelog.