Sunday, September 16, 2007

Video Resolutions under Ubuntu Remote Desktop

This post explains how to increase/expand the desktop size to match the working resolution of the remote client even if this resolution is higher than that of the server's video hardware.

The setup is Ubuntu Feisty 7.04 with Gnome Remote Desktop enabled, running on a Panasonic Toughbook (max LCD resolution of 1024x768), accessed by a desktop system operating at a resolution of 1280x1024. (UPDATE: this worked for me with xserver-xorg-core-1.2; this no longer works for me after upgrading to xserver-xorg-core-1.3.)

(FYI: The default Remote Desktop software in Ubuntu 7.04 is Vino, which is running with the xrandr extension. Remote Desktop is enabled via System -> Preferences -> Remote Desktop.)

X Windows has provisions for allowing desktop resolutions beyond which the server's hardware can support. These resolutions are called Virtual Resolutions, as rather than they being true hardware resolutions are instead represented in a simulated sense within the software.

On the Remote Desktop server, edit the xorg.conf file and locate the Display subsection matching that which the Defaultdepth is set to. Add the following line after Modes:

Virtual 1280 1024

Where the numbers represent the resolution which you want to use when connecting via Remote Desktop. (Note the absence of an 'x' between the numbers, this is intentional; adding an 'x' will result in the failure of X-Windows to launch.)

This section should now read something similar to the following:

SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
Virtual 1280 1024

Restart X Windows. Check for the new virtual resolution in the list at System -> Preferences -> Screen Resolution. Select the new virtual resolution; the desktop will now be larger than the monitor can display, though the entire desktop can be panned by moving the mouse in the appropriate direction.

Next connect to the Remote Desktop server. The resulting display on the client should be the entire desktop shown at the full virtual resolution. (Note that the screen resolution of the server can also be updated from within the Remote Desktop session.)

My main development system is the laptop described above. I mainly use it in a docked configuration, though I also take advantage of the portability and work offsite. Lacking a dock at home, I instead use Remote Desktop to connect to the laptop. The above solution allows me to run the Remote Desktop session to take advantage of the full resolution of my desktop computer and not be limited to that of the laptop's video hardware.

1 comment:

Lena Benner said...
This comment has been removed by a blog administrator.