home *** CD-ROM | disk | FTP | other *** search
- #! /bin/sh
- #
- # The usplash script makes sure that usplash exits at the end of
- # the boot sequence and re-run the console-screen.sh script to make
- # sure that the console fonts are actually set
- #
- # Written by Miquel van Smoorenburg <miquels@cistron.nl>.
- # Modified for Debian
- # by Ian Murdock <imurdock@gnu.ai.mit.edu>.
- #
- # Version: @(#)skeleton 1.9 26-Feb-2001 miquels@cistron.nl
- #
-
- PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
- DAEMON=/sbin/usplash
- NAME=usplash
- DESC="Userspace bootsplash utility"
-
- test -x $DAEMON || exit 0
-
- set -e
-
- usplash_quit() {
- # first some sanity checks if we actually have usplash on the system
- #
- # check if usplash is runing and if it does, exit it
- # then re-run console-screen.sh because it can't set console-fonts
- # properly while the screen is in graphics mode
- #
- # also check if we are ended up in console 8. This means that
- # no gdm/kdm/xdm was started (otherwise we would be on vt7).
- # It happens when e.g. usplash timed out
- if type setupcon >/dev/null 2>&1; then
- CONSOLE_SCREEN=
- elif [ -x /etc/init.d/console-screen.sh ]; then
- CONSOLE_SCREEN=/etc/init.d/console-screen.sh
- else
- CONSOLE_SCREEN=
- fi
- if type usplash >/dev/null 2>&1 && grep -q splash /proc/cmdline &&
- ( pidof usplash > /dev/null || [ "$(fgconsole 2>/dev/null)" = "8" ] ); then
- # Clear VT 8 of any console messages
- clear >/dev/tty8
-
- # ask usplash to go away
- usplash_write QUIT
-
- # wait until it is really gone or kill it if it dosn't exit
- i=0
- while pidof usplash > /dev/null; do
- i=$(($i + 1))
- if [ $i -gt 10 ]; then
- kill -9 `pidof usplash`
- break
- fi
- sleep 1
- done
-
- # reset all our virtual consoles, yay!
- if [ "$CONSOLE_SCREEN" ]; then
- $CONSOLE_SCREEN
- fi
- if [ "$(fgconsole 2>/dev/null)" = "8" ] && [ "$DO_NOT_SWITCH_VT" != "yes" ]; then
- chvt 1
- fi
- fi
- }
-
- case "$1" in
- start)
- usplash_quit
- ;;
- stop)
- usplash_write "TIMEOUT 15"
- ;;
- *)
- N=/etc/init.d/$NAME
- # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
- echo "Usage: $N {start|stop}" >&2
- exit 1
- ;;
- esac
-
- exit 0
-