Posts about x11

Older X.org and XFree86 used to have this neat feature where pressing Ctrl+<numpad +> and Ctrl+<numpad -> would cycle through the screen modes defined in your config file in the "Screen" section, effectively switching screen modes on the fly and letting you pan around the full virtual screen size with the mouse.

This was a really useful feature for zooming in on small details, or to blow up videos without incurring high CPU overhead.

But since about X.org 1.7 this feature seems to be missing. I've been researching and discovered why it's missing, and what to do about it.

My work's notebook (Windows XP) is running Xming as it's X11 server, and it travels between work, home and on the train.

My work office has a docking station and a rotating second display. Typically if I start Xming with this display plugged in, Xming will adjust it's screen size to use both displays, but if I start it without the screen plugged in, it'll size to just the notebook screen. If I later add the 2nd screen (by docking the notebook), Xming won't use it without a restart. Also if I rotate the screen, only the top 1200 pixels will be used by Xming.

The solution is to specify a screen size to begin with that is as wide and tall as both of the screens. On my docked notebook the two displays are the notebook's display (1920x1200 pixels) and 2nd display (1600x1200 pixels, which rotates to 1200x1600). So that means the combined screen width is 3520 pixels, and the tallest screen hight is 1600 pixels. Specify this to Xming when it starts:

path\to\xming.exe :0 -clipboard -multiwindow -screen 0 3520x1600

Now I can add/remove/rotate the second screen and still use all of it without restarting Xming.

One use-case we have at work for Xming is to be the X11 server on a Windows RDP terminal server. For security reasons (don't ask!) we can only access certain Unix hosts via an RDP session from our desktops, not directly over the campus LAN. So, we installed Xming on the TS and it works well. Except if two or more people wish to use it at once. Then it's first come, first served.

I recently upgraded my Cygwin install and noticed that Cygwin has switched it's X server XWin.exe from the XFree86 codebase to the Xorg codebase. Besides an updated logo, it also has some other side-effects.

MJL20080827 -- Update: I Just realised that this is one of my top-visited pages and it's a totally disorganised and incongruent pile of... What's worse is, I've never updated it since the promised update back in March 2007!

Let me clear things up (and save you wading through the whole article): If you want remote access to your openSUSE desktop from a networked thin client, then forget about X11, XDMCP, VNC or tunneling X through SSH. Use the NX protocol. You'll need to do the following:

Install an NX client on your remote terminal(s). Nomachine has free NX clients for Linux, Mac, Windows and Solaris (even some experimental ones for PlayStation 2 and Zaurus!). If your remote terminal is running openSUSE, you could alternatively get an open-source NX client from the build service (or ask yourself: I'm running X locally, so why don't I just use good ole SSH and X11?)

Configure your NX client to connect to the openSUSE host, then log in and enjoy!

The upshot: I've done this with a FreeNX server and Nomachine's NX client for Windows XP, and it all "just works", except maybe for some font issues with older X clients like emacs (install extra font packages from nomachine to fix that), and some transparency effect issues I noticed in kwin4, probably to do with X11 extensions missing in the NX client. Not a big deal.

Read the rest of this article for the boring background and laughable false-starts in my quest for remote desktops in X... <blush/>