Remote apps idea (without changing the underlying concept)

Martin Sivak mars at
Fri Nov 5 12:16:09 PDT 2010

Hash: SHA1


If I understood the discussions correctly, there will be no underlying X  or the "window manager". Instead the compositor process (linked against common wayland library) will be doing all client and window management and work with hardware directly through kernel.

The clients will then render directly to provided/created buffer and exchange damage and input events with the compositor.

I hope I got this right, there is a lot of confusing info around.

Now to my idea:

So the equivalent of ssh -X, which people are asking for, should be possible using the following approach. And it would only require that any wayland app can be pointed to different local compositor (like we do in X world with -display or $DISPLAY).

Anyone would then be able to write "network compositor client" which would act as a compositor, but use only in-memory buffers (and probably stores the opengl commands). It would then be able to compress (maybe) the bitmap from the application and sent it over network using any suitable protocol and it would of course return all received input events back to the application.

On the remote side would be a "network compositor daemon" which would present itself as a regular client app to the compositor running on the remote machine. It would claim ownership of all windows of all apps running through it (and allocate all the necessary buffers) and forward all buffer changes to compositor and input events back over network to the client.

Basicly, it would be "VNC" with different buffer for each remote app. It would require a pair of relatively simple daemons to do the bitmap and event transfer (much like NX does) and would be completely transparent to the wayland approach and IMHO goals too.

But of course only if I got the idea right.

What lot of people are afraid of it that when Ubuntu adopts Wayland as a main display system and wayland-only apps start appearing, we would lose the ability to run apps remotely, because nobody will be maintaining non-wayland toolkit variants anymore. If the approach I described is possible, it would be great and actually make things much simplier (even writing xlib replacement which renders localy and acts as a wayland client).

- --
Martin Sivak
mars at

Version: GnuPG/MacGPG2 v2.0.11 (Darwin)


More information about the wayland-devel mailing list