new LSIO logic

This commit is contained in:
Alexandre
2022-09-09 17:57:16 +02:00
parent 24fcf7d609
commit ab85a9b1a6

View File

@@ -27,26 +27,24 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \
S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \
S6_SERVICES_GRACETIME=0
# spellcheck disable=SC2015
# hadolint ignore=SC2015,DL4006
# Global LSIO modifications
ARG CONFIGLOCATION="/config/addons_config/ombi"
# hadolint ignore=SC2015, SC2013
RUN \
# Avoid custom-init.d duplications
grep -sril "Potential tampering with custom" /etc/cont-init.d /etc/s6-overlay/s6-rc.d | xargs -r rm \
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 \
\
# 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 \
# Create new config folder if needed
&& for file in $(grep -srl "PUID:-911" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do sed -i "1a mkdir -p $CONFIGLOCATION" "$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 folder
&& grep -rl " /config" /etc/cont-init.d | xargs sed -i 's| /config| /config/addons_config/ombi|g' || true \
&& grep -rl "/config" /etc/services.d | xargs sed -i 's|/config|/config/addons_config/ombi|g' || true \
&& sed -i 's=/config/ombi=/config/addons_config/ombi || true=g' /etc/cont-init.d/10-adduser || true
# Correct config location
&& for file in $(grep -sril '/config[ /$]' /defaults /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 #