86 lines
3.9 KiB
Bash
86 lines
3.9 KiB
Bash
#!/usr/bin/with-contenv bashio
|
|
# shellcheck shell=bash disable=SC2016
|
|
set -e
|
|
# ==============================================================================
|
|
# Displays a simple add-on banner on startup
|
|
# ==============================================================================
|
|
|
|
if ! bashio::supervisor.ping 2> /dev/null; then
|
|
# Degraded mode if no homeassistant
|
|
bashio::log.blue \
|
|
'-----------------------------------------------------------'
|
|
bashio::log.blue "Starting addon without HA support"
|
|
bashio::log.blue "Version : ${BUILD_VERSION:-1.0}"
|
|
bashio::log.blue "Please use Docker Compose for env variables"
|
|
bashio::log.blue \
|
|
'-----------------------------------------------------------'
|
|
# Use environment variables instead of addon options
|
|
echo "... convert scripts to use environment variables instead of addon options"
|
|
while IFS= read -r scripts; do
|
|
[[ "$scripts" == *"00-banner.sh"* ]] && continue
|
|
sed -i -e 's/bashio::config.has_value[[:space:]]*["'"'"']\([^"'"'"']*\)["'"'"']/[ ! -z "${\1:-}" ]/g' \
|
|
-e 's/bashio::config.true[[:space:]]*["'"'"']\([^"'"'"']*\)["'"'"']/[ ! -z "${\1:-}" ] \&\& [ "${\1:-}" = "true" ]/g' \
|
|
-e 's/\$(bashio::config[[:space:]]*["'"'"']\([^"'"'"']*\)["'"'"'])/${\1:-}/g' \
|
|
-e 's/\$(bashio::addon.port[[:space:]]*["'"'"']\([0-9]*\)["'"'"'])/${\1:-}/g' \
|
|
-e 's/bashio::config.require.ssl/true/g' \
|
|
-e 's/\$(bashio::addon.ingress_port)/""/g' \
|
|
-e 's/\$(bashio::addon.ingress_entry)/""/g' \
|
|
-e 's/\$(bashio::addon.ip_address)/""/g' "$scripts"
|
|
done < <(grep -srl "bashio" /etc/cont-init.d /custom-services.d /etc/services.d /etc/s6-overlay)
|
|
exit 0
|
|
fi
|
|
|
|
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::log.blue " Architecture: $(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.blue \
|
|
'-----------------------------------------------------------'
|
|
bashio::log.green \
|
|
' Provided by: https://github.com/alexbelgium/hassio-addons '
|
|
bashio::log.blue \
|
|
'-----------------------------------------------------------'
|
|
|
|
# ==============================================================================
|
|
# Global actions for all addons
|
|
# ==============================================================================
|
|
if bashio::config.has_value "PUID" && bashio::config.has_value "PGID" && id abc &> /dev/null; then
|
|
bashio::log.green ' Defining permissions for main user : '
|
|
PUID="$(bashio::config "PUID")"
|
|
PGID="$(bashio::config "PGID")"
|
|
usermod -o -u "$PUID" abc
|
|
groupmod -o -g "$PGID" abc
|
|
bashio::log.blue "User UID: $(id -u abc)"
|
|
bashio::log.blue "User GID: $(id -g abc)"
|
|
|
|
bashio::log.blue \
|
|
'-----------------------------------------------------------'
|
|
fi
|
|
|
|
# Clean bashrc file safely
|
|
if [ -f ~/.bashrc ]; then : > ~/.bashrc; fi
|