Setting up multiple monitors
With the arrival of my new monitor, I looked into the possible configurations for having 2 screens attached to one computer: one being my new monitor and the other one being a laptop screen. Obviously the displays are not identical and they have a different resolution as well which *might* complicate things.
The first option is one screen mirroring the other screen. In other words, everything that happens on one screen, happens on the other. You can easily realize this in GNOME by going to System > Preferences > Screens. Just enable the mirror screens checkbox. While this may be very useful for demonstrations and presentations, I wanted to actually benefit from the extra workspace that comes with a second monitor so I quickly ruled out this option.
The second option is to spread your desktop over multiple screens. Your two monitors are turned into one large virtual monitor. This option seems to very popular among gamers. You can have your game or application spread out over all your monitor. Ideally, one uses this option if he or she has 2 monitors with the same resolution. You can get this functionality by enabling Xinerama (depreciated) or using xrandr. Again, it didn’t prove to be functional for me with as you get strange effects when you have different resolutions.
The third and, personally, the best option is separate X screens. Each monitor will be treated as an X screen, independent of each other. It’s as if you have 2 computers with each one screen. Only this time, the monitors are driven by one computer. Downside is you can’t drag windows from one screen to the other but I can live with that. Just launch the application on the monitor you want. To get this, you will need to edit your (/etc/X11/)xorg.conf file. You’ll need 2 screen sections, 2 monitor sections and 2 device sections. Here are the relevant sections of my setup:
Section "ServerLayout" Identifier "X.org Configured for Sony Vaio VGN-SZ61XN Nvidia" Screen 0 "Sony Vaio Display" RightOf "Samsung SyncMaster Display" Screen 1 "Samsung SyncMaster Display" 0 0 EndSection Section "Monitor" Identifier "Sony Vaio VGN-SZ61XN" VendorName "Sony" ModelName "Vaio VGN-SZ61XN" HorizSync 29.0 - 49.0 VertRefresh 0.0 - 61.0 EndSection Section "Monitor" Identifier "Samsung SyncMaster 245T" VendorName "Samsung" ModelName "SyncMaster 245T" HorizSync 30.0 - 81.0 VertRefresh 56.0 - 75.0 EndSection Section "Device" Identifier "Nvidia Geforce 8400M GS 0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce 8400M GS" BusID "PCI:1:0:0" Screen 0 EndSection Section "Device" Identifier "Nvidia Geforce 8400M GS 1" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce 8400M GS" BusID "PCI:1:0:0" Screen 1 EndSection Section "Screen" Identifier "Sony Vaio Display" Device "Nvidia Geforce 8400M GS 0" Monitor "Sony Vaio VGN-SZ61XN" DefaultDepth 24 Option "metamodes" "DFP: nvidia-auto-select +0+0" SubSection "Display" Depth 24 EndSubSection EndSection Section "Screen" Identifier "Samsung SyncMaster Display" Device "Nvidia Geforce 8400M GS 1" Monitor "Samsung SyncMaster 245T" DefaultDepth 24 Option "metamodes" "CRT: nvidia-auto-select +0+0" SubSection "Display" Depth 24 EndSubSection EndSection
Note that I obviously have only 1 graphic card. Each screen entry just requires to be attached to a device.