diff --git a/bazarr/Dockerfile b/bazarr/Dockerfile index 6e26d3a6a..a2498b8ce 100644 --- a/bazarr/Dockerfile +++ b/bazarr/Dockerfile @@ -27,22 +27,21 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ S6_SERVICES_GRACETIME=0 -# GLOBAL LSIO MODIFICATIONS -# hadolint ignore=SC2015 +# Global LSIO modifications ARG CONFIGLOCATION="/config/addons_config/bazarr" -SHELL ["/bin/bash", "-o", "pipefail", "-c"] +# hadolint ignore=SC2015, SC2013 RUN \ # Avoid custom-init.d duplications - rm -f $(grep -sril "Potential tampering with custom" /etc/cont-init.d /etc/s6-overlay/s6-rc.d) \ - \ - # change config folder - && sed -i "s=/config=$CONFIGLOCATION || true=g" $(grep -sril '/config[ /$]' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d) \ + for file in $(grep -sril 'Potential tampering with custom' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do rm -f "$file"; done \ \ # Allow UID and GID setting - && for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do \ - sed -i 's/bash/bashio/g' "$file" && \ - sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' "$file" && \ - sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' "$file"; done + && for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i 's/bash/bashio/g' "$file" && sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' "$file" && sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' "$file"; done \ + \ + # Correct config location + && for file in $(grep -sril '/config[ /$]' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do sed -i "s=/config=$CONFIGLOCATION=g" "$file"; done \ + \ + # Avoid changing /config permissions + && for file in $(grep -srl "chown abc:abc \/config" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i "/chown abc:abc \/config/d" "$file"; done ################## # 3 Install apps # diff --git a/plex/Dockerfile b/plex/Dockerfile index 376e97c2a..766e71ccc 100644 --- a/plex/Dockerfile +++ b/plex/Dockerfile @@ -27,28 +27,30 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ S6_SERVICES_GRACETIME=0 -# Set shell -SHELL ["/bin/bash", "-o", "pipefail", "-c"] +# Image specific modifications +RUN \ + # CORRECT PLEX CLAIM + file="$(grep -sril 'Server claimed successfully, navigate to http://serverip:32400/web to complete plex setup' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d)" \ + && sed -i 's/with-contenv bash/with-contenv bashio/g' "$file" \ + && sed -i '2iexport PLEX_CLAIM=$(bashio::config "claim")' "$file" \ + && sed -i '3i[ $PLEX_CLAIM = "Get_from_https://www.plex.tv/claim" ] && bashio::log.warning "Please change the PLEX_CLAIM code from the options" && exit 1 || true' "$file" -# hadolint ignore=SC2016 +# Global LSIO modifications +ARG CONFIGLOCATION="/config" +# hadolint ignore=SC2015, SC2013 RUN \ # Avoid custom-init.d duplications - rm -f $(grep -sril "Potential tampering with custom" /etc/cont-init.d /etc/s6-overlay/s6-rc.d) \ - \ - # Prevent changing ownership of /config - && if [ -f /etc/cont-init.d/10-adduser ]; then sed -i "/chown abc:abc \/config$/d" /etc/cont-init.d/10-adduser; fi \ + for file in $(grep -sril 'Potential tampering with custom' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do rm -f "$file"; done \ \ # Allow UID and GID setting - && for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do \ - sed -i 's/bash/bashio/g' "$file" && \ - sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' "$file" && \ - sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' "$file"; done \ + && for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i 's/bash/bashio/g' "$file" && sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' "$file" && sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' "$file"; done \ \ - # CORRECT PLEX CLAIM + # Correct config location + && for file in $(grep -sril '/config[ /$]' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do sed -i "s=/config=$CONFIGLOCATION=g" "$file"; done \ \ - && sed -i 's/with-contenv bash/with-contenv bashio/g' /etc/cont-init.d/45-plex-claim \ - && sed -i '2iexport PLEX_CLAIM=$(bashio::config "claim")' /etc/cont-init.d/45-plex-claim \ - && sed -i '3i[ $PLEX_CLAIM = "Get_from_https://www.plex.tv/claim" ] && bashio::log.warning "Please change the PLEX_CLAIM code from the options" && exit 1 || true' /etc/cont-init.d/45-plex-claim + # Avoid changing /config permissions + && for file in $(grep -srl "chown abc:abc \/config" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i "/chown abc:abc \/config/d" "$file"; done + ################## # 3 Install apps # diff --git a/qbittorrent/Dockerfile b/qbittorrent/Dockerfile index 988a422e2..7fa9d563e 100644 --- a/qbittorrent/Dockerfile +++ b/qbittorrent/Dockerfile @@ -49,7 +49,7 @@ RUN \ # Global LSIO modifications ARG CONFIGLOCATION="/config" -# hadolint ignore=SC2015 +# hadolint ignore=SC2015, SC2013 RUN \ # Avoid custom-init.d duplications for file in $(grep -sril 'Potential tampering with custom' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do rm -f "$file"; done \ diff --git a/sonarr/Dockerfile b/sonarr/Dockerfile index 841402342..63c73590a 100644 --- a/sonarr/Dockerfile +++ b/sonarr/Dockerfile @@ -28,23 +28,21 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \ S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \ S6_SERVICES_GRACETIME=0 +# Global LSIO modifications +ARG CONFIGLOCATION="/config/addons_config/sonarr" +# hadolint ignore=SC2015, SC2013 RUN \ - # use /data instead of /config for hass.io environment - sed -i "s|/config|/config/addons_config/sonarr|g" /etc/services.d/sonarr/run \ - && sed -i "s|/config|/config/addons_config/sonarr|g" /etc/cont-init.d/30-config \ - \ # Avoid custom-init.d duplications - && grep -sril "Potential tampering with custom" /etc/cont-init.d /etc/s6-overlay/s6-rc.d | xargs -r rm \ - \ - # Prevent changing ownership of /config - #&& grep -sril "/config" /etc/cont-init.d /etc/s6-overlay/s6-rc.d | xargs grep -riL "/config/" | xargs -r rm \ - && if [ -f /etc/cont-init.d/10-adduser ]; then sed -i "/chown abc:abc \/config$/d" /etc/cont-init.d/10-adduser; fi \ + for file in $(grep -sril 'Potential tampering with custom' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do rm -f "$file"; done \ \ # Allow UID and GID setting - && for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do \ - sed -i 's/bash/bashio/g' "$file" && \ - sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' "$file" && \ - sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' "$file"; done + && for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i 's/bash/bashio/g' "$file" && sed -i 's/{PUID:-911}/(bashio::config "PUID")/g' "$file" && sed -i 's/{PGID:-911}/(bashio::config "PGID")/g' "$file"; done \ + \ + # Correct config location + && for file in $(grep -sril '/config[ /$]' /etc/cont-init.d /etc/services.d /etc/s6-overlay/s6-rc.d); do sed -i "s=/config=$CONFIGLOCATION=g" "$file"; done \ + \ + # Avoid changing /config permissions + && for file in $(grep -srl "chown abc:abc \/config" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i "/chown abc:abc \/config/d" "$file"; done ################## # 3 Install apps #