--- /dev/null
+grml-x
+------
+
+grml-x creates a configuration file for xserver. The package does
+not depend on xbase-clients and xserver-xorg because it should be
+possible to install and use grml-x without a (working) xserver.
+If you want to use a full functional grml-x you have to install
+the packages of course.
+
+ -- Michael Prokop <mika@grml.org>, Die Jul 19 15:06:00 CEST 2005
--- /dev/null
+grml-x (0.3-12) unstable; urgency=low
+
+ * Add gnome-session (but leave gnomesession as fallback option)
+ to /etc/zsh/completion.d/grml-x.
+
+ -- Michael Prokop <mika@grml.org> Sat, 12 Aug 2006 10:26:22 +0200
+
+grml-x (0.3-11) unstable; urgency=low
+
+ * Take only one line from monitor parsed output. Thanks to Nico
+ for help investigating the problem.
+
+ -- Michael Prokop <mika@grml.org> Sat, 5 Aug 2006 08:38:53 +0200
+
+grml-x (0.3-10) unstable; urgency=low
+
+ * Updated hsync/vsync documentation (thanks for hint, Martin
+ Würtele!) and improved usage information.
+
+ -- Michael Prokop <mika@grml.org> Thu, 27 Jul 2006 21:57:23 +0200
+
+grml-x (0.3-9) unstable; urgency=low
+
+ * Added dwm to /etc/zsh/completion.d/grml-x.
+
+ -- Michael Prokop <mika@grml.org> Fri, 21 Jul 2006 00:42:53 +0200
+
+grml-x (0.3-8) unstable; urgency=low
+
+ * Fixed missing whitespace in manpage, thx for info - Manuel Fuhr.
+ * Updated header information of /etc/zsh/completion.d/grml-x.
+
+ -- Michael Prokop <mika@grml.org> Thu, 25 May 2006 13:09:52 +0200
+
+grml-x (0.3-7) unstable; urgency=low
+
+ * Removed old-grml-x.
+ * Updated zsh completion:
+ - adjusted module listing for new Xorg
+ - dynamically create list of available window managers
+
+ -- Michael Prokop <mika@grml.org> Sun, 30 Apr 2006 13:35:18 +0200
+
+grml-x (0.3-6) unstable; urgency=low
+
+ * It's 1280x1024 and not 1200x1024, adjusted in usage example.
+ Thanks for reporting, Gebi!
+
+ -- Michael Prokop <mika@grml.org> Fri, 21 Apr 2006 01:22:45 +0200
+
+grml-x (0.3-5) unstable; urgency=low
+
+ * Updated Xserver version recognition for Xorg 7.0.
+
+ -- Michael Prokop <mika@grml.org> Sat, 15 Apr 2006 13:16:58 +0200
+
+grml-x (0.3-4) unstable; urgency=low
+
+ * Deactivate RgbPath "/usr/X11R6/lib/X11/rgb" and
+ ModulePath "/usr/X11R6/lib/modules" for Xorg 7.0.
+ * Updated URLs to Xorg 7.0.
+ * Added (not activated) Option "MonitorLayout" "LVDS, CRT".
+ * Removed all the ModeLine stuff.
+ * Reworked list of modules which should be loaded.
+ See #346408 for details.
+ * Use FontPath /usr/share/fonts/X11/... instead of
+ /usr/X11R6/lib/X11/fonts/... if directory
+ /usr/share/fonts/X11 is present.
+
+ -- Michael Prokop <mika@grml.org> Thu, 13 Apr 2006 13:39:33 +0200
+
+grml-x (0.3-3) unstable; urgency=low
+
+ * Fixed typo in Suggests (xfonts-base-transcoded), thanks for
+ hint, Hecka!
+
+ -- Michael Prokop <mika@grml.org> Mon, 10 Apr 2006 11:48:38 +0200
+
+grml-x (0.3-2) unstable; urgency=low
+
+ * Added deactivated 'Option "MonitorLayout" "LVDS"' to xorg.conf.
+
+ -- Michael Prokop <mika@grml.org> Fri, 7 Apr 2006 19:06:43 +0200
+
+grml-x (0.3-1) unstable; urgency=low
+
+ * New grml version.
+
+ -- Michael Prokop <mika@grml.org> Thu, 6 Apr 2006 16:22:49 +0200
+
+grml-x (0.2-14) unstable; urgency=low
+
+ * Updated /etc/X11/xorg.conf.vmware - don't use higher
+ resolutions than 1024x768.
+
+ -- Michael Prokop <mika@grml.org> Thu, 23 Feb 2006 14:05:30 +0100
+
+grml-x (0.2-13) unstable; urgency=low
+
+ * Added evilwm to zsh completion.
+ * Ship grml-x of grml 0.5 release as old-grml-x to be able to
+ compare reliability.
+
+ -- Michael Prokop <mika@grml.org> Sun, 22 Jan 2006 00:50:21 +0100
+
+grml-x (0.2-12) unstable; urgency=low
+
+ * Mouse-detection requires root permissions. Fixed that.
+
+ -- Michael Prokop <mika@grml.org> Mon, 16 Jan 2006 11:43:17 +0100
+
+grml-x (0.2-11) unstable; urgency=low
+
+ * Updated /etc/X11/xorg.conf.example and /etc/X11/xorg.conf.vmware.
+
+ -- Michael Prokop <mika@grml.org> Sat, 14 Jan 2006 13:14:26 +0100
+
+grml-x (0.2-10) unstable; urgency=low
+
+ * Added several comments to xorg.conf.
+ * Deactivated loading of speedo module as it got deprecated upstream,
+ see http://wiki.x.org/wiki/DeprecatedInX11R7
+
+ -- Michael Prokop <mika@grml.org> Fri, 13 Jan 2006 23:00:55 +0100
+
+grml-x (0.2-9) unstable; urgency=low
+
+ * Updated manpage (added some details about implementation).
+ * Added - not yet activated - '# Load evdev' to X config file.
+ * Updated URL for xorg in X config file.
+
+ -- Michael Prokop <mika@grml.org> Fri, 13 Jan 2006 12:37:01 +0100
+
+grml-x (0.2-8) unstable; urgency=low
+
+ * Applied patch for "AlpsPS/2 ALPS GlidePoint" detection,
+ thanks Timo Boettcher!
+
+ -- Michael Prokop <mika@grml.org> Tue, 10 Jan 2006 14:47:46 +0100
+
+grml-x (0.2-7) unstable; urgency=low
+
+ * Use vesa-module if hwinfo does not find anything and bootparam
+ xmodule isn't specified either.
+
+ -- Michael Prokop <mika@grml.org> Sun, 1 Jan 2006 14:22:08 +0100
+
+grml-x (0.2-6) unstable; urgency=low
+
+ * Use new zsh completion mechanism via /etc/zsh/completion.d.
+
+ -- Michael Prokop <mika@grml.org> Sat, 10 Dec 2005 12:09:42 +0100
+
+grml-x (0.2-5) unstable; urgency=low
+
+ * Adjusted zsh-completion.
+
+ -- Michael Prokop <mika@grml.org> Tue, 6 Dec 2005 18:04:03 +0100
+
+grml-x (0.2-4) unstable; urgency=low
+
+ * Added options '-novref' and '-nohsync'.
+ * Modified infotext (let's use 'Warning' instead of 'Error' as
+ it does not fail).
+
+ -- Michael Prokop <mika@grml.org> Tue, 6 Dec 2005 14:56:58 +0100
+
+grml-x (0.2-3) unstable; urgency=low
+
+ * Lets' drop:
+
+ InputDevice "Synaptics" "CorePointer"
+
+ and use:
+
+ InputDevice "Synaptics" "AlwaysCore"
+
+ instead.
+
+ -- Michael Prokop <mika@grml.org> Sat, 12 Nov 2005 22:59:16 +0100
+
+grml-x (0.2-2) unstable; urgency=low
+
+ * Updated zsh-completion (removed ion2).
+
+ -- Michael Prokop <mika@grml.org> Fri, 11 Nov 2005 00:46:43 +0100
+
+grml-x (0.2-1) unstable; urgency=low
+
+ * grml-x seems to be quite stable.
+ Let's release version 0.2 for grml 0.5 therefore.
+
+ -- Michael Prokop <mika@grml.org> Sun, 23 Oct 2005 19:14:52 +0200
+
+grml-x (0.1-24) unstable; urgency=low
+
+ * Updated zsh-completion: added jwm, w9wm and windowlab to list
+ of available window managers.
+
+ -- Michael Prokop <mika@grml.org> Sun, 9 Oct 2005 13:06:13 +0200
+
+grml-x (0.1-23) unstable; urgency=low
+
+ * Options -nousb and -nosynaptics don't require arguments, fixed
+ zparseopts therefore.
+ * Added /etc/X11/xorg.conf.vmware and /etc/X11/xorg.conf.example.
+ * Added Options -nops2 (disable PS2/ mouse) and -genmouse (create
+ generic mouse entry).
+ * Added /etc/zsh/grml-x.completion and fixed some minor issues
+ with parameter parsing.
+
+ -- Michael Prokop <mika@grml.org> Sat, 8 Oct 2005 23:07:18 +0200
+
+grml-x (0.1-22) unstable; urgency=low
+
+ * Added option '-nousb' so we can deactivate the default entry
+ for /dev/input/mice (useful for example for VMware).
+
+ -- Michael Prokop <mika@grml.org> Wed, 5 Oct 2005 22:40:56 +0200
+
+grml-x (0.1-21) unstable; urgency=low
+
+ * Use /dev/input/mice instead of /dev/psaux for PS2-mouse.
+ Should work nowadays as expected.
+
+ -- Michael Prokop <mika@grml.org> Wed, 5 Oct 2005 19:18:05 +0200
+
+grml-x (0.1-20) unstable; urgency=low
+
+ * Adjusted path for zsh.
+ * Let's point $HWINFO to /usr/sbin/hwinfo.
+ * Big update of debian/control: recommends, depends and suggests...
+
+ -- Michael Prokop <mika@grml.org> Sat, 1 Oct 2005 00:57:13 +0200
+
+grml-x (0.1-19) unstable; urgency=low
+
+ * Added sudo to depends.
+
+ -- Michael Prokop <mika@grml.org> Sat, 1 Oct 2005 00:37:18 +0200
+
+grml-x (0.1-18) unstable; urgency=low
+
+ * Do not set resolution modes by default. Let the X server
+ deside which resolutions fits best.
+
+ -- Michael Prokop <mika@grml.org> Fri, 30 Sep 2005 16:47:37 +0200
+
+grml-x (0.1-17) unstable; urgency=low
+
+ * Improved ddc-handling and added option '-noddc':
+ - by default ddc probing is used
+ - if monitor does not support ddc, mode values are set
+ - if option -noddc' is set, mode values are set
+
+ -- Michael Prokop <mika@grml.org> Fri, 30 Sep 2005 13:02:03 +0200
+
+grml-x (0.1-16) unstable; urgency=low
+
+ * Updated grml-x-manpage to fix mandb-parsing-problem:
+ mandb: warning: /usr/share/man/man1/grml-x.1.gz: whatis parse for grml-x(1) failed
+
+ -- Michael Prokop <mika@grml.org> Sun, 25 Sep 2005 13:00:16 +0200
+
+grml-x (0.1-15) unstable; urgency=low
+
+ * Make sure the xconfig has the right permissions (root.root:644).
+
+ -- Michael Prokop <mika@grml.org> Sat, 24 Sep 2005 18:28:11 +0200
+
+grml-x (0.1-14) unstable; urgency=low
+
+ * Ok, we definitely need hsync and vsync on some computer.
+ Therefore we now have a '-nosync'-option which deactivates
+ hsync and vsync values.
+ * Updated manpage (mention -nosync and -nosynaptics).
+
+ -- Michael Prokop <mika@grml.org> Thu, 22 Sep 2005 16:11:14 +0200
+
+grml-x (0.1-13) unstable; urgency=low
+
+ * Upps, conflicts with grml-scripts 0.4-4 and not 0.4.4.
+
+ -- Michael Prokop <mika@grml.org> Thu, 22 Sep 2005 14:20:17 +0200
+
+grml-x (0.1-12) unstable; urgency=low
+
+ * Bumbed Standards-Version to 3.6.2.
+ * Added conflicts for grml-scripts <= 0.4.4.
+
+ -- Michael Prokop <mika@grml.org> Thu, 22 Sep 2005 14:10:28 +0200
+
+grml-x (0.1-11) unstable; urgency=low
+
+ * The "let's use X.org to detect present hardware support" release.
+ * Don't use hsync/vsync settings if not provided manually.
+ * Don't use Modes (1024x768 and so on) if not provided manually.
+
+ -- Michael Prokop <mika@grml.org> Thu, 22 Sep 2005 11:51:58 +0200
+
+grml-x (0.1-10) unstable; urgency=low
+
+ * Some fixes for being able to run 'grml-x' with root-permissions
+ on harddisk installation.
+
+ -- Michael Prokop <mika@grml.org> Thu, 15 Sep 2005 17:46:35 +0200
+
+grml-x (0.1-9) unstable; urgency=low
+
+ * Added option '-nosynaptics' for disabling synaptics touchpad (but
+ the touchpad itself should work anyway).
+ * Some small improvements regarding informational output, added
+ support for parsing '-h', -help' and '--help' as well.
+
+ -- Michael Prokop <mika@grml.org> Thu, 15 Sep 2005 12:57:54 +0200
+
+grml-x (0.1-8) unstable; urgency=low
+
+ * Removed /etc/X11/Xresources/ and /etc/X11/Xsession.d/.
+ * Improved cleanup of tmp-files in grml-x.
+
+ -- Michael Prokop <mika@grml.org> Sun, 31 Jul 2005 11:42:56 +0200
+
+grml-x (0.1-7) unstable; urgency=low
+
+ * startx/xinit started with options like ':8' (set specific
+ display) cause strange side effects on setup of fonts. :-/
+ Therefore don't use $DISPLAY as default but use it only if
+ specified via '-display #'.
+
+ -- Michael Prokop <mika@grml.org> Sat, 30 Jul 2005 12:05:51 +0200
+
+grml-x (0.1-6) unstable; urgency=low
+
+ * Updated manpage.
+ * Updated control-file (added Recommends:).
+ * Added README.Debian (provide info for Recommends:).
+
+ -- Michael Prokop <mika@grml.org> Tue, 19 Jul 2005 15:08:47 +0200
+
+grml-x (0.1-5) unstable; urgency=low
+
+ * Removed /usr/X11R6/lib/X11/xkb, should be fixed
+ upstream now.
+
+ -- Michael Prokop <mika@grml.org> Wed, 13 Jul 2005 20:51:12 +0200
+
+grml-x (0.1-4) unstable; urgency=low
+
+ * Fixed problem with synaptic touchpad.
+
+ -- Michael Prokop <mika@grml.org> Sun, 10 Jul 2005 13:04:32 +0200
+
+grml-x (0.1-3) unstable; urgency=low
+
+ * Slightly improved copyright file.
+
+ -- Michael Prokop <mika@grml.org> Sun, 3 Jul 2005 17:09:57 +0200
+
+grml-x (0.1-2) unstable; urgency=low
+
+ * Added '-nodpms'-option so we are able to disable 'Display Power Management
+ Signaling'.
+ * Added example entry for elo touchscreen.
+ * Fixed handling of '-xserver'-option.
+ * Update manpage.
+ * Don't ship /etc/init.d/xfree86-common anymore (let's trust on
+ xorg-common or xfree86-common that they ship a working version).
+ * Now we support startx-options via variable XOPTS, e.g.:
+ XOPTS='-depth 16' grml-x fluxbox
+
+ -- Michael Prokop <mika@grml.org> Wed, 15 Jun 2005 12:58:37 +0200
+
+grml-x (0.1-1) unstable; urgency=low
+
+ * Initial release.
+
+ -- Michael Prokop <mika@grml.org> Mon, 23 May 2005 23:39:39 +0200
+
--- /dev/null
+Source: grml-x
+Section: grml
+Priority: optional
+Maintainer: Michael Prokop <mika@grml.org>
+Build-Depends: debhelper (>= 4.0.0)
+Standards-Version: 3.6.2
+
+Package: grml-x
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, xserver-xorg | xserver, hwinfo, grml-etc (>= 0.5-20), zsh, pciutils, sudo, xbase-clients
+Recommends: fluxbox | x-window-manager, xterm | x-terminal-emulator, xfonts-base
+Suggests: xfonts-100dpi, xfonts-75dpi, fonts-ttf-west-european, xfonts-base-transcoded
+Conflicts: grml-scripts (<= 0.4-4)
+Description: wrapper for startx for running X Window System
+ grml-x generates a configuration for X server, supporting
+ several options and using a hardware recognition system.
--- /dev/null
+This package was debianized by Michael Prokop <mika@grml.org> on
+Mon, 23 May 2005 23:39:39 +0200.
+
+It was downloaded from http://grml.org/
+
+Copyright Holder: Michael Prokop <mika@grml.org>
+
+License:
+
+ This software is copyright (c) 2005 by Michael Prokop.
+
+ You are free to distribute this software under the terms of
+ the GNU General Public License.
+
+ On Debian GNU/Linux systems, the complete text of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL'.
--- /dev/null
+etc/zsh
+etc/X11
+usr/bin
--- /dev/null
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+configure: configure-stamp
+configure-stamp:
+ dh_testdir
+ # Add here commands to configure the package.
+
+ touch configure-stamp
+
+
+build: build-stamp
+
+build-stamp: configure-stamp
+ dh_testdir
+
+ # Add here commands to compile the package.
+ touch build-stamp
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp configure-stamp
+
+ # Add here commands to clean up after the build process.
+ dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs etc/init.d usr/bin
+ # usr/X11R6/lib/X11/xkb/rules/
+
+ # Add here commands to install the package into debian/grml-x.
+ install -m 755 grml-x debian/grml-x/usr/bin/grml-x
+ cp -r etc/X11/ debian/grml-x/etc/
+ cp -r etc/zsh/ debian/grml-x/etc/
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs
+ dh_installdocs
+ dh_installexamples
+ dh_installman grml-x.1
+ dh_link
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
--- /dev/null
+################################################################################
+# Filename: /etc/X11/xorg.conf
+# Purpose: config file for xserver - generated by grml-x
+# Bug-Reports: see http://grml.org/bugs/
+# Latest change: Sat Apr 15 10:39:38 CEST 2006 [mika]
+# See also:
+# /usr/share/doc/xserver-xorg/ and
+# http://wiki.x.org/wiki/Home and
+# http://ftp.x.org/pub/X11R7.0/doc/html/index.html for information on Xorg
+# /usr/share/doc/xfree86-common/ for information on XFree86
+# Refer to the xorg.conf man page and to
+# http://ftp.x.org/pub/X11R7.0/doc/html/xorg.conf.5.html
+# for details about the format of this file.
+#
+# If you would like this file to be automatically reconfigured by debian,
+# run the following command:
+# sudo dpkg-reconfigure -phigh xserver-xorg
+################################################################################
+
+Section "ServerLayout"
+ Identifier "XServer Configured"
+ Screen 0 "Screen0" 0 0
+ InputDevice "Keyboard0" "CoreKeyboard"
+ InputDevice "USB Mouse" "CorePointer"
+ # InputDevice "PS/2 Mouse" "CorePointer"
+EndSection
+
+Section "ServerFlags"
+ Option "AllowMouseOpenFail" "true" # allows the server to start up even if the mouse does not work
+ Option "DontVTSwitch" "false" # allow switching between virtual terminal
+ # Option "DontZap" "true" # disable <Crtl><Alt><BS> (server abort)
+ # Option "DontZoom" "true" # disable <Crtl><Alt><KP_+>/<KP_-> (resolution switching)
+EndSection
+
+Section "Files"
+# RgbPath "/usr/X11R6/lib/X11/rgb"
+# ModulePath "/usr/X11R6/lib/modules"
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/fonts.html
+ FontPath "/usr/share/fonts/X11/misc"
+ FontPath "/usr/share/fonts/X11/cyrillic"
+ FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
+ FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
+ FontPath "/usr/share/fonts/X11/Type1"
+ FontPath "/usr/share/fonts/X11/100dpi"
+ FontPath "/usr/share/fonts/X11/75dpi"
+ FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
+ FontPath "/usr/X11R6/lib/X11/fonts/misc"
+ FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
+ FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
+ FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
+ FontPath "/usr/X11R6/lib/X11/fonts/100dpi"
+# True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!
+ FontPath "/usr/X11R6/lib/X11/fonts/Type1"
+ FontPath "/usr/share/fonts/ttf/western"
+ FontPath "/usr/share/fonts/ttf/decoratives"
+ FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera"
+ FontPath "/usr/share/fonts/latex-ttf-fonts"
+ FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
+EndSection
+
+# Modules - see /usr/X11R6/lib/modules/fonts and /usr/X11R6/lib/modules/extensions
+Section "Module"
+ Load "dbe" # double buffer extension
+ Load "dri" # direct rendering
+ Load "glx" # 3D layer
+ Load "type1" # font module
+ Load "freetype" # font rendering
+ Load "extmod" # some commonly used server extensions (e.g. shape extension)
+ Load "record" # recording extension
+ # Load "vbe" # Vesa BIOS Extension
+ # Load "ddc" # ddc probing of monitor
+ # Load "bitmap" # bitmap fonts
+ # Load "GLcore" # render OpenGL in software
+ # Load "i2c" # I2C bus
+ # Load "int10" # initialize graphics cards via int10 call to the BIOS
+ # Load "speedo" # font module
+ # Load "v4l" # Video for Linux
+ # Load "evdev" # generic input handling driver on Linux
+# Valid entries - see /usr/lib/xorg/modules/[extensions/]
+# afb bitmap cfb cfb16 cfb24 cfb32 cw damage dbe ddc dri drm extmod fb
+# fbdevhw freetype GLcore glx i2c int10 int10 layer mfb pcidata rac ramdac
+# record scanpci shadow shadowfb type1 vbe vgahw xaa xf1bpp xf24_32bpp xf4bpp
+# xf8_16bpp xf8_32bpp xtrap
+EndSection
+
+# If you'd like to switch the positions of your capslock and control keys, use:
+# Option "XkbOptions" "ctrl:swapcaps"
+# Or if you just want both to be control, use:
+# Option "XkbOptions" "ctrl:nocaps"
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/XKB-Config.html
+Section "InputDevice"
+ Identifier "Keyboard0"
+ Option "CoreKeyboard"
+ Driver "kbd"
+ #Option "XkbRules" "xfree86"
+ Option "XkbRules" "xorg"
+ Option "XkbModel" "pc105"
+ Option "XkbLayout" "us"
+ #Option "XkbVariant" "nodeadkeys"
+EndSection
+
+# More information: http://ftp.x.org/pub/X11R6.9.0/doc/html/mouse.html
+
+
+Section "InputDevice"
+ Identifier "USB Mouse"
+ Driver "mouse"
+ Option "Device" "/dev/input/mice"
+ Option "Protocol" "auto"
+ Option "ZAxisMapping" "4 5"
+ Option "Buttons" "5"
+ Option "SendCoreEvents" "true"
+EndSection
+
+
+Section "InputDevice"
+ Identifier "PS/2 Mouse"
+ Driver "mouse"
+ Option "Device" "/dev/input/mice"
+ # Option "Device" "/dev/psaux"
+ Option "Protocol" "PS/2"
+ Option "Emulate3Buttons" "true"
+ Option "Emulate3Timeout" "70"
+ Option "SendCoreEvents" "true"
+EndSection
+
+
+# Example for a Elo touchscreen:
+# Section "InputDevice"
+# Identifier "touchscreen"
+# Driver "elographics"
+# Option "Device" "/dev/ttyS0"
+# Option "SendCoreEvents" "true"
+# Option "MinX" "4070"
+# Option "MaxX" "0"
+# Option "MinY" "36"
+# Option "MaxY" "3960"
+# Option "ScreenNo" "1"
+# Option "BaudRate" "9600"
+# Option "StopBits" "1"
+# Option "DataBits" "8"
+# Option "Parity" "None"
+# Option "Vmin" "10"
+# Option "Vtime" "1"
+# Option "FlowControl" "None"
+# Option "PortraitMode" "Portrait"
+# Option "PortraitMode" "PortraitCCW"
+# Option "SwapXY" "true"
+# Option "UntouchDelay" "3"
+# Option "ReportDelay" "1"
+# EndSection
+
+Section "Monitor"
+ Identifier "Monitor0"
+# ModelName "Old Monitor (no DDC)"
+ Option "DPMS" "true"
+# HorizSync 28.0 - 78.0 # Warning: This may fry very old Monitors
+# HorizSync 28.0 - 96.0 # Warning: This may fry old Monitors
+ HorizSync 31.0 - 61.0
+# VertRefresh 50.0 - 76.0 # Very conservative. May flicker.
+# VertRefresh 50.0 - 60.0 # Extreme conservative. Will flicker. TFT default.
+ VertRefresh 50.0 - 90.0
+# Need more information?
+# http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
+# http://en.tldp.org/HOWTO/XFree86-Video-Timings-HOWTO/
+EndSection
+
+Section "Device"
+ ### Available Driver options are:
+ ## sw_cursor is needed for some ati and radeon cards
+ # Option "sw_cursor"
+ # Option "hw_cursor"
+ # Option "NoAccel"
+ # Option "ShowCache"
+ # Option "ShadowFB"
+ # Option "UseFBDev"
+ # Option "Rotate"
+ ## xorg + nvidia:
+ # Option "RenderAccel" "true"
+ # Option "AllowGLXWithComposite" "true"
+ Identifier "Card0"
+# The following line is auto-generated by grml-x
+ Driver "vesa"
+ VendorName "All"
+ BoardName "All"
+ ## Workaround for drivers which send output to wrong device:
+ # Option "MonitorLayout" "LVDS, AUTO"
+ # Option "MonitorLayout" "LVDS, CRT"
+ # Option "MonitorLayout" "NONE, STV"
+ # Option "MonitorLayout" "LVDS"
+ ## Specify BusID:
+ # BusID "PCI:1:0:0"
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ Monitor "Monitor0"
+ DefaultColorDepth 16
+ SubSection "Display"
+ Depth 1
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+ SubSection "Display"
+ Depth 4
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+ SubSection "Display"
+ Depth 8
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+ SubSection "Display"
+ Depth 15
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+ SubSection "Display"
+ Depth 16
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+ SubSection "Display"
+ Depth 24
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+ SubSection "Display"
+ Depth 32
+ Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"
+ EndSubSection
+EndSection
+
+Section "DRI"
+ Mode 0666
+EndSection
+
+#Section "Extensions"
+# Option "Composite" "Enable"
+#EndSection
+
+## END OF FILE #################################################################
--- /dev/null
+################################################################################
+# Filename: /etc/X11/xorg.conf.vmware
+# Purpose: config file for xserver - generated by grml-x
+# Bug-Reports: see http://grml.org/bugs/
+# Latest change: Sat Apr 15 10:39:35 CEST 2006 [mika]
+# See also:
+# /usr/share/doc/xserver-xorg/ and
+# http://wiki.x.org/wiki/Home and
+# http://ftp.x.org/pub/X11R7.0/doc/html/index.html for information on Xorg
+# /usr/share/doc/xfree86-common/ for information on XFree86
+# Refer to the xorg.conf man page and to
+# http://ftp.x.org/pub/X11R7.0/doc/html/xorg.conf.5.html
+# for details about the format of this file.
+################################################################################
+
+Section "ServerLayout"
+ Identifier "XServer Configured"
+ Screen 0 "Screen0" 0 0
+ InputDevice "Keyboard0" "CoreKeyboard"
+ InputDevice "PS/2 Mouse" "CorePointer"
+EndSection
+
+Section "ServerFlags"
+ Option "AllowMouseOpenFail" "true" # allows the server to start up even if the mouse does not work
+ Option "DontVTSwitch" "false" # allow switching between virtual terminal
+ # Option "DontZap" "true" # disable <Crtl><Alt><BS> (server abort)
+ # Option "DontZoom" "true" # disable <Crtl><Alt><KP_+>/<KP_-> (resolution switching)
+EndSection
+
+Section "Files"
+# RgbPath "/usr/X11R6/lib/X11/rgb"
+# ModulePath "/usr/X11R6/lib/modules"
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/fonts.html
+ FontPath "/usr/share/fonts/X11/misc"
+ FontPath "/usr/share/fonts/X11/cyrillic"
+ FontPath "/usr/share/fonts/X11/100dpi/:unscaled"
+ FontPath "/usr/share/fonts/X11/75dpi/:unscaled"
+ FontPath "/usr/share/fonts/X11/Type1"
+ FontPath "/usr/share/fonts/X11/100dpi"
+ FontPath "/usr/share/fonts/X11/75dpi"
+ FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
+ FontPath "/usr/X11R6/lib/X11/fonts/misc"
+ FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
+ FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
+ FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
+ FontPath "/usr/X11R6/lib/X11/fonts/100dpi"
+# True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!
+ FontPath "/usr/X11R6/lib/X11/fonts/Type1"
+ FontPath "/usr/share/fonts/ttf/western"
+ FontPath "/usr/share/fonts/ttf/decoratives"
+ FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera"
+ FontPath "/usr/share/fonts/latex-ttf-fonts"
+ FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
+EndSection
+
+# Modules - see /usr/X11R6/lib/modules/fonts and /usr/X11R6/lib/modules/extensions
+Section "Module"
+ Load "dbe" # double buffer extension
+ Load "dri" # direct rendering
+ Load "glx" # 3D layer
+ Load "type1" # font module
+ Load "freetype" # font rendering
+ Load "extmod" # some commonly used server extensions (e.g. shape extension)
+ Load "record" # recording extension
+ # Load "vbe" # Vesa BIOS Extension
+ # Load "ddc" # ddc probing of monitor
+ # Load "bitmap" # bitmap fonts
+ # Load "GLcore" # render OpenGL in software
+ # Load "i2c" # I2C bus
+ # Load "int10" # initialize graphics cards via int10 call to the BIOS
+ # Load "speedo" # font module
+ # Load "v4l" # Video for Linux
+ # Load "evdev" # generic input handling driver on Linux
+# Valid entries - see /usr/lib/xorg/modules/[extensions/]
+# afb bitmap cfb cfb16 cfb24 cfb32 cw damage dbe ddc dri drm extmod fb
+# fbdevhw freetype GLcore glx i2c int10 int10 layer mfb pcidata rac ramdac
+# record scanpci shadow shadowfb type1 vbe vgahw xaa xf1bpp xf24_32bpp xf4bpp
+# xf8_16bpp xf8_32bpp xtrap
+EndSection
+
+# If you'd like to switch the positions of your capslock and control keys, use:
+# Option "XkbOptions" "ctrl:swapcaps"
+# Or if you just want both to be control, use:
+# Option "XkbOptions" "ctrl:nocaps"
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/XKB-Config.html
+Section "InputDevice"
+ Identifier "Keyboard0"
+ Option "CoreKeyboard"
+ Driver "kbd"
+ #Option "XkbRules" "xfree86"
+ Option "XkbRules" "xorg"
+ Option "XkbModel" "pc105"
+ Option "XkbLayout" "us"
+ #Option "XkbVariant" "nodeadkeys"
+EndSection
+
+# More information: http://ftp.x.org/pub/X11R6.9.0/doc/html/mouse.html
+
+Section "InputDevice"
+ Identifier "PS/2 Mouse"
+ Driver "mouse"
+ Option "Device" "/dev/input/mice"
+ Option "Protocol" "explorerps/2"
+ Option "Buttons" "5"
+ Option "ZAxisMapping" "4 5"
+EndSection
+
+Section "Monitor"
+ Identifier "Monitor0"
+ Option "DPMS" "true"
+ HorizSync 31.0 - 61.0
+ VertRefresh 50.0 - 90.0
+EndSection
+
+Section "Device"
+ # Option "RenderAccel" "true"
+ Identifier "Card0"
+ Driver "vmware"
+ VendorName "All"
+ BoardName "All"
+ # BusID "PCI:1:0:0"
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ Monitor "Monitor0"
+ DefaultColorDepth 16
+ SubSection "Display"
+ Depth 1
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 4
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 8
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 15
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 16
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 24
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+ SubSection "Display"
+ Depth 32
+ Modes "1024x768" "800x600" "640x480"
+ EndSubSection
+EndSection
+
+Section "DRI"
+ Mode 0666
+EndSection
+
+## END OF FILE #################################################################
--- /dev/null
+#!/bin/sh
+
+# $Id: xfree86-common.init 2186 2005-02-11 07:11:05Z branden $
+
+# Copyright 2003, 2004 Branden Robinson <branden@debian.org>.
+#
+# This is free software; you may redistribute it and/or modify
+# it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2,
+# or (at your option) any later version.
+#
+# This is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License with
+# the Debian operating system, in /usr/share/common-licenses/GPL; if
+# not, write to the Free Software Foundation, Inc., 59 Temple Place,
+# Suite 330, Boston, MA 02111-1307 USA
+
+set -e
+
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+SOCKET_DIR=/tmp/.X11-unix
+ICE_DIR=/tmp/.ICE-unix
+
+do_restorecon () {
+ # Restore file security context (SELinux).
+ if which restorecon >/dev/null 2>&1; then
+ restorecon "$1"
+ fi
+}
+
+set_up_socket_dir () {
+ echo -n "Setting up X server socket directory $SOCKET_DIR..."
+ if [ -e $SOCKET_DIR ] && ! [ -d $SOCKET_DIR ]; then
+ mv $SOCKET_DIR $SOCKET_DIR.$$
+ fi
+ mkdir -p $SOCKET_DIR
+ chown 0:0 $SOCKET_DIR
+ chmod 1777 $SOCKET_DIR
+ do_restorecon $SOCKET_DIR
+ echo "done."
+}
+
+set_up_ice_dir () {
+ echo -n "Setting up ICE socket directory $ICE_DIR..."
+ if [ -e $ICE_DIR ] && ! [ -d $ICE_DIR ]; then
+ mv $ICE_DIR $ICE_DIR.$$
+ fi
+ mkdir -p $ICE_DIR
+ chown 0:0 $ICE_DIR
+ chmod 1777 $ICE_DIR
+ do_restorecon $ICE_DIR
+ echo "done."
+}
+
+case "$1" in
+ start)
+ set_up_socket_dir
+ set_up_ice_dir
+ ;;
+
+ restart|reload|force-reload)
+ /etc/init.d/xfree86-common start
+ ;;
+
+ stop)
+ :
+ ;;
+
+ *)
+ echo "Usage: /etc/init.d/xfree86-common {start|stop|restart|reload|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# vim:set ai et sts=2 sw=2 tw=80:
--- /dev/null
+# Filename: /etc/zsh/completion.d/grml-x
+# Purpose: completion for command grml-x for zsh (z shell)
+# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
+# Bug-Reports: see http://grml.org/bugs/
+# License: This file is licensed under the GPL v2.
+# Latest change: Sam Aug 12 10:26:16 CEST 2006 [mika]
+################################################################################
+
+# compdef _grml-x grml-x
+
+ for wm in blackbox dwm evilwm fluxbox fvwm fvwm2 fvwm-crystal gnome-session \
+ gnomesession icewm ion2 ion3 jwm pekwm pwm3 ratpoison startkde twm \
+ w9wm windowlab wmi wmii wm-ng xfce4 xfwm4 ; do
+ [ -x /usr/bin/$wm ] && LIST="$LIST $wm"
+ done
+
+ _grml-x() { local arguments wm
+ wm=(`echo $LIST`)
+ arguments=(
+ '-display:display for xserver:(7 8)'
+ '-force[force creation of xconfig file]'
+ '-help:[display help]'
+ '-genmouse[generate generic entry for mouse using /dev/input/mice and auto protocol]'
+ '-hsync:horizontal sync frequencies (<number>):(28 `seq 30 5 95` 96)'
+ '-mode:resolution-mode for xserver (<width>x<height> - e.g. 1024x768)]:(1920x1440 1600x1200 1400x1050 1280x1024 1280x960 1024x768 800x600 640x480)'
+ '-module:module for xserver :(`cd /usr/lib/xorg/modules/drivers/ && /bin/ls *.so | sed -e 's/_drv.so//' -e 's/.so//'`)'
+ '-nodpms[disable Display Power Management Signaling]'
+ '-noddc[use static resolution modes for monitors without support for ddc probing]'
+ '-nohsync[do not activate HorizSync-entry]'
+ '-nops2[deactivate entry for PS/2 mouse]'
+ '-nostart[do not start X server]'
+ '-nosynaptics[use a synaptics touchpad without synaptics driver/functions]'
+ '-nosync[do not use static horizontal and vertical sync frequencies but let it choose the X-server]'
+ '-nousb[deactivate default entry for usb mouse (/dev/input/mice)]'
+ '-novref[do not activate VertRefresh-entry]'
+ '-vsync:vertical sync frequencies (<number>):(43 `seq 45 5 70` 72)'
+ '-xserver:xserver used for creation of xconfig file:(XFree86 X.org)'
+ ':window manager:($wm)'
+ )
+ _arguments -s $arguments
+ }
+ compdef _grml-x grml-x
+
+## END OF FILE #################################################################
+# vim:foldmethod=marker
--- /dev/null
+#!/usr/bin/zsh
+# Filename: grml-x
+# Purpose: wrapper for startx on grml [providing new xconfiguration tool]
+# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
+# Bug-Reports: see http://grml.org/bugs/
+# License: This file is licensed under the GPL v2.
+# Latest change: Sam Aug 05 08:38:49 CEST 2006 [mika]
+################################################################################
+
+# some zsh-stuff {{{
+ if [[ $DEBUG -gt 0 ]]; then
+ setopt xtrace
+ fi
+ autoload colors ; colors
+ [ -r /etc/grml_colors ] && . /etc/grml_colors
+ [ -r /etc/grml/sh-lib ] && . /etc/grml/sh-lib
+ if [ -r /etc/sysconfig/keyboard ] ; then
+ source /etc/sysconfig/keyboard
+ else
+ XKEYBOARD='us'
+ fi
+# }}}
+
+# warn if running as user root {{{
+ if [[ $UID == 0 ]] ; then
+ print "$bg[black]$fg[red]${bold_color}Warning: Please do not run grml-x as user root.${reset_color}"
+ print "$bg[black]$fg[red]${bold_color}Running grml-x as user root is *not* supported!${reset_color}"
+ print "$bg[black]$fg[red]${bold_color}Switch to user grml or run su - grml -c 'grml-x ...' instead.${reset_color}"
+ # exit -1
+ fi
+ fstabuser=$(grep ':x:1000:' /etc/passwd)
+ export fstabuser=${fstabuser%%[:]*}
+# }}}
+
+# set variables {{{
+ PROGRAMNAME=${0##*/}
+ HWINFO='/usr/sbin/hwinfo'
+ DATE=$(date)
+ (( ${+XINITRC} )) || XINITRC="$HOME/.xinitrc"
+# }}}
+
+# usage information {{{
+usage()
+{
+ if [[ $1 != '' ]] ; then echo 1>&2 "\n$1" ; fi
+ print "$bg[black]$fg[red]$bold_color"
+ print 1>&2 "
+Usage: $PROGRAMNAME
+ $PROGRAMNAME [-options] windowmanager
+
+Examples:
+ $PROGRAMNAME wmii
+ $PROGRAMNAME pekwm
+ $PROGRAMNAME fluxbox
+ $PROGRAMNAME -force -nostart fluxbox
+ $PROGRAMNAME -nosynaptics fluxbox
+ $PROGRAMNAME -nosync fluxbox
+ $PROGRAMNAME -noddc wmii
+ $PROGRAMNAME -nousb fluxbox
+ $PROGRAMNAME -module radeon -mode 1024x768 -vsync 60 wmi
+ XINITRC=~/.xinitrc $PROGRAMNAME ion
+ $PROGRAMNAME -display 8 wmii
+
+More information on grml-x can be found in the manual page: man grml-x
+
+Report bugs, send wishes and feedback to the grml team:
+http://grml.org/bugs/ - contact (at) grml.org
+"
+# $PROGRAMNAME wmi -- :8
+ print "${reset_color}"
+ exit 2
+}
+# }}}
+
+# writehwinfo {{{
+writehwinfo()
+{
+ HWINFO_TMP="/tmp/hwinfo.$$"
+ if [[ $UID == 0 ]] ; then
+ su - $fstabuser -c "$HWINFO > $HWINFO_TMP"
+ else
+ $HWINFO > $HWINFO_TMP
+ fi
+}
+# }}}
+
+# monitor {{{
+monitor()
+{
+ MONITORINFO="/tmp/monitorinfo.$$"
+ sudo $HWINFO --monitor > $MONITORINFO
+}
+# }}}
+
+# mode {{{
+mode()
+{
+ modes=$(perl -e 'while (<STDIN>) {if (/ Resolution:/) { s/.*\s+(\d+x\d+).*/$1/; print} }' < $MONITORINFO |
+sort -nur | perl -ne 's/\s+/ /; s/(\d+x\d+)/"$1"/; print')
+ if [[ -n $NODDC ]] ; then
+ MODES='Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"'
+ elif [[ "$modes" == "\"1024x768\" " || -z $modes ]] ; then
+ MODES='# Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960"'
+ else
+ MODES="# Modes $modes"
+ fi
+}
+# }}}
+
+# sync - get hsync/vsync settings {{{
+sync()
+{
+ monitor # get monitor settings
+ vsyncval=$(awk '/Vert. Sync Range:/{print $4}' $MONITORINFO | sed 's/-/.0 - / ; s/$/.0/' | head -1)
+ hsyncval=$(awk '/Hor. Sync Range:/{print $4}' $MONITORINFO | sed 's/-/.0 - / ; s/$/.0/' | head -1)
+ if [ -z $vsyncval ] ; then
+ vsyncval='50.0 - 60.0'
+ fi
+ if [ -z $hsyncval ] ; then
+ hsyncval='28.0 - 96.0'
+ fi
+}
+sync
+# }}}
+
+# mouse {{{
+mouse()
+{
+ MOUSEINFO="/tmp/mouse.$$"
+# if [[ $UID == 0 ]] ; then
+# su - $fstabuser -c "$HWINFO --mouse > $MOUSEINFO"
+# else
+ sudo $HWINFO --mouse > $MOUSEINFO
+# fi
+
+ # SynPS/2 Synaptics TouchPad
+ if grep -q 'Device:.*Synaptics' "$MOUSEINFO" ; then
+ if [[ "$SYNAPTICS" == "yes" ]] ; then # check for '-nosynaptics'-option
+ MOUSEDRIVER='synaptics'
+ # SYNMOUSE='InputDevice "Synaptics" "CorePointer"'
+ SYNMOUSE='InputDevice "Synaptics" "AlwaysCore"'
+ SYNMOUSEDETAIL="
+Section \"InputDevice\"
+ Driver \"synaptics\"
+ Identifier \"Synaptics\"
+ Option \"Device\" \"/dev/psaux\"
+ Option \"Protocol\" \"auto-dev\"
+ Option \"LeftEdge\" \"1700\"
+ Option \"RightEdge\" \"5300\"
+ Option \"TopEdge\" \"1700\"
+ Option \"BottomEdge\" \"4200\"
+ Option \"FingerLow\" \"25\"
+ Option \"FingerHigh\" \"30\"
+ Option \"ZAxisMapping\" \"4 5\"
+ Option \"MaxTapTime\" \"180\"
+ Option \"MaxTapMove\" \"220\"
+ Option \"VertScrollDelta\" \"100\"
+ Option \"MinSpeed\" \"0.06\"
+ Option \"MaxSpeed\" \"0.12\"
+ Option \"AccelFactor\" \"0.0010\"
+# Option \"SHMConfig\" \"on\"
+# Option \"Repeater\" \"/dev/ps2mouse\"
+EndSection
+"
+ else
+ MOUSEDRIVER='mouse'
+ SYNMOUSEDETAIL=""
+ SYNMOUSE='# No synaptics touchpad detected.'
+ fi
+ else
+
+ # AlpsPS/2 ALPS TouchPad (with Synapticsdriver)
+ if grep -q 'Device:.*ALPS' "$MOUSEINFO" ; then
+ if [[ "$SYNAPTICS" == "yes" ]] ; then # check for '-nosynaptics'-option
+ MOUSEDRIVER='synaptics'
+ # SYNMOUSE='InputDevice "Synaptics" "CorePointer"'
+ SYNMOUSE='InputDevice "Synaptics" "AlwaysCore"'
+ SYNMOUSEDETAIL="
+Section \"InputDevice\"
+ Driver \"synaptics\"
+ Identifier \"Synaptics\"
+ Option \"Device\" \"/dev/psaux\"
+ Option \"Protocol\" \"auto-dev\"
+ Option \"LeftEdge\" \"120\"
+ Option \"RightEdge\" \"850\"
+ Option \"TopEdge\" \"120\"
+ Option \"BottomEdge\" \"650\"
+ Option \"FingerLow\" \"14\"
+ Option \"FingerHigh\" \"15\"
+ Option \"ZAxisMapping\" \"4 5\"
+ Option \"MaxTapTime\" \"180\"
+ Option \"MaxTapMove\" \"50\"
+ Option \"MaxDoubleTapTime\" \"100\"
+ Option \"VertScrollDelta\" \"20\"
+ Option \"HorizScrollDelta\" \"20\"
+ Option \"MinSpeed\" \"0.3\"
+ Option \"MaxSpeed\" \"2.00\"
+ Option \"AccelFactor\" \"0.030\"
+ Option \"UpDownScrolling\" \"1\"
+ Option \"EmulateMiddleButtonTime\" \"75\"
+ Option \"CircularScrolling\" \"1\"
+ Option \"CircScrollDelta\" \"0.1\"
+ Option \"CircScrollTrigger\" \"8\"
+# Option \"SHMConfig\" \"on\"
+# Option \"Repeater\" \"/dev/ps2mouse\"
+EndSection
+"
+ else
+ MOUSEDRIVER='mouse'
+ SYNMOUSEDETAIL=""
+ SYNMOUSE='# No alps touchpad detected.'
+ fi
+ else
+ SYNMOUSE='# No alps touchpad present.'
+ fi
+ fi
+
+ # USB-PS/2 Optical Mouse
+# if grep -q 'Device:.*USB' "$MOUSEINFO" ; then
+ if ! [[ -n $NOUSB ]] ; then
+ USB='yes'
+ USBMOUSE='InputDevice "USB Mouse" "CorePointer"'
+ USBMOUSEDETAIL="
+Section \"InputDevice\"
+ Identifier \"USB Mouse\"
+ Driver \"mouse\"
+ Option \"Device\" \"/dev/input/mice\"
+ Option \"Protocol\" \"auto\"
+ Option \"ZAxisMapping\" \"4 5\"
+ Option \"Buttons\" \"5\"
+ Option \"SendCoreEvents\" \"true\"
+EndSection
+"
+ else
+ USBMOUSE='# Deactivated USB Mouse as requested.'
+ fi
+
+ if grep -q 'Device:.*Serial' "$MOUSEINFO" ; then
+ SERIAL='yes'
+ SERMOUSE='InputDevice "Serial Mouse" "CorePointer"'
+ SERMOUSEDETAIL="
+Section \"InputDevice\"
+ Identifier \"Serial Mouse\"
+ Driver \"mouse\"
+ Option \"Device\" \"/dev/ttyS0\"
+ Option \"Protocol\" \"Microsoft\"
+ Option \"Emulate3Buttons\" \"true\"
+ Option \"Emulate3Timeout\" \"70\"
+ Option \"SendCoreEvents\" \"true\"
+EndSection
+"
+ else
+ SERMOUSE='# No serial mouse detected.'
+ fi
+
+ # ImExPS/2 Logitech Explorer Mouse
+ # "PS2++ Logitech MX Mouse"
+ if ! [[ -n $NOPS2 ]] ; then
+ if grep -qE 'Device:.*PS.?2' "$MOUSEINFO" ; then
+ PS2='yes'
+ PS2MOUSE='InputDevice "PS/2 Mouse" "CorePointer"'
+ PS2MOUSEDETAIL="
+Section \"InputDevice\"
+ Identifier \"PS/2 Mouse\"
+ Driver \"mouse\"
+ Option \"Device\" \"/dev/input/mice\"
+ # Option \"Device\" \"/dev/psaux\"
+ Option \"Protocol\" \"PS/2\"
+ Option \"Emulate3Buttons\" \"true\"
+ Option \"Emulate3Timeout\" \"70\"
+ Option \"SendCoreEvents\" \"true\"
+EndSection
+"
+ else
+ PS2MOUSE='# No PS/2 mouse detected.'
+ PS2MOUSEDETAIL=""
+ fi
+ else
+ PS2MOUSE='# Deactivated PS/2 Mouse as requested.'
+ fi
+
+ if [[ -n $GENERICMOUSE ]] ; then
+ GENERIC='yes'
+ GENERICMOUSE='InputDevice "Generic Mouse" "CorePointer"'
+ GENERICMOUSEDETAIL="
+Section \"InputDevice\"
+ Identifier \"Generic Mouse\"
+ Driver \"mouse\"
+ Option \"Device\" \"/dev/input/mice\"
+ Option \"Protocol\" \"auto\"
+ Option \"Buttons\" \"5\"
+ Option \"ZAxisMapping\" \"4 5\"
+EndSection
+"
+ else
+ GENERICMOUSE='# No generic mouse configured.'
+ fi
+
+ MOUSE=" $USBMOUSE
+ $PS2MOUSE
+ $SYNMOUSE
+ $GENERICMOUSE
+ $SERMOUSE"
+}
+# }}}
+
+# commandline parsing {{{
+parse_options()
+{
+ # default values
+ #o_xserver=(-xserver XFree86)
+ #o_hsync=(-hsync '28.0 - 96.0')
+ #o_vsync=(-vsync '50.0 - 60.0')
+
+ zparseopts -K -- xserver:=o_xserver module:=o_module help=o_help noddc=o_noddc nosync=o_nosync \
+ vsync:=o_vsync hsync:=o_hsync mode:=o_mode force=o_force display:=o_display \
+ nostart=o_nostart nodpms=o_nodpms nosynaptics=o_nosynaptics nousb=o_nousb \
+ nops2=o_nops2 genmouse=o_genmouse novref=o_novref nohsync=o_nohsync
+
+ if [[ $# == 0 || "$o_help" != "" || "$1" == '-h' || "$1" == '--help' ]]; then
+ usage
+ fi
+
+ if [[ "$o_force" != "" ]]; then
+ FORCE="yes"
+ fi
+
+ if [[ "$o_nodpms" != "" ]]; then
+ DPMS='Option "DPMS" "false"'
+ else
+ DPMS='Option "DPMS" "true"'
+ fi
+
+ if [[ "$o_noddc" != "" ]]; then
+ NODDC="yes"
+ fi
+
+ if [[ "$o_vsync" != "" ]]; then
+ FORCE="yes"
+ fi
+
+ if [[ "$o_hsync" != "" ]]; then
+ FORCE="yes"
+ fi
+
+ if [[ "$o_xserver" != "" ]]; then
+ FORCE="yes"
+ fi
+
+ if [[ "$o_nousb" != "" ]]; then
+ NOUSB='yes'
+ fi
+
+ if [[ "$o_nops2" != "" ]]; then
+ NOPS2='yes'
+ fi
+
+ if [[ "$o_genmouse" != "" ]]; then
+ GENERICMOUSE='yes'
+ fi
+
+ if [[ "$o_nosynaptics" != "" ]]; then
+ SYNAPTICS='no'
+ else
+ SYNAPTICS='yes'
+ fi
+
+ if [[ "$o_nostart" != "" ]]; then
+ NOSTART="yes"
+ fi
+
+ DISPLAY=$o_display[2]
+ if [ -z $o_hsync ] ; then
+ o_hsync=(-hsync "$hsyncval")
+ HSYNC=$o_hsync[2]
+ HORIZSYNC=" HorizSync $HSYNC"
+ else
+ o_hsync=(-hsync "$o_hsync[2]")
+ HSYNC=$o_hsync[2]
+ HORIZSYNC=" HorizSync $HSYNC"
+ fi
+
+ if [ -z $o_vsync ] ; then
+ o_vsync=(-vsync "$vsyncval")
+ VSYNC=$o_vsync[2]
+ VERTISYNC=" VertRefresh $VSYNC"
+ else
+ o_vsync=(-vsync "$o_vsync[2]")
+ VSYNC=$o_vsync[2]
+ VERTISYNC=" VertRefresh $VSYNC"
+ fi
+
+ if [[ "$o_nosync" != "" ]]; then
+ HORIZSYNC="# HorizSync 28.0 - 96.0 # deactivated via -nosync option of grml-x"
+ VERTISYNC="# VertRefresh 50.0 - 60.0 # deactivated via -nosync option of grml-x"
+ fi
+ if [[ "$o_nohsync" != "" ]]; then
+ HORIZSYNC="# HorizSync 28.0 - 96.0 # deactivated via -nohsync option of grml-x"
+ fi
+ if [[ "$o_novref" != "" ]]; then
+ VERTISYNC="# VertRefresh 50.0 - 60.0 # deactivated via -novref option of grml-x"
+ fi
+
+ eval WINDOWMANAGER=\${$#}
+
+ XSERVER=$o_xserver[2]
+ if [[ -n $(X -version 2>&1| grep XFree86) || "$XSERVER" == XFree86 ]] ; then
+ XSERVER="XFree86"
+ XCONFIG='/etc/X11/XF86Config-4'
+ KEYBOARD="Driver \"keyboard\"
+ Option \"XkbRules\" \"xfree86\"
+ Option \"XkbModel\" \"pc105\"
+ Option \"XkbLayout\" \"${XKEYBOARD}\"
+ #Option \"XkbVariant\" \"nodeadkeys\""
+ elif [[ -n $(X -version 2>&1 | grep -e 'X\.Org' -e 'Version 7\.') || "$XSERVER" == Xorg ]] ; then
+ XSERVER="Xorg"
+ XCONFIG='/etc/X11/xorg.conf'
+ KEYBOARD="Driver \"kbd\"
+ #Option \"XkbRules\" \"xfree86\"
+ Option \"XkbRules\" \"xorg\"
+ Option \"XkbModel\" \"pc105\"
+ Option \"XkbLayout\" \"${XKEYBOARD}\"
+ #Option \"XkbVariant\" \"nodeadkeys\""
+ fi
+
+ # check for font path
+ if [ -d /usr/share/fonts/X11 ] ; then
+ XFONTS=" FontPath \"/usr/share/fonts/X11/misc\"
+ FontPath \"/usr/share/fonts/X11/cyrillic\"
+ FontPath \"/usr/share/fonts/X11/100dpi/:unscaled\"
+ FontPath \"/usr/share/fonts/X11/75dpi/:unscaled\"
+ FontPath \"/usr/share/fonts/X11/Type1\"
+ FontPath \"/usr/share/fonts/X11/100dpi\"
+ FontPath \"/usr/share/fonts/X11/75dpi\""
+ fi
+ if [ -d /usr/X11R6/lib/X11/fonts ] ; then
+ XFONTS="$XFONTS
+ FontPath \"/usr/X11R6/lib/X11/fonts/misc:unscaled\"
+ FontPath \"/usr/X11R6/lib/X11/fonts/misc\"
+ FontPath \"/usr/X11R6/lib/X11/fonts/75dpi:unscaled\"
+ FontPath \"/usr/X11R6/lib/X11/fonts/75dpi\"
+ FontPath \"/usr/X11R6/lib/X11/fonts/100dpi:unscaled\"
+ FontPath \"/usr/X11R6/lib/X11/fonts/100dpi\""
+ fi
+
+ if [[ "$XKEYBOARD" == de ]] ; then
+ KEYBOARD="$KEYBOARD
+ Option \"XkbVariant\" \"nodeadkeys\""
+ fi
+
+ print -n "$bold_color$fg[blue]Gathering hardware information: $fg[red]"
+
+ writehwinfo
+ MONITOR=$(awk '/monitor.1:/{print $3}' $HWINFO_TMP)
+ if [[ $MONITOR != 'ddc' ]] ; then
+ NODDC=yes
+ fi
+ MODULE=$o_module[2]
+ if [ -z $MODULE ] ; then
+ MODULE="$(getBootParam xmodule 2>/dev/null)"
+ if [ -z "$MODULE" ] ; then
+ MODULE=$(grep 'XFree86 v4 Server Module:' "${HWINFO_TMP}" | head -1 | awk '{print $5}')
+ if [ -z "$MODULE" ] ; then
+ MODULE='vesa'
+ fi
+ fi
+ else
+ FORCE="yes"
+ fi
+
+ mouse # get mouse settings
+ VGA=$(lspci | grep VGA | sed 's/.*compatible controller: //' | head -1)
+
+ MODE=$o_mode[2]
+ if [ -z $MODE ] ; then
+ mode # get available modes
+ else
+ MODES="Modes \"$MODE\""
+ FORCE="yes"
+ fi
+
+ print "$fg[green]done$reset_color"
+
+
+ print "$bg[black]$fg[white]$bold_color"
+ print "$fg[green]Specified windowmanager is $fg[yellow]$WINDOWMANAGER"
+ print "$fg[green]Video is $fg[yellow]$VGA$fg[green] using $bg[black]$fg[yellow]${XSERVER}$fg[cyan](${MODULE})$fg[green] Server"
+ [[ -z $HSYNC ]] && [[ -z $VSYNC ]] && print "$fg[green]Monitor is $fg[yellow]$MONITOR"
+ [[ -z $HSYNC ]] && [[ -n $VSYNC ]] && print "$fg[green]Monitor is $fg[yellow]$MONITOR$fg[green], VSYNC: $fg[yellow]$VSYNC"
+ [[ -z $VSYNC ]] && [[ -n $HSYNC ]] && print "$fg[green]Monitor is $fg[yellow]$MONITOR$fg[green], HSYNC: $fg[yellow]$HSYNC"
+ [[ -n $VSYNC ]] && [[ -n $HSYNC ]] && print "$fg[green]Monitor is $fg[yellow]$MONITOR$fg[green], HSYNC: $fg[yellow]$HSYNC $fg[green]VSYNC: $fg[yellow]$VSYNC"
+ [[ -n $modes ]] && print "$fg[green]Using default X.org modes."
+ [[ -z $modes ]] && print "$fg[green]Using Mode: $fg[yellow]$MODE"
+# [[ -n $MODE ]] && print "$fg[green]Using Mode: $fg[yellow]$MODE"
+# [[ -z $MODE ]] && print "$fg[green]Using default modes."
+ print "${reset_color}"
+# if [[ $module[1] != ./. ]]; then module="$PWD/$module"; fi
+}
+parse_options $*
+# }}}
+
+# check for requirements {{{
+requirements()
+{
+if ! [ -x $(which hwinfo) ] ; then
+ print "$bg[black]$fg[red]${bold_color}Error: hwinfo not found in path.${reset_color}
+Note: run 'apt-get install hwinfo' on systems running debian.
+Exiting.${reset_color}"
+ exit -1
+fi
+
+if ! [[ -d /sys ]] ; then
+ print "$bg[black]$fg[red]${bold_color}Error: mounted /sys required (for hwinfo).${reset_color}
+You may want to add the following line to your /etc/fstab:
+
+ sysfs /sys sysfs defaults 0 0
+
+or just run 'mount /sys'. Exiting.${reset_color}"
+ exit -1
+fi
+}
+requirements
+# }}}
+
+# xconfig {{{
+xconfig() {
+cat << EOX
+################################################################################
+# Filename: $XCONFIG
+# Purpose: config file for xserver - generated by grml-x
+# Bug-Reports: see http://grml.org/bugs/
+# Latest change: ${DATE}
+# See also:
+# /usr/share/doc/xserver-xorg/ and
+# http://wiki.x.org/wiki/Home and
+# http://ftp.x.org/pub/X11R7.0/doc/html/index.html for information on Xorg
+# /usr/share/doc/xfree86-common/ for information on XFree86
+# Refer to the xorg.conf man page and to
+# http://ftp.x.org/pub/X11R7.0/doc/html/xorg.conf.5.html
+# for details about the format of this file.
+#
+# If you would like this file to be automatically reconfigured by debian,
+# run the following command:
+# sudo dpkg-reconfigure -phigh xserver-xorg
+################################################################################
+
+Section "ServerLayout"
+ Identifier "XServer Configured"
+ Screen 0 "Screen0" 0 0
+ InputDevice "Keyboard0" "CoreKeyboard"
+$MOUSE
+EndSection
+
+Section "ServerFlags"
+ Option "AllowMouseOpenFail" "true" # allows the server to start up even if the mouse does not work
+ Option "DontVTSwitch" "false" # allow switching between virtual terminal
+ # Option "DontZap" "true" # disable <Crtl><Alt><BS> (server abort)
+ # Option "DontZoom" "true" # disable <Crtl><Alt><KP_+>/<KP_-> (resolution switching)
+EndSection
+
+Section "Files"
+# RgbPath "/usr/X11R6/lib/X11/rgb"
+# ModulePath "/usr/X11R6/lib/modules"
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/fonts.html
+$XFONTS
+# check:
+# FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
+# FontPath "/usr/X11R6/lib/X11/fonts/PEX"
+# FontPath "/usr/X11R6/lib/X11/fonts/encodings"
+# FontPath "/usr/X11R6/lib/X11/fonts/Type1
+# FontPath "/usr/X11R6/lib/X11/fonts/util
+# Additional fonts: Locale, Gimp, TTF...
+# FontPath "/usr/X11R6/lib/X11/fonts/cyrillic"
+# FontPath "/usr/X11R6/lib/X11/fonts/latin2/75dpi"
+# FontPath "/usr/X11R6/lib/X11/fonts/latin2/100dpi"
+# True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!
+ FontPath "/usr/X11R6/lib/X11/fonts/Type1"
+ FontPath "/usr/share/fonts/ttf/western"
+ FontPath "/usr/share/fonts/ttf/decoratives"
+# FontPath "/usr/share/fonts/truetype"
+# FontPath "/usr/share/fonts/truetype/openoffice"
+ FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera"
+# FontPath "/usr/share/fonts/truetype/latex-xft-fonts"
+ FontPath "/usr/share/fonts/latex-ttf-fonts"
+ FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
+# FontPath "/usr/X11R6/lib/X11/fonts/defoma/TrueType"
+# FontPath "/usr/X11R6/lib/X11/fonts/defoma/CID"
+EndSection
+
+# Modules - see /usr/X11R6/lib/modules/fonts and /usr/X11R6/lib/modules/extensions
+Section "Module"
+ Load "dbe" # double buffer extension
+ Load "dri" # direct rendering
+ Load "glx" # 3D layer
+ Load "type1" # font module
+ Load "freetype" # font rendering
+ Load "extmod" # some commonly used server extensions (e.g. shape extension)
+ Load "record" # recording extension
+ # Load "vbe" # Vesa BIOS Extension
+ # Load "ddc" # ddc probing of monitor
+ # Load "bitmap" # bitmap fonts
+ # Load "GLcore" # render OpenGL in software
+ # Load "i2c" # I2C bus
+ # Load "int10" # initialize graphics cards via int10 call to the BIOS
+ # Load "speedo" # font module
+ # Load "v4l" # Video for Linux
+ # Load "evdev" # generic input handling driver on Linux
+# Valid entries - see /usr/lib/xorg/modules/[extensions/]
+# afb bitmap cfb cfb16 cfb24 cfb32 cw damage dbe ddc dri drm extmod fb
+# fbdevhw freetype GLcore glx i2c int10 int10 layer mfb pcidata rac ramdac
+# record scanpci shadow shadowfb type1 vbe vgahw xaa xf1bpp xf24_32bpp xf4bpp
+# xf8_16bpp xf8_32bpp xtrap
+EndSection
+
+# If you'd like to switch the positions of your capslock and control keys, use:
+# Option "XkbOptions" "ctrl:swapcaps"
+# Or if you just want both to be control, use:
+# Option "XkbOptions" "ctrl:nocaps"
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/XKB-Config.html
+Section "InputDevice"
+ Identifier "Keyboard0"
+ Option "CoreKeyboard"
+ $KEYBOARD
+EndSection
+
+# More information: http://ftp.x.org/pub/X11R7.0/doc/html/mouse.html
+$GENERICMOUSEDETAIL
+$USBMOUSEDETAIL
+$PS2MOUSEDETAIL
+$SERMOUSEDETAIL
+$SYNMOUSEDETAIL
+Section "Monitor"
+ Identifier "Monitor0"
+# ModelName "Old Monitor (no DDC)"
+ $DPMS
+# HorizSync 28.0 - 78.0 # Warning: This may fry very old Monitors
+# HorizSync 28.0 - 96.0 # Warning: This may fry old Monitors
+$HORIZSYNC
+# VertRefresh 50.0 - 76.0 # Very conservative. May flicker.
+# VertRefresh 50.0 - 60.0 # Extreme conservative. Will flicker. TFT default.
+$VERTISYNC
+# Need more information?
+# http://xtiming.sourceforge.net/cgi-bin/xtiming.pl
+# http://en.tldp.org/HOWTO/XFree86-Video-Timings-HOWTO/
+EndSection
+
+Section "Device"
+ ### Available Driver options are:
+ ## sw_cursor is needed for some ati and radeon cards
+ # Option "sw_cursor"
+ # Option "hw_cursor"
+ # Option "NoAccel"
+ # Option "ShowCache"
+ # Option "ShadowFB"
+ # Option "UseFBDev"
+ # Option "Rotate"
+ ## xorg + nvidia:
+ # Option "RenderAccel" "true"
+ # Option "AllowGLXWithComposite" "true"
+ Identifier "Card0"
+# The following line is auto-generated by grml-x
+ Driver "$MODULE"
+ VendorName "All"
+ BoardName "All"
+ ## Workaround for drivers which send output to wrong device:
+ # Option "MonitorLayout" "LVDS, AUTO"
+ # Option "MonitorLayout" "LVDS, CRT"
+ # Option "MonitorLayout" "NONE, STV"
+ # Option "MonitorLayout" "LVDS"
+ ## Specify BusID:
+ # BusID "PCI:1:0:0"
+EndSection
+
+Section "Screen"
+ Identifier "Screen0"
+ Device "Card0"
+ Monitor "Monitor0"
+ DefaultColorDepth 16
+ SubSection "Display"
+ Depth 1
+ $MODES
+ EndSubSection
+ SubSection "Display"
+ Depth 4
+ $MODES
+ EndSubSection
+ SubSection "Display"
+ Depth 8
+ $MODES
+ EndSubSection
+ SubSection "Display"
+ Depth 15
+ $MODES
+ EndSubSection
+ SubSection "Display"
+ Depth 16
+ $MODES
+ EndSubSection
+ SubSection "Display"
+ Depth 24
+ $MODES
+ EndSubSection
+ SubSection "Display"
+ Depth 32
+ $MODES
+ EndSubSection
+EndSection
+
+Section "DRI"
+ Mode 0666
+EndSection
+
+#Section "Extensions"
+# Option "Composite" "Enable"
+#EndSection
+
+## END OF FILE #################################################################
+EOX
+}
+# }}}
+
+# writeit {{{
+writeit() {
+ XCONFTMP="/tmp/xconfig.$$"
+ xconfig > $XCONFTMP
+ [ -f $XCONFIG ] && sudo mv -f $XCONFIG $XCONFIG.old
+ sudo mv $XCONFTMP $XCONFIG
+ sudo chown root.root $XCONFIG
+ sudo chmod 644 $XCONFIG
+}
+# }}}
+
+# writeconfig {{{
+function writeconfig
+{
+ if [[ ! -f $XCONFIG ]] ; then
+ print -n "$bold_color$fg[blue]Creating $XCONFIG: $fg[red]"
+ writeit && print "$fg[green]done$reset_color"
+ else
+ print "$bold_color$fg[blue]Notice: $XCONFIG exists already.
+Use the force-option (-force) to force creation.
+$fg[red]"
+ fi
+ if [[ -n "$FORCE" ]] ; then
+ print "$bold_color$fg[blue]Force-switch or manual option(s) detected -"
+ print -n "moving eventual existing $XCONFIG to ${XCONFIG}.old: $fg[red]"
+ writeit && print "$fg[green]done$reset_color"
+ fi
+}
+# }}}
+
+# runit {{{
+function runit
+{
+ writeconfig
+ if [ -z $NOSTART ] ; then
+ print "$reset_color"
+ if [ -x /etc/init.d/xorg-common ] ; then
+ sudo /etc/init.d/xorg-common start
+ else
+ if [ -x /etc/init.d/xfree86-common ] ; then
+ sudo /etc/init.d/xfree86-common start
+ fi
+ fi
+ print ""
+ if [ -z $DISPLAY ] ; then
+ print "$bold_color$fg[green]Now trying to run startx.$reset_color"
+ startx ~/.xinitrc -- $XOPTS
+ else
+ print "$bold_color$fg[green]Now trying to run startx on display $DISPLAY.$reset_color"
+ startx ~/.xinitrc -- :$DISPLAY $XOPTS
+ fi
+ else
+ print "$bold_color$fg[blue]Not running startx as requested as option.$reset_color"
+ fi
+ return 1
+}
+# }}}
+
+# failed {{{
+function failed
+{
+ print "$fg[red]"
+ if [ $UID != 0 ] ; then
+ if [[ $(tty) == /dev/pts/* ]] ; then
+ print "It seems you are running $PROGRAMNAME from inside GNU screen.
+Notice that this might fail if running as user grml!
+Please exit screen and try to run $PROGRAMNAME again."
+ fi
+ fi
+ print "
+Problems? Run the following commands for getting information on your hardware:
+ hwinfo --gfxcard
+ discover -v --data-path=xfree86/server/device/driver display
+ xdebconfigurator -c -d -i -x
+ get-edid | parse-edid
+
+Do you want to go the debian way of life? Run:
+ apt-get install x-window-system-core read-edid mdetect hwinfo xdebconfigurator
+ dpkg-reconfigure x-window-system-core (or xserver-xfree86 or xserver-xorg depending on your system)
+
+Problems with the module used for X? Try to load another one or
+fall back to module vesa:
+ $PROGRAMNAME -module radeon ...
+ $PROGRAMNAME -module vesa ...
+
+Do you want to deactivate a present synaptics touchpad? Run:
+ $PROGRAMNAME -nosynaptics ...
+
+Your monitor is very old and/or does not support DDC-probing?
+ $PROGRAMNAME -noddc ...
+
+Do you want to create a x configuration file but do not start X?
+ $PROGRAMNAME -nostart ...
+
+Monitor frequency too high or too low? Just specify hsync/vsync manually:
+ $PROGRAMNAME -hsync 30-65 ...
+ $PROGRAMNAME -hsync 30-65 -vsync 50-60 ...
+
+Want to adjust the resolution? Use the mode-switch:
+ $PROGRAMNAME -mode 1024x768 ...
+ $PROGRAMNAME -mode '1280x1024 1024x768' ...
+
+To adjust resolution while running X execute:
+ xrandr -s '1024x768'
+
+More information on grml-x can be found in the manual page: man grml-x
+
+Report bugs, send wishes and feedback to the grml team:
+http://grml.org/bugs/ - contact (at) grml.org
+"
+print -n "$reset_color"
+}
+# }}}
+
+# cleanup {{{
+cleanup()
+{
+ rm -f $HWINFO_TMP
+ rm -f $MONITORINFO
+ rm -f $MOUSEINFO
+ rm -f $XCONFTMP
+}
+cleanup
+# }}}
+
+# xinitrc {{{
+ if [ -w $XINITRC ] ; then
+ sed -i "s|^[^#]*exec.*| exec $WINDOWMANAGER|g" $XINITRC
+ runit || failed
+ else
+ echo -e "#!/bin/sh\n exec $WINDOWMANAGER" >> $XINITRC
+ runit || failed
+ fi
+# }}}
+
+## END OF FILE #################################################################
+# vim:foldmethod=marker
--- /dev/null
+.TH GRML-X 1
+.SH NAME
+grml-x \- create xconfig file and start X window system on grml-system
+.SH SYNOPSIS
+.B grml-x
+.RI "[ OPTIONS ]" " windowmanager_you_want_to_use"
+.SH DESCRIPTION
+grml-x creates the configuration file for X server (X.org or XFree86)
+and starts up X server with specified window manager.
+.SH IMPLEMENTATION
+grml-x uses hwinfo for getting hardware related information.
+It creates the X config file /etc/X11/xorg.conf for X.org or /etc/X11/XF86Config-4 for
+XFree86 (needs root permissions therefore). If a X config file is present
+already, grml-x won't touch the file unless the '-force' option or another option
+which modifies content of the X config file is specified, the old config file gets backed up
+via adding the extension .old.
+Afterwards the 'exec' command in ~/.xinitrc gets adjusted to start the provided window manager
+and then startx is executed. If ~/.xinitrc does not exist a simple default one will be created.
+Notice that you do not have to use grml-x to start X server if you already have a working
+X config file. Adjust ~/.xinitrc to your needs and then run startx to start X server.
+.SH OPTIONS
+.TP
+.B XOPTS='...'
+Provide options for startx, see 'man 1 startx'.
+.TP
+.B \-display <number>
+Specifiy display for use with Xserver.
+.TP
+.B \-force
+Force creation of xconfig file. This option is also assumed when another
+option which needs to be write values to the X config file is provided. The old
+X config file (/etc/X11/xorg.conf or /etx/X11/XFree86Config-4) is renamed
+via adding the extension .old.
+.TP
+.B \-genmouse
+Generate generic entry for mouse using /dev/input/mice and auto protocol. This option
+is useful in combination with '-nousb -nops2' for example in VMWare.
+.TP
+.B \-help
+Display help.
+.TP
+.B \-hsync <number>
+Specify horizontal sync frequencies. Use a number like "30-65".
+.TP
+.B \-mode <width>x<height>
+Resolution-mode for xserver.
+.TP
+.B \-module <name>
+Module for xserver.
+.TP
+.B \-noddc
+Do not use ddc probing but use static entries for resolution modes.
+.TP
+.B \-nohsnc
+Do not activate HorizSync-entry in xconfig file.
+.TP
+.B \-nops2
+Deactivate entry for PS/2 mouse.
+.TP
+.B \-nostart
+Do not start X server.
+.TP
+.B \-nosynaptics
+Do not activate a present Synaptics touchpad but use it only with 'normal' touchpad
+functions.
+.TP
+.B \-nosync
+Do not activate horizontal and vertical sync frequencies. This option is useful
+on many modern computers using a LCD/TFT display. To avoid problems on very old
+monitors this option is not the default.
+.TP
+.B \-nousb
+Do not set an entry for USB mouse in the xconfig file.
+.TP
+.B \-novref
+Do not activate VertRefresh-entry in xconfig file.
+.TP
+.B \-vsync <number>
+Specify vertical sync frequencies. Use a number like "50-60".
+.TP
+.B \-xserver [XFree86|Xorg]
+Specify Xserver which should be used for creation of xconfig file.
+For XFree86 the file /etc/X11/XF86Config-4 is written, for Xorg the
+file /etc/X11/xorg.conf.
+.SH EXAMPLES
+.TP
+.B grml-x -mode '1280x1024 1024x768' wmi
+Use resolutions 1280x1024 and 1024x768 and start windowmanager wmi.
+.TP
+.B grml-x -module vesa ion3
+Use vesa-module and start windowmanager ion3.
+.TP
+.B grml-x -hsync "30-65" fluxbox
+Use 30-65kHz for horizontal sync frequency and start windowmanager fluxbox.
+.TP
+.B grml-x -display 8 ratpoison
+Use display 8 for Xserver and start windowmanager ratpoison.
+.TP
+.B grml-x -nostart -f fluxbox
+Force writing of config file but do not start X server. Please do not forget to add a window manager as last option because
+grml-x changes the according exec-statement in $HOME/.xinitrc.
+.TP
+.B XOPTS='-depth 16' grml-x fluxbox
+Set color depth to 16 bit and start windowmanager fluxbox.
+.SH BUGS
+.TP
+Please report any problems to the grml-team! http://grml.org/bugs/
+.SH AUTHOR
+This manual page was written by the grml-team. http://grml.org/ (c)Michael Prokop <mika@grml.org>