X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=scripts%2Flive-bottom%2F20xconfig;h=abd96614458b69e85dabfaeeaea3e8feb793218b;hb=e66f79476042794195978ee641aa7ea0d9ca6e0a;hp=93c872208f12e026fce5ac5b101d840812e8ba09;hpb=9fc9e2a1a11b0edada38cb501fefe4f58aa414ac;p=live-boot-grml.git diff --git a/scripts/live-bottom/20xconfig b/scripts/live-bottom/20xconfig index 93c8722..abd9661 100755 --- a/scripts/live-bottom/20xconfig +++ b/scripts/live-bottom/20xconfig @@ -1,61 +1,121 @@ #!/bin/sh -PREREQ="" -DESCRIPTION="Configuring X..." +#set -e -. /scripts/live-functions +# initramfs-tools header + +PREREQ="" prereqs() { - echo "$PREREQ" + echo "${PREREQ}" } -case $1 in -# get pre-requisites -prereqs) - prereqs - exit 0 - ;; +case "${1}" in + prereqs) + prereqs + exit 0 + ;; esac -log_begin_msg "$DESCRIPTION" +# live-boot header -if [ "$TERM_TYPE" = "serial" ]; then - # Don't bother trying to configure or start X on a serial console - rm -f /etc/rc?.d/S??[gxk]dm - exit 0 +if [ -n "${NOXAUTOCONFIG}" ] +then + exit 0 fi -locale=en_US.UTF-8 - -for x in $(cat /proc/cmdline); do - case $x in - debian-installer/locale=*) - locale=${x#debian-installer/locale=} - ;; - locale=*) - locale=${x#locale=} - ;; - esac -done - -mount -n -o bind /sys /root/sys -mount -n -o bind /proc /root/proc -mount -n -o bind /dev /root/dev - -if [ -n "${XDEBCONF}" -a -x /root/usr/sbin/xdebconfigurator ]; then - # xdebconfigurator - chroot /root /usr/sbin/xdebconfigurator +. /scripts/live-functions + +# live-boot script + +if [ -n "${TEXTONLY}" ] +then + exit 0 fi -chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null <&1 >/dev/null +then + if [ "${TERM_TYPE}" = "serial" ] + then + # Don't bother trying to configure or start X on a serial + # console + rm -f /root/etc/rc?.d/S??[gkx]dm + exit 0 + fi + + locale=en_US.UTF-8 + + mount -o bind /sys /root/sys + mount -o bind /proc /root/proc + mount -o bind /dev /root/dev + + if [ -n "${XDEBCONF}" -a -x /root/usr/sbin/xdebconfigurator ] + then + # xdebconfigurator + chroot /root /usr/sbin/xdebconfigurator + fi + + if [ -n "${KOPTIONS}" ] + then + setoptions="set xserver-xorg/config/inputdevice/keyboard/options ${KOPTIONS}" + fi + + if [ -n "${KVARIANT}" ] + then + setvariant="set xserver-xorg/config/inputdevice/keyboard/variant ${KVARIANT}" + fi + + if [ -n "${KMODEL}" ] + then + setmodel="set xserver-xorg/config/inputdevice/keyboard/model ${KMODEL}" + fi + + if [ -n "${KLAYOUT}" ] + then + setlayout="set xserver-xorg/config/inputdevice/keyboard/layout ${KLAYOUT}" + fi + +chroot /root debconf-communicate -fnoninteractive live-boot > /dev/null << EOF +${setlayout} +${setvariant} +${setmodel} +${setoptions} +EOF + + live-reconfigure /root xserver-xorg 2>&1 \ + | grep -v "overwriting possibly-customised configuration" \ + | grep -v "file; backup in /etc/X11/xorg.conf" + + umount /root/sys + umount /root/proc + umount /root/dev +else + +cat > /root/etc/X11/xorg.conf << EOF +Section "Device" + Identifier "Configured Video Device" + Driver "vesa" +EndSection + +Section "Monitor" + Identifier "Configured Monitor" +EndSection + +Section "Screen" + Identifier "Default Screen" + Monitor "Configured Monitor" + Device "Configured Video Device" +EndSection EOF -DEBUG_XORG_PACKAGE=1 DEBUG_XORG_DEBCONF=1 LANG=$(grep "^${locale}" /root/usr/share/i18n/SUPPORTED | grep UTF-8 | sed -e 's, .*,,' -e q) live-reconfigure /root xserver-xorg -umount /root/sys -umount /root/proc -umount /root/dev +fi log_end_msg