X-Git-Url: http://git.grml.org/?p=grml-autoconfig.git;a=blobdiff_plain;f=autoconfig.functions;h=4cb5a651a6ca881c592bbec28e30418cceb948ba;hp=3956408a4d5c90e2448d548b10d2e67e5948b8e2;hb=2b4e769f8616ad88642735f79c188eac464a3b99;hpb=b005ba88d5cc0a48a6677755ccc8653ca590ee9a diff --git a/autoconfig.functions b/autoconfig.functions index 3956408..4cb5a65 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: Don Jul 12 15:33:48 CEST 2007 [mika] +# Latest change: Don Aug 02 11:01:10 CEST 2007 [mika] ################################################################################ # {{{ path, variables, signals, umask, zsh @@ -444,11 +444,13 @@ update_progress(){ config_timezone(){ # don't touch the files if running from harddisk: if [ -z "$INSTALLED" ]; then - einfo "Setting timezone." - KTZ="$(getbootparam tz 2>>$DEBUG)" - [ -f "/usr/share/zoneinfo/$KTZ" ] && TZ="$KTZ" - rm -f /etc/localtime - cp "/usr/share/zoneinfo/$TZ" /etc/localtime && eend 0 + KTZ="$(getbootparam tz 2>>$DEBUG)" + if [ -n "$KTZ" ] ; then + einfo "Setting timezone." + [ -f "/usr/share/zoneinfo/$KTZ" ] && TZ="$KTZ" + rm -f /etc/localtime + cp "/usr/share/zoneinfo/$TZ" /etc/localtime ; eend $? + fi fi } # }}} @@ -996,12 +998,12 @@ fi config_fstab(){ NOSWAP="yes" # we do not use swap by default! -if checkbootparam "swap" -o checkbootparam "anyswap" ; then +if checkbootparam "swap" || checkbootparam "anyswap" ; then NOSWAP='' checkbootparam "anyswap" && export ANYSWAP='yes' || export ANYSWAP="" fi -if checkbootparam "nofstab" -o checkbootparam "forensic" ; then +if checkbootparam "nofstab" || checkbootparam "forensic" ; then ewarn "Skipping /etc/fstab creation as requested on boot commandline." ; eend 0 else einfo "Scanning for harddisk partitions and creating /etc/fstab. (Disable this via boot option: nofstab)" @@ -1758,7 +1760,7 @@ fi } config_automount(){ -if checkbootparam noautoconfig -o checkbootparam forensic ; then +if checkbootparam noautoconfig || checkbootparam forensic ; then ewarn "Skipping running automount of device(s) labeled GRMLCFG as requested." ; eend 0 else if [ -z "$INSTALLED" ] ; then @@ -2039,8 +2041,8 @@ fi config_swraid(){ if [ -z "$INSTALLED" ] ; then # notice: checkbootparam "forensic" is just for users who don't know how to really use the bootoption - if checkbootparam 'noraid' -o checkbootparam 'noswraid' -o \ - checkbootparam 'forensic' -o checkbootparam 'raid=noautodetect' ; then + if checkbootparam 'noraid' || checkbootparam 'noswraid' -o \ + checkbootparam 'forensic' || checkbootparam 'raid=noautodetect' ; then ewarn "Skipping SW-RAID code as requested on boot commandline." ; eend 0 else if ! [ -x /sbin/mdadm ] ; then @@ -2177,6 +2179,19 @@ fi } # }}} +# {{{ check for broken ipw3945 driver which causes problems (especially on hd install) +config_ipw3945() { + if grep -q ipw3945 /proc/modules ; then + if ! iwconfig 2>/dev/null| grep -qe 'IEEE 802' -qe 'unassociated' ; then + ewarn "Broken ipw3945 network interface found, reloading module." + rmmod ipw3945 + modprobe ipw3945 + eend $? + fi + fi +} +# }}} + # {{{ disable console blanking config_blanking(){ if checkbootparam "noblank" ; then