From e980d01cd6aea658918fb7695c2ef312d38f7e48 Mon Sep 17 00:00:00 2001 From: "CanbiZ (MickLesk)" <47820557+MickLesk@users.noreply.github.com> Date: Mon, 12 Oct 2026 10:00:21 +0200 Subject: [PATCH] Tracearr: install only the server's production dependencies (#17873) pnpm 12.10 refuses a frozen install when the lockfile names apps/web but that directory has no package.json, which is how the runtime tree is built, so the update to 2.8.0 failed. Filter to @tracearr/server... the way the upstream Dockerfile does, and copy assets/logo.png, which the e-mail and newsletter code reads. --- ct/tracearr.sh | 5 +++-- install/tracearr-install.sh | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/ct/tracearr.sh b/ct/tracearr.sh index f11026076..134e18e94 100644 --- a/ct/tracearr.sh +++ b/ct/tracearr.sh @@ -125,7 +125,7 @@ EOF $STD ./scripts/fetch-basemap.sh || msg_warn "Basemap download failed, keeping the existing map" [[ -d /opt/tracearr/data ]] && mv /opt/tracearr/data /opt/tracearr.data rm -rf /opt/tracearr - mkdir -p /opt/tracearr/{packages/shared,packages/emails,apps/server,apps/web,apps/server/src/db} + mkdir -p /opt/tracearr/{packages/shared,packages/emails,apps/server,apps/web,apps/server/src/db,assets} cp -rf package.json /opt/tracearr/ cp -rf pnpm-workspace.yaml /opt/tracearr/ cp -rf pnpm-lock.yaml /opt/tracearr/ @@ -138,13 +138,14 @@ EOF cp -rf packages/emails/package.json /opt/tracearr/packages/emails/ cp -rf packages/emails/dist /opt/tracearr/packages/emails/dist cp -rf apps/server/src/db/migrations /opt/tracearr/apps/server/src/db/migrations + cp -f assets/logo.png /opt/tracearr/assets/ [[ -d /opt/tracearr.data ]] && mv /opt/tracearr.data /opt/tracearr/data mkdir -p /opt/tracearr/data cp -rf data/. /opt/tracearr/data/ mkdir -p /opt/tracearr/data/image-cache rm -rf /opt/tracearr.build cd /opt/tracearr - $STD pnpm install --prod --frozen-lockfile --ignore-scripts + $STD pnpm install --prod --frozen-lockfile --ignore-scripts --filter @tracearr/server... $STD chown -R tracearr:tracearr /opt/tracearr msg_ok "Built Tracearr" diff --git a/install/tracearr-install.sh b/install/tracearr-install.sh index 3e81f2df0..d552a64d7 100644 --- a/install/tracearr-install.sh +++ b/install/tracearr-install.sh @@ -68,7 +68,7 @@ $STD pnpm install --frozen-lockfile --force $STD pnpm turbo telemetry disable $STD pnpm turbo run build --no-daemon --filter=@tracearr/shared --filter=@tracearr/server --filter=@tracearr/web $STD ./scripts/fetch-basemap.sh || msg_warn "Basemap download failed, the map will show without base tiles" -mkdir -p /opt/tracearr/{packages/shared,packages/emails,apps/server,apps/web,apps/server/src/db} +mkdir -p /opt/tracearr/{packages/shared,packages/emails,apps/server,apps/web,apps/server/src/db,assets} cp -rf package.json /opt/tracearr/ cp -rf pnpm-workspace.yaml /opt/tracearr/ cp -rf pnpm-lock.yaml /opt/tracearr/ @@ -81,11 +81,12 @@ cp -rf packages/shared/dist /opt/tracearr/packages/shared/dist cp -rf packages/emails/package.json /opt/tracearr/packages/emails/ cp -rf packages/emails/dist /opt/tracearr/packages/emails/dist cp -rf apps/server/src/db/migrations /opt/tracearr/apps/server/src/db/migrations +cp -f assets/logo.png /opt/tracearr/assets/ cp -rf data /opt/tracearr/data mkdir -p /opt/tracearr/data/image-cache rm -rf /opt/tracearr.build cd /opt/tracearr -$STD pnpm install --prod --frozen-lockfile --ignore-scripts +$STD pnpm install --prod --frozen-lockfile --ignore-scripts --filter @tracearr/server... msg_ok "Built Tracearr" msg_info "Configuring Tracearr"