diff --git a/fireflyiii/Dockerfile b/fireflyiii/Dockerfile index a52f30fbd..03accdeab 100644 --- a/fireflyiii/Dockerfile +++ b/fireflyiii/Dockerfile @@ -35,7 +35,7 @@ FROM ${BUILD_FROM} COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 00-global_var.sh 90-config_yaml.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/fireflyiii/rootfs/etc/cont-init.d/00-global_var.sh b/fireflyiii/rootfs/etc/cont-init.d/00-global_var.sh deleted file mode 100644 index 1798293bd..000000000 --- a/fireflyiii/rootfs/etc/cont-init.d/00-global_var.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################################### -# Export all addon options as env # -################################### - -# For all keys in options.json -JSONSOURCE="/data/options.json" - -# Export keys as env variables -# echo "All addon options were exported as variables" -mapfile -t arr < <(jq -r 'keys[]' ${JSONSOURCE}) -for KEYS in "${arr[@]}"; do - # export key - VALUE=$(jq ."$KEYS" ${JSONSOURCE}) - line="${KEYS}=${VALUE//[\"\']/}" - # Use locally - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - export $line - # Export the variable to run scripts - line="${KEYS}=${VALUE//[\"\']/} &>/dev/null" - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null -done - -################ -# Set timezone # -################ -if [ ! -z "TZ" ] && [ -f /etc/localtime ]; then - if [ -f /usr/share/zoneinfo/"$TZ" ]; then - echo "Timezone set from $(cat /etc/timezone) to $TZ" - ln -snf /usr/share/zoneinfo/"$TZ" /etc/localtime && echo "$TZ" >/etc/timezone - fi -fi diff --git a/fireflyiii/rootfs/etc/cont-init.d/92-config_yaml.sh b/fireflyiii/rootfs/etc/cont-init.d/92-config_yaml.sh deleted file mode 100644 index fd2ecb81a..000000000 --- a/fireflyiii/rootfs/etc/cont-init.d/92-config_yaml.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################## -# INITIALIZATION # -################## - -# Where is the config -CONFIGSOURCE=$(bashio::config "CONFIG_LOCATION") - -# Check if config file is there, or create one from template -if [ -f $CONFIGSOURCE ]; then - echo "Using config file found in $CONFIGSOURCE" -else - echo "No config file, creating one from template" - # Create folder - mkdir -p "$(dirname "${CONFIGSOURCE}")" - # Placing template in config - if [ -f /templates/config.yaml ]; then - # Use available template - cp /templates/config.yaml "$(dirname "${CONFIGSOURCE}")" - else - # Download template - TEMPLATESOURCE="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/zzz_templates/config.template" - curl -L -f -s $TEMPLATESOURCE --output $CONFIGSOURCE - fi - # Need to restart - bashio::log.fatal "Config file not found, creating a new one. Please customize the file in $CONFIGSOURCE before restarting." - # bashio::exit.nok -fi - -# Check if yaml is valid -EXIT_CODE=0 -yamllint -d relaxed $CONFIGSOURCE &>ERROR || EXIT_CODE=$? -if [ $EXIT_CODE = 0 ]; then - echo "Config file is a valid yaml" -else - cat ERROR - bashio::log.fatal "Config file has an invalid yaml format. Please check the file in $CONFIGSOURCE. Errors list above." - # bashio::exit.nok -fi - -# Export all yaml entries as env variables -# Helper function -function parse_yaml { - local prefix=$2 || local prefix="" - local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @ | tr @ '\034') - sed -ne "s|^\($s\):|\1|" \ - -e "s| #.*$||g" \ - -e "s|#.*$||g" \ - -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \ - -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 | - awk -F$fs '{ - indent = length($1)/2; - vname[indent] = $2; - for (i in vname) {if (i > indent) {delete vname[i]}} - if (length($3) > 0) { - vn=""; for (i=0; i/tmpfile -while IFS= read -r line; do - # Clean output - line=${line//[\"\']/} - # Check if secret - if [[ "${line}" == *'!secret '* ]]; then - echo "secret detected" - secret=${line#*secret } - # Check if single match - secretnum=$(sed -n "/$secret:/=" /config/secrets.yaml) - [[ $(echo $secretnum) == *' '* ]] && bashio::exit.nok "There are multiple matches for your password name. Please check your secrets.yaml file" - # Get text - secret=$(sed -n "/$secret:/p" /config/secrets.yaml) - secret=${secret#*: } - line="${line%%=*}=$secret" - fi - # Data validation - if [[ $line =~ ^.+[=].+$ ]]; then - export $line - # Export the variable - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null || true - # Show in log - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - else - bashio::exit.nok "$line does not follow the correct structure. Please check your yaml file." - fi -done <"/tmpfile" - -# Test mode -TZ=$(bashio::config "TZ") -if [ $TZ = "test" ]; then - echo "secret mode found, launching script in /config/test.sh" - cd /config - chmod 777 test.sh - ./test.sh -fi diff --git a/fireflyiii_data_importer/Dockerfile b/fireflyiii_data_importer/Dockerfile index ecc3e866d..20328e850 100644 --- a/fireflyiii_data_importer/Dockerfile +++ b/fireflyiii_data_importer/Dockerfile @@ -36,7 +36,7 @@ FROM ${BUILD_FROM}${BUILD_UPSTREAM} COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 00-global_var.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/fireflyiii_data_importer/rootfs/etc/cont-init.d/00-banner.sh b/fireflyiii_data_importer/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/fireflyiii_data_importer/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/fireflyiii_data_importer/rootfs/etc/cont-init.d/00-global_var.sh b/fireflyiii_data_importer/rootfs/etc/cont-init.d/00-global_var.sh deleted file mode 100644 index 1798293bd..000000000 --- a/fireflyiii_data_importer/rootfs/etc/cont-init.d/00-global_var.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################################### -# Export all addon options as env # -################################### - -# For all keys in options.json -JSONSOURCE="/data/options.json" - -# Export keys as env variables -# echo "All addon options were exported as variables" -mapfile -t arr < <(jq -r 'keys[]' ${JSONSOURCE}) -for KEYS in "${arr[@]}"; do - # export key - VALUE=$(jq ."$KEYS" ${JSONSOURCE}) - line="${KEYS}=${VALUE//[\"\']/}" - # Use locally - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - export $line - # Export the variable to run scripts - line="${KEYS}=${VALUE//[\"\']/} &>/dev/null" - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null -done - -################ -# Set timezone # -################ -if [ ! -z "TZ" ] && [ -f /etc/localtime ]; then - if [ -f /usr/share/zoneinfo/"$TZ" ]; then - echo "Timezone set from $(cat /etc/timezone) to $TZ" - ln -snf /usr/share/zoneinfo/"$TZ" /etc/localtime && echo "$TZ" >/etc/timezone - fi -fi diff --git a/flaresolverr/rootfs/etc/cont-init.d/00-banner.sh b/flaresolverr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/flaresolverr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/flexget/rootfs/etc/cont-init.d/00-banner.sh b/flexget/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/flexget/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/gazpar2mqtt/Dockerfile b/gazpar2mqtt/Dockerfile index 977e753f9..b7280a40c 100644 --- a/gazpar2mqtt/Dockerfile +++ b/gazpar2mqtt/Dockerfile @@ -29,7 +29,7 @@ ENV TZ=Europe/Paris COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 90-config_yaml.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/gazpar2mqtt/rootfs/etc/cont-init.d/00-banner.sh b/gazpar2mqtt/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/gazpar2mqtt/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/gazpar2mqtt/rootfs/etc/cont-init.d/91-mqtt_autodiscover.sh b/gazpar2mqtt/rootfs/etc/cont-init.d/89-mqtt_autodiscover.sh similarity index 100% rename from gazpar2mqtt/rootfs/etc/cont-init.d/91-mqtt_autodiscover.sh rename to gazpar2mqtt/rootfs/etc/cont-init.d/89-mqtt_autodiscover.sh diff --git a/gazpar2mqtt/rootfs/etc/cont-init.d/92-config_yaml.sh b/gazpar2mqtt/rootfs/etc/cont-init.d/92-config_yaml.sh deleted file mode 100644 index fd2ecb81a..000000000 --- a/gazpar2mqtt/rootfs/etc/cont-init.d/92-config_yaml.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################## -# INITIALIZATION # -################## - -# Where is the config -CONFIGSOURCE=$(bashio::config "CONFIG_LOCATION") - -# Check if config file is there, or create one from template -if [ -f $CONFIGSOURCE ]; then - echo "Using config file found in $CONFIGSOURCE" -else - echo "No config file, creating one from template" - # Create folder - mkdir -p "$(dirname "${CONFIGSOURCE}")" - # Placing template in config - if [ -f /templates/config.yaml ]; then - # Use available template - cp /templates/config.yaml "$(dirname "${CONFIGSOURCE}")" - else - # Download template - TEMPLATESOURCE="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/zzz_templates/config.template" - curl -L -f -s $TEMPLATESOURCE --output $CONFIGSOURCE - fi - # Need to restart - bashio::log.fatal "Config file not found, creating a new one. Please customize the file in $CONFIGSOURCE before restarting." - # bashio::exit.nok -fi - -# Check if yaml is valid -EXIT_CODE=0 -yamllint -d relaxed $CONFIGSOURCE &>ERROR || EXIT_CODE=$? -if [ $EXIT_CODE = 0 ]; then - echo "Config file is a valid yaml" -else - cat ERROR - bashio::log.fatal "Config file has an invalid yaml format. Please check the file in $CONFIGSOURCE. Errors list above." - # bashio::exit.nok -fi - -# Export all yaml entries as env variables -# Helper function -function parse_yaml { - local prefix=$2 || local prefix="" - local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @ | tr @ '\034') - sed -ne "s|^\($s\):|\1|" \ - -e "s| #.*$||g" \ - -e "s|#.*$||g" \ - -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \ - -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 | - awk -F$fs '{ - indent = length($1)/2; - vname[indent] = $2; - for (i in vname) {if (i > indent) {delete vname[i]}} - if (length($3) > 0) { - vn=""; for (i=0; i/tmpfile -while IFS= read -r line; do - # Clean output - line=${line//[\"\']/} - # Check if secret - if [[ "${line}" == *'!secret '* ]]; then - echo "secret detected" - secret=${line#*secret } - # Check if single match - secretnum=$(sed -n "/$secret:/=" /config/secrets.yaml) - [[ $(echo $secretnum) == *' '* ]] && bashio::exit.nok "There are multiple matches for your password name. Please check your secrets.yaml file" - # Get text - secret=$(sed -n "/$secret:/p" /config/secrets.yaml) - secret=${secret#*: } - line="${line%%=*}=$secret" - fi - # Data validation - if [[ $line =~ ^.+[=].+$ ]]; then - export $line - # Export the variable - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null || true - # Show in log - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - else - bashio::exit.nok "$line does not follow the correct structure. Please check your yaml file." - fi -done <"/tmpfile" - -# Test mode -TZ=$(bashio::config "TZ") -if [ $TZ = "test" ]; then - echo "secret mode found, launching script in /config/test.sh" - cd /config - chmod 777 test.sh - ./test.sh -fi diff --git a/grav/rootfs/etc/cont-init.d/00-banner.sh b/grav/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/grav/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/inadyn/rootfs/etc/cont-init.d/00-banner.sh b/inadyn/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/inadyn/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/jackett/Dockerfile b/jackett/Dockerfile index 67244db10..e61505318 100644 --- a/jackett/Dockerfile +++ b/jackett/Dockerfile @@ -40,7 +40,7 @@ ENV XDG_CONFIG_HOME="/config/addons_config" COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/jackett/rootfs/etc/cont-init.d/00-banner.sh b/jackett/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/jackett/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/jackett/rootfs/etc/cont-init.d/92-local_mounts.sh b/jackett/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/jackett/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/jackett/rootfs/etc/cont-init.d/92-smb_mounts.sh b/jackett/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 810599c2d..000000000 --- a/jackett/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo "$disk" | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/"$diskname" - chown -R root:root /mnt/"$diskname" - - #Tries to mount with default options - mount -t cifs -o rw,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}""$DOMAIN" "$disk" /mnt/"$diskname" 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$SMBVERS "$disk" /mnt/"$diskname" 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$SMBVERS$SECVERS "$disk" /mnt/"$disk" name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/"$diskname"/testaze && rm /mnt/"$diskname"/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L "$disk" -U "$CIFS_USERNAME"%"$CIFS_PASSWORD" || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/"$diskname" || true - fi - - done -fi diff --git a/jellyfin/Dockerfile b/jellyfin/Dockerfile index 3497fe77e..04f208db5 100644 --- a/jellyfin/Dockerfile +++ b/jellyfin/Dockerfile @@ -38,7 +38,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/jellyfin/rootfs/etc/cont-init.d/00-banner.sh b/jellyfin/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/jellyfin/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/jellyfin/rootfs/etc/cont-init.d/92-local_mounts.sh b/jellyfin/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/jellyfin/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/jellyfin/rootfs/etc/cont-init.d/92-smb_mounts.sh b/jellyfin/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/jellyfin/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/joplin/Dockerfile b/joplin/Dockerfile index aa979ea9b..7377c07fc 100644 --- a/joplin/Dockerfile +++ b/joplin/Dockerfile @@ -30,7 +30,7 @@ USER root COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 00-global_var.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/joplin/rootfs/etc/cont-init.d/00-banner.sh b/joplin/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/joplin/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/joplin/rootfs/etc/cont-init.d/00-global_var.sh b/joplin/rootfs/etc/cont-init.d/00-global_var.sh deleted file mode 100644 index 1798293bd..000000000 --- a/joplin/rootfs/etc/cont-init.d/00-global_var.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################################### -# Export all addon options as env # -################################### - -# For all keys in options.json -JSONSOURCE="/data/options.json" - -# Export keys as env variables -# echo "All addon options were exported as variables" -mapfile -t arr < <(jq -r 'keys[]' ${JSONSOURCE}) -for KEYS in "${arr[@]}"; do - # export key - VALUE=$(jq ."$KEYS" ${JSONSOURCE}) - line="${KEYS}=${VALUE//[\"\']/}" - # Use locally - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - export $line - # Export the variable to run scripts - line="${KEYS}=${VALUE//[\"\']/} &>/dev/null" - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null -done - -################ -# Set timezone # -################ -if [ ! -z "TZ" ] && [ -f /etc/localtime ]; then - if [ -f /usr/share/zoneinfo/"$TZ" ]; then - echo "Timezone set from $(cat /etc/timezone) to $TZ" - ln -snf /usr/share/zoneinfo/"$TZ" /etc/localtime && echo "$TZ" >/etc/timezone - fi -fi diff --git a/lidarr/Dockerfile b/lidarr/Dockerfile index 89cc6b06e..fda3da93a 100644 --- a/lidarr/Dockerfile +++ b/lidarr/Dockerfile @@ -39,7 +39,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/lidarr/rootfs/etc/cont-init.d/00-banner.sh b/lidarr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/lidarr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/lidarr/rootfs/etc/cont-init.d/92-local_mounts.sh b/lidarr/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/lidarr/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/lidarr/rootfs/etc/cont-init.d/92-smb_mounts.sh b/lidarr/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/lidarr/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/mealie/rootfs/etc/cont-init.d/00-banner.sh b/mealie/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/mealie/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/mylar3/Dockerfile b/mylar3/Dockerfile index d3e339d7f..6ca0899fc 100644 --- a/mylar3/Dockerfile +++ b/mylar3/Dockerfile @@ -37,7 +37,7 @@ RUN sed -i "s|/config|/data|g" /etc/services.d/*/run \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/mylar3/rootfs/etc/cont-init.d/00-banner.sh b/mylar3/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/mylar3/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/mylar3/rootfs/etc/cont-init.d/92-local_mounts.sh b/mylar3/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/mylar3/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/mylar3/rootfs/etc/cont-init.d/92-smb_mounts.sh b/mylar3/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/mylar3/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/nextcloud/Dockerfile b/nextcloud/Dockerfile index f0efac4e9..a4fc8e4ab 100644 --- a/nextcloud/Dockerfile +++ b/nextcloud/Dockerfile @@ -51,7 +51,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/nextcloud/rootfs/etc/cont-init.d/00-banner.sh b/nextcloud/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/nextcloud/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/nextcloud/rootfs/etc/cont-init.d/92-local_mounts.sh b/nextcloud/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/nextcloud/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/nextcloud/rootfs/etc/cont-init.d/92-smb_mounts.sh b/nextcloud/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 215169a2b..000000000 --- a/nextcloud/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/nzbget/Dockerfile b/nzbget/Dockerfile index a7e064437..164b9a5f8 100644 --- a/nzbget/Dockerfile +++ b/nzbget/Dockerfile @@ -39,7 +39,7 @@ RUN sed -i "s|/config|/config/addons_config/nzbget|g" /etc/services.d/nzbget/run COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/nzbget/rootfs/etc/cont-init.d/00-banner.sh b/nzbget/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/nzbget/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/nzbget/rootfs/etc/cont-init.d/92-local_mounts.sh b/nzbget/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/nzbget/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/nzbget/rootfs/etc/cont-init.d/92-smb_mounts.sh b/nzbget/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/nzbget/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/ombi/rootfs/etc/cont-init.d/00-banner.sh b/ombi/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/ombi/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/organizr/rootfs/etc/cont-init.d/00-banner.sh b/organizr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/organizr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/paperless_ng/Dockerfile b/paperless_ng/Dockerfile index 61123507b..960692b9b 100644 --- a/paperless_ng/Dockerfile +++ b/paperless_ng/Dockerfile @@ -42,7 +42,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh 90-config_yaml.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/paperless_ng/rootfs/etc/cont-init.d/00-banner.sh b/paperless_ng/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/paperless_ng/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/paperless_ng/rootfs/etc/cont-init.d/90-config_yaml.sh b/paperless_ng/rootfs/etc/cont-init.d/90-config_yaml.sh deleted file mode 100644 index fd2ecb81a..000000000 --- a/paperless_ng/rootfs/etc/cont-init.d/90-config_yaml.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################## -# INITIALIZATION # -################## - -# Where is the config -CONFIGSOURCE=$(bashio::config "CONFIG_LOCATION") - -# Check if config file is there, or create one from template -if [ -f $CONFIGSOURCE ]; then - echo "Using config file found in $CONFIGSOURCE" -else - echo "No config file, creating one from template" - # Create folder - mkdir -p "$(dirname "${CONFIGSOURCE}")" - # Placing template in config - if [ -f /templates/config.yaml ]; then - # Use available template - cp /templates/config.yaml "$(dirname "${CONFIGSOURCE}")" - else - # Download template - TEMPLATESOURCE="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/zzz_templates/config.template" - curl -L -f -s $TEMPLATESOURCE --output $CONFIGSOURCE - fi - # Need to restart - bashio::log.fatal "Config file not found, creating a new one. Please customize the file in $CONFIGSOURCE before restarting." - # bashio::exit.nok -fi - -# Check if yaml is valid -EXIT_CODE=0 -yamllint -d relaxed $CONFIGSOURCE &>ERROR || EXIT_CODE=$? -if [ $EXIT_CODE = 0 ]; then - echo "Config file is a valid yaml" -else - cat ERROR - bashio::log.fatal "Config file has an invalid yaml format. Please check the file in $CONFIGSOURCE. Errors list above." - # bashio::exit.nok -fi - -# Export all yaml entries as env variables -# Helper function -function parse_yaml { - local prefix=$2 || local prefix="" - local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @ | tr @ '\034') - sed -ne "s|^\($s\):|\1|" \ - -e "s| #.*$||g" \ - -e "s|#.*$||g" \ - -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \ - -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 | - awk -F$fs '{ - indent = length($1)/2; - vname[indent] = $2; - for (i in vname) {if (i > indent) {delete vname[i]}} - if (length($3) > 0) { - vn=""; for (i=0; i/tmpfile -while IFS= read -r line; do - # Clean output - line=${line//[\"\']/} - # Check if secret - if [[ "${line}" == *'!secret '* ]]; then - echo "secret detected" - secret=${line#*secret } - # Check if single match - secretnum=$(sed -n "/$secret:/=" /config/secrets.yaml) - [[ $(echo $secretnum) == *' '* ]] && bashio::exit.nok "There are multiple matches for your password name. Please check your secrets.yaml file" - # Get text - secret=$(sed -n "/$secret:/p" /config/secrets.yaml) - secret=${secret#*: } - line="${line%%=*}=$secret" - fi - # Data validation - if [[ $line =~ ^.+[=].+$ ]]; then - export $line - # Export the variable - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null || true - # Show in log - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - else - bashio::exit.nok "$line does not follow the correct structure. Please check your yaml file." - fi -done <"/tmpfile" - -# Test mode -TZ=$(bashio::config "TZ") -if [ $TZ = "test" ]; then - echo "secret mode found, launching script in /config/test.sh" - cd /config - chmod 777 test.sh - ./test.sh -fi diff --git a/paperless_ng/rootfs/etc/cont-init.d/92-local_mounts.sh b/paperless_ng/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/paperless_ng/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/paperless_ng/rootfs/etc/cont-init.d/92-smb_mounts.sh b/paperless_ng/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/paperless_ng/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/papermerge/Dockerfile b/papermerge/Dockerfile index a75dbccde..b47406c46 100644 --- a/papermerge/Dockerfile +++ b/papermerge/Dockerfile @@ -38,7 +38,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/papermerge/rootfs/etc/cont-init.d/00-banner.sh b/papermerge/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/papermerge/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/papermerge/rootfs/etc/cont-init.d/92-smb_mounts.sh b/papermerge/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/papermerge/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/photoprism/Dockerfile b/photoprism/Dockerfile index 3a32aef5b..83f29f781 100644 --- a/photoprism/Dockerfile +++ b/photoprism/Dockerfile @@ -44,7 +44,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/photoprism/rootfs/etc/cont-init.d/00-banner.sh b/photoprism/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/photoprism/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/photoprism/rootfs/etc/cont-init.d/92-local_mounts.sh b/photoprism/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/photoprism/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/photoprism/rootfs/etc/cont-init.d/92-smb_mounts.sh b/photoprism/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/photoprism/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/piwigo/Dockerfile b/piwigo/Dockerfile index 539ed6df1..7aacda667 100644 --- a/piwigo/Dockerfile +++ b/piwigo/Dockerfile @@ -36,7 +36,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/piwigo/rootfs/etc/cont-init.d/00-banner.sh b/piwigo/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/piwigo/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/piwigo/rootfs/etc/cont-init.d/92-local_mounts.sh b/piwigo/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/piwigo/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/piwigo/rootfs/etc/cont-init.d/92-smb_mounts.sh b/piwigo/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/piwigo/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/plex/Dockerfile b/plex/Dockerfile index 88f524d15..c2641003c 100644 --- a/plex/Dockerfile +++ b/plex/Dockerfile @@ -51,7 +51,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/plex/rootfs/etc/cont-init.d/00-banner.sh b/plex/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/plex/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/plex/rootfs/etc/cont-init.d/92-local_mounts.sh b/plex/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/plex/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/plex/rootfs/etc/cont-init.d/92-smb_mounts.sh b/plex/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/plex/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/portainer/rootfs/etc/cont-init.d/00-banner.sh b/portainer/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/portainer/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/prowlarr/Dockerfile b/prowlarr/Dockerfile index 8d56403df..11bcb90ec 100644 --- a/prowlarr/Dockerfile +++ b/prowlarr/Dockerfile @@ -40,7 +40,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/prowlarr/rootfs/etc/cont-init.d/00-banner.sh b/prowlarr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/prowlarr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/prowlarr/rootfs/etc/cont-init.d/00-ha-env.sh b/prowlarr/rootfs/etc/cont-init.d/00-ha-env.sh deleted file mode 100644 index 3b3e69246..000000000 --- a/prowlarr/rootfs/etc/cont-init.d/00-ha-env.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/with-contenv bashio - -for k in $(bashio::jq "${__BASHIO_ADDON_CONFIG}" 'keys | .[]'); do - printf "$(bashio::config $k)" > /var/run/s6/container_environment/$k -done \ No newline at end of file diff --git a/prowlarr/rootfs/etc/cont-init.d/92-smb_mounts.sh b/prowlarr/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/prowlarr/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/radarr/Dockerfile b/radarr/Dockerfile index 1e310f2d7..9ce7dd625 100644 --- a/radarr/Dockerfile +++ b/radarr/Dockerfile @@ -40,7 +40,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/radarr/rootfs/etc/cont-init.d/00-banner.sh b/radarr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/radarr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/radarr/rootfs/etc/cont-init.d/00-ha-env.sh b/radarr/rootfs/etc/cont-init.d/00-ha-env.sh deleted file mode 100644 index d48e84bd4..000000000 --- a/radarr/rootfs/etc/cont-init.d/00-ha-env.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/with-contenv bashio - -for k in $(bashio::jq "${__BASHIO_ADDON_CONFIG}" 'keys | .[]'); do - printf "$(bashio::config "$k")" >/var/run/s6/container_environment/"$k" -done diff --git a/radarr/rootfs/etc/cont-init.d/92-local_mounts.sh b/radarr/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 920edcd60..000000000 --- a/radarr/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ "${disk:0:2}" != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/"$disk" - chown -R "$(id -u):$(id -g)" /mnt/"$disk" - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/"$disk" ] && mount $devpath/"$disk" /share/"$disk" || true - # Mount - mount $devpath/"$disk" /mnt/"$disk" && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/radarr/rootfs/etc/cont-init.d/92-smb_mounts.sh b/radarr/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 1177e83ce..000000000 --- a/radarr/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo "$disk" | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/"$diskname" - chown -R root:root /mnt/"$diskname" - - #Tries to mount with default options - mount -t cifs -o rw,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}""$DOMAIN" "$disk" /mnt/"$diskname" 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$SMBVERS $disk /mnt/"$diskname" 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username="$CIFS_USERNAME",password="${CIFS_PASSWORD}"$SMBVERS$SECVERS "$disk" /mnt/"$disk" name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/"$diskname"/testaze && rm /mnt/"$diskname"/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L "$disk" -U "$CIFS_USERNAME"%"$CIFS_PASSWORD" || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/"$diskname" || true - fi - - done -fi diff --git a/readarr/Dockerfile b/readarr/Dockerfile index f6872efb3..ca63f84b5 100644 --- a/readarr/Dockerfile +++ b/readarr/Dockerfile @@ -38,7 +38,7 @@ RUN sed -i "s|/config|/config/addons_config/radarr/readarr|g" /etc/services.d/re COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/readarr/rootfs/etc/cont-init.d/00-banner.sh b/readarr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/readarr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/readarr/rootfs/etc/cont-init.d/00-ha-env.sh b/readarr/rootfs/etc/cont-init.d/00-ha-env.sh deleted file mode 100644 index 342068f41..000000000 --- a/readarr/rootfs/etc/cont-init.d/00-ha-env.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/with-contenv bashio - -for k in $(bashio::jq "${__BASHIO_ADDON_CONFIG}" 'keys | .[]'); do - printf "$(bashio::config $k)" > /var/run/s6/container_environment/$k -done diff --git a/readarr/rootfs/etc/cont-init.d/92-local_mounts.sh b/readarr/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/readarr/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/readarr/rootfs/etc/cont-init.d/92-smb_mounts.sh b/readarr/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/readarr/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/requestrr/rootfs/etc/cont-init.d/00-banner.sh b/requestrr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/requestrr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/requestrr/rootfs/etc/cont-init.d/00-ha-env b/requestrr/rootfs/etc/cont-init.d/00-ha-env deleted file mode 100644 index 342068f41..000000000 --- a/requestrr/rootfs/etc/cont-init.d/00-ha-env +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/with-contenv bashio - -for k in $(bashio::jq "${__BASHIO_ADDON_CONFIG}" 'keys | .[]'); do - printf "$(bashio::config $k)" > /var/run/s6/container_environment/$k -done diff --git a/resiliosync/Dockerfile b/resiliosync/Dockerfile index b149e1d23..12357c9df 100644 --- a/resiliosync/Dockerfile +++ b/resiliosync/Dockerfile @@ -49,7 +49,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/resiliosync/rootfs/etc/cont-init.d/00-banner.sh b/resiliosync/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/resiliosync/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/resiliosync/rootfs/etc/cont-init.d/92-local_mounts.sh b/resiliosync/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/resiliosync/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/resiliosync/rootfs/etc/cont-init.d/92-smb_mounts.sh b/resiliosync/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/resiliosync/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/scrutiny/rootfs/etc/cont-init.d/00-banner.sh b/scrutiny/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0d6085fd1..000000000 --- a/scrutiny/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' http://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/sonarr/Dockerfile b/sonarr/Dockerfile index b42eee91a..d688d512f 100644 --- a/sonarr/Dockerfile +++ b/sonarr/Dockerfile @@ -40,7 +40,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/sonarr/rootfs/etc/cont-init.d/00-banner.sh b/sonarr/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/sonarr/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/sonarr/rootfs/etc/cont-init.d/92-local_mounts.sh b/sonarr/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/sonarr/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/sonarr/rootfs/etc/cont-init.d/92-smb_mounts.sh b/sonarr/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/sonarr/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/teamspeak/rootfs/etc/cont-init.d/00-banner.sh b/teamspeak/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/teamspeak/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/transmission/Dockerfile b/transmission/Dockerfile index 847068d68..7095508e6 100644 --- a/transmission/Dockerfile +++ b/transmission/Dockerfile @@ -42,7 +42,7 @@ RUN sed -i "s|config|config/transmission|g" /etc/services.d/transmission/run \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 90-dns_set.sh 92-local_mounts.sh 92-smb_mounts.sh " # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/transmission/rootfs/etc/cont-init.d/00-banner.sh b/transmission/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/transmission/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/transmission/rootfs/etc/cont-init.d/90-dns_set.sh b/transmission/rootfs/etc/cont-init.d/90-dns_set.sh deleted file mode 100644 index dd80ef417..000000000 --- a/transmission/rootfs/etc/cont-init.d/90-dns_set.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/with-contenv bashio - -############### -# DNS SETTING # -############### - -# Avoid usage of local dns such as adguard home or pihole\n" - -if bashio::config.has_value 'DNS_server'; then - # Define variables - DNSSERVER=$(bashio::config 'DNS_server') - DNS="" - DNSLIST="" - - # Get DNS servers - for server in ${DNSSERVER//,/ } # Separate comma separated values - do - DNS="${DNS}nameserver $server\n" - DNSLIST="$server $DNSLIST" - done - - # Write resolv.conf - printf "${DNS}" > /etc/resolv.conf - chmod 644 /etc/resolv.conf - bashio::log.info "DNS SERVERS set to $DNSLIST" -else - bashio::log.info "DNS Servers option empty. Using default router (or HA) dns servers." -fi diff --git a/transmission/rootfs/etc/cont-init.d/92-local_mounts.sh b/transmission/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/transmission/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/transmission/rootfs/etc/cont-init.d/92-smb_mounts.sh b/transmission/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/transmission/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/ubooquity/Dockerfile b/ubooquity/Dockerfile index d3a2cadc5..993830f72 100644 --- a/ubooquity/Dockerfile +++ b/ubooquity/Dockerfile @@ -47,7 +47,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 92-local_mounts.sh 92-smb_mounts.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/ubooquity/rootfs/etc/cont-init.d/00-banner.sh b/ubooquity/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/ubooquity/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/ubooquity/rootfs/etc/cont-init.d/92-local_mounts.sh b/ubooquity/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/ubooquity/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/ubooquity/rootfs/etc/cont-init.d/92-smb_mounts.sh b/ubooquity/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 06410e554..000000000 --- a/ubooquity/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/webtrees/Dockerfile b/webtrees/Dockerfile index 6b5348afb..05cc231b1 100644 --- a/webtrees/Dockerfile +++ b/webtrees/Dockerfile @@ -38,7 +38,7 @@ RUN \ COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 90-config_yaml.sh 92-local_mounts.sh 92-smb_mounts.sh 99-custom_script.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/webtrees/rootfs/etc/cont-init.d/00-banner.sh b/webtrees/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/webtrees/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/webtrees/rootfs/etc/cont-init.d/90-config_yaml.sh b/webtrees/rootfs/etc/cont-init.d/90-config_yaml.sh deleted file mode 100644 index fd2ecb81a..000000000 --- a/webtrees/rootfs/etc/cont-init.d/90-config_yaml.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################## -# INITIALIZATION # -################## - -# Where is the config -CONFIGSOURCE=$(bashio::config "CONFIG_LOCATION") - -# Check if config file is there, or create one from template -if [ -f $CONFIGSOURCE ]; then - echo "Using config file found in $CONFIGSOURCE" -else - echo "No config file, creating one from template" - # Create folder - mkdir -p "$(dirname "${CONFIGSOURCE}")" - # Placing template in config - if [ -f /templates/config.yaml ]; then - # Use available template - cp /templates/config.yaml "$(dirname "${CONFIGSOURCE}")" - else - # Download template - TEMPLATESOURCE="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/zzz_templates/config.template" - curl -L -f -s $TEMPLATESOURCE --output $CONFIGSOURCE - fi - # Need to restart - bashio::log.fatal "Config file not found, creating a new one. Please customize the file in $CONFIGSOURCE before restarting." - # bashio::exit.nok -fi - -# Check if yaml is valid -EXIT_CODE=0 -yamllint -d relaxed $CONFIGSOURCE &>ERROR || EXIT_CODE=$? -if [ $EXIT_CODE = 0 ]; then - echo "Config file is a valid yaml" -else - cat ERROR - bashio::log.fatal "Config file has an invalid yaml format. Please check the file in $CONFIGSOURCE. Errors list above." - # bashio::exit.nok -fi - -# Export all yaml entries as env variables -# Helper function -function parse_yaml { - local prefix=$2 || local prefix="" - local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @ | tr @ '\034') - sed -ne "s|^\($s\):|\1|" \ - -e "s| #.*$||g" \ - -e "s|#.*$||g" \ - -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \ - -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 | - awk -F$fs '{ - indent = length($1)/2; - vname[indent] = $2; - for (i in vname) {if (i > indent) {delete vname[i]}} - if (length($3) > 0) { - vn=""; for (i=0; i/tmpfile -while IFS= read -r line; do - # Clean output - line=${line//[\"\']/} - # Check if secret - if [[ "${line}" == *'!secret '* ]]; then - echo "secret detected" - secret=${line#*secret } - # Check if single match - secretnum=$(sed -n "/$secret:/=" /config/secrets.yaml) - [[ $(echo $secretnum) == *' '* ]] && bashio::exit.nok "There are multiple matches for your password name. Please check your secrets.yaml file" - # Get text - secret=$(sed -n "/$secret:/p" /config/secrets.yaml) - secret=${secret#*: } - line="${line%%=*}=$secret" - fi - # Data validation - if [[ $line =~ ^.+[=].+$ ]]; then - export $line - # Export the variable - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null || true - # Show in log - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - else - bashio::exit.nok "$line does not follow the correct structure. Please check your yaml file." - fi -done <"/tmpfile" - -# Test mode -TZ=$(bashio::config "TZ") -if [ $TZ = "test" ]; then - echo "secret mode found, launching script in /config/test.sh" - cd /config - chmod 777 test.sh - ./test.sh -fi diff --git a/webtrees/rootfs/etc/cont-init.d/92-local_mounts.sh b/webtrees/rootfs/etc/cont-init.d/92-local_mounts.sh deleted file mode 100644 index 0920d68bd..000000000 --- a/webtrees/rootfs/etc/cont-init.d/92-local_mounts.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/with-contenv bashio - -###################### -# MOUNT LOCAL SHARES # -###################### - -# Mount local Share if configured -if bashio::config.has_value 'localdisks'; then - - MOREDISKS=$(bashio::config 'localdisks') - echo "Local Disks mounting..." - - # Separate comma separated values - for disk in ${MOREDISKS//,/ }; do - - # Mount by device as default - devpath=/dev - - # Mount as label - [ ${disk:0:2} != "sd" ] && devpath=/dev/disk/by-label - - # Creates dir - mkdir -p /mnt/$disk - chown -R $(id -u):$(id -g) /mnt/$disk - # Legacy mounting : mount to share if still exists (avoid breaking changes) - [ -d /share/$disk ] && mount $devpath/$disk /share/$disk || true - # Mount - mount $devpath/$disk /mnt/$disk && bashio::log.info "Success! $disk mounted to /mnt/$disk" || (bashio::log.fatal "Unable to mount local drives! Please check the name." && rmdir /mnt/$disk) - - done - -fi diff --git a/webtrees/rootfs/etc/cont-init.d/92-smb_mounts.sh b/webtrees/rootfs/etc/cont-init.d/92-smb_mounts.sh deleted file mode 100644 index 3f4c7ff9c..000000000 --- a/webtrees/rootfs/etc/cont-init.d/92-smb_mounts.sh +++ /dev/null @@ -1,83 +0,0 @@ -!/usr/bin/with-contenv bashio - -######################### -# MOUNT SMB SHARES v1.6 # -######################### -if bashio::config.has_value 'networkdisks'; then - - # Define variables - MOREDISKS=$(bashio::config 'networkdisks') - CIFS_USERNAME=$(bashio::config 'cifsusername') - CIFS_PASSWORD=$(bashio::config 'cifspassword') - MOUNTED=false - SMBVERS="" - SECVERS="" - - # Mount CIFS Share if configured and if Protection Mode is active - echo 'Mounting smb share(s)...' - - if bashio::config.has_value 'cifsdomain'; then - DOMAIN=",domain=$(bashio::config 'cifsdomain')" - else - DOMAIN="" - fi - - # Mounting disks - for disk in ${MOREDISKS//,/ }; do # Separate comma separated values - - # Clean name of network share - disk=$(echo $disk | sed "s,/$,,") # Remove / at end of name - diskname=${disk//\\//} #replace \ with / - diskname=${diskname##*/} # Get only last part of the name - - # Data validation - if [[ ! $disk =~ ^.*+[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+[/]+.*+$ ]]; then - bashio::log.fatal "The structure of your \"networkdisks\" option : \"$disk\" doesn't seem correct, please use a structure like //123.12.12.12/sharedfolder,//123.12.12.12/sharedfolder2. If you don't use it, you can simply remove the text, this will avoid this error message in the future." - exit 0 - fi - - # Prepare mount point - mkdir -p /mnt/$diskname - chown -R root:root /mnt/$diskname - - #Tries to mount with default options - mount -t cifs -o rw,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$DOMAIN $disk /mnt/$diskname 2>ERRORCODE && MOUNTED=true || MOUNTED=false - - # if Fail test different smb and sec versions - if [ $MOUNTED = false ]; then - for SMBVERS in ",vers=3" ",vers=1.0" ",vers=2.1" ",vers=3.0" ",nodfs" ",uid=0,gid=0,forceuid,forcegid" ",noforceuid,noforcegid" ",${DOMAIN:-WORKGROUP}"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS $disk /mnt/$diskname 2>/dev/null && MOUNTED=true && break || MOUNTED=false - for SECVERS in ",sec=ntlmi" ",sec=ntlmv2" ",sec=ntlmv2i" ",sec=ntlmssp" ",sec=ntlmsspi" ",sec=ntlm" ",sec=krb5i" ",sec=krb5" ",iocharset=utf8"; do - mount -t cifs -o rw,file_mode=0777,dir_mode=0777,username=$CIFS_USERNAME,password=${CIFS_PASSWORD}$SMBVERS$SECVERS $disk /mnt/$disk name 2>/dev/null && MOUNTED=true && break 2 && break || MOUNTED=false - done - done - fi - - # Messages - if [ $MOUNTED = true ] && [ "mountpoint -q /mnt/$diskname" ]; then - #Test write permissions - touch /mnt/$diskname/testaze && rm /mnt/$diskname/testaze && - bashio::log.info "... $disk successfully mounted to /mnt/$diskname with options $SMBVERS$SECVERS" || - bashio::log.fatal "Disk is mounted, however unable to write in the shared disk. Please check UID/GID for permissions, and if the share is rw" - - else - # Mounting failed messages - bashio::log.fatal "Error, unable to mount $disk to /mnt/$diskname with username $CIFS_USERNAME, $CIFS_PASSWORD. Please check your remote share path, username, password, domain, try putting 0 in UID and GID" - bashio::log.fatal "Here is some debugging info :" - - # Provide debugging info - smbclient -V &>/dev/null || apt-get install smbclient || apk add --no-cache samba-client - #smbclient $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - smbclient -L $disk -U $CIFS_USERNAME%$CIFS_PASSWORD || true - - # Error code - bashio::log.fatal "Error read : $(/dev/null || true - rmdir /mnt/$diskname || true - fi - - done -fi diff --git a/wger/rootfs/etc/cont-init.d/00-banner.sh b/wger/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/wger/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/whoogle/Dockerfile b/whoogle/Dockerfile index 80e4e1faa..4baf040e8 100644 --- a/whoogle/Dockerfile +++ b/whoogle/Dockerfile @@ -31,7 +31,7 @@ FROM ${BUILD_FROM} COPY rootfs/ / # Modules -ARG MODULES="00-banner.sh" +ARG MODULES="00-banner.sh 00-global_var.sh" # Automatic modules download RUN if ! command -v bash >/dev/null 2>/dev/null; then (apt-get update && apt-get install -yqq --no-install-recommends bash || apk add --no-cache bash); fi && \ diff --git a/whoogle/rootfs/etc/cont-init.d/00-banner.sh b/whoogle/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/whoogle/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/whoogle/rootfs/etc/cont-init.d/00-global_var.sh b/whoogle/rootfs/etc/cont-init.d/00-global_var.sh deleted file mode 100644 index 1798293bd..000000000 --- a/whoogle/rootfs/etc/cont-init.d/00-global_var.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/with-contenv bashio - -################################### -# Export all addon options as env # -################################### - -# For all keys in options.json -JSONSOURCE="/data/options.json" - -# Export keys as env variables -# echo "All addon options were exported as variables" -mapfile -t arr < <(jq -r 'keys[]' ${JSONSOURCE}) -for KEYS in "${arr[@]}"; do - # export key - VALUE=$(jq ."$KEYS" ${JSONSOURCE}) - line="${KEYS}=${VALUE//[\"\']/}" - # Use locally - if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi - export $line - # Export the variable to run scripts - line="${KEYS}=${VALUE//[\"\']/} &>/dev/null" - sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null -done - -################ -# Set timezone # -################ -if [ ! -z "TZ" ] && [ -f /etc/localtime ]; then - if [ -f /usr/share/zoneinfo/"$TZ" ]; then - echo "Timezone set from $(cat /etc/timezone) to $TZ" - ln -snf /usr/share/zoneinfo/"$TZ" /etc/localtime && echo "$TZ" >/etc/timezone - fi -fi diff --git a/whoogle/rootfs/etc/cont-init.d/90-config_yaml.sh b/whoogle/rootfs/etc/cont-init.d/90-config_yaml.sh deleted file mode 100644 index 375fa3dab..000000000 --- a/whoogle/rootfs/etc/cont-init.d/90-config_yaml.sh +++ /dev/null @@ -1,101 +0,0 @@ -# #!/usr/bin/with-contenv bashio - -# ################## -# # INITIALIZATION # -# ################## - -# # Where is the config -# CONFIGSOURCE=$(bashio::config "CONFIG_LOCATION") - -# # Check if config file is there, or create one from template -# if [ -f "$CONFIGSOURCE" ]; then -# echo "Using config file found in $CONFIGSOURCE" -# else -# echo "No config file, creating one from template" -# # Create folder -# mkdir -p "$(dirname "${CONFIGSOURCE}")" -# # Placing template in config -# if [ -f /templates/config.yaml ]; then -# # Use available template -# cp /templates/config.yaml "$(dirname "${CONFIGSOURCE}")" -# else -# # Download template -# TEMPLATESOURCE="https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/zzz_templates/config.template" -# curl -L -f -s $TEMPLATESOURCE --output "$CONFIGSOURCE" -# fi -# # Need to restart -# bashio::log.fatal "Config file not found, creating a new one. Please customize the file in $CONFIGSOURCE before restarting." -# # bashio::exit.nok -# fi - -# # Check if yaml is valid -# EXIT_CODE=0 -# yamllint -d relaxed "$CONFIGSOURCE" &>ERROR || EXIT_CODE=$? -# if [ $EXIT_CODE = 0 ]; then -# echo "Config file is a valid yaml" -# else -# cat ERROR -# bashio::log.fatal "Config file has an invalid yaml format. Please check the file in $CONFIGSOURCE. Errors list above." -# # bashio::exit.nok -# fi - -# # Export all yaml entries as env variables -# # Helper function -# function parse_yaml { -# local prefix=$2 || local prefix="" -# local s='[[:space:]]*' w='[a-zA-Z0-9_]*' fs=$(echo @ | tr @ '\034') -# sed -ne "s|^\($s\):|\1|" \ -# -e "s| #.*$||g" \ -# -e "s|#.*$||g" \ -# -e "s|^\($s\)\($w\)$s:$s[\"']\(.*\)[\"']$s\$|\1$fs\2$fs\3|p" \ -# -e "s|^\($s\)\($w\)$s:$s\(.*\)$s\$|\1$fs\2$fs\3|p" $1 | -# awk -F$fs '{ -# indent = length($1)/2; -# vname[indent] = $2; -# for (i in vname) {if (i > indent) {delete vname[i]}} -# if (length($3) > 0) { -# vn=""; for (i=0; i/tmpfile -# while IFS= read -r line; do -# # Clean output -# line=${line//[\"\']/} -# # Check if secret -# if [[ "${line}" == *'!secret '* ]]; then -# echo "secret detected" -# secret=${line#*secret } -# # Check if single match -# secretnum=$(sed -n "/$secret:/=" /config/secrets.yaml) -# [[ $("$secretnum") == *' '* ]] && bashio::exit.nok "There are multiple matches for your password name. Please check your secrets.yaml file" -# # Get text -# secret=$(sed -n "/$secret:/p" /config/secrets.yaml) -# secret=${secret#*: } -# line="${line%%=*}=$secret" -# fi -# # Data validation -# if [[ $line =~ ^.+[=].+$ ]]; then -# export "{$line}" -# # Export the variable -# sed -i "1a export $line" /etc/services.d/*/*run* 2>/dev/null || true -# # Show in log -# if ! bashio::config.false "verbose"; then bashio::log.blue "$line"; fi -# else -# bashio::exit.nok "$line does not follow the correct structure. Please check your yaml file." -# fi -# done <"/tmpfile" - -# # Test mode -# TZ=$(bashio::config "TZ") -# if [ "$TZ" = "test" ]; then -# echo "secret mode found, launching script in /config/test.sh" -# cd /config || exit -# chmod 777 test.sh -# ./test.sh -# fi diff --git a/xteve/rootfs/etc/cont-init.d/00-banner.sh b/xteve/rootfs/etc/cont-init.d/00-banner.sh deleted file mode 100644 index 0ac294e9a..000000000 --- a/xteve/rootfs/etc/cont-init.d/00-banner.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/with-contenv bashio -# ============================================================================== -# Displays a simple add-on banner on startup -# ============================================================================== - -if bashio::supervisor.ping; then - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue " Add-on: $(bashio::addon.name)" - bashio::log.blue " $(bashio::addon.description)" - bashio::log.blue \ - '-----------------------------------------------------------' - - bashio::log.blue " Add-on version: $(bashio::addon.version)" - if bashio::var.true "$(bashio::addon.update_available)"; then - bashio::log.magenta ' There is an update available for this add-on!' - bashio::log.magenta \ - " Latest add-on version: $(bashio::addon.version_latest)" - bashio::log.magenta ' Please consider upgrading as soon as possible.' - else - bashio::log.green ' You are running the latest version of this add-on.' - fi - - bashio::log.blue " System: $(bashio::info.operating_system)" \ - " ($(bashio::info.arch) / $(bashio::info.machine))" - bashio::log.blue " Home Assistant Core: $(bashio::info.homeassistant)" - bashio::log.blue " Home Assistant Supervisor: $(bashio::info.supervisor)" - - bashio::log.blue \ - '-----------------------------------------------------------' - bashio::log.blue \ - ' Please, share the above information when looking for help' - bashio::log.blue \ - ' or support in, e.g., GitHub, forums' - bashio::log.green \ - ' https://github.com/alexbelgium/hassio-addons' - bashio::log.blue \ - '-----------------------------------------------------------' -fi diff --git a/webtrees/rootfs/etc/cont-init.d/99-custom_script.sh b/zzz_templates/99-custom_script.sh similarity index 100% rename from webtrees/rootfs/etc/cont-init.d/99-custom_script.sh rename to zzz_templates/99-custom_script.sh