diff options
| author | Oliver Tappe | 2008-01-13 19:19:14 +0100 |
|---|---|---|
| committer | Oliver Tappe | 2008-01-13 19:19:14 +0100 |
| commit | db3bdeb697a06b35cce61b52d83858757e82b8ec (patch) | |
| tree | 4edca1f2e15dc4fcb6a7f77e1a65727743fdf320 /os-plugins/plugins/Theme/init-hooks | |
| parent | * avoid possible warnings about undefined values in regex-substitution (diff) | |
| download | core-db3bdeb697a06b35cce61b52d83858757e82b8ec.tar.gz core-db3bdeb697a06b35cce61b52d83858757e82b8ec.tar.xz core-db3bdeb697a06b35cce61b52d83858757e82b8ec.zip | |
reimplemented splashy stuff via Theme plugin:
* activated invocation of init-hooks
* removed explicit splashy calls from init (they are now done
in several init-hooks provided by the Theme plugin)
* the stage3 plugins are now invoked via '.' instead via a separate
shell, such that they can export changed environment variables
* changed invocation of initial_boot() - we now pass in the list
of initscripts as otherwise I have been unable to let this function
access a changed D_INITSCRIPTS variable (it would only see initial
content)
* moved invocation of initial_boot from servconfig to init (again
such that a changed D_INITSCRIPTS will be handled correctly)
* config-demuxer now passes the active plugins into mkdxsinitrd
* mkdxsinitrd accepts a list of active plugins (-p) and copies
the hooks directly into the initialramfs, such that they are
available immediately in stage3
The bootsplash stuff (splashy) seems to work properly, but the handling of displaymanager themes is currently broken. I will look into
that tomorrow.
git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1472 95ad53e4-c205-0410-b2fa-d234c58c8868
Diffstat (limited to 'os-plugins/plugins/Theme/init-hooks')
9 files changed, 28 insertions, 10 deletions
diff --git a/os-plugins/plugins/Theme/init-hooks/05-have-kernelvars/Theme.sh b/os-plugins/plugins/Theme/init-hooks/05-have-kernelvars/Theme.sh index c2d4551a..48c08581 100644 --- a/os-plugins/plugins/Theme/init-hooks/05-have-kernelvars/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/05-have-kernelvars/Theme.sh @@ -1,10 +1,10 @@ # splashy stuff seems to depend on /proc/fb with VESA!? # only activate with kernel option quiet if grep -E "(VESA|VGA)" /proc/fb > /dev/null 2>&1 \ - && grep -qi " quiet " /proc/cmdline > /dev/null 2>&1; then + && grep -qi " quiet " /proc/cmdline > /dev/null 2>&1 ; then export Theme_nosplash=0 else export Theme_nosplash=1 fi -[ ${Theme_nosplash} = 0 ] && /bin/splashy boot 2>/dev/null +[ ${Theme_nosplash} -eq 0 ] && /bin/splashy boot 2>/dev/null diff --git a/os-plugins/plugins/Theme/init-hooks/15-have-ip-config/Theme.sh b/os-plugins/plugins/Theme/init-hooks/15-have-ip-config/Theme.sh index 6a3b0737..357db1fc 100644 --- a/os-plugins/plugins/Theme/init-hooks/15-have-ip-config/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/15-have-ip-config/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 15" 2>/dev/null +[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 15" >/dev/null 2>&1 diff --git a/os-plugins/plugins/Theme/init-hooks/25-have-network-root/Theme.sh b/os-plugins/plugins/Theme/init-hooks/25-have-network-root/Theme.sh index 043d58d0..a0e4c7a9 100644 --- a/os-plugins/plugins/Theme/init-hooks/25-have-network-root/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/25-have-network-root/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 25" 2>/dev/null +[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 25" >/dev/null 2>&1 diff --git a/os-plugins/plugins/Theme/init-hooks/40-started-hw-config/Theme.sh b/os-plugins/plugins/Theme/init-hooks/40-started-hw-config/Theme.sh index 7b56298b..934162c5 100644 --- a/os-plugins/plugins/Theme/init-hooks/40-started-hw-config/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/40-started-hw-config/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 40" 2>/dev/null +[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 40" >/dev/null 2>&1 diff --git a/os-plugins/plugins/Theme/init-hooks/50-have-layered-fs/Theme.sh b/os-plugins/plugins/Theme/init-hooks/50-have-layered-fs/Theme.sh index 77505155..6801826d 100644 --- a/os-plugins/plugins/Theme/init-hooks/50-have-layered-fs/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/50-have-layered-fs/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 50" 2>/dev/null +[ ${Theme_nosplash} -eq 0 ] && /bin/splashy_update "progress 50" >/dev/null 2>&1 diff --git a/os-plugins/plugins/Theme/init-hooks/60-have-servconfig/Theme.sh b/os-plugins/plugins/Theme/init-hooks/60-have-servconfig/Theme.sh index a305e1b9..9a21f208 100644 --- a/os-plugins/plugins/Theme/init-hooks/60-have-servconfig/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/60-have-servconfig/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 60" 2>/dev/null +[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 60" >/dev/null 2>&1 diff --git a/os-plugins/plugins/Theme/init-hooks/70-before-plugins/Theme.sh b/os-plugins/plugins/Theme/init-hooks/70-before-plugins/Theme.sh index f96bf7da..96603a5a 100644 --- a/os-plugins/plugins/Theme/init-hooks/70-before-plugins/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/70-before-plugins/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 70" 2>/dev/null +[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 70" >/dev/null 2>&1 diff --git a/os-plugins/plugins/Theme/init-hooks/80-after-plugins/Theme.sh b/os-plugins/plugins/Theme/init-hooks/80-after-plugins/Theme.sh index 4a749752..2e976ac5 100644 --- a/os-plugins/plugins/Theme/init-hooks/80-after-plugins/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/80-after-plugins/Theme.sh @@ -1 +1,19 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 80" 2>/dev/null +if [ ${Theme_nosplash} -eq 0 ]; then + + /bin/splashy_update "progress 80" >/dev/null 2>&1 + + # make the splashy_update binary available in stage4 ... + mkdir -p /mnt/var/lib/openslx/bin + cp -a /bin/splashy_update /mnt/var/lib/openslx/bin + + # ... and create a runlevelscript that will stop splashy somewhere near + # the end of stage4 + d_mkrlscript init splashy.stop "Stopping Splashy ..." + echo -e "\t/var/lib/openslx/bin/splashy_update exit 2>/dev/null \ + \n\ttype killall >/dev/null 2>&1 && killall -9 splashy \ + \n\trm -f /var/lib/openslx/bin/splashy_update 2>/dev/null" \ + >>/mnt/etc/${D_INITDIR}/splashy.stop + d_mkrlscript close splashy.stop "" + D_INITSCRIPTS="${D_INITSCRIPTS} splashy.stop" + +fi
\ No newline at end of file diff --git a/os-plugins/plugins/Theme/init-hooks/99-handing-over/Theme.sh b/os-plugins/plugins/Theme/init-hooks/99-handing-over/Theme.sh index 92bd6572..7a2c5856 100644 --- a/os-plugins/plugins/Theme/init-hooks/99-handing-over/Theme.sh +++ b/os-plugins/plugins/Theme/init-hooks/99-handing-over/Theme.sh @@ -1 +1 @@ -[ ${Theme_nosplash} = 0 ] && /bin/splashy_update "progress 100" 2>/dev/null +[ ${Theme_nosplash} -eq 0 ] && /bin/splashy_update "progress 100" >/dev/null 2>&1 |
