diff --git a/ALL_README.md b/ALL_README.md index 8938aae..152f2e7 100644 --- a/ALL_README.md +++ b/ALL_README.md @@ -1,7 +1,7 @@ # All available README files by language - [Read the README in English](README.md) -- [Lee el README en español](README_es.md) +- [Lea el README en español](README_es.md) - [Irakurri README euskaraz](README_eu.md) - [Lire le README en français](README_fr.md) - [Le o README en galego](README_gl.md) diff --git a/README.md b/README.md index 3703490..1812c00 100644 --- a/README.md +++ b/README.md @@ -24,12 +24,16 @@ Self-hosted photo and video management solution. - Easy-to-use and friendly interface ; -**Shipped version:** 1.105.1~ynh1 +**Shipped version:** 1.106.4~ynh1 ## Screenshots ![Screenshot of Immich](./doc/screenshots/immich-screenshots.png) +## :red_circle: Antifeatures + +- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. + ## Documentation and resources - Official app website: diff --git a/README_es.md b/README_es.md index c71b0c4..b1af30e 100644 --- a/README_es.md +++ b/README_es.md @@ -24,12 +24,16 @@ Self-hosted photo and video management solution. - Easy-to-use and friendly interface ; -**Versión actual:** 1.105.1~ynh1 +**Versión actual:** 1.106.4~ynh1 ## Capturas ![Captura de Immich](./doc/screenshots/immich-screenshots.png) +## :red_circle: funcionalidades no deseadas + +- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. + ## Documentaciones y recursos - Sitio web oficial: diff --git a/README_eu.md b/README_eu.md index 0ac1e51..de7aeed 100644 --- a/README_eu.md +++ b/README_eu.md @@ -24,12 +24,16 @@ Self-hosted photo and video management solution. - Easy-to-use and friendly interface ; -**Paketatutako bertsioa:** 1.105.1~ynh1 +**Paketatutako bertsioa:** 1.106.4~ynh1 ## Pantaila-argazkiak ![Immich(r)en pantaila-argazkia](./doc/screenshots/immich-screenshots.png) +## :red_circle: Ezaugarri zalantzagarriak + +- **Alfa softwarea**: Garapenaren hasierako fasean dago. Ezaugarri aldakor edo ezegonkorrak, erroreak eta segurtasun-arazoak izan ditzazke. + ## Dokumentazioa eta baliabideak - Aplikazioaren webgune ofiziala: diff --git a/README_fr.md b/README_fr.md index 2b2aca3..d4213d5 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,12 +24,16 @@ Solution d'autohébergement pour a gestion de vos photos et vidéos. - Interface conviviale et egronomique ; -**Version incluse :** 1.105.1~ynh1 +**Version incluse :** 1.106.4~ynh1 ## Captures d’écran ![Capture d’écran de Immich](./doc/screenshots/immich-screenshots.png) +## :red_circle: Anti-fonctionnalités + +- **Logiciel en version alpha **: Le logiciel est au tout début de son développement. Il pourrait contenir des fonctionnalités changeantes ou instables, des bugs, et des failles de sécurité. + ## Documentations et ressources - Site officiel de l’app : diff --git a/README_gl.md b/README_gl.md index 80e7e76..4254403 100644 --- a/README_gl.md +++ b/README_gl.md @@ -24,12 +24,16 @@ Self-hosted photo and video management solution. - Easy-to-use and friendly interface ; -**Versión proporcionada:** 1.105.1~ynh1 +**Versión proporcionada:** 1.106.4~ynh1 ## Capturas de pantalla ![Captura de pantalla de Immich](./doc/screenshots/immich-screenshots.png) +## :red_circle: Debes considerar + +- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. + ## Documentación e recursos - Web oficial da app: diff --git a/README_zh_Hans.md b/README_zh_Hans.md index ce469c3..04ac01c 100644 --- a/README_zh_Hans.md +++ b/README_zh_Hans.md @@ -24,12 +24,16 @@ Self-hosted photo and video management solution. - Easy-to-use and friendly interface ; -**分发版本:** 1.105.1~ynh1 +**分发版本:** 1.106.4~ynh1 ## 截图 ![Immich 的截图](./doc/screenshots/immich-screenshots.png) +## :red_circle: 负面特征 + +- **Alpha software**: Early development stage. May contain changing or unstable features, bugs, and security vulnerability. + ## 文档与资源 - 官方应用网站: diff --git a/conf/env-machine-learning b/conf/env-machine-learning new file mode 100644 index 0000000..f55dbf4 --- /dev/null +++ b/conf/env-machine-learning @@ -0,0 +1,11 @@ +## Ports +IMMICH_HOST=127.0.0.1 +IMMICH_PORT=__PORT_MACHINELEARNING__ + +## Database +DB_HOSTNAME=127.0.0.1 +DB_PORT=__DB_PORT__ +DB_USERNAME=__APP__ +DB_PASSWORD=__DB_PWD__ +DB_DATABASE_NAME=__APP__ +DB_VECTOR_EXTENSION=pgvector diff --git a/conf/env b/conf/env-server similarity index 75% rename from conf/env rename to conf/env-server index ec41098..7d8e386 100644 --- a/conf/env +++ b/conf/env-server @@ -5,10 +5,8 @@ IMMICH_WEB_ROOT=__INSTALL_DIR__/app/www IMMICH_REVERSE_GEOCODING_ROOT=__INSTALL_DIR__/app/resources ## Ports -SERVER_PORT=__PORT__ -MICROSERVICES_PORT=__PORT_MICROSERVICES__ -MACHINE_LEARNING_HOST=127.0.0.1 -MACHINE_LEARNING_PORT=__PORT_MACHINELEARNING__ +IMMICH_HOST=127.0.0.1 +IMMICH_PORT=__PORT__ IMMICH_MACHINE_LEARNING_URL=http://127.0.0.1:__PORT_MACHINELEARNING__ ## Database diff --git a/conf/immich-machine-learning-start.sh b/conf/immich-machine-learning-start.sh index 20443e2..58b18af 100644 --- a/conf/immich-machine-learning-start.sh +++ b/conf/immich-machine-learning-start.sh @@ -1,21 +1,21 @@ #!/bin/bash set -a -source "__INSTALL_DIR__/env" +source "__INSTALL_DIR__/env-machine-learning" set +a cd "__INSTALL_DIR__/app/machine-learning" source venv/bin/activate -: "${MACHINE_LEARNING_HOST:=127.0.0.1}" -: "${MACHINE_LEARNING_PORT:=__PORT_MACHINELEARNING__}" +: "${IMMICH_HOST:=127.0.0.1}" +: "${IMMICH_PORT:=__PORT_MACHINELEARNING__}" : "${MACHINE_LEARNING_WORKERS:=1}" : "${MACHINE_LEARNING_WORKER_TIMEOUT:=120}" exec gunicorn app.main:app \ -k app.config.CustomUvicornWorker \ + -b "$IMMICH_HOST":"$IMMICH_PORT" \ -w "$MACHINE_LEARNING_WORKERS" \ - -b "$MACHINE_LEARNING_HOST":"$MACHINE_LEARNING_PORT" \ -t "$MACHINE_LEARNING_WORKER_TIMEOUT" \ --log-config-json log_conf.json \ --graceful-timeout 0 diff --git a/conf/immich-machine-learning.service b/conf/immich-machine-learning.service index c4002b6..5ba378a 100644 --- a/conf/immich-machine-learning.service +++ b/conf/immich-machine-learning.service @@ -11,7 +11,7 @@ Restart=on-failure User=__APP__ Group=__APP__ WorkingDirectory=__INSTALL_DIR__/app -EnvironmentFile=__INSTALL_DIR__/env +EnvironmentFile=__INSTALL_DIR__/env-machine-learning ExecStart=__INSTALL_DIR__/app/machine-learning/start.sh StandardOutput=append:/var/log/__APP__/__APP__-machine-learning.log StandardError=inherit diff --git a/conf/immich-microservices.service b/conf/immich-microservices.service index dce2408..c03d59d 100644 --- a/conf/immich-microservices.service +++ b/conf/immich-microservices.service @@ -14,7 +14,7 @@ User=__APP__ Group=__APP__ WorkingDirectory=__INSTALL_DIR__/app Environment="__YNH_NODE_LOAD_PATH__" -EnvironmentFile=__INSTALL_DIR__/env +EnvironmentFile=__INSTALL_DIR__/env-server ExecStart=__YNH_NODE__ __INSTALL_DIR__/app/dist/main microservices StandardOutput=append:/var/log/__APP__/__APP__-microservices.log StandardError=inherit diff --git a/conf/immich-server-start.sh b/conf/immich-server-start.sh index 77ddfd6..b97540d 100644 --- a/conf/immich-server-start.sh +++ b/conf/immich-server-start.sh @@ -1,7 +1,7 @@ #!/bin/bash set -a -. "__INSTALL_DIR__/env" +. "__INSTALL_DIR__/env-server" set +a cd "__INSTALL_DIR__/app" diff --git a/conf/immich-server.service b/conf/immich-server.service index f59f140..6d32ddb 100644 --- a/conf/immich-server.service +++ b/conf/immich-server.service @@ -14,7 +14,7 @@ User=__APP__ Group=__APP__ WorkingDirectory=__INSTALL_DIR__/app Environment="__YNH_NODE_LOAD_PATH__" -EnvironmentFile=__INSTALL_DIR__/env +EnvironmentFile=__INSTALL_DIR__/env-server ExecStart=__YNH_NODE__ __INSTALL_DIR__/app/dist/main __APP__ StandardOutput=append:/var/log/__APP__/__APP__-server.log StandardError=inherit diff --git a/doc/PRE_INSTALL.md b/doc/PRE_INSTALL.md index 6ee38c0..33bd440 100644 --- a/doc/PRE_INSTALL.md +++ b/doc/PRE_INSTALL.md @@ -1,5 +1,6 @@ As the pyhton version shipped in Debian stable is not always supported, a recent version could be built during the installation process. It may take a while to achieve that (15 to 60 minutes). This package provides support for the JPEG, PNG, WebP, AVIF (limited to 8-bit depth), TIFF, GIF and SVG (input) image formats. -HEIC/HEIF file format is not supported (see cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600). +**HEIC/HEIF file format is not supported** (see cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600). +Please ensure **your mobile app and server are on the same version**. Otherwise, you won't be able to access the app. diff --git a/doc/PRE_INSTALL_fr.md b/doc/PRE_INSTALL_fr.md index e84d241..ae6a9b3 100644 --- a/doc/PRE_INSTALL_fr.md +++ b/doc/PRE_INSTALL_fr.md @@ -1,5 +1,6 @@ Comme la version python livrée dans Debian stable n'est pas toujours prise en charge, une version récente pourrait être construite pendant le processus d'installation. Cela peut prendre un certain temps pour y parvenir (15 à 60 minutes). Ce package supporte les formats d'images suivant : JPEG, PNG, WebP, AVIF (limité à profondeur de couleur de 8 bits), TIFF, GIF et SVG. -Le format HEIC/HEIF n'est pas supporté (cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600). +**Le format HEIC/HEIF n'est pas supporté** (cf. https://github.com/YunoHost-Apps/immich_ynh/issues/40#issuecomment-2096788600). +Assurez-vous que **l'application mobile et le serveur sont sur la même version**. Dans le cas contraire vous risquez de ne pas pouvoir accèder à l'application. diff --git a/manifest.toml b/manifest.toml index e0d0daa..d011db8 100644 --- a/manifest.toml +++ b/manifest.toml @@ -7,7 +7,7 @@ name = "Immich" description.en = "Photo and video backup solution directly from your mobile phone" description.fr = "Sauvegarde de photos et de vidéos directement depuis votre mobile" -version = "1.105.1~ynh1" +version = "1.106.4~ynh1" maintainers = ["ewilly"] @@ -42,14 +42,13 @@ ram.runtime = "500M" [resources.sources] [resources.sources.main] - url = "https://github.com/immich-app/immich/archive/refs/tags/v1.105.1.tar.gz" - sha256 = "1e38ee3329bc3e20c94b8bb5daa30741479bcca7ef7bf7353b458fcb9ddb376d" + url = "https://github.com/immich-app/immich/archive/refs/tags/v1.106.4.tar.gz" + sha256 = "3655cc78287d9a350f51c8913018dbe92d9c6501b1f4d72ce58bd6d9a9308841" autoupdate.strategy = "latest_github_release" [resources.ports] main.default = 3001 - microservices.default = 3002 machinelearning.default = 3003 [resources.system_user] diff --git a/scripts/_common.sh b/scripts/_common.sh index 05d7687..437aac7 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -145,8 +145,6 @@ myynh_install_immich() { cp -a "$source_dir/server/resources" "$install_dir/app/" cp -a "$source_dir/server/package.json" "$install_dir/app/" cp -a "$source_dir/server/package-lock.json" "$install_dir/app/" - cp -a "$source_dir/server/start-microservices.sh" "$install_dir/app/" - cp -a "$source_dir/server/start-server.sh" "$install_dir/app/" cp -a "$source_dir/LICENSE" "$install_dir/app/" # Install custom start.sh script ynh_add_config --template="immich-server-start.sh" --destination="$install_dir/app/start.sh" @@ -187,7 +185,7 @@ myynh_install_immich() { cd "$install_dir/app" ynh_exec_warn_less "$ynh_npm" install sharp - # Use 127.0.0.1 for microservices + # Use 127.0.0.1 sed -i -e "s@app.listen(port)@app.listen(port, '127.0.0.1')@g" "$install_dir/app/dist/main.js" # Install geonames diff --git a/scripts/change_url b/scripts/change_url index 8a127a8..380bb98 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -31,7 +31,7 @@ ynh_change_url_nginx_config #================================================= ynh_script_progression --message="Starting a systemd service..." --weight=1 -ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log" +ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log" ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log" ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log" diff --git a/scripts/install b/scripts/install index 8ce42da..3136367 100755 --- a/scripts/install +++ b/scripts/install @@ -56,9 +56,13 @@ myynh_install_immich #================================================= ynh_script_progression --message="Adding a configuration file..." -ynh_add_config --template="env" --destination="$install_dir/env" -chmod 600 "$install_dir/env" -chown $app:$app "$install_dir/env" +ynh_add_config --template="env-server" --destination="$install_dir/env-server" +chmod 600 "$install_dir/env-server" +chown $app:$app "$install_dir/env-server" + +ynh_add_config --template="env-machine-learning" --destination="$install_dir/env-machine-learning" +chmod 600 "$install_dir/env-machine-learning" +chown $app:$app "$install_dir/env-machine-learning" #================================================= # SYSTEM CONFIGURATION @@ -87,7 +91,7 @@ ynh_add_fail2ban_config --logpath="/var/log/$app/$app-server.log" --failregex="$ #================================================= ynh_script_progression --message="Starting a systemd service..." -ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log" +ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log" ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log" ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log" diff --git a/scripts/restore b/scripts/restore index a268b3f..1d316c0 100755 --- a/scripts/restore +++ b/scripts/restore @@ -89,7 +89,7 @@ ynh_restore_file --origin_path="/var/log/$app/" #================================================= ynh_script_progression --message="Reloading NGINX web server and $app's service..." --weight=1 -ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log" +ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log" ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log" ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log" diff --git a/scripts/upgrade b/scripts/upgrade index 1cdf14b..fc034e6 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -59,9 +59,14 @@ ynh_script_progression --message="Updating $app's configuration files..." --weig db_pwd=$(ynh_app_setting_get --app="$app" --key=psql_pwd) db_port=$(ynh_app_setting_get --app="$app" --key=psql_port) -ynh_add_config --template="env" --destination="$install_dir/env" -chmod 600 "$install_dir/env" -chown $app:$app "$install_dir/env" + +ynh_add_config --template="env-server" --destination="$install_dir/env-server" +chmod 600 "$install_dir/env-server" +chown $app:$app "$install_dir/env-server" + +ynh_add_config --template="env-machine-learning" --destination="$install_dir/env-machine-learning" +chmod 600 "$install_dir/env-machine-learning" +chown $app:$app "$install_dir/env-machine-learning" #================================================= # REAPPLY SYSTEM CONFIGURATIONS @@ -89,8 +94,7 @@ ynh_add_fail2ban_config --logpath="/var/log/$app/$app-server.log" --failregex="$ # START SYSTEMD SERVICE #================================================= ynh_script_progression --message="Starting a systemd service..." --weight=1 - -ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is listening" --log_path="/var/log/$app/$app-microservices.log" +ynh_systemd_action --service_name="$app-microservices" --action="start" --line_match="Immich Microservices is running" --log_path="/var/log/$app/$app-microservices.log" ynh_systemd_action --service_name="$app-machine-learning" --action="start" --line_match="Application startup complete" --log_path="/var/log/$app/$app-machine-learning.log" ynh_systemd_action --service_name="$app-server" --action="start" --line_match="Immich Server is listening" --log_path="/var/log/$app/$app-server.log" diff --git a/tests.toml b/tests.toml index 94abb79..32182b1 100644 --- a/tests.toml +++ b/tests.toml @@ -3,3 +3,10 @@ test_format = 1.0 [default] + # ------------------------------- + # Commits to test upgrade from dfaa8785a61758eea4fe558ffe6a3090a9efdfb0 + # v1.105.1 with separeted microservices container/process + # ------------------------------- + test_upgrade_from.dfaa878.name = "1.105.1~ynh1" + test_upgrade_from.dfaa878.args.domain = "sub.domain.tld" + test_upgrade_from.dfaa878.args.init_main_permission = "visitors"