From 3979acc25f8b20efef6307de36e485ef92a8df1b Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 8 Jan 2026 13:30:21 +0100 Subject: [PATCH 1/5] Migrate *arr addons to addon_configs --- bazarr/CHANGELOG.md | 3 ++ bazarr/Dockerfile | 2 +- bazarr/config.yaml | 5 ++-- bazarr/rootfs/etc/cont-init.d/20-folders.sh | 20 ++++++------- lidarr/CHANGELOG.md | 3 ++ lidarr/Dockerfile | 2 +- lidarr/config.yaml | 5 ++-- lidarr/rootfs/etc/cont-init.d/20-folders.sh | 16 ++++------- prowlarr/CHANGELOG.md | 3 ++ prowlarr/Dockerfile | 2 +- prowlarr/config.yaml | 5 ++-- prowlarr/rootfs/etc/cont-init.d/20-folders.sh | 20 ++++++------- radarr/CHANGELOG.md | 3 ++ radarr/Dockerfile | 2 +- radarr/config.yaml | 5 ++-- radarr/rootfs/etc/cont-init.d/20-folders.sh | 20 ++++++------- .../etc/cont-init.d/32-nginx_ingress.sh | 2 +- radarr/rootfs/etc/services.d/nginx/run | 2 +- readarr/CHANGELOG.md | 3 ++ readarr/Dockerfile | 2 +- readarr/README.md | 3 +- readarr/config.yaml | 7 +++-- .../etc/cont-init.d/00-config_location.sh | 14 ++++++---- readarr/rootfs/etc/cont-init.d/20-folders.sh | 28 ++++++++----------- .../etc/cont-init.d/32-nginx_ingress.sh | 2 +- readarr/rootfs/etc/services.d/nginx/run | 2 +- sonarr/CHANGELOG.md | 3 ++ sonarr/Dockerfile | 2 +- sonarr/config.yaml | 5 ++-- sonarr/rootfs/etc/cont-init.d/20-folders.sh | 20 ++++++------- .../etc/cont-init.d/32-nginx_ingress.sh | 2 +- sonarr/rootfs/etc/services.d/nginx/run | 2 +- 32 files changed, 107 insertions(+), 108 deletions(-) diff --git a/bazarr/CHANGELOG.md b/bazarr/CHANGELOG.md index 138d37fac..90b19d8d4 100644 --- a/bazarr/CHANGELOG.md +++ b/bazarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 1.5.4-1 (08-01-2026) +- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/bazarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-bazarr. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + ## 1.5.4 (08-01-2026) - Update to latest version from linuxserver/docker-bazarr (changelog : https://github.com/linuxserver/docker-bazarr/releases) - The Home Assistant project has deprecated support for the armv7, armhf and i386 architectures. Support wil be fully dropped in the upcoming Home Assistant 2025.12 release diff --git a/bazarr/Dockerfile b/bazarr/Dockerfile index 5f341510b..222b7e2a9 100644 --- a/bazarr/Dockerfile +++ b/bazarr/Dockerfile @@ -30,7 +30,7 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Global LSIO modifications ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_lsio.sh" "/ha_lsio.sh" -ARG CONFIGLOCATION="/config/addons_config/bazarr" +ARG CONFIGLOCATION="/config" RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh ################## diff --git a/bazarr/config.yaml b/bazarr/config.yaml index fbf160ad5..d74c85202 100644 --- a/bazarr/config.yaml +++ b/bazarr/config.yaml @@ -74,7 +74,8 @@ environment: image: ghcr.io/alexbelgium/bazarr-{arch} init: false map: - - config:rw + - addon_config:rw + - homeassistant_config:rw - share:rw - media:rw - ssl @@ -105,5 +106,5 @@ schema: slug: bazarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/bazarr -version: "1.5.4" +version: "1.5.4-1" webui: "[PROTO:ssl]://[HOST]:[PORT:6767]" diff --git a/bazarr/rootfs/etc/cont-init.d/20-folders.sh b/bazarr/rootfs/etc/cont-init.d/20-folders.sh index 81b2023f4..dc382a687 100755 --- a/bazarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/bazarr/rootfs/etc/cont-init.d/20-folders.sh @@ -1,4 +1,6 @@ -#!/bin/bash +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e if [ ! -d /share/storage/movies ]; then echo "Creating /share/storage/movies" @@ -18,16 +20,10 @@ if [ ! -d /share/downloads ]; then chown -R "$PUID:$PGID" /share/downloads fi -if [ -d /config/bazarr ] && [ ! -d /config/addons_config/bazarr ]; then - echo "Moving to new location /config/addons_config/bazarr" - mkdir -p /config/addons_config/bazarr - chown -R "$PUID:$PGID" /config/addons_config/bazarr - mv /config/bazarr/* /config/addons_config/bazarr/ - rm -r /config/bazarr -fi +slug=bazarr -if [ ! -d /config/addons_config/bazarr ]; then - echo "Creating /config/addons_config/bazarr" - mkdir -p /config/addons_config/bazarr - chown -R "$PUID:$PGID" /config/addons_config/bazarr +if [ -d "/homeassistant/addons_config/$slug" ]; then + echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/lidarr/CHANGELOG.md b/lidarr/CHANGELOG.md index 029819b34..ecd3d775e 100644 --- a/lidarr/CHANGELOG.md +++ b/lidarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 3.1.0.4875-1 (08-01-2026) +- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/lidarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-lidarr_nas. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + ## 3.1.0.4875 (22-11-2025) - Update to latest version from linuxserver/docker-lidarr (changelog : https://github.com/linuxserver/docker-lidarr/releases) - The Home Assistant project has deprecated support for the armv7, armhf and i386 architectures. Support wil be fully dropped in the upcoming Home Assistant 2025.12 release diff --git a/lidarr/Dockerfile b/lidarr/Dockerfile index c4231ddae..78831ebc3 100644 --- a/lidarr/Dockerfile +++ b/lidarr/Dockerfile @@ -29,7 +29,7 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Global LSIO modifications ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_lsio.sh" "/ha_lsio.sh" -ARG CONFIGLOCATION="/config/addons_config/lidarr" +ARG CONFIGLOCATION="/config" RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh ################## diff --git a/lidarr/config.yaml b/lidarr/config.yaml index 970593d1b..324f60018 100644 --- a/lidarr/config.yaml +++ b/lidarr/config.yaml @@ -71,7 +71,8 @@ environment: image: ghcr.io/alexbelgium/lidarr_nas-{arch} init: false map: - - config:rw + - addon_config:rw + - homeassistant_config:rw - share:rw - media:rw name: Lidarr NAS @@ -101,5 +102,5 @@ schema: slug: lidarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/blob/master/lidarr/README.md -version: "3.1.0.4875" +version: "3.1.0.4875-1" webui: "[PROTO:ssl]://[HOST]:[PORT:8686]" diff --git a/lidarr/rootfs/etc/cont-init.d/20-folders.sh b/lidarr/rootfs/etc/cont-init.d/20-folders.sh index 24440d45c..b79564082 100755 --- a/lidarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/lidarr/rootfs/etc/cont-init.d/20-folders.sh @@ -14,16 +14,10 @@ if [ ! -d /share/downloads ]; then chown -R "$PUID:$PGID" /share/downloads fi -if [ -d /config/lidarr ] && [ ! -d /config/addons_config/lidarr ]; then - echo "Moving to new location /config/addons_config/lidarr" - mkdir -p /config/addons_config/lidarr - chmod 755 /config/addons_config/lidarr - mv /config/lidarr/* /config/addons_config/lidarr/ - rm -r /config/lidarr -fi +slug=lidarr -if [ ! -d /config/addons_config/lidarr ]; then - echo "Creating /config/addons_config/lidarr" - mkdir -p /config/addons_config/lidarr - chmod 755 /config/addons_config/lidarr +if [ -d "/homeassistant/addons_config/$slug" ]; then + echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/prowlarr/CHANGELOG.md b/prowlarr/CHANGELOG.md index 36f3401b1..21c89135c 100644 --- a/prowlarr/CHANGELOG.md +++ b/prowlarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## develop-2.3.2.5245-ls249-1 (08-01-2026) +- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/prowlarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-prowlarr. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + ## develop-2.3.2.5245-ls249 (08-01-2026) - Update to latest version from linuxserver/docker-prowlarr (changelog : https://github.com/linuxserver/docker-prowlarr/releases) diff --git a/prowlarr/Dockerfile b/prowlarr/Dockerfile index 2e12a932b..5591e3ace 100644 --- a/prowlarr/Dockerfile +++ b/prowlarr/Dockerfile @@ -29,7 +29,7 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Global LSIO modifications ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_lsio.sh" "/ha_lsio.sh" -ARG CONFIGLOCATION="/config/addons_config/prowlarr" +ARG CONFIGLOCATION="/config" RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh ################## diff --git a/prowlarr/config.yaml b/prowlarr/config.yaml index 8283ac901..0ba6f127b 100644 --- a/prowlarr/config.yaml +++ b/prowlarr/config.yaml @@ -72,7 +72,8 @@ environment: image: ghcr.io/alexbelgium/prowlarr-{arch} init: false map: - - config:rw + - addon_config:rw + - homeassistant_config:rw - share:rw - media:rw - ssl @@ -104,5 +105,5 @@ schema: slug: prowlarr udev: true url: https://github.com/alexbelgium/hassio-addons -version: "develop-2.3.2.5245-ls249" +version: "develop-2.3.2.5245-ls249-1" webui: "[PROTO:ssl]://[HOST]:[PORT:9696]" diff --git a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh index d1ca17245..95a92bc8e 100755 --- a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh @@ -1,15 +1,11 @@ -#!/bin/bash +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e -if [ -d /config/prowlarr ] && [ ! -d /config/addons_config/prowlarr ]; then - echo "Moving to new location /config/addons_config/prowlarr" - mkdir -p /config/addons_config/prowlarr - chown -R "$PUID:$PGID" /config/addons_config/prowlarr - mv /config/prowlarr/* /config/addons_config/prowlarr/ - rm -r /config/prowlarr -fi +slug=prowlarr -if [ ! -d /config/addons_config/prowlarr ]; then - echo "Creating /config/addons_config/prowlarr" - mkdir -p /config/addons_config/prowlarr - chown -R "$PUID:$PGID" /config/addons_config/prowlarr +if [ -d "/homeassistant/addons_config/$slug" ]; then + echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/radarr/CHANGELOG.md b/radarr/CHANGELOG.md index 37a8ca94a..d50aa7c3e 100644 --- a/radarr/CHANGELOG.md +++ b/radarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 6.0.4.10291-1 (08-01-2026) +- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/radarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-radarr_nas. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + ## 6.0.4.10291 (22-11-2025) - Update to latest version from linuxserver/docker-radarr (changelog : https://github.com/linuxserver/docker-radarr/releases) - The Home Assistant project has deprecated support for the armv7, armhf and i386 architectures. Support wil be fully dropped in the upcoming Home Assistant 2025.12 release diff --git a/radarr/Dockerfile b/radarr/Dockerfile index 2b55dce07..e2541bdb7 100644 --- a/radarr/Dockerfile +++ b/radarr/Dockerfile @@ -29,7 +29,7 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Global LSIO modifications ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_lsio.sh" "/ha_lsio.sh" -ARG CONFIGLOCATION="/config/addons_config/radarr" +ARG CONFIGLOCATION="/config" RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh ################## diff --git a/radarr/config.yaml b/radarr/config.yaml index 7ba568464..ec5ac5d86 100644 --- a/radarr/config.yaml +++ b/radarr/config.yaml @@ -72,7 +72,8 @@ ingress: true ingress_entry: radarr init: false map: - - config:rw + - addon_config:rw + - homeassistant_config:rw - share:rw - media:rw - ssl @@ -107,4 +108,4 @@ schema: slug: radarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/radarr -version: "6.0.4.10291" +version: "6.0.4.10291-1" diff --git a/radarr/rootfs/etc/cont-init.d/20-folders.sh b/radarr/rootfs/etc/cont-init.d/20-folders.sh index 9e5b03d57..7aa75b9e7 100755 --- a/radarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/radarr/rootfs/etc/cont-init.d/20-folders.sh @@ -1,4 +1,6 @@ -#!/bin/bash +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e if [ ! -d /share/storage/movies ]; then echo "Creating /share/storage/movies" @@ -12,16 +14,10 @@ if [ ! -d /share/downloads ]; then chown -R "$PUID:$PGID" /share/downloads fi -if [ -d /config/radarr ] && [ ! -d /config/addons_config/radarr ]; then - echo "Moving to new location /config/addons_config/radarr" - mkdir -p /config/addons_config/radarr - chown -R "$PUID:$PGID" /config/addons_config/radarr - mv /config/radarr/* /config/addons_config/radarr/ - rm -r /config/radarr -fi +slug=radarr -if [ ! -d /config/addons_config/radarr ]; then - echo "Creating /config/addons_config/radarr" - mkdir -p /config/addons_config/radarr - chown -R "$PUID:$PGID" /config/addons_config/radarr +if [ -d "/homeassistant/addons_config/$slug" ]; then + echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/radarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh b/radarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh index 32694f5f0..db075fa17 100755 --- a/radarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh +++ b/radarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh @@ -21,7 +21,7 @@ sed -i "s|%%ingress_entry%%|${ingress_entry}|g" /etc/nginx/servers/ingress.conf # Values slug=radarr -CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +CONFIG_LOCATION=/config/config.xml if [ -f "$CONFIG_LOCATION" ]; then diff --git a/radarr/rootfs/etc/services.d/nginx/run b/radarr/rootfs/etc/services.d/nginx/run index d4541baa7..1480cf940 100755 --- a/radarr/rootfs/etc/services.d/nginx/run +++ b/radarr/rootfs/etc/services.d/nginx/run @@ -6,7 +6,7 @@ set -e # Set variables slug=radarr port=7878 -CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +CONFIG_LOCATION=/config/config.xml # Wait for transmission to become available bashio::net.wait_for "$port" localhost 900 diff --git a/readarr/CHANGELOG.md b/readarr/CHANGELOG.md index 1c8f13bdb..f242fc172 100644 --- a/readarr/CHANGELOG.md +++ b/readarr/CHANGELOG.md @@ -1,3 +1,6 @@ +## 0.4.18-1 (08-01-2026) +- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/readarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-readarr_nas. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + - Added support for configuring extra environment variables via the `env_vars` add-on option alongside config.yaml. See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details. ## 0.4.19.2811 (28-06-2025) diff --git a/readarr/Dockerfile b/readarr/Dockerfile index deaf2e342..e9a4ab184 100644 --- a/readarr/Dockerfile +++ b/readarr/Dockerfile @@ -30,7 +30,7 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Global LSIO modifications ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_lsio.sh" "/ha_lsio.sh" -ARG CONFIGLOCATION="/config/addons_config/readarr" +ARG CONFIGLOCATION="/config" RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh ################## diff --git a/readarr/README.md b/readarr/README.md index 9143f3ec3..b5eae77a3 100644 --- a/readarr/README.md +++ b/readarr/README.md @@ -104,7 +104,7 @@ This addon supports custom scripts and environment variables: - **Custom scripts**: See [Running Custom Scripts in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons) - **env_vars option**: Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details. -You can add environment variables by creating `/config/addons_config/readarr_nas.yml`: +You can add environment variables by creating `/addon_configs/xxx-readarr_nas/readarr_nas.yml`: ```yaml TZ: Europe/Paris @@ -122,4 +122,3 @@ Create an issue on github [repository]: https://github.com/alexbelgium/hassio-addons - diff --git a/readarr/config.yaml b/readarr/config.yaml index 357c4f813..8127699c2 100644 --- a/readarr/config.yaml +++ b/readarr/config.yaml @@ -72,13 +72,14 @@ ingress: true ingress_entry: readarr init: false map: - - config:rw + - addon_config:rw + - homeassistant_config:rw - share:rw - media:rw name: Readarr options: env_vars: [] - CONFIG_LOCATION: /config/addons_config/readarr + CONFIG_LOCATION: /config PGID: 0 PUID: 0 connection_mode: ingress_noauth @@ -108,4 +109,4 @@ schema: slug: readarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/readarr -version: 0.4.18 +version: "0.4.18-1" diff --git a/readarr/rootfs/etc/cont-init.d/00-config_location.sh b/readarr/rootfs/etc/cont-init.d/00-config_location.sh index 2b7b6f018..ce831ab21 100755 --- a/readarr/rootfs/etc/cont-init.d/00-config_location.sh +++ b/readarr/rootfs/etc/cont-init.d/00-config_location.sh @@ -6,15 +6,17 @@ if bashio::config.has_value 'CONFIG_LOCATION'; then CONFIG_LOCATION="$(bashio::config 'CONFIG_LOCATION')" # Modify if it is a base directory if [[ "$CONFIG_LOCATION" == *.* ]]; then CONFIG_LOCATION="$(dirname "$CONFIG_LOCATION")"; fi +else + CONFIG_LOCATION="/config" fi - -CONFIG_LOCATION=$(bashio::config 'CONFIG_LOCATION') bashio::log.info "Config stored in $CONFIG_LOCATION" mkdir -p "$CONFIG_LOCATION" chown -R "$PUID:$PGID" "$CONFIG_LOCATION" -# shellcheck disable=SC2013 -for file in $(grep -sril "/config/addons_config/readarr" /etc /defaults); do - sed -i "s|/config/addons_config/readarr|$CONFIG_LOCATION|g" "$file" -done +if [ "$CONFIG_LOCATION" != "/config" ]; then + # shellcheck disable=SC2013 + for file in $(grep -sril "/config" /etc /defaults); do + sed -i "s|/config|$CONFIG_LOCATION|g" "$file" + done +fi diff --git a/readarr/rootfs/etc/cont-init.d/20-folders.sh b/readarr/rootfs/etc/cont-init.d/20-folders.sh index 0128086fb..ff6562c06 100755 --- a/readarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/readarr/rootfs/etc/cont-init.d/20-folders.sh @@ -1,4 +1,6 @@ -#!/bin/bash +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e if [ ! -d /share/storage/ebook ]; then echo "Creating /share/storage/ebook" @@ -12,21 +14,15 @@ if [ ! -d /share/downloads ]; then chown -R "$PUID:$PGID" /share/downloads fi -if [ -d /config/readarr ] && [ ! -d /config/addons_config/readarr ]; then - echo "Moving to new location /config/addons_config/readarr" - mkdir -p /config/addons_config/readarr - chown -R "$PUID:$PGID" /config/addons_config/readarr - mv /config/readarr/* /config/addons_config/readarr/ - rm -r /config/readarr +slug=readarr + +if [ -d "/homeassistant/addons_config/$slug" ]; then + echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi -if [ ! -d /config/addons_config/readarr ]; then - echo "Creating /config/addons_config/readarr" - mkdir -p /config/addons_config/readarr - chown -R "$PUID:$PGID" /config/addons_config/readarr -fi - -if [ -d /config/addons_config/readarr/readarr ]; then - mv /config/addons_config/readarr/readarr/{.,}* /config/addons_config/readarr/ - rmdir /config/addons_config/readarr/readarr +if [ -d /config/readarr ]; then + mv /config/readarr/{.,}* /config/ || true + rmdir /config/readarr || true fi diff --git a/readarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh b/readarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh index 0170cf788..b4cd3ad88 100755 --- a/readarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh +++ b/readarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh @@ -21,7 +21,7 @@ sed -i "s|%%ingress_entry%%|${ingress_entry}|g" /etc/nginx/servers/ingress.conf # Values slug=readarr -CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +CONFIG_LOCATION=/config/config.xml if [ -f "$CONFIG_LOCATION" ]; then diff --git a/readarr/rootfs/etc/services.d/nginx/run b/readarr/rootfs/etc/services.d/nginx/run index 55371c914..584285b8f 100644 --- a/readarr/rootfs/etc/services.d/nginx/run +++ b/readarr/rootfs/etc/services.d/nginx/run @@ -6,7 +6,7 @@ set -e # Set variables slug=readarr port=8787 -CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +CONFIG_LOCATION=/config/config.xml # Wait for transmission to become available bashio::net.wait_for "$port" localhost 900 diff --git a/sonarr/CHANGELOG.md b/sonarr/CHANGELOG.md index ce1074ff8..71aad53eb 100644 --- a/sonarr/CHANGELOG.md +++ b/sonarr/CHANGELOG.md @@ -1,4 +1,7 @@ +## 4.0.16.2946-1 (08-01-2026) +- ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/sonarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-sonarr_nas. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ + ## 4.0.16.2946 (27-12-2025) - Update to latest version from linuxserver/docker-sonarr (changelog : https://github.com/linuxserver/docker-sonarr/releases) - The Home Assistant project has deprecated support for the armv7, armhf and i386 architectures. Support wil be fully dropped in the upcoming Home Assistant 2025.12 release diff --git a/sonarr/Dockerfile b/sonarr/Dockerfile index 87cd3ff02..3d20ad93c 100644 --- a/sonarr/Dockerfile +++ b/sonarr/Dockerfile @@ -30,7 +30,7 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ # Global LSIO modifications ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_lsio.sh" "/ha_lsio.sh" -ARG CONFIGLOCATION="/config/addons_config/sonarr" +ARG CONFIGLOCATION="/config" RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGLOCATION"; fi && rm /ha_lsio.sh ################## diff --git a/sonarr/config.yaml b/sonarr/config.yaml index 076120bd5..f85ed67c7 100644 --- a/sonarr/config.yaml +++ b/sonarr/config.yaml @@ -74,7 +74,8 @@ ingress: true ingress_entry: sonarr init: false map: - - config:rw + - addon_config:rw + - homeassistant_config:rw - share:rw - media:rw - ssl @@ -109,4 +110,4 @@ schema: slug: sonarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/sonarr -version: "4.0.16.2946" +version: "4.0.16.2946-1" diff --git a/sonarr/rootfs/etc/cont-init.d/20-folders.sh b/sonarr/rootfs/etc/cont-init.d/20-folders.sh index a97820bf2..6183d0969 100755 --- a/sonarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/sonarr/rootfs/etc/cont-init.d/20-folders.sh @@ -1,4 +1,6 @@ -#!/bin/bash +#!/usr/bin/with-contenv bashio +# shellcheck shell=bash +set -e if [ ! -d /share/storage/tv ]; then echo "Creating /share/storage/tv" @@ -12,16 +14,10 @@ if [ ! -d /share/downloads ]; then chown -R "$PUID:$PGID" /share/downloads fi -if [ -d /config/sonarr ] && [ ! -d /config/addons_config/sonarr ]; then - echo "Moving to new location /config/addons_config/sonarr" - mkdir -p /config/addons_config/sonarr - chown -R "$PUID:$PGID" /config/addons_config/sonarr - mv /config/sonarr/* /config/addons_config/sonarr/ - rm -r /config/sonarr -fi +slug=sonarr -if [ ! -d /config/addons_config/sonarr ]; then - echo "Creating /config/addons_config/sonarr" - mkdir -p /config/addons_config/sonarr - chown -R "$PUID:$PGID" /config/addons_config/sonarr +if [ -d "/homeassistant/addons_config/$slug" ]; then + echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/sonarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh b/sonarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh index 0dee0e709..838bf145b 100755 --- a/sonarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh +++ b/sonarr/rootfs/etc/cont-init.d/32-nginx_ingress.sh @@ -21,7 +21,7 @@ sed -i "s|%%ingress_entry%%|${ingress_entry}|g" /etc/nginx/servers/ingress.conf # Values slug=sonarr -CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +CONFIG_LOCATION=/config/config.xml if [ -f "$CONFIG_LOCATION" ]; then diff --git a/sonarr/rootfs/etc/services.d/nginx/run b/sonarr/rootfs/etc/services.d/nginx/run index e786de398..c930cc2c1 100755 --- a/sonarr/rootfs/etc/services.d/nginx/run +++ b/sonarr/rootfs/etc/services.d/nginx/run @@ -6,7 +6,7 @@ set -e # Set variables slug=sonarr port=8989 -CONFIG_LOCATION=/config/addons_config/"$slug"/config.xml +CONFIG_LOCATION=/config/config.xml # Wait for transmission to become available bashio::net.wait_for "$port" localhost 900 From 2c2d239eba5b877b99f323e6526d9e99b0fa5e93 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 8 Jan 2026 13:44:21 +0100 Subject: [PATCH 2/5] Remove Readarr CONFIG_LOCATION option --- readarr/CHANGELOG.md | 3 +++ readarr/README.md | 3 --- readarr/config.yaml | 4 +--- .../rootfs/etc/cont-init.d/00-config_location.sh | 15 +-------------- readarr/rootfs/etc/services.d/nginx/run | 7 ------- 5 files changed, 5 insertions(+), 27 deletions(-) diff --git a/readarr/CHANGELOG.md b/readarr/CHANGELOG.md index f242fc172..d59b19524 100644 --- a/readarr/CHANGELOG.md +++ b/readarr/CHANGELOG.md @@ -1,3 +1,6 @@ +## 0.4.18-2 (08-01-2026) +- Remove CONFIG_LOCATION option now that config lives under /addon_configs by default + ## 0.4.18-1 (08-01-2026) - ⚠ MAJOR CHANGE : switch to the new config logic from homeassistant. Your configuration files will have migrated from /config/addons_config/readarr to a folder only accessible from my Filebrowser addon called /addon_configs/xxx-readarr_nas. This avoids the addon to mess with your homeassistant configuration folder, and allows to backup the options. Migration of data should be automatic. Please be sure to update all your links however ! For more information, see here : https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/ diff --git a/readarr/README.md b/readarr/README.md index b5eae77a3..57f572cb3 100644 --- a/readarr/README.md +++ b/readarr/README.md @@ -61,7 +61,6 @@ Configurations can be done through the app webUI, except for the following optio | `PGID` | int | `0` | Group ID for file permissions | | `PUID` | int | `0` | User ID for file permissions | | `TZ` | str | | Timezone (e.g., `Europe/London`) | -| `CONFIG_LOCATION` | str | `/config` | Path where Readarr config is stored | | `connection_mode` | list | `ingress_noauth` | Connection mode (ingress_noauth/noingress_auth/ingress_auth) | | `localdisks` | str | | Local drives to mount (e.g., `sda1,sdb1,MYNAS`) | | `networkdisks` | str | | SMB shares to mount (e.g., `//SERVER/SHARE`) | @@ -81,7 +80,6 @@ Configurations can be done through the app webUI, except for the following optio PGID: 0 PUID: 0 TZ: "Europe/London" -CONFIG_LOCATION: "/config" connection_mode: "ingress_noauth" localdisks: "sda1,sdb1" networkdisks: "//192.168.1.100/books,//nas.local/ebooks" @@ -121,4 +119,3 @@ Create an issue on github ![illustration](https://readarr.com/img/slider/artistdetails.png) [repository]: https://github.com/alexbelgium/hassio-addons - diff --git a/readarr/config.yaml b/readarr/config.yaml index 8127699c2..f4c6deaf6 100644 --- a/readarr/config.yaml +++ b/readarr/config.yaml @@ -79,7 +79,6 @@ map: name: Readarr options: env_vars: [] - CONFIG_LOCATION: /config PGID: 0 PUID: 0 connection_mode: ingress_noauth @@ -96,7 +95,6 @@ schema: env_vars: - name: match(^[A-Za-z0-9_]+$) value: str? - CONFIG_LOCATION: str PGID: int PUID: int TZ: str? @@ -109,4 +107,4 @@ schema: slug: readarr_nas udev: true url: https://github.com/alexbelgium/hassio-addons/tree/master/readarr -version: "0.4.18-1" +version: "0.4.18-2" diff --git a/readarr/rootfs/etc/cont-init.d/00-config_location.sh b/readarr/rootfs/etc/cont-init.d/00-config_location.sh index ce831ab21..8c2f189b7 100755 --- a/readarr/rootfs/etc/cont-init.d/00-config_location.sh +++ b/readarr/rootfs/etc/cont-init.d/00-config_location.sh @@ -2,21 +2,8 @@ # shellcheck shell=bash set -e -if bashio::config.has_value 'CONFIG_LOCATION'; then - CONFIG_LOCATION="$(bashio::config 'CONFIG_LOCATION')" - # Modify if it is a base directory - if [[ "$CONFIG_LOCATION" == *.* ]]; then CONFIG_LOCATION="$(dirname "$CONFIG_LOCATION")"; fi -else - CONFIG_LOCATION="/config" -fi +CONFIG_LOCATION="/config" bashio::log.info "Config stored in $CONFIG_LOCATION" mkdir -p "$CONFIG_LOCATION" chown -R "$PUID:$PGID" "$CONFIG_LOCATION" - -if [ "$CONFIG_LOCATION" != "/config" ]; then - # shellcheck disable=SC2013 - for file in $(grep -sril "/config" /etc /defaults); do - sed -i "s|/config|$CONFIG_LOCATION|g" "$file" - done -fi diff --git a/readarr/rootfs/etc/services.d/nginx/run b/readarr/rootfs/etc/services.d/nginx/run index 584285b8f..dfb371cf7 100644 --- a/readarr/rootfs/etc/services.d/nginx/run +++ b/readarr/rootfs/etc/services.d/nginx/run @@ -11,13 +11,6 @@ CONFIG_LOCATION=/config/config.xml # Wait for transmission to become available bashio::net.wait_for "$port" localhost 900 -if bashio::config.has_value 'CONFIG_LOCATION'; then - CONFIG_LOCATION="$(bashio::config 'CONFIG_LOCATION')" - # Modify if it is a base directory - if [[ "$CONFIG_LOCATION" == *.* ]]; then CONFIG_LOCATION="$(dirname $CONFIG_LOCATION)"; fi - CONFIG_LOCATION="$CONFIG_LOCATION"/config.xml -fi - # Delete external if grep -q "external" "$CONFIG_LOCATION"; then bashio::log.warning "external is set, restarting" From 0b4145a67962938687db9bbb3282a20653b2163c Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 8 Jan 2026 14:14:33 +0100 Subject: [PATCH 3/5] Handle hidden files and cleanup after migration --- bazarr/rootfs/etc/cont-init.d/20-folders.sh | 6 +++++- lidarr/rootfs/etc/cont-init.d/20-folders.sh | 6 +++++- prowlarr/rootfs/etc/cont-init.d/20-folders.sh | 6 +++++- radarr/rootfs/etc/cont-init.d/20-folders.sh | 6 +++++- readarr/rootfs/etc/cont-init.d/20-folders.sh | 6 +++++- sonarr/rootfs/etc/cont-init.d/20-folders.sh | 6 +++++- 6 files changed, 30 insertions(+), 6 deletions(-) diff --git a/bazarr/rootfs/etc/cont-init.d/20-folders.sh b/bazarr/rootfs/etc/cont-init.d/20-folders.sh index dc382a687..05c7c8e6b 100755 --- a/bazarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/bazarr/rootfs/etc/cont-init.d/20-folders.sh @@ -24,6 +24,10 @@ slug=bazarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi + +if [ -d /config/addons_config ]; then + rm -rf /config/addons_config +fi diff --git a/lidarr/rootfs/etc/cont-init.d/20-folders.sh b/lidarr/rootfs/etc/cont-init.d/20-folders.sh index b79564082..30e6a4e38 100755 --- a/lidarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/lidarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,6 +18,10 @@ slug=lidarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi + +if [ -d /config/addons_config ]; then + rm -rf /config/addons_config +fi diff --git a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh index 95a92bc8e..a514c680d 100755 --- a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh @@ -6,6 +6,10 @@ slug=prowlarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi + +if [ -d /config/addons_config ]; then + rm -rf /config/addons_config +fi diff --git a/radarr/rootfs/etc/cont-init.d/20-folders.sh b/radarr/rootfs/etc/cont-init.d/20-folders.sh index 7aa75b9e7..65e74638d 100755 --- a/radarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/radarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,6 +18,10 @@ slug=radarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi + +if [ -d /config/addons_config ]; then + rm -rf /config/addons_config +fi diff --git a/readarr/rootfs/etc/cont-init.d/20-folders.sh b/readarr/rootfs/etc/cont-init.d/20-folders.sh index ff6562c06..771e5e9a0 100755 --- a/readarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/readarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,10 +18,14 @@ slug=readarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi +if [ -d /config/addons_config ]; then + rm -rf /config/addons_config +fi + if [ -d /config/readarr ]; then mv /config/readarr/{.,}* /config/ || true rmdir /config/readarr || true diff --git a/sonarr/rootfs/etc/cont-init.d/20-folders.sh b/sonarr/rootfs/etc/cont-init.d/20-folders.sh index 6183d0969..2b0945434 100755 --- a/sonarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/sonarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,6 +18,10 @@ slug=sonarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi + +if [ -d /config/addons_config ]; then + rm -rf /config/addons_config +fi From 90286071b2bb9b7a07117b914743022af7409efd Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 8 Jan 2026 14:22:04 +0100 Subject: [PATCH 4/5] Restore cp migration for legacy configs --- bazarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- lidarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- prowlarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- radarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- readarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- sonarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bazarr/rootfs/etc/cont-init.d/20-folders.sh b/bazarr/rootfs/etc/cont-init.d/20-folders.sh index 05c7c8e6b..c67db26df 100755 --- a/bazarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/bazarr/rootfs/etc/cont-init.d/20-folders.sh @@ -24,7 +24,7 @@ slug=bazarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/lidarr/rootfs/etc/cont-init.d/20-folders.sh b/lidarr/rootfs/etc/cont-init.d/20-folders.sh index 30e6a4e38..4481bc107 100755 --- a/lidarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/lidarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=lidarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh index a514c680d..0f639bed1 100755 --- a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh @@ -6,7 +6,7 @@ slug=prowlarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/radarr/rootfs/etc/cont-init.d/20-folders.sh b/radarr/rootfs/etc/cont-init.d/20-folders.sh index 65e74638d..e1f233b80 100755 --- a/radarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/radarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=radarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/readarr/rootfs/etc/cont-init.d/20-folders.sh b/readarr/rootfs/etc/cont-init.d/20-folders.sh index 771e5e9a0..c1f1ab677 100755 --- a/readarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/readarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=readarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/sonarr/rootfs/etc/cont-init.d/20-folders.sh b/sonarr/rootfs/etc/cont-init.d/20-folders.sh index 2b0945434..2e245acb0 100755 --- a/sonarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/sonarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=sonarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - tar -C /homeassistant/addons_config/"$slug" --exclude=addons_config -cf - . | tar -C /config -xf - || true + cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi From e51a99f686740f296dda71730a0155916c8165ca Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Thu, 8 Jan 2026 14:49:15 +0100 Subject: [PATCH 5/5] Copy dotfiles during legacy migration --- bazarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- lidarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- prowlarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- radarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- readarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- sonarr/rootfs/etc/cont-init.d/20-folders.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bazarr/rootfs/etc/cont-init.d/20-folders.sh b/bazarr/rootfs/etc/cont-init.d/20-folders.sh index c67db26df..ef9a7d6c0 100755 --- a/bazarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/bazarr/rootfs/etc/cont-init.d/20-folders.sh @@ -24,7 +24,7 @@ slug=bazarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + cp -rnf /homeassistant/addons_config/"$slug"/. /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/lidarr/rootfs/etc/cont-init.d/20-folders.sh b/lidarr/rootfs/etc/cont-init.d/20-folders.sh index 4481bc107..9ec40e47d 100755 --- a/lidarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/lidarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=lidarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + cp -rnf /homeassistant/addons_config/"$slug"/. /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh index 0f639bed1..182be8471 100755 --- a/prowlarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/prowlarr/rootfs/etc/cont-init.d/20-folders.sh @@ -6,7 +6,7 @@ slug=prowlarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + cp -rnf /homeassistant/addons_config/"$slug"/. /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/radarr/rootfs/etc/cont-init.d/20-folders.sh b/radarr/rootfs/etc/cont-init.d/20-folders.sh index e1f233b80..98d0dcd4d 100755 --- a/radarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/radarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=radarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + cp -rnf /homeassistant/addons_config/"$slug"/. /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/readarr/rootfs/etc/cont-init.d/20-folders.sh b/readarr/rootfs/etc/cont-init.d/20-folders.sh index c1f1ab677..dade3db6f 100755 --- a/readarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/readarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=readarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + cp -rnf /homeassistant/addons_config/"$slug"/. /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi diff --git a/sonarr/rootfs/etc/cont-init.d/20-folders.sh b/sonarr/rootfs/etc/cont-init.d/20-folders.sh index 2e245acb0..b65e2b5eb 100755 --- a/sonarr/rootfs/etc/cont-init.d/20-folders.sh +++ b/sonarr/rootfs/etc/cont-init.d/20-folders.sh @@ -18,7 +18,7 @@ slug=sonarr if [ -d "/homeassistant/addons_config/$slug" ]; then echo "Migrating /homeassistant/addons_config/$slug to /addon_configs/xxx-$slug" - cp -rnf /homeassistant/addons_config/"$slug"/* /config/ || true + cp -rnf /homeassistant/addons_config/"$slug"/. /config/ || true mv /homeassistant/addons_config/"$slug" /homeassistant/addons_config/"$slug"_migrated fi