summaryrefslogtreecommitdiffstats
path: root/modules.d/slx-splash/module-setup.sh
diff options
context:
space:
mode:
Diffstat (limited to 'modules.d/slx-splash/module-setup.sh')
-rwxr-xr-xmodules.d/slx-splash/module-setup.sh34
1 files changed, 25 insertions, 9 deletions
diff --git a/modules.d/slx-splash/module-setup.sh b/modules.d/slx-splash/module-setup.sh
index 58fd9561..00b51f5a 100755
--- a/modules.d/slx-splash/module-setup.sh
+++ b/modules.d/slx-splash/module-setup.sh
@@ -7,19 +7,35 @@ check() {
depends() {
echo slx-drm busybox
}
+slx_execpost() {
+ local _conf="/tmp/dracut-execpost-$RANDOM"
+ local _script="/usr/local/slx-scripts/${1##*/}"
+ inst_simple "${moddir}/scripts/${1}" "${_script}" || exit 10
+ cat > "$_conf" <<-EXECPOST
+[Service]
+ExecStartPost=-${_script}
+ EXECPOST
+ inst_simple "$_conf" "/etc/systemd/system/${2}.d/${1##*/}.conf" || exit 10
+ unlink "$_conf"
+}
install() {
mkdir -p "${initdir}/opt/openslx"
- cp -r "${moddir}/data/icons" "${initdir}/opt/openslx"
- cp "${moddir}/data/splash.ppm" "${initdir}/etc/splash.ppm"
- cp "${moddir}/scripts/splashtool" "${initdir}/usr/local/bin/splashtool"
+ cp -r "${moddir}/data/icons" "${initdir}/opt/openslx" || exit 1
+ cp "${moddir}/data/splash.ppm" "${initdir}/etc/splash.ppm" || exit 1
+ cp "${moddir}/scripts/splashtool" "${initdir}/usr/local/bin/splashtool" || exit 1
+
+ slx_service "s3-splash-init" "Initialize bootsplash" \
+ --wafter "dracut-pre-trigger.service"
- inst_hook pre-trigger 10 "${moddir}/scripts/slx-splash-init.sh"
+ # Change boot splash depending on boot mode = exam
inst_hook pre-pivot 00 "${moddir}/scripts/slx-splash-exam.sh"
- inst_hook pre-pivot 20 "${moddir}/scripts/restore-cursor.sh"
+ # Copy splashtool and icons to stage4, add service drop-in to reset console
+ inst_hook pre-pivot 20 "${moddir}/scripts/slx-splash-stage4.sh"
- inst_hook pre-mount 00 "${moddir}/scripts/slx-splash-icon-hdd.sh"
- inst_hook pre-mount 99 "${moddir}/scripts/slx-splash-icon-config.sh"
- inst_hook pre-pivot 00 "${moddir}/scripts/slx-splash-icon-rootfs.sh"
- inst_hook pre-pivot 99 "${moddir}/scripts/slx-splash-icon-puzzle.sh"
+ # Done in stage 4 by setup-partitions
+ #inst_hook pre-mount 00 "${moddir}/scripts/slx-splash-icon-hdd.sh"
+ slx_execpost "slx-splash-icon-config.sh" "s3-fetch-config.service"
+ slx_execpost "slx-splash-icon-rootfs.sh" "s3-mount-root.service"
+ slx_execpost "slx-splash-icon-puzzle.sh" "s3-setup-addons.service"
# NOTE: network related stuff is in integrated in slx-network
}