-fi
-}
-# }}}
-
-# {{{ run software synthesizer via speakup
-config_swspeak(){
-if checkbootparam swspeak ; then
- if [ -d /proc/speakup/ ] ; then
- einfo "Bootoption swspeak found. Kernel supports speakup." ; eend 0
- eindent
- if [ -x /etc/init.d/speech-dispatcher ] ; then
- einfo "Starting speech-dispatcher."
- /etc/init.d/speech-dispatcher start 1>>DEBUG ; eend $?
- einfo "Activating sftsyn in Kernel."
- echo sftsyn >/proc/speakup/synth_name ; eend $?
- einfo "Just run swspeak if you want to use software synthesizer via speakup."
- flite -o play -t "Finished activating software speakup. Just run swspeak when booting finished."
- else
- eerror "speech-dispatcher not available. swspeak will not work without it." ; eend 1
- flite -o play -t "speech-dispatcher not available. speakup will not work without it."
- fi
- eoutdent
- else
- eerror "Kernel does not seem to support speakup. Skipping swspeak." ; eend 1
- flite -o play -t "Kernel does not seem to support speakup. Sorry."
- fi
-fi
-}
-# }}}
-
-# {{{ Check for blind option or brltty
-config_blind(){
-BLIND=""
-checkbootparam "blind" && BLIND="yes"
-BRLTTY="$(getbootparam brltty 2>>$DEBUG)"
-
-if [ -n "$BLIND" -o -n "$BRLTTY" ]; then
- if [ -x /sbin/brltty ]; then
- # Blind option detected, start brltty now.
- # modprobe serial_core parport_serial generic_serial && echo "done"
- CMD=brltty
- BRLTYPE=""
- BRLDEV=""
- BRLTEXT=""
- if [ -n "$BRLTTY" ]; then
- # Extra options
- BRLTYPE="${BRLTTY%%,*}"
- R="${BRLTTY#*,}"
- if [ -n "$R" -a "$R" != "$BRLTTY" ]; then
- BRLTTY="$R"
- BRLDEV="${BRLTTY%%,*}"
- R="${BRLTTY#*,}"
- if [ -n "$R" -a "$R" != "$BRLTTY" ]; then
- BRLTTY="$R"
- BRLTEXT="${BRLTTY%%,*}"
- R="${BRLTTY#*,}"
- fi
- fi
- fi
- [ -n "$BRLTYPE" ] && CMD="$CMD -b $BRLTYPE"
- [ -n "$BRLDEV" ] && CMD="$CMD -d $BRLDEV"
- [ -n "$BRLTEXT" ] && CMD="$CMD -t $BRLTEXT"
- einfo "Starting braille-display manager."
-# ( exec $CMD & )
- ( sh -c "$CMD" & )
- sleep 2 && BLINDSOUND="yes"
- eend 0
- fi
-fi
-}
-# }}}
-
-# {{{ Interactive configuration
-config_interactive(){
- ewarn "config_interactive is deprecated nowadays."
- ewarn "Please set CONFIG_INTERACTIVE='no' in /etc/grml/autoconfig" ; eend 0
-}
-# }}}
-
-# {{{ AGP
-config_agp(){
-if checkbootparam forceagp ; then
-# Probe for AGP. Hope this can fail safely
- stringinfile "AGP" "/proc/pci" 2>>$DEBUG && { modprobe agpgart || modprobe agpgart agp_try_unsupported=1; } >>$DEBUG 2>&1 && einfo "AGP bridge detected." ; eend 0
-fi
-}
-# }}}
-
-# {{{ automount(er)
-config_automounter(){
-if checkbootparam automounter ; then
- RUNLEVEL="$(runlevel)"
- AUTOMOUNTER=""
- [ -x /etc/init.d/autofs ] && [ "$RUNLEVEL" != "N 1" ] && [ "$RUNLEVEL" != "N S" ] && AUTOMOUNTER="yes"
-
-addautomount(){
-# /dev/ice options
- d="${1##*/}"
- if [ -n "$AUTOMOUNTER" ]; then
- [ -d "/mnt/$d" -a ! -L "/mnt/$d" ] && rmdir /mnt/$d
- [ -d "/mnt/auto/$d" ] || mkdir -p "/mnt/auto/$d"
- [ -L "/mnt/$d" ] || ln -s "/mnt/auto/$d" "/mnt/$d"
- anew="$d -fstype=auto,$2 :$i"
- stringinfile "$anew" "/etc/auto.mnt" || echo "$anew" >> /etc/auto.mnt
- AUTOMOUNTS="$AUTOMOUNTS $d"
- new="$1 /mnt/auto/$d auto users,noauto,exec,$2 0 0"
- else
- [ -d /mnt/$d ] && mkdir -p /mnt/$d
- new="$1 /mnt/$d auto users,noauto,exec,$2 0 0"
- fi
- stringinfile "$new" "/etc/fstab" || echo "$new" >> /etc/fstab
-}
-
- AUTOMOUNTS="floppy cdrom"
-# Add new devices to /etc/fstab and /etc/auto.mnt
- for i in /dev/cdrom?*; do
- if [ -L $i ]; then
- addautomount "$i" "ro"
- fi
- done
-fi
-
-if [ -n "$AUTOMOUNTER" ]; then
-# Check for floppy dir, reinstall with automounter
- [ -d /mnt/floppy -a ! -L /mnt/floppy ] && rmdir /mnt/floppy
- [ -d /mnt/auto/floppy ] || mkdir -p /mnt/auto/floppy
- [ -L /mnt/floppy ] || ln -s /mnt/auto/floppy /mnt/floppy
- [ -d /mnt/cdrom -a ! -L /mnt/cdrom ] && rmdir /mnt/cdrom
- [ -d /mnt/auto/cdrom ] || mkdir -p /mnt/auto/cdrom
- [ -L /mnt/cdrom ] || ln -s /mnt/auto/cdrom /mnt/cdrom
- rm -f /etc/fstab.new
-# Replace paths from bootfloppy
- sed 's|/mnt/cdrom|/mnt/auto/cdrom|g;s|/mnt/floppy|/mnt/auto/floppy|g' /etc/fstab > /etc/fstab.new
- mv -f /etc/fstab.new /etc/fstab
-# Start automounter now
- einfo "Starting automounter for ${AUTOMOUNTS}."
- /etc/init.d/autofs start >>$DEBUG ; eend $?
-fi
-}
-# }}}
-
-# {{{ Collect partitions from /proc/partitions first for enabling DMA
-check_partitions(){
-partitions=""
-IDEDISKS=""
-while read major minor blocks partition relax; do
- partition="${partition##*/}"
- [ -z "$partition" -o ! -e "/dev/$partition" ] && continue
- case "$partition" in
- hd?) IDEDISKS="$IDEDISKS $partition";; # IDE Harddisk, entire disk
- sd?) ;; # SCSI Harddisk, entire disk
-# [hs]d*) partitions="$partitions /dev/$partition";; # IDE or SCSI disk partition
- [hs]d*|ub*) partitions="$partitions /dev/$partition";; # IDE, USB or SCSI disk partition
- esac
-done <<EOT
-$(awk 'BEGIN{old="__start"}{if($0==old){exit}else{old=$0;if($4&&$4!="name"){print $0}}}' /proc/partitions)
-EOT
-}
-check_partitions 1>/dev/null 2>&1 # avoid output "check_partitions:3: read-only file system"
-# }}}
-
-# {{{ Enable DMA for all IDE drives now if not disabled
-# Notice: Already done by linuxrc, but make sure it's done also on harddisk-installed systems
-config_dma(){
-if checkbootparam "nodma"; then
- ewarn "Skipping DMA accelleration as requested on boot commandline." ; eend 0
-else
- for d in $(cd /proc/ide 2>>$DEBUG && echo hd[a-z]); do
- if test -d /proc/ide/$d; then
- if egrep -q 'using_dma[ \t]+0' /proc/ide/$d/settings 2>>$DEBUG; then
- MODEL="$(cat /proc/ide/$d/model 2>>$DEBUG)"
- test -z "$MODEL" && MODEL="[GENERIC IDE DEVICE]"
- einfo "Enabling DMA acceleration for: ${WHITE}$d ${YELLOW}[${MODEL}]${NORMAL}"
- echo "using_dma:1" >/proc/ide/$d/settings
- eend 0
- fi
- fi
- done
-fi