fix(immich): restore canonical app_id "immich" (title + icon)

After the manifest migration the launcher installed as "immich-server" (app_id),
which has no catalog entry → showed the raw id and no icon. Rename the server
manifest app_id immich-server→immich so it matches the catalog/curated "immich"
entry (title "Immich", icon immich.png) and is recognised as a known launcher app
(APP_CATEGORY_MAP) → stays in My Apps. immich_stack_app_ids now installs
[immich-postgres, immich-redis, immich]; orchestrator.install bypasses package
routing so there's no recursion with the "immich"→stack-installer mapping.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
archipelago 2026-06-21 08:07:08 -04:00
parent 0860dfacc7
commit d5ef45731a
2 changed files with 8 additions and 4 deletions

View File

@ -1,10 +1,11 @@
app:
id: immich-server
id: immich
name: Immich
version: "2.7.4"
description: Self-hosted photo and video backup with mobile apps and search.
# Named by app_id (immich-server); connects to its siblings by their app_id
# app_id "immich" = the user-facing launcher (matches the catalog entry's title
# + icon). Container is named "immich"; it reaches its backends by their app_id
# aliases on archy-net (see DB_HOSTNAME / REDIS_HOSTNAME below).
container:

View File

@ -689,8 +689,11 @@ fn mempool_stack_app_ids() -> &'static [&'static str] {
}
fn immich_stack_app_ids() -> &'static [&'static str] {
// Install order = dependency order: db + cache before the server.
&["immich-postgres", "immich-redis", "immich-server"]
// Install order = dependency order: db + cache before the server. The server
// app_id is the user-facing "immich" (canonical name + icon); its install is
// handled here (not recursively) since orchestrator.install bypasses the
// package.install routing that maps "immich" → this stack installer.
&["immich-postgres", "immich-redis", "immich"]
}
const REGISTRY: &str = "146.59.87.168:3000/lfg2025";