summaryrefslogtreecommitdiffstats
path: root/remote/rootfs/rootfs-stage32/data
diff options
context:
space:
mode:
authorSimon Rettberg2013-08-21 16:28:42 +0200
committerSimon Rettberg2013-08-21 16:28:42 +0200
commit65971818a573c47f182de461092d60bf1c63cc2b (patch)
tree5436f8bba904a37d497a0e34d93e7a28d9bbebaf /remote/rootfs/rootfs-stage32/data
parent[system.inc] Added case / var PACKET_HANDLER (dpkg, rpm) for packet (diff)
downloadtm-scripts-65971818a573c47f182de461092d60bf1c63cc2b.tar.gz
tm-scripts-65971818a573c47f182de461092d60bf1c63cc2b.tar.xz
tm-scripts-65971818a573c47f182de461092d60bf1c63cc2b.zip
[rootfs-stage32] Make it possible to run a script after adding an addon to the aufs stack. Call it addon-init and place it in the root directory of your addon
[vmplayer] Add such an addon-init script that will take care of setting up the vmplayer environment
Diffstat (limited to 'remote/rootfs/rootfs-stage32/data')
-rwxr-xr-xremote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons19
1 files changed, 14 insertions, 5 deletions
diff --git a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons
index 70a09924..a5dc9965 100755
--- a/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons
+++ b/remote/rootfs/rootfs-stage32/data/opt/openslx/scripts/systemd-setup_slx_addons
@@ -25,20 +25,29 @@ fi
SLX_BASE_PATH=$(read_from_cmdline "slxbase")
SLX_BASE_MNT="/opt/openslx/mnt"
-SYS_TMP="/tmp"
+SYS_TMP="/tmp/addons"
+mkdir -p "$SYS_TMP" || { echo "Failed to create $SYS_TMP"; exit 1; }
for ADDON in ${SLX_ADDONS}; do
# download the addon from the given URL
- ADDON_TARGET_PATH="${SYS_TMP}/$(basename $(echo ${ADDON})).sqfs"
+ ADDON_TARGET_PATH="${SYS_TMP}/$(basename "$ADDON").sqfs"
download "${SLX_BASE_PATH}/${ADDON}.sqfs" "${ADDON_TARGET_PATH}"
# now mount it to $SLX_MNT/<addon-name>
- ADDON_MOUNT_POINT="${SLX_BASE_MNT}/$(basename $(echo ${ADDON}) | awk -F "." '{print $1}')"
+ ADDON_MOUNT_POINT="${SLX_BASE_MNT}/$(basename "$ADDON")"
mkdir -p "$ADDON_MOUNT_POINT"
echo "Mounting ${ADDON_TARGET_PATH} to ${ADDON_MOUNT_POINT}"
- mount -t squashfs "$ADDON_TARGET_PATH" ${ADDON_MOUNT_POINT} || { echo "Failed to mount." && exit 1; }
+ mount -t squashfs "$ADDON_TARGET_PATH" "$ADDON_MOUNT_POINT" || { echo "Failed to mount." && exit 1; }
# now append it to /
echo "Appending ${ADDON_MOUNT_POINT} to /"
- mount -o remount,append:${ADDON_MOUNT_POINT}=ro / || { echo "Fail." && exit 1; }
+ mount -o "remount,append:${ADDON_MOUNT_POINT}=ro" / || { echo "Fail." && exit 1; }
+
+ # Run post-hook if available
+ if [ -x "$ADDON_MOUNT_POINT/addon-init" ]; then
+ echo "Running addon initialization script..."
+ "$ADDON_MOUNT_POINT/addon-init" || echo "Warning: Could not execute addon-init of $ADDON"
+ fi
done
+exit 0
+