diff options
Diffstat (limited to 'core/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-download_slx_addons')
-rwxr-xr-x | core/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-download_slx_addons | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/core/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-download_slx_addons b/core/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-download_slx_addons index 806e928f..5c6f86fd 100755 --- a/core/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-download_slx_addons +++ b/core/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-download_slx_addons @@ -1,5 +1,4 @@ -#!/bin/bash -# Needs full bash +#!/bin/ash # # Script to be called by systemd # @@ -42,7 +41,7 @@ mkdir -p "$DOWNLOAD_DEST" || { echo "Failed to create $DOWNLOAD_DEST"; exit 1; } if [ $# -eq 0 ]; then [ -z "${SLX_ADDONS}" ] && { echo "No addons configured. Nothing to do :-)."; exit 0; } for ADDON in ${SLX_ADDONS}; do - systemctl start "download-slx-addon@$ADDON.service" + systemctl --no-block start "download-slx-addon@$ADDON.service" done fi ## @@ -50,6 +49,10 @@ fi if [ $# -eq 1 ]; then ADDON="$1" ADDON_TARGET_PATH="${DOWNLOAD_DEST}/$(basename "$ADDON").sqfs" + if [ -f "${SLX_BASE_PATH}/${ADDON}.sqfs" ]; then + echo "Already downloaded, doing nothing" + exit 0 + fi if ! download "${SLX_BASE_PATH}/${ADDON}.sqfs" "${ADDON_TARGET_PATH}"; then slxlog --echo "addon-download" "Download of '${HTTP_BASE_PATH}/${ADDON}.sqfs' failed." exit 1 |