X-Git-Url: https://git.grml.org/?p=grml-autoconfig.git;a=blobdiff_plain;f=autoconfig.functions;h=081aaca840226324ff70db673767a4bc3aab915f;hp=9c1bb651ce5982d2f0daa189816abe79a2c6fd5c;hb=a18ac56c34c92e182116c7811eb90edce9f3ccc1;hpb=84fb68bfac359c3d16704710c846fba706acb52f diff --git a/autoconfig.functions b/autoconfig.functions index 9c1bb65..081aaca 100755 --- a/autoconfig.functions +++ b/autoconfig.functions @@ -551,7 +551,7 @@ eoutdent config_fast(){ if checkbootparam 'fast'; then ewarn "Bootoption fast detected. Skipping startup of grml-quickconfig." - sed -i 's#^1:.*#1:12345:respawn:/usr/bin/openvt -f -c 1 -w -- /bin/zsh#' /etc/inittab + sed -i '/1:/s#/usr/share/grml-scripts/run-welcome#/bin/zsh#' /etc/inittab /sbin/telinit q ; eend $? fi } @@ -692,54 +692,39 @@ fi # }}} # {{{ ACPI -config_acpi_apm(){ -if [ -d /proc/acpi ]; then - if checkbootparam 'noacpi'; then - ewarn "ACPI: Not loading modules as requested by boot option \"noacpi\"." ; eend 0 - elif checkbootparam 'nogrmlacpi' ; then - ewarn "ACPI: Not loading modules as requested by boot option \"nogrmlacpi\"." ; eend 0 +config_acpi(){ +if checkbootparam 'noacpi'; then + ewarn "ACPI: Not loading modules as requested by boot option \"noacpi\"." ; eend 0 +elif checkbootparam 'nogrmlacpi' ; then + ewarn "ACPI: Not loading modules as requested by boot option \"nogrmlacpi\"." ; eend 0 +elif [ ! -d /proc/acpi ] ; then + ewarn "ACPI: Kernel support not present." ; eend 0 +else + einfo "ACPI: Loading modules (disable with boot option noacpi / nogrmlacpi): " + eindent + found="" + for a in /lib/modules/$KERNEL/kernel/drivers/acpi/*; do + basename="${a##*/}" + basename="${basename%%.*}" + case "$basename" in *_acpi) + egrep -qi "${basename%%_acpi}" /proc/acpi/dsdt 2>>$DEBUG || continue ;; + esac + modprobe $basename >>$DEBUG 2>&1 && found="yes" + local BASE="$BASE $basename" + done + if [ -n "$found" ] ; then + einfo "$BASE" ; eend 0 else - einfo "ACPI: Loading modules (disable with boot option noacpi / nogrmlacpi): " - eindent - found="" - for a in /lib/modules/$KERNEL/kernel/drivers/acpi/*; do - basename="${a##*/}" - basename="${basename%%.*}" - case "$basename" in *_acpi) - egrep -qi "${basename%%_acpi}" /proc/acpi/dsdt 2>>$DEBUG || continue ;; - esac - modprobe $basename >>$DEBUG 2>&1 && found="yes" - local BASE="$BASE $basename" - done - if [ -n "$found" ] ; then - einfo "$BASE" ; eend 0 - else - ewarn "(none)" ; eend 1 - fi - if ! ps x 2>>$DEBUG | grep -q /usr/sbin/acpid ; then - einfo "Starting acpi daemon." - /etc/init.d/acpid start >>$DEBUG 2>&1 ; eend $? - else - ewarn "acpi daemon already running." - eend 0 - fi - eoutdent + ewarn "(none)" ; eend 1 fi -else -# APM - if checkbootparam 'noapm'; then - ewarn "Skipping APM Bios detection as requested on boot commandline." ; eend 0 + if ! pgrep acpid >/dev/null ; then + einfo "Starting acpi daemon." + /etc/init.d/acpid start >>$DEBUG 2>&1 ; eend $? else - modprobe apm power_off=1 >>$DEBUG 2>&1 - if [ "$?" = "0" ] ; then - if [ -x /etc/init.d/apmd ] ;then - einfo "APM Bios found, enabling power management functions." - /etc/init.d/apmd start ; eend $? - fi - else - eerror "Loading apm module failed." ; eend 1 - fi + ewarn "acpi daemon already running." + eend 0 fi + eoutdent fi } # }}} @@ -1730,38 +1715,6 @@ fi } # }}} -# {{{ 915resolution -config_915resolution(){ -if checkbootparam '915resolution' ; then - OPTIONS="$(getbootparam '915resolution' 2>>$DEBUG)" - if [ -x /usr/sbin/915resolution ]; then - CMD=915resolution - MODE="" - XRESO="" - YRESO="" - if [ -n "$OPTIONS" ]; then - # Extra options - MODE="${OPTIONS%%,*}" - R="${OPTIONS#*,}" - if [ -n "$R" -a "$R" != "$OPTIONS" ]; then - OPTIONS="$R" - XRESO="${OPTIONS%%,*}" - R="${OPTIONS#*,}" - if [ -n "$R" -a "$R" != "$OPTIONS" ]; then - OPTIONS="$R" - YRESO="${OPTIONS%%,*}" - R="${OPTIONS#*,}" - fi - fi - fi - einfo "Running 915resolution with options ${MODE} ${XRESO} ${YRESO}." - [ -n "$MODE" ] && [ -n "$XRESO" ] && [ -n "$YRESO" ] && ( sh -c "$CMD $MODE $XRESO $YRESO" & ) - eend 0 - fi -fi -} -# }}} - # {{{ SW-RAID config_swraid(){ [ -n "$INSTALLED" ] && return 0 @@ -1771,6 +1724,7 @@ config_swraid(){ checkbootparam 'forensic' || checkbootparam 'raid=noautodetect' ; then ewarn "Skipping SW-RAID code as requested on boot commandline." ; eend 0 else + [ -e /proc/mdstat ] || modprobe md_mod if ! [ -x /sbin/mdadm ] ; then eerror "mdadm not available, can not execute it." ; eend 1 else @@ -1987,58 +1941,6 @@ config_tohd() } # }}} -# {{{ grml2hd: automatic installation -config_grml2hd(){ - -if checkbootparam "grml2hd" || checkbootparam "BOOT_IMAGE=grml2hd" ; then - -if checkbootparam 'user' ; then - NEWUSER='' - NEWUSER="$(getbootparam 'user' 2>>$DEBUG)" - sed -i "s/^NEWUSER=.*/NEWUSER=$NEWUSER/" /etc/grml2hd/config || export GRML2HD_FAIL=1 -fi - -if checkbootparam 'filesystem' ; then - FILESYSTEM='' - FILESYSTEM="$(getbootparam 'filesystem' 2>>$DEBUG)" - sed -i "s/^FILESYSTEM=.*/FILESYSTEM=$FILESYSTEM/" /etc/grml2hd/config || export GRML2HD_FAIL=1 -fi - -if checkbootparam 'partition' ; then - PARTITION='' - PARTITION="$(getbootparam 'partition' 2>>$DEBUG)" - # notice: the following checks whether the given partition is available, if not the skip - # execution of grml2hd as it might result in data loss... - if [ -r $PARTITION ] ; then - sed -i "s#^PARTITION=.*#PARTITION=$PARTITION#" /etc/grml2hd/config || export GRML2HD_FAIL=1 - else - ewarn "Partition $PARTITION does not exist. Skipping execution of grml2hd therefore." ; eend 1 - fi -fi - -if checkbootparam 'mbr' ; then - BOOT_PARTITION='' - BOOT_PARTITION="$(getbootparam 'mbr' 2>>$DEBUG)" - sed -i "s#^BOOT_PARTITION=.*#BOOT_PARTITION=$BOOT_PARTITION#" /etc/grml2hd/config || export GRML2HD_FAIL=1 -fi - -cat>|/usr/bin/grml2hd_noninteractive<