Configuring XFree86

DebConf configuration

XFree86 can both be configured in Debian (woody+) using debconf. This is done when the package is installed, but can be re-run any time by executing::

 $ dpkg-reconfigure <package-name>

where '<package-name>' is the name of the xserver. Use 'xserver-xfree86' or 'xserver-<type>'. Editing your /etc/X11/ config file is only necessary if you have some special needs or are particularly curious. If you must...

Manual XFree86

XFree86 may be configured by editing the file


If you use XFree 4.x try the command

 $ XFree86 -configure

USB mouse

Your Universal Serial Bus (USB) mouse may be configured correctly by adding this section to your !XF86Config-4.

 Section "InputDevice"
     Identifier "USB Mice"
     Driver "mouse"
     Option "CorePointer"
 #   Option "SendCoreEvents"
     Option "Protocol" "IMPS/2"
     Option "Device" "/dev/input/mice"
     Option "["ZAxisMapping"]" "4 5"
     Option "Buttons" "5"

If you only use a USB mouse use the CorePointer option, otherwise use the SendCoreEvents option.

Using XFree86 with GPM

Configure XFree86

In your XF86Config (-4) file:

 Section "InputDevice"
        Identifier "Generic Mouse"
        Driver     "mouse"
 #      Option     "CorePointer"
        Option     "SendCoreEvents"
        Option     "Device"   "/dev/gpmdata"
        Option     "Protocol" "IntelliMouse"

The IntelliMouse driver corresponds to the "repeat_type=ms3" option in gpm.conf, which is the default repeat type in Debian.

On the gpm side of things

To configure gpm use program gpmconfig. For most of the scroll wheel mice I use a type of imps2. That seems to work best.

In a normal setup gpm listens to the port the mouse is connected to and repeats/relays the mouse events to a unix socket /dev/gpmdata. This allows console applications like mc (Midnight Commander) to get mouse events. For X windows to hear the mouse it should be configured to listen to /dev/gpmdata. I've always had the best luck configuring gpm to repeat in raw mode and configure X windows to use whatever protocol the mouse uses. In this setup the mouse type should be set in two places, in gpmconfig and in your X windows configuration. I get the feeling this is a non-standard approach but it's alway given me the least problems.