The last days I tested the dualhead capabilities of the Lenovo X60s notebook. I had some problems to find a configuration that works without cloning the screen. But in the meantime a newer version of X and the i810 module was released which supports the Xrandr 1.2 extension. Thus it’s possible to change the settings while X is running with the user space tool “xrandr”.
I downloaded the latest version of grml-x to get a fresh xorg.conf:
root@subzero ~ % grml-x -nostart -f fluxbox
Since I wanted to run the internal display @1024×768 and the external CRT @1600×1200 I had to add one line to /etc/X11/xorg.conf:
SubSection "Display" Depth 16 # Modes "1024x768" "800x600" "640x480" "1600x1200" "1280x1024" "1280x960" Virtual 2624 1968 EndSubSection
Otherwise xrandr would complain that the screen is too small when setting up the layout of the two combined screens (e.g.: xrandr: screen cannot be larger than 1440×1440 (desired size 2048×768)).
After starting X you can begin to play with xrandr. When executing xrandr without any arguments it lists all available screens and displays.
To switch the external display off execute:
jimmy@subzero ~ % xrandr --output VGA --off
To change the resolution of the externalt CRT execute:
jimmy@subzero ~ % xrandr --output VGA --mode 1600x1200
To setup the CRT to be right of the LCD:
jimmy@subzero ~ % xrandr --output VGA --right-of LVDS
If you didn’t add the “Virtual 2624 1968″ Line in /etc/X11/xorg.conf, as described above, xrandr would now complain that the screen is too small for the desired size (1024+1600=2624 and 768+1200=1968).
xrandr has an excellent man page to lookup all the features.
My tests showed that window managers behave differently when setting up the screen layout. My preferred setup is to have the CRT right of the LCD with a higher resolution. With KDE it worked as expected but with fluxbox I couldn’t use fullscreen on the CRT only. So when switching to fullscreen or when maximizing windows, fluxbox used both screens (CRT and LCD).
You can download my xorg.conf here