SOURCES: bootsplash.script (NEW) - readded for bootsplash-3.2
shadzik
shadzik at pld-linux.org
Sat May 6 00:25:45 CEST 2006
Author: shadzik Date: Fri May 5 22:25:45 2006 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- readded for bootsplash-3.2
---- Files affected:
SOURCES:
bootsplash.script (1.6 -> 1.7) (NEW)
---- Diffs:
================================================================
Index: SOURCES/bootsplash.script
diff -u /dev/null SOURCES/bootsplash.script:1.7
--- /dev/null Sat May 6 00:25:45 2006
+++ SOURCES/bootsplash.script Sat May 6 00:25:40 2006
@@ -0,0 +1,95 @@
+#!/bin/bash
+#
+# splash.sh - This shell script triggers bootsplash actions during
+# system boot/shutdown. It can be run by the init scripts repeatedly
+# specifying the currently executed system script.
+#
+# This script is used to play animations/sounds/show text/move the
+# progress bar, etc.
+#
+# We call this function from /etc/rc.status:rc_splash()
+#
+# This program is free software; you may redistribute it under
+# the terms of the GNU General Public License. This program has
+# absolutely no warranty.
+#
+# written 2002-2003 Stefan Reinauer, <stepan at suse.de>
+#
+# this script expects the following environment variables for an operable
+# progress bar:
+#
+# sscripts = number of start scripts to be executed for runlevel change
+# kscripts = number of stop scripts to be executed for runlevel change
+# progress = number of currently executed start/stop script
+# RUNLEVEL = runlevel to be reached.
+#
+# To play animations, it's advised that you have an animations.cfg in your
+# theme's config directory specifying the initscript name for an event and
+# the command to be executed:
+#
+# fsck start:bootanim start bounce.mng
+# master:bootanim stop
+#
+# See http://www.bootsplash.org/ for more information.
+#
+# Modified for PLD (arekm at pld-linux.org)
+
+[ -f /etc/sysconfig/bootsplash ] && . /etc/sysconfig/bootsplash
+
+_procsplash=$(cat /proc/splash 2> /dev/null)
+
+if [ -f /etc/bootsplash/themes/$THEME/config/animations.cfg ]; then
+ COMMAND="$(cat /etc/bootsplash/themes/$THEME/config/animations.cfg | grep "^$1"| cut -f2 -d\:)"
+ eval $COMMAND
+fi
+
+# assertions
+[ -e /proc/splash ] || exit 0
+[ -z "$progress" -a -z "$num" ] && exit 0
+[ -z "$(echo $_procsplash | grep on)" ] && exit 0
+
+# We chose verbose in grub
+cat /proc/cmdline | grep -v -q "splash=silent" && exit 0
+
+if [ "$previous" == "3" -o "$previous" == "5" ] ; then
+ if [ "$runlevel" = "3" -o "$runlevel" == "5" ] ; then
+ exit 0
+ fi
+fi
+
+# acquire data
+#
+num=$(( $sscripts + 2 ))
+_shutdown="no"
+_silent="no"
+cat /proc/splash | grep -q silent && _silent="yes"
+[ "$runlevel" == "6" -o "$runlevel" == "0" ] && _shutdown="yes"
+[ "$_shutdown" == "yes" ] && num=$(( $kscripts + 2 ))
+
+function box() { true; } # ignore box descriptions in the config file
+
+if [ -f "/etc/bootsplash/themes/$THEME/config/bootsplash-`/bin/fbresolution`.cfg" ]; then
+ . /etc/bootsplash/themes/$THEME/config/bootsplash-`/bin/fbresolution`.cfg
+fi
+
+# Print text string. (Booting/Shutting down the system. Press
+# F2 for verbose mode)
+#
+
+if [ "$progress" == 1 -o "$1" == "splash start" ]; then
+ [ "$_shutdown" == "yes" ] && ( echo "silent" > /proc/splash ; chvt 1)
+ _boot=$BOOT_TXT
+ [ "$_shutdown" == "yes" ] && _boot=$SHUTDOWN_TXT
+
+ if [ "$text_x" != "" -a "$text_y" != "" \
+ -a "$text_color" != "" -a "$text_size" != "" -a "$_silent" == "yes" ];
+ then
+ fbtruetype -x $text_x -y $text_y -t $text_color -s $text_size "$_boot"
+ fi
+fi
+
+# Now paint the progressbar. This is done via the proc
+# interface of the bootsplash.
+
+echo "show $(( 65534 * ( $progress + 1 ) / $num ))" > /proc/splash
+
================================================================
More information about the pld-cvs-commit
mailing list