MC's Journal

Wayland, window managers and suicide

I received a disturbing e-mail a few days ago:

From: "Anonymous Remailer (austria)" <mixmaster AT THE DOMAIN>
Subject: I have sad, tragic news, mister widerkrantz

Dear Sir,

with wayland, running mcwm will not be possible anymore.
We have to give up our litte window managers and switch
to GNOME or KDE. Sad as it is, that is called progress, I guess.

Good-bye, I'm going to kill myself once that comes true


Dear Anonymous,

Like you, I often get emotionally attached to my tools. I would find it hard to live in a world without, say, Emacs. I admit that I have strong feelings about the user interface of programs I use, and, yes, about window managers, too.

The Wayland system is a replacement for the aging X system. Wayland defines a protocol for clients to speak with a compositor for later display, much like the X11 protocol is a protocol for clients to speak with the X server, although there are many differences.

Unlike X, which typically uses a separate process for window management, the window management functionality in Wayland is by design a part of the compositor. This means, as the letter writer above suggests, that it's not possible to change the window manager without also changing compositor. But why would that be a problem?

In the default Wayland system the compositor is called Weston. Weston seems to be built mostly by function calls to libraries. It wouldn't be that hard to replace Weston entirely by using the same library functions in your own compositor. In fact, this is probably what KDE and Gnome intend to do.

There are already alternatives to Weston available:

Here's a video where a developer using Enlightenment as a Wayland compositor:

Here's a video with someone using ADWC:

A short demo of the Hawaii desktop environment is here:

I don't know what will happen with Wayland and if it will replace X on any major Linux distribution soon. My guess is that it will probably be some time before that happens. This means there will be plenty of time to write a compositor/window manager that doesn't suck too much.

Complicating the picture is Canonical's recent announcement that they won't be using Wayland after all. Instead, they're going with something they call Mir.

I haven't looked that much at Mir and I'm not sure I understand the reasons they don't want to use Wayland other than that they seem to prefer C++. *shiver*

My guess, however, is that it's quite possible to the same thing in Mir and replace the default compositor with something that you can live with.

Take care,