The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

The New Hotness

  • Xubuntu 9.10: Functional xorg.conf

    After considerable thrashing, this hand-tweaked version of /etc/X11/xorg.conf seems to do what’s needed for Xubuntu 9.10. It includes only display setup stuff; all the input device configuration is now tucked away in HAL FDI files.

    I used the nvidia-settings control panel to create a basic xorg.conf file that used separate X sessions, saved it in my home directory, then tweaked it in small increments until everything worked. Or, more precisely, until things stopped failing…

    Some observations:

    • Obviously, this uses the proprietary nVidia driver
    • The option Rotate CCW line must be commented out (or omitted) to avoid killing xrandr, because many utilities expect xrandr
    • Use the Xubuntu display setup applet to apply the xrandr rotation; just specify Screen 2 as rotated left
    • X locks up occasionally when Wacom tablet cursor falls into the seam between the displays. Make sure you can ssh into the box to restart X: an X crash kills the keyboard, too!
    • Metamodes must specify the exact monitor resolution
    • The nVidia logo doesn’t appear on either monitor during boot, even with NoLogo turned off. I like the logo, because it gives an early heads-up when something goes wrong.

    The xorg.conf file:

    
    Section "ServerLayout"
     Identifier     "RotatedPortrait"
     Screen      0  "Landscape" 0 0
     Screen      1  "Portrait" RightOf "Landscape"
    EndSection
    
    Section "Module"
     Load           "dbe"
     Load           "extmod"
    #   Load           "type1"
    #   Load           "freetype"
     Load           "glx"
    EndSection
    
    Section "ServerFlags"
     Option         "Xinerama" "0"
    EndSection
    
    Section "Monitor"
     # HorizSync source: edid, VertRefresh source: edid
     Identifier     "Dell2001FP"
     VendorName     "Dell"
     ModelName      "DELL 2001FP"
     HorizSync       31.0 - 80.0
     VertRefresh     56.0 - 76.0
     Option         "DPMS"
    EndSection
    
    Section "Monitor"
     # HorizSync source: edid, VertRefresh source: edid
     Identifier     "Dell2005FP"
     VendorName     "Dell"
     ModelName      "DELL 2005FPW"
     HorizSync       30.0 - 83.0
     VertRefresh     56.0 - 75.0
     Option         "DPMS"
    EndSection
    
    Section "Device"
     Identifier     "GF9400_0"
     Driver         "nvidia"
     VendorName     "NVIDIA Corporation"
     BoardName      "GeForce 9400 GT"
     BusID          "PCI:1:0:0"
     Screen          0
    EndSection
    
    Section "Device"
     Identifier     "GF9400_1"
     Driver         "nvidia"
     VendorName     "NVIDIA Corporation"
     BoardName      "GeForce 9400 GT"
     BusID          "PCI:1:0:0"
     Screen          1
    EndSection
    
    Section "Screen"
     Identifier     "Landscape"
     Device         "GF9400_0"
     Monitor        "Dell2001FP"
     DefaultDepth    24
     Option         "TwinView" "0"
     Option         "metamodes" "DFP-0: 1600x1200 +0+0"
     Option         "NoLogo" "Off"
     SubSection     "Display"
     Depth       24
     EndSubSection
    EndSection
    
    Section "Screen"
     Identifier     "Portrait"
     Device         "GF9400_1"
     Monitor        "Dell2005FP"
     DefaultDepth    24
     Option         "TwinView" "0"
     Option         "metamodes" "DFP-1: 1680x1050 +0+0"
     Option         "NoLogo" "Off"
     Option         "RandRRotation" "On"
    #    Option         "Rotate" "CCW"
     SubSection     "Display"
     Depth       24
     EndSubSection
    EndSection