X-Git-Url: https://git.grml.org/?p=grml-autoconfig.git;a=blobdiff_plain;f=autoconfig.functions;h=527dd800150a28ee22fd9ea3a61f4848fd161cfc;hp=e129caea21bae19821d8c58758d83d221509c55c;hb=c99d0f898981f2b5e4eb023cc013349f9025fbb0;hpb=8e5e4e1209a0795dc731c1e3ac2cc8efda9d6b2e diff --git a/autoconfig.functions b/autoconfig.functions index e129cae..527dd80 100755 --- a/autoconfig.functions +++ b/autoconfig.functions @@ -4,7 +4,7 @@ # Authors: grml-team (grml.org), (c) Klaus Knopper , (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2. -# Latest change: Son Mär 25 12:32:37 CEST 2007 [mika] +# Latest change: Die Apr 03 17:02:59 CEST 2007 [mika] ################################################################################ # {{{ path, variables, signals, umask, zsh @@ -270,39 +270,40 @@ config_language(){ [ -r /etc/sysconfig/keyboard ] && . /etc/sysconfig/keyboard - # Set default keyboard before interactive setup - if [ -n "$KEYTABLE" ] ; then - einfo "Running loadkeys for ${WHITE}${KEYTABLE}${NORMAL} in background" - loadkeys -q $KEYTABLE & - eend $? - fi - - if [ -n "$CONSOLEFONT" ] ; then - einfo "Running consolechars using ${CONSOLEFONT}" - consolechars -f $CONSOLEFONT || consolechars -d - eend $? - fi + # activate unicode console if running within utf8 environment + if [ -r /etc/default/locale ] ; then + if grep -q "LANG=.*UTF" /etc/default/locale ; then + einfo "Setting up unicode environment." + unicode_start + eend $? + fi + fi - # we have to set up all consoles, therefore loop it over all ttys: - if [ -n "$CHARMAP" ] ; then - einfo "Running consolechars for ${CHARMAP}" - NUM_CONSOLES=`fgconsole --next-available` - NUM_CONSOLES=`expr ${NUM_CONSOLES} - 1` - [ ${NUM_CONSOLES} -eq 1 ] && NUM_CONSOLES=6 - for vc in `seq 0 ${NUM_CONSOLES}` ; do - consolechars --tty=/dev/tty${vc} -m ${CHARMAP} ; RC=$? - done - eend ${RC} - fi + # Set default keyboard before interactive setup + if [ -n "$KEYTABLE" ] ; then + einfo "Running loadkeys for ${WHITE}${KEYTABLE}${NORMAL} in background" + loadkeys -q $KEYTABLE & + eend $? + fi - # activate unicode console if running within utf8 environment - if [ -r /etc/default/locale ] ; then - if grep -q "LANG=.*UTF" /etc/default/locale ; then - einfo "Setting up unicode environment." - unicode_start - eend $? - fi - fi + # we have to set up all consoles, therefore loop it over all ttys: + NUM_CONSOLES=`fgconsole --next-available` + NUM_CONSOLES=`expr ${NUM_CONSOLES} - 1` + [ ${NUM_CONSOLES} -eq 1 ] && NUM_CONSOLES=6 + if [ -n "$CHARMAP" ] ; then + einfo "Running consolechars for ${CHARMAP}" + for vc in `seq 0 ${NUM_CONSOLES}` ; do + consolechars --tty=/dev/tty${vc} -m ${CHARMAP} ; RC=$? + done + eend $RC + fi + if [ -n "$CONSOLEFONT" ] ; then + einfo "Running consolechars using ${CONSOLEFONT}" + for vc in `seq 0 ${NUM_CONSOLES}` ; do + consolechars --tty=/dev/tty${vc} -f $CONSOLEFONT || consolechars --tty=/dev/tty${vc} -d + done + eend $? + fi eoutdent } @@ -509,10 +510,21 @@ fi # activate serial console {{{ config_console(){ if checkbootparam "console"; then - einfo "Bootoption (for serial) console detected. Activating mgetty." + einfo "Bootoption (for serial) console detected." + eindent + if [ -r /etc/mgetty/mgetty.config ] ; then + MODE=$(getbootparam console | awk -F, '{print $2}') + MODE=${MODE%%n*} + [ -n "$MODE" ] || MODE=9600 # default mode + einfo "Setting speed in /etc/mgetty/mgetty.config to $MODE bps" + sed -i "s/speed [0-9]*/speed $MODE/" /etc/mgetty/mgetty.config ; eend $? + fi + + einfo "Activating mgetty." sed -i 's/^#T0/T0/' /etc/inittab sed -i 's/^#T1/T1/' /etc/inittab - /sbin/telinit q ; eend $? + /sbin/telinit q ; eend $? + eoutdent fi } # }}}