Display remote X session (complete desktop) in one client X window

desktopremotesessionxorg

Situation: From Windows I connect to a remote Linux using putty with X11 port forwarding. Xming is able to display the desktop session in ONE Windows window.

If I connect from Linux with "ssh -Y host" I can start remote X programs that use the local X server to display their content. Several programs get each one it's own window.

Question is: Is there any possibility to encapsulate a complete remote desktop session (with window manager and all the other stuff) into a single lokal X window? Like the "one window" behavior you can get with Xming?

Best Answer

It's possible to have this if you launch a second X11 server in a "single window" mode. (In other words, exactly like you're doing it on Windows.) Use Xephyr or Xnest for this:

Xephyr :42 &
DISPLAY=:42 ssh -Y host

The X11 server determines how windows are displayed: you can run X11 fullscreen, you can contain the entire X11 screen within a single window of an already-running GUI, you can make X11 windows integrate to the already-running GUI. XWin and Xming have all three modes, while Linux has Xorg, Xephyr/Xnest and things like Xpra for each mode.

On Windows, the default GUI is only accessible through Windows API, so a X11 server needs to be started separately – in this case, you're starting Xming, in a "single window" mode.

On Linux, X11 is already running full-screen and ssh just connects to it. If you want to contain some programs to a single window, you also need to start a X11 server in a "single window" mode – only instead of Xming they're called Xephyr or Xnest.

Related Question