add check for /proc/xen in vmware-detection
[grml-autoconfig.git] / autoconfig.functions
index 1ea5608..5e0c39e 100755 (executable)
@@ -4,7 +4,7 @@
 # Authors:       grml-team (grml.org), (c) Klaus Knopper <knopper@knopper.net>, (c) Michael Prokop <mika@grml.org>
 # Bug-Reports:   see http://grml.org/bugs/
 # License:       This file is licensed under the GPL v2.
-# Latest change: Mon Nov 27 21:02:23 CET 2006 [mika]
+# Latest change: Mon Feb 05 12:37:33 CET 2007 [mika]
 ################################################################################
 
 # {{{ path, variables, signals, umask, zsh
@@ -197,7 +197,7 @@ config_language(){
 
  # set default to 'en' in live-cd mode if $LANGUAGE is not yet set:
  if [ -z "$INSTALLED" ] ; then
-    [ -n "$LANGUAGE" ] || LANGUAGE='en'
+    [ -n "$LANGUAGE" ] || LANGUAGE='en-utf8'
  fi
 
  # if bootoption lang is used update /etc/default/locale, otherwise *not*!
@@ -209,10 +209,11 @@ config_language(){
  if [ -z "$CONSOLEFONT" ] ; then
     if ! checkbootparam "nodefaultfont" >>$DEBUG 2>&1 ; then
        # [ -n "$UTF8" ] && CONSOLEFONT='LatArCyrHeb-16' || CONSOLEFONT='Lat15-Terminus16'
-       if [ -r /usr/share/consolefonts/Lat15-Terminus16.psf.gz ] ; then
-          CONSOLEFONT='Lat15-Terminus16'
+       # if [ -r /usr/share/consolefonts/Lat15-Terminus16.psf.gz ] ; then
+       if [ -r /usr/share/consolefonts/Uni3-Terminus16.psf.gz ] ; then
+          CONSOLEFONT='Uni3-Terminus16'
        else
-          ewarn "/usr/share/consolefonts/Lat15-Terminus16.psf.gz not available. Please upgrade package console-terminus." ; eend 1
+          ewarn "/usr/share/consolefonts/Uni3-Terminus16.psf.gz not available. Please upgrade package console-terminus." ; eend 1
        fi
     fi
  fi
@@ -280,9 +281,9 @@ config_language(){
      consolechars -f $CONSOLEFONT || consolechars -d
      eend $?
 
-     if [ -n "$UTF8" ] ; then
-        einfo "Notice: run 'filterm - dynafont' in your shell to enable a unicode capable console."
-     fi
+#     if [ -n "$UTF8" ] ; then
+#        einfo "Notice: run 'filterm - dynafont' in your shell to enable a unicode capable console."
+#     fi
   fi
 
   # we have to set up all consoles, therefore loop it over all ttys:
@@ -356,7 +357,20 @@ config_time(){
 # {{{ print kernel info
 config_kernel(){
   vmware-detect &>/dev/null && VMWARE="inside ${WHITE}VMWare${NORMAL}"
+  [ -d /proc/xen ] && VMWARE='' # vmware-detect returns '0' when running with a Xen-enabled kernel
   einfo "Running Linux Kernel $KERNEL $VMWARE" ; eend 0
+  if [ -r /proc/cpuinfo ] ; then
+     if egrep -q '^flags.*(vmx|svm)' /proc/cpuinfo ; then
+       eindent
+       einfo 'CPU(s) featuring virtualization technology detected' ; eend 0
+       eoutdent
+     fi
+  fi
+  if [ -d /proc/xen ] ; then
+     eindent
+     einfo 'Running kernel featuring support for Xen detected' ; eend 0
+     eoutdent
+  fi
 }
 # }}}
 
@@ -1606,9 +1620,20 @@ if checkbootparam startx ; then
 sudo -u $fstabuser -i /usr/bin/grml-x $WINDOWMANAGER 1>>$DEBUG
 EOF
    chmod 755 /etc/init.d/xstartup
-   sed -i 's/^allowed_users=.*/allowed_users=anybody/' /etc/X11/Xwrapper.config
-   sed -i 's#^6.*#6:2345:respawn:/bin/zsh --login -c "/etc/init.d/xstartup ; /bin/zsh"#'   /etc/inittab
+
+   if grep -q xstartup /etc/inittab ; then
+        sed -i 's#^6.*#6:2345:respawn:/bin/zsh --login -c "/etc/init.d/xstartup ; /bin/zsh"#'   /etc/inittab
+   else
+        echo '6:2345:respawn:/bin/zsh --login -c "/etc/init.d/xstartup ; /bin/zsh"' >> /etc/inittab
+   fi
    /sbin/telinit q ; eend $?
+
+   if grep -q '^allowed_users=' /etc/X11/Xwrapper.config ; then
+      sed -i 's/^allowed_users=.*/allowed_users=anybody/' /etc/X11/Xwrapper.config
+   else
+      echo 'allowed_users=anybody' >> /etc/X11/Xwrapper.config
+   fi
+
   else
     eerror "We are not running from CD - startx will not work, skipping it.
      Please use something like xdm, gdm or kdm for starting X on a harddisk system!" ; eend 1