From e5013d1fb62ff399af4e393cb09152cdd10daddf Mon Sep 17 00:00:00 2001 From: "CanbiZ (MickLesk)" <47820557+MickLesk@users.noreply.github.com> Date: Tue, 13 Oct 2026 07:42:59 +0200 Subject: [PATCH] Immich: Bump to 3.3.1 and restore (failed) geodata/countryInfo.txt on update (#17894) * Immich: restore geodata/countryInfo.txt on update and pin 3.3.1 Updates run between the 3.3.0 pin and #17823 wrote countryInfo.txt into app/ instead of geodata/, so metadata extraction failed and new uploads never got thumbnails. The download sat inside the release block, so a plain update could not repair it until the next pin. 3.3.1 only bumps version fields in the manifests. * Immich: follow base-images for libheif like the other libraries The hard pin from #16996 sat at 1.23.2 while upstream moved to 1.23.5. --- ct/immich.sh | 18 +++++++++++++++--- install/immich-install.sh | 5 ++--- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/ct/immich.sh b/ct/immich.sh index 759ee287c..84cb09f62 100644 --- a/ct/immich.sh +++ b/ct/immich.sh @@ -77,7 +77,7 @@ EOF BASE_DIR=${STAGING_DIR}/base-images SOURCE_DIR=${STAGING_DIR}/image-source cd /tmp - RELEASE="v3.3.0" + RELEASE="v3.3.1" if [[ -f ~/.intel_version ]]; then INTEL_SRC="https://raw.githubusercontent.com/immich-app/immich/${RELEASE}/machine-learning" curl -fsSL "${INTEL_SRC}/scripts/install-intel-runtime.sh" -o ./intel-runtime 2>/dev/null || @@ -114,6 +114,19 @@ EOF msg_ok "Image-processing libraries up to date" fi + # 3.3.0 reads geodata/countryInfo.txt; the update before #17823 saved it into app/ instead. + if [[ -d /opt/immich/geodata && ! -s /opt/immich/geodata/countryInfo.txt ]]; then + msg_info "Restoring geodata/countryInfo.txt" + if [[ -s /opt/immich/app/countryInfo.txt ]]; then + mv /opt/immich/app/countryInfo.txt /opt/immich/geodata/countryInfo.txt + else + curl_with_retry "https://download.geonames.org/export/dump/countryInfo.txt" /opt/immich/geodata/countryInfo.txt + fi + chown immich:immich /opt/immich/geodata/countryInfo.txt + systemctl restart immich-web + msg_ok "Restored geodata/countryInfo.txt" + fi + if check_for_gh_release "Immich" "immich-app/immich" "${RELEASE}" "each release is tested individually before the version is updated. Please do not open issues for this"; then msg_warn "The update takes 5-15 minutes, do not interrupt it" PREV_IMMICH="$(cat ~/.immich)" @@ -489,8 +502,7 @@ function compile_jpegli() { function compile_libheif() { SOURCE=${SOURCE_DIR}/libheif ensure_dependencies libaom-dev - LIBHEIF_REVISION="ac1cb05c39008f01525c991ff8b88f84ddf70fd2" - # : "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}" + LIBHEIF_REVISION="$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)" if [[ "${update:-}" ]] || [[ "$LIBHEIF_REVISION" != "$(grep 'libheif' ~/.immich_library_revisions | awk '{print $2}')" ]]; then msg_info "Recompiling libheif" [[ -d "$SOURCE" ]] && rm -rf "$SOURCE" diff --git a/install/immich-install.sh b/install/immich-install.sh index 35017ecd9..6a456168b 100644 --- a/install/immich-install.sh +++ b/install/immich-install.sh @@ -13,7 +13,7 @@ setting_up_container network_check update_os -RELEASE="v3.3.0" +RELEASE="v3.3.1" if lscpu | grep -q 'GenuineIntel'; then echo "" echo "" @@ -268,8 +268,7 @@ msg_ok "(2/6) Compiled jpegli" msg_info "(3/6) Compiling libheif" SOURCE=${SOURCE_DIR}/libheif -LIBHEIF_REVISION="ac1cb05c39008f01525c991ff8b88f84ddf70fd2" -# : "${LIBHEIF_REVISION:=$(jq -cr '.revision' $BASE_DIR/server/sources/libheif.json)}" +LIBHEIF_REVISION="$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)" $STD git clone https://github.com/strukturag/libheif.git "$SOURCE" cd "$SOURCE" $STD git reset --hard "$LIBHEIF_REVISION"