X-Git-Url: https://git.grml.org/?p=grml-autoconfig.git;a=blobdiff_plain;f=autoconfig.functions;h=44034e7df8c030965c642cbc52f713999d6b7f43;hp=e129caea21bae19821d8c58758d83d221509c55c;hb=04397dce21be5642ea52a49c3c072ce73d290cf1;hpb=8e5e4e1209a0795dc731c1e3ac2cc8efda9d6b2e diff --git a/autoconfig.functions b/autoconfig.functions index e129cae..44034e7 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: Fre Apr 13 12:49:52 CEST 2007 [mika] ################################################################################ # {{{ path, variables, signals, umask, zsh @@ -270,39 +270,43 @@ 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 + if checkgrmlsmall && [ -z "$INSTALLED" ] ; then + ewarn "Not runnning unicode_start: grml-small with reduced language support detected." ; eend 0 + else + einfo "Setting up unicode environment." + unicode_start ; eend $? + fi + 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 } @@ -388,8 +392,8 @@ if checkbootparam novmware ; then ewarn "Skipping running vmware specific stuff as requested on boot commandline." ; eend 0 else if [ -z "$INSTALLED" ] ; then - if ! checkbootparam qemu ; then - if vmware-detect ; then + if vmware-detect || stringinstring "BOOT_IMAGE=vmware " "$CMDLINE" ; then + if ! checkbootparam qemu ; then if [ -r /etc/X11/xorg.conf.vmware ] ; then einfo "VMware: Copying /etc/X11/xorg.conf.vmware to /etc/X11/xorg.conf" cp /etc/X11/xorg.conf.vmware /etc/X11/xorg.conf ; eend $? @@ -509,10 +513,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 } # }}} @@ -2119,6 +2134,18 @@ fi } # }}} +# {{{ Support customization +config_distri(){ +if checkbootparam "distri"; then + DISTRI="$(getbootparam 'distri' 2>>$DEBUG)" + if [ -r /cdrom/desktop/"$DISTRI".jpg ] ; then + [ -n "$BOOTDEBUG" ] && einfo "Debug: bootoption distri found and file /cdrom/desktop/$DISTRI present" && eend 0 + cp /cdrom/desktop/"$DISTRI".jpg /usr/share/grml/desktop.jpg + fi +fi +} +# }}} + ### {{{ backwards compatible stuff config_environment(){ ewarn "config_environment is deprecated. Please set CONFIG_ENVIRONMENT in /etc/grml/autoconfig to 'no'." ; eend 0