How to set-up a multi-seat system on a debian lenny system:
Hardware:
In this example:
Software:
Configure the /etc/X11/xorg.conf file with all hardware descrives in it. To do this I had to add some udev rules like this
# input devices KERNEL=="mice", NAME="input/%k" KERNEL=="mouse[0-9]*", NAME="input/%k" KERNEL=="event[0-9]*", NAME="input/%k" KERNEL=="js[0-9]*", NAME="input/%k" KERNEL=="ts[0-9]*", NAME="input/%k" KERNEL=="uinput", NAME="input/%k" +KERNEL=="kbd", NAME="input/%k"
# by-id links, generic and for the event devices -KERNEL=="mouse*|js*", ENV{ID_BUS}=="?*", ENV{ID_CLASS}=="?*", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-$env{ID_CLASS}" +KERNEL=="mouse*|js*|kbd", ENV{ID_BUS}=="?*", ENV{ID_CLASS}=="?*", SYMLINK+="input/by-id/$env{ID_BUS}-$env{ID_SERIAL}-$env{ID_CLASS}"
Finaly I added those two lines in /etc/gdm/gdm.conf:
[servers] +0=/usr/bin/Xorg -br -audit 0 -novtswitch -sharevts -layout "PS2 Layout" +1=/usr/bin/Xorg -br -audit 0 -novtswitch -sharevts -layout "USB Layout"
For example here is my xorg configuration file with everything described before:
Section "ServerLayout" Identifier "USB Layout" Screen "Screen 24p" 0 0 InputDevice "USB Keyboard" InputDevice "USB Mouse" EndSection Section "ServerLayout" Identifier "PS2 Layout" Screen "Screen 19p" RightOf "Screen 17p" Option "Xinerama" "on" Screen "Screen 17p" 0 0 InputDevice "PS2 Keyboard" InputDevice "PS2 Mouse" EndSection Section "Files" FontPath "/usr/share/fonts/X11/misc" FontPath "/usr/X11R6/lib/X11/fonts/misc" FontPath "/usr/share/fonts/X11/cyrillic" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic" FontPath "/usr/share/fonts/X11/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/share/fonts/X11/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/share/fonts/X11/Type1" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/share/fonts/X11/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/100dpi" FontPath "/usr/share/fonts/X11/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/75dpi" FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" EndSection Section "Module" Load "i2c" Load "bitmap" Load "ddc" Load "extmod" Load "freetype" Load "glx" Load "int10" Load "type1" Load "vbe" EndSection Section "InputDevice" Driver "evdev" Identifier "PS2 Keyboard" Option "CoreKeyboard" Option "Device" "/dev/input/by-path/platform-i8042-serio-0-event-kbd" Option "XkbRules" "xorg" Option "XkbModel" "pc104" Option "XkbLayout" "jk" EndSection Section "InputDevice" Identifier "PS2 Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/by-path/platform-i8042-serio-1-mouse" Option "Protocol" "IMPS/2" Option "Emulate3Buttons" "true" EndSection Section "InputDevice" Identifier "USB Keyboard" Driver "evdev" Option "CoreKeyboard" Option "Device" "/dev/input/by-id/usb-Dell_Dell_USB_Keyboard-event-kbd" Option "XkbRules" "xorg" Option "XkbLayout" "us" Option "evBits" "+1" Option "keyBits" "~1-255 ~352-511" Option "Pass" "3" EndSection Section "InputDevice" Identifier "USB Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/by-id/usb-Microsoft_Basic_Optical_Mouse-mouse" Option "Protocol" "IMPS/2" Option "Emulate3Buttons" "true" EndSection Section "Monitor" Identifier "Asus 24p" HorizSync 28.0 - 115.0 VertRefresh 43.0 - 75.0 Option "DPMS" EndSection Section "Monitor" Identifier "Hyundai 17p" HorizSync 48.0 - 82.0 VertRefresh 50.0 - 75.0 Option "DPMS" EndSection Section "Monitor" Identifier "Iiyama 19p" HorizSync 48.0 - 85.0 VertRefresh 50.0 - 75.0 Option "DPMS" EndSection Section "Device" Option "NoLogo" "true" Identifier "nVidia 9600" Driver "nvidia" BusID "PCI:1:0:0" EndSection Section "Device" Option "NoLogo" "true" Identifier "nVidia 7300-1" Driver "nvidia" BusID "PCI:2:0:0" Screen 0 EndSection Section "Device" Option "NoLogo" "true" Identifier "nVidia 7300-2" Driver "nvidia" BusID "PCI:2:0:0" Screen 1 EndSection Section "Screen" SubSection "Display" Depth 24 Modes "1920x1080" "1280x1024" "1024x768" "800x600" "640x480" EndSubSection Identifier "Screen 24p" Device "nVidia 9600" Monitor "Asus 24p" DefaultDepth 24 EndSection Section "Screen" Identifier "Screen 17p" Device "nVidia 7300-2" Monitor "Hyundai 17p" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1280x1024" "800x600" "640x480" EndSubSection EndSection Section "Screen" Identifier "Screen 19p" Device "nVidia 7300-1" Monitor "Iiyama 19p" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1280x1024" "800x600" "640x480" EndSubSection EndSection