diff options
author | Kurt J. Bosch <kjb-temp-2009@alpenjodel.de> | 2010-02-16 23:32:19 +0100 |
---|---|---|
committer | Thomas Bächler <thomas@archlinux.org> | 2010-02-16 23:51:27 +0100 |
commit | 0ff97e6d8289d18d231cedae7371a3bd7ecedf97 (patch) | |
tree | aac961770c0696c3b8d9beb26830a5ba7b9d361d | |
parent | 284670262b3254f0b7a0574b4cf017171637fbc9 (diff) | |
download | initscripts-0ff97e6d8289d18d231cedae7371a3bd7ecedf97.tar.xz |
Make consolefont code deferrable to avoid destroying splash
-rw-r--r-- | functions | 28 | ||||
-rwxr-xr-x | rc.sysinit | 26 |
2 files changed, 30 insertions, 24 deletions
@@ -271,6 +271,34 @@ run_hook() { done } +# Function for setting console font if required +set_consolefont() { + if [ -n "$CONSOLEFONT" ]; then + stat_busy "Loading Console Font: $CONSOLEFONT" + #CONSOLEMAP in UTF-8 shouldn't be used + if [ -n "$CONSOLEMAP" ] && echo "$LOCALE" | /bin/grep -qi utf ; then + CONSOLEMAP="" + fi + for i in /dev/tty[0-9]*; do + if [ -n "$CONSOLEMAP" ]; then + /usr/bin/setfont -m $CONSOLEMAP $CONSOLEFONT -C ${i} >/dev/null 2>&1 + else + /usr/bin/setfont $CONSOLEFONT -C ${i} >/dev/null 2>&1 + fi + done + if [ $? -ne 0 ]; then + stat_fail + else + for i in /dev/tty[0-9]*; do + printf "\033(K" > ${i} + done + # the $CONSOLE check helps us avoid this when running scripts from cron + echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\033(K"; fi' >>/etc/profile.d/locale.sh + stat_done + fi + fi +} + # Source additional functions at the end to allow overrides for f in /etc/rc.d/functions.d/*; do if [ -e $f ]; then @@ -373,30 +373,8 @@ else [ -n "$KEYMAP" ] && status "Loading Keyboard Map: $KEYMAP" /bin/loadkeys -q $KEYMAP fi -if [ -n "$CONSOLEFONT" ]; then - stat_busy "Loading Console Font: $CONSOLEFONT" - #CONSOLEMAP in UTF-8 shouldn't be used - if [ -n "$CONSOLEMAP" ] && echo "$LOCALE" | /bin/grep -qi utf ; then - CONSOLEMAP="" - fi - for i in /dev/tty[0-9]*; do - if [ -n "$CONSOLEMAP" ]; then - /usr/bin/setfont -m $CONSOLEMAP $CONSOLEFONT -C ${i} >/dev/null 2>&1 - else - /usr/bin/setfont $CONSOLEFONT -C ${i} >/dev/null 2>&1 - fi - done - if [ $? -ne 0 ]; then - stat_fail - else - for i in /dev/tty[0-9]*; do - printf "\033(K" > ${i} - done - # the $CONSOLE check helps us avoid this when running scripts from cron - echo 'if [ "$CONSOLE" = "" -a "$TERM" = "linux" -a -t 1 ]; then printf "\033(K"; fi' >>/etc/profile.d/locale.sh - stat_done - fi -fi +# Set console font if required +set_consolefont # Adding persistent network/cdrom generated rules if [ -f "/dev/.udev/tmp-rules--70-persistent-cd.rules" ]; then |