X11Configuration

X.org

See man xorg for an overview of X.org and the entry point to the X.org man page system.


xorg.conf

The main configuration file for X.org should be located at /etc/X11/xorg.conf

For a good overview of how this file is structured, read the man page for xorg.conf.

The file is generated by dexconf from the answers given to debconf when the package xserver-xorg is installed or re-configured (with dpkg-reconfigure xserver-xorg).


Keyboard

The keyboard is configured in a section called "InputDevice". The driver to use is called "kbd". If you do not add any special options, the X server will assume a default keyboard with 102 keys and a US English keyboard layout. To change this to a keyboard with 105 keys and a Swiss German keyboard layout, add the following lines:

 Option "XkbModel" "pc105"
 Option "XkbLayout" "de_CH"

For more information, see /usr/X11R6/lib/X11/xkb/README.config

If you get an error message dialog after you login with this message

 Error activating XKB configuration.
 Probably internal X server problem.
 [a lot of other text]

you are probably running Gnome, and you are getting the error because of gnome-settings-daemon. Currently I have no solution for the problem.


XFree86

XF86Config-4

The main configuration file for XFree86 should be located at /etc/X11/XF86Config-4

For a good overview of how this file is structured, read man XF86Config-4.

To use the kernel frame buffer, place the following entry in the Device section (read man fbdevhw for details):

Option "UseFBDev" "true"

If you need to specify the graphic card's memory size, the amount given must be in KB. For instance, specify the following entry in the Device section:

VideoRam 32768


ATI driver

The graphics card I use is an "ATI Excalibur Rage128 Pro". The driver used for this card can be either the generic ati, or more the more specific r128. The device section in xorg.conf currently looks like this:

Section "Device"
        Identifier      "ATI Technologies Inc Rage 128 Pro Ultra TF"
        Driver          "ati"
        BusID           "PCI:3:0:0"
EndSection

For details about the ATI Rage 128 driver, see man r128.


Mouse

The following information was experimentally tested on XFree86, but may also apply to X.org

An interesting resource for mouse configuration is: http://linuxwiki.de/XF86Config_2fInputDevice


Overview

Possible mouse protocols:

  • Microsoft
  • MouseSystems (standard protocol for serial 3 button mice)
  • MMSeries
  • Logitech (old serial Logitech mice)
  • BusMouse (some bus mice use this protocol, among them some bus mice from Logitech)
  • PS/2 (is used by most bus mice these days)
  • IMPS/2 (IntelliMouse on PS/2 port; works for USB, may also work for mice with a scroll wheel)


Bus mouse

All three of the following devices seem to work:

  • /dev/psaux
  • /dev/input/mouse0
  • /dev/input/mice

Both of the following protocols work equally bad:

  • ImPS/2
  • PS/2

In any case, the kernel module input/mouse/psmouse must be activated for the bus mouse to work.

The kernel module char/busmouse is not required (it does not interfere, either).


Serial mouse

Device: /dev/ttyS0 Protocol: Microsoft


Remote X11

The server that runs the X server must allow access to the display from the remote host:

xhost +INET:192.168.1.6
xhost +INET:osgiliath

Login on the remote host with ssh. -X (enable X11 Connection Forwarding) is not required in my environment, although it might be required if a firewall is in between the 2 systems.

Next the DISPLAY environment variable must be set:

export DISPLAY=192.168.1.4:0.0
export DISPLAY=moria:0.0

Last but not least :-), start the application, for instance:

xeyes