I have a new PC under my desk, and it seems that I now have my X setup the way I want it. The problem was with the dual head support: I wanted one desktop stretched across the two monitors, so I can drag windows across from one monitor to the other.
The default configuration merely mirrored one screen onto two monitors: a waste of desktop real estate. What I had before did put different X displays on the monitors: good but not great because I couldn’t drag across. On my old machine I could use the Xinerama extension to achieve the what I wanted, but turning that on made the driver for the new card (ATI’s proprietary fglrx) crash when the screensaver kicked in.
What seems to make it work on Ubuntu Gutsy is to use the aticonfig
program that comes with the driver package like so:
- Install the xorg-driver-fglrx package
- Run
sudo aticonfig --initial=dual-head --screen-layout=right
--dtop-horizontal -i /etc/X11/xorg.conf --force
This puts a couple of configuration options in xorg.conf, notably:
Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "aticonfig-Screen[0]" 0 0
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
EndSection
Section "Monitor"
Identifier "aticonfig-Monitor[0]"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection
Section "Monitor"
Identifier "aticonfig-Monitor[1]"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection
Section "Device"
Identifier "aticonfig-Device[0]"
Driver "fglrx"
Option "DesktopSetup" "horizontal"
BusID "PCI:1:0:0"
EndSection
Section "Device"
Identifier "aticonfig-Device[1]"
Driver "fglrx"
BusID "PCI:1:0:0"
Screen 1
EndSection
Section "Screen"
Identifier "aticonfig-Screen[0]"
Device "aticonfig-Device[0]"
Monitor "aticonfig-Monitor[0]"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "aticonfig-Screen[1]"
Device "aticonfig-Device[1]"
Monitor "aticonfig-Monitor[1]"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
Note there is lots of overlap, there are even two Device
sections for the same PCI bus id and the X server bitches in a minor way about the absence of a section for the 1:0:1 slot on the PCI bus… in any case that Option "DesktopSetup" "horizontal"
thingy seems to do some magic because that’s really the only exotic entry in the entire config file.
There is a missing symbol emit in the log file that goes away when I disable the broken extension after a Googled suggestion:
Section "ServerFlags"
Option "AIGLX" "off"
EndSection
Section "Extensions"
Option "Composite" "Disable"
EndSection