diff options
Diffstat (limited to 'initrd/distro-specs/gentoo/functions-2005.1')
-rw-r--r-- | initrd/distro-specs/gentoo/functions-2005.1 | 38 |
1 files changed, 25 insertions, 13 deletions
diff --git a/initrd/distro-specs/gentoo/functions-2005.1 b/initrd/distro-specs/gentoo/functions-2005.1 index 284fd046..a28019ef 100644 --- a/initrd/distro-specs/gentoo/functions-2005.1 +++ b/initrd/distro-specs/gentoo/functions-2005.1 @@ -2,20 +2,20 @@ # linux diskless clients (executed within initial # ramdisk after genconfig) # -# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 13-04-2006 +# Author(s): Dirk von Suchodoletz <dirk@goe.net>, 30-04-2006 # # Copyright: (c) 2006 - RZ Universitaet Freiburg # -# Version: 0.0.2a +# Version: 0.0.2b # distro specific stuff to initialize preinit () { - : + : } postinit () { # rm -rf /mnt/etc/runlevels/default/* -: + : } # distro specific general function called from servconfig script @@ -157,9 +157,7 @@ if [ "x$start_snmp" = "xyes" ] ; then # configure X display manager (runlevel links and kind of manager) config_xdm () { if [ -f /mnt/etc/${D_INITDIR}/xdm ] ; then - sed -e "s,DISPLAYMANAGER=.*,DISPLAYMANAGER=\"xdm\"," /mnt/etc/rc.conf \ - > /etc/rc.conf - cp /etc/rc.conf /mnt/etc/rc.conf + sed -e "s,DISPLAYMANAGER=.*,DISPLAYMANAGER=\"xdm\"," -i /mnt/etc/rc.conf ln -s /etc/${D_INITDIR}/xdm /mnt/etc/runlevels/boot/xdm ln -s /etc/${D_INITDIR}/xdm /mnt/etc/runlevels/default/xdm echo "xdm" >> /mnt/etc/runlevels/boot/.critical @@ -170,15 +168,13 @@ fi config_rc_entry () { local var=$1 local value=$2 -sed -e "s,$var=.*,$var=\"$value\"," /mnt/etc/rc.conf \ - > /etc/rc.conf -cp /etc/rc.conf /mnt/etc/rc.conf +sed -e "s,$var=.*,$var=\"$value\"," -i /mnt/etc/rc.conf } # configure gdm config_gdm () { config_rc_entry "DISPLAYMANAGER" "gdm" -# fixmee!! check for needed directories and permissions +# fixme!! check for needed directories and permissions #testmkd /mnt/var/lib/gdm #testmkd /mnt/var/log/gdm #strinfile "gdm:" /mnt/etc/passwd || echo "gdm:x:50:15:Gnome Display Manager \ @@ -210,8 +206,7 @@ config_rc_entry "CONSOLEFONT" "${CONSOLE_FONT}" config_acpi () { rllinker acpid # remove dependencies (runs unneeded services ...) -sed "/depend/,/}/d" /mnt/etc/${D_INITDIR}/acpid > /etc/rls -cp /etc/rls /mnt/etc/${D_INITDIR}/acpid +sed "/depend/,/}/d" -i /mnt/etc/${D_INITDIR}/acpid } # configure dbus (inter application communication for kde and gnome), hal @@ -265,5 +260,22 @@ rllinker "ypbind" config_vmware () { rllinker "vmware-prep" rllinker "vmware" +# during vmware sessions linux should not handle usb events/devices +testmkd /mnt/var/X11R6/bin +echo '#!/bin/sh'>> /mnt/etc/udev/rules.d/01-udev-vm.rules +echo -e "# Script for blocking linux from handling usb \ +devices\n# during vmware sessions. If you like to remove certain modules \ +add them\n# to the list below - Dirk von Suchodoletz, <dirk@goe.net>\n\ +STATE=1\nps aux|grep -i vmware|grep -v \"grep\" &>/dev/null && { STATE=0; \ +/sbin/rmmod usb-storage &>/tmp/null; }\n\ +[ x$ACTION = xremove ] && { [ $STATE = 0 ] && /sbin/rmmod usb-storage \ +&>/dev/null; }\nexit \$STATE" > /mnt/var/X11R6/bin/vm-udev +chmod u+x /mnt/var/X11R6/bin/vm-udev +echo -e "# special entry to block linux from reacting to usb events during \ +running\n# vmware sessions, generated by $0 during initramfs\n# Dirk von \ +Suchodoletz, <dirk@goe.net>\nSUBSYSTEM==\"usb\", ACTION==\"add\", \ +PROGRAM=\"/var/X11R6/bin/vm-udev\", OPTIONS=\"ignore_device\"\n\ +SUBSYSTEM==\"usb\", ACTION==\"remove\", PROGRAM=\"/var/X11R6/bin/vm-udev\"" \ + >> /mnt/etc/udev/rules.d/01-udev-vm.rules } |