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, <[EMAIL PROTECTED]> +# +# 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 ([EMAIL PROTECTED]) + +[ -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 + ================================================================ _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
