Canonical replaces X Server with Mir

Some may say “X is totally the UNIX way”, while Unix says “Do one thing and do it well”. But what is the one thing that X does and does it well? That’s hard for me to answer, since I have no experience in that field but if you spend a couple of hours watching X developer’s sessions then you’ll get the idea that X is a terrible mess.


Nowadays, the world is fond of tablets and smartphones while people use them like everyday. That’s why problems like flickering, flashing and tearing are unacceptable in 2013. This is the time for X Display Server to go offline, as it simply can’t continue anymore, it’s too old and too grumpy. After all, it was not made to serve that purpose. So, thanks for nearly 30 years of your services but it’s time to move on in something else, and nothing else can be worse than X.

Well, that was a critical problem for Canonical and their upcoming devices (uPhone, uTablet). In order to solve their problem, Canonical are developing a next generation display server known as Mir. A system-level component targeted as a replacement for the X window server system to unlock next-generation user experiences for devices ranging from Linux desktop to mobile devices powered by Ubuntu. The technical requirements for the future Ubuntu graphics stack are:

  •  – Tailored towards an EGL/GL(ES) world.
  • – Minimal assumptions regarding the underlying driver model.
  • – Ability to leverage existing drivers implementing the Android driver model.
  • – Ability to leverage existing hardware compositors.
  • – Efficient, in terms of memory-, CPU- and GPU-consumption/usage.
  • – Tightly integrated with the Unity shell, fulfilling the shell’s requirements while at the same time not dictating any sort of semantics up the stack.
  • – An efficient and secure input subsystem supporting demanding mobile use-cases.
  • – Fully tested from the ground up.
  • – Adaptable to future requirements.


In summary, Canonical tested the existing solutions and decided that none of them meets their requirements without the help of some serious hacking. For this reason, they decided to go for their own solution. So, instead of forking Wayland — which has pretty much the same design — Canonical developers are writing their own display manager called Mir (as the space station). But just before the landing for the moon, a kind of a “flame war” has started between Wayland developers and Canonical.

Developers who work on Wayland project claim that the major reason for not using their project is because Canonical doesn’t control the Wayland development. But, instead of claiming this obvious fact, Mir wiki page says that Wayland is not technically capable of meeting their requirements for Unity Next and it suffers from X legacy problems.

[pullquote]Daniel Stone wrote: “I just wish they were honest about their (non-technical) reasoning behind this, rather than publicly trashing another project based on falsehoods and/or misunderstandings”[/pullquote]. [pullquote]Kristian Høgsberg said: “don’t go out and tell the whole world how Wayland is broken and has all X’s input problems if you don’t know what it is”[/pullquote]

That has been told, today, after a lot of discussion in social media, Canonical edited Mir’s page to the following:

” Please note though that Wayland’s input event handling does not suffer from the security issues introduced by X’s input event handling semantics (thanks to Daniel Stone and Kristian Høgsberg for pointing this out). “

So, it’s only a matter of time before Ubuntu takes control of your Display Server. I’m sure it would be a great experience for everyone to use it, but what about all the other non-Ubuntu-based Linux distros that will eventually end up using Wayland ?

Do you think that nVIDIA (already working with Mir) and AMD would provide you two different drivers, one for Mir and one for Wayland? And last but certainly not least, what’s about Valve and Steam? Are you sure that Ubuntu will share its greatness along with the rest of Free Software community?

What’s your opinion ?