From 06b9f72cc5a805a445f3e141b8b0a9828b1dbab2 Mon Sep 17 00:00:00 2001 From: Michael Johnson Date: Wed, 29 Jul 2026 12:24:54 -0400 Subject: [PATCH 1/2] fix: add upstream-url/upstream-jq labels for version tracking versions will show up on daemonless.io/status --- Containerfile | 6 +++++- Containerfile.j2 | 6 +++++- README.md | 3 +-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Containerfile b/Containerfile index a9d9faf..9b1df31 100644 --- a/Containerfile +++ b/Containerfile @@ -20,6 +20,8 @@ ARG IMMICH_CLI_VERSION="latest" FROM ghcr.io/daemonless/base-core:${BASE_TAG} ARG FREEBSD_ARCH=amd64 ARG IMMICH_CLI_VERSION +ARG UPSTREAM_URL="https://registry.npmjs.org/@immich/cli/latest" +ARG UPSTREAM_JQ=".version" LABEL org.opencontainers.image.title="immich-cli" \ org.opencontainers.image.description="Immich command-line client (upload/import) on FreeBSD" \ @@ -29,7 +31,9 @@ LABEL org.opencontainers.image.title="immich-cli" \ org.opencontainers.image.vendor="daemonless" \ org.opencontainers.image.authors="daemonless" \ io.daemonless.category="Tools" \ - io.daemonless.arch="${FREEBSD_ARCH}" + io.daemonless.arch="${FREEBSD_ARCH}" \ + io.daemonless.upstream-url="${UPSTREAM_URL}" \ + io.daemonless.upstream-jq="${UPSTREAM_JQ}" # @immich/cli is pure JavaScript — runtime deps are fastq, chokidar, fast-glob, # lodash-es, micromatch and @immich/sdk, none of them native — so a global npm diff --git a/Containerfile.j2 b/Containerfile.j2 index 61bf08c..fe04cba 100644 --- a/Containerfile.j2 +++ b/Containerfile.j2 @@ -14,6 +14,8 @@ ARG IMMICH_CLI_VERSION="latest" FROM ghcr.io/daemonless/base-core:${BASE_TAG} ARG FREEBSD_ARCH=amd64 ARG IMMICH_CLI_VERSION +ARG UPSTREAM_URL="https://registry.npmjs.org/@immich/cli/latest" +ARG UPSTREAM_JQ=".version" LABEL org.opencontainers.image.title="immich-cli" \ org.opencontainers.image.description="Immich command-line client (upload/import) on FreeBSD" \ @@ -23,7 +25,9 @@ LABEL org.opencontainers.image.title="immich-cli" \ org.opencontainers.image.vendor="daemonless" \ org.opencontainers.image.authors="daemonless" \ io.daemonless.category="Tools" \ - io.daemonless.arch="${FREEBSD_ARCH}" + io.daemonless.arch="${FREEBSD_ARCH}" \ + io.daemonless.upstream-url="${UPSTREAM_URL}" \ + io.daemonless.upstream-jq="${UPSTREAM_JQ}" # @immich/cli is pure JavaScript — runtime deps are fastq, chokidar, fast-glob, # lodash-es, micromatch and @immich/sdk, none of them native — so a global npm diff --git a/README.md b/README.md index 9719909..29ef599 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,6 @@ Source: dbuild templates | **Source** | []() | ## Version Tags - | Tag | Description | Best For | | :--- | :--- | :--- | | `latest` | **Upstream Binary**. Built from official release. | Most users. Matches Linux Docker behavior. | @@ -32,7 +31,7 @@ podman run --rm \ **Architectures:** amd64 **User:** `bsd` (UID/GID via PUID/PGID, defaults to 1000:1000) -**Base:** FreeBSD 15.0 +**Base:** FreeBSD 15.1 --- From 6516c9b68e106146a2a6dde62912655b75166444 Mon Sep 17 00:00:00 2001 From: Michael Johnson Date: Wed, 29 Jul 2026 18:16:13 -0400 Subject: [PATCH 2/2] fix: chmod /app so cat /app/version works under USER bsd --- .daemonless/logo.svg | 1 + Containerfile | 2 +- Containerfile.j2 | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 .daemonless/logo.svg diff --git a/.daemonless/logo.svg b/.daemonless/logo.svg new file mode 100644 index 0000000..5c758ff --- /dev/null +++ b/.daemonless/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Containerfile b/Containerfile index 9b1df31..5f90c5c 100644 --- a/Containerfile +++ b/Containerfile @@ -54,7 +54,7 @@ RUN pkg update && pkg install -y ca_root_nss node22 npm-node22 \ # Unprivileged runtime. /import is the conventional mount point for the media to # upload (mounted read-only at run time). Server URL + key are supplied at run # time via env (IMMICH_INSTANCE_URL, IMMICH_API_KEY) or `immich login`. -RUN chmod -R a+rX /usr/local/lib/node_modules \ +RUN chmod -R a+rX /usr/local/lib/node_modules /app \ && mkdir -p /import && chown -R bsd:bsd /import USER bsd WORKDIR /import diff --git a/Containerfile.j2 b/Containerfile.j2 index fe04cba..f88ce99 100644 --- a/Containerfile.j2 +++ b/Containerfile.j2 @@ -48,7 +48,7 @@ RUN pkg update && pkg install -y ca_root_nss node22 npm-node22 \ # Unprivileged runtime. /import is the conventional mount point for the media to # upload (mounted read-only at run time). Server URL + key are supplied at run # time via env (IMMICH_INSTANCE_URL, IMMICH_API_KEY) or `immich login`. -RUN chmod -R a+rX /usr/local/lib/node_modules \ +RUN chmod -R a+rX /usr/local/lib/node_modules /app \ && mkdir -p /import && chown -R bsd:bsd /import USER bsd WORKDIR /import