ignisuti
December 10th, 2009, 06:22 PM
I'm trying to setup my first multi-seating PC using Ubuntu 9.10. I'm using a Nvidia Geforce 9400 video card along with the Nvidia Settings driver.
I've gotten the video to output to two seperate X screens (mostly automatically done for me with the Nvidia software). However, my input devices are all tied to screen0! That is with the following strange exception:
Right after I bootup, Both keyboards appear to control screen1. However, they quickly loose control of screen1 and permanently gain control of screen0 when I press the WindowsKey & E OR click the mouse button.
Here are the contents of my xorg.conf file:
##### XORG.CONF #####
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
# xorg.conf file based on this tutorial: http://wiki.archlinux.org/index.php/Xorg_multiseat
# Important TV Output Format Info: http://http.download.nvidia.com/solaris/1.0-9629/README/appendix-h.html
Section "Files"
RgbPath "/usr/share/X11/rgb"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/75dpi"
FontPath "/usr/share/fonts/100dpi"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/Type1"
FontPath "/usr/share/fonts/msfonts"
FontPath "/usr/share/fonts/misc2"
FontPath "/usr/share/fonts/local"
FontPath "/usr/local/share/fonts"
EndSection
Section "Module"
Load "dbe" # Double buffer extension
SubSection "extmod"
Option "omit xfree86-dga" # don't initialize the DGA extension
EndSubSection
Load "type1"
Load "speedo"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
# Disable ctrl alt backspace
# Option "DontZap"
# Xorg will otherwise not start if it can't find a mouse to use.
Option "AllowMouseOpenFail" "true"
# Disable xinerama
Option "Xinerama" "0"
EndSection
### SERVER LAYOUT ###
## A definition of which screen, keyboard and mouse to use.
## seat: A workplace with a physical monitor, physical keyboard and physical mouse.
Section "ServerLayout"
Identifier "seat0"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" RightOf "Screen0"
InputDevice "mouse0" "CorePointer"
InputDevice "keyboard0" "CoreKeyboard"
EndSection
Section "ServerLayout"
Identifier "seat1"
Screen "screen1" 0 0
InputDevice "mouse1" "CorePointer"
InputDevice "keyboard1" "CoreKeyboard"
EndSection
### MICE ###
## Identify mouse #'s "gedit /proc/bus/input/devices".
## OR... Find out which mouse is which: "sudo cat /dev/input/mouse1". If you then move your mouse and you see all weird things happening than that is the mouse you're moving.
## Common Mouse Protocols: http://www.faqs.org/docs/Linux-mini/XFree86-Second-Mouse.html
Section "InputDevice"
Identifier "mouse0"
Driver "mouse"
Option "Protocol" "PS/2"
Option "Device" "/dev/input/mouse1"
EndSection
Section "InputDevice"
Identifier "mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mouse3"
EndSection
### KEYBOARDS ###
## Identify keyboards Event #'s "gedit /proc/bus/input/devices".
Section "InputDevice"
Identifier "keyboard0"
Driver "evdev"
Option "Device" "/dev/input/event3"
Option "XkbModel" "evdev"
Option "XkbLayout" "be"
EndSection
Section "InputDevice"
Identifier "keyboard1"
Driver "evdev"
Option "Device" "/dev/input/event7"
Option "XkbModel" "evdev"
Option "XkbLayout" "be"
EndSection
### MONITORS ###
## A physical monitor like the one you're now sitting in front of
Section "Monitor"
Identifier "monitor0"
VendorName "Unknown"
ModelName "DELL 1901FP"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
Section "Monitor"
Identifier "monitor1"
VendorName "Unknown"
ModelName "DELL 1901FP"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
### GRAPHICS CARD ###
## Run "lspci" in Terminal to find Graphics card PCI location. NOTE: Convert from HEX to DECIMAL
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9400 GT"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9400 GT"
BusID "PCI:1:0:0"
Screen 1
EndSection
### SCREENS ###
## A screen is something Xorg can display its stuff on. A screen has a monitor and a graphics card assigned to it
Section "Screen"
Identifier "screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "DPI" "100x100"
Option "TwinView" "0"
Option "metamodes" "DFP: 1280x1024 +0+0; DFP: 1024x768 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "DPI" "100x100"
Option "TwinView" "0"
Option "metamodes" "CRT: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
This is my first experience playing with X. So, most of this file was created based on my interpretations of the online tutorials that I've read.
I've gotten the video to output to two seperate X screens (mostly automatically done for me with the Nvidia software). However, my input devices are all tied to screen0! That is with the following strange exception:
Right after I bootup, Both keyboards appear to control screen1. However, they quickly loose control of screen1 and permanently gain control of screen0 when I press the WindowsKey & E OR click the mouse button.
Here are the contents of my xorg.conf file:
##### XORG.CONF #####
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 1.0 (buildd@palmer) Sun Feb 1 20:21:04 UTC 2009
# xorg.conf file based on this tutorial: http://wiki.archlinux.org/index.php/Xorg_multiseat
# Important TV Output Format Info: http://http.download.nvidia.com/solaris/1.0-9629/README/appendix-h.html
Section "Files"
RgbPath "/usr/share/X11/rgb"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/75dpi"
FontPath "/usr/share/fonts/100dpi"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/Type1"
FontPath "/usr/share/fonts/msfonts"
FontPath "/usr/share/fonts/misc2"
FontPath "/usr/share/fonts/local"
FontPath "/usr/local/share/fonts"
EndSection
Section "Module"
Load "dbe" # Double buffer extension
SubSection "extmod"
Option "omit xfree86-dga" # don't initialize the DGA extension
EndSubSection
Load "type1"
Load "speedo"
Load "freetype"
Load "glx"
EndSection
Section "ServerFlags"
# Disable ctrl alt backspace
# Option "DontZap"
# Xorg will otherwise not start if it can't find a mouse to use.
Option "AllowMouseOpenFail" "true"
# Disable xinerama
Option "Xinerama" "0"
EndSection
### SERVER LAYOUT ###
## A definition of which screen, keyboard and mouse to use.
## seat: A workplace with a physical monitor, physical keyboard and physical mouse.
Section "ServerLayout"
Identifier "seat0"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" RightOf "Screen0"
InputDevice "mouse0" "CorePointer"
InputDevice "keyboard0" "CoreKeyboard"
EndSection
Section "ServerLayout"
Identifier "seat1"
Screen "screen1" 0 0
InputDevice "mouse1" "CorePointer"
InputDevice "keyboard1" "CoreKeyboard"
EndSection
### MICE ###
## Identify mouse #'s "gedit /proc/bus/input/devices".
## OR... Find out which mouse is which: "sudo cat /dev/input/mouse1". If you then move your mouse and you see all weird things happening than that is the mouse you're moving.
## Common Mouse Protocols: http://www.faqs.org/docs/Linux-mini/XFree86-Second-Mouse.html
Section "InputDevice"
Identifier "mouse0"
Driver "mouse"
Option "Protocol" "PS/2"
Option "Device" "/dev/input/mouse1"
EndSection
Section "InputDevice"
Identifier "mouse1"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mouse3"
EndSection
### KEYBOARDS ###
## Identify keyboards Event #'s "gedit /proc/bus/input/devices".
Section "InputDevice"
Identifier "keyboard0"
Driver "evdev"
Option "Device" "/dev/input/event3"
Option "XkbModel" "evdev"
Option "XkbLayout" "be"
EndSection
Section "InputDevice"
Identifier "keyboard1"
Driver "evdev"
Option "Device" "/dev/input/event7"
Option "XkbModel" "evdev"
Option "XkbLayout" "be"
EndSection
### MONITORS ###
## A physical monitor like the one you're now sitting in front of
Section "Monitor"
Identifier "monitor0"
VendorName "Unknown"
ModelName "DELL 1901FP"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
Section "Monitor"
Identifier "monitor1"
VendorName "Unknown"
ModelName "DELL 1901FP"
HorizSync 30.0 - 80.0
VertRefresh 56.0 - 76.0
Option "dpms"
EndSection
### GRAPHICS CARD ###
## Run "lspci" in Terminal to find Graphics card PCI location. NOTE: Convert from HEX to DECIMAL
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9400 GT"
BusID "PCI:1:0:0"
Screen 0
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 9400 GT"
BusID "PCI:1:0:0"
Screen 1
EndSection
### SCREENS ###
## A screen is something Xorg can display its stuff on. A screen has a monitor and a graphics card assigned to it
Section "Screen"
Identifier "screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "DPI" "100x100"
Option "TwinView" "0"
Option "metamodes" "DFP: 1280x1024 +0+0; DFP: 1024x768 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "DPI" "100x100"
Option "TwinView" "0"
Option "metamodes" "CRT: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
This is my first experience playing with X. So, most of this file was created based on my interpretations of the online tutorials that I've read.