Canonical has announced plans to develop new, open source Linux display-server software called Mir, in a move that it says will help further its goal of offering a unified Ubuntu user experience across PCs, smartphones, tablets, and smart TVs.
Traditionally, desktop Linux distributions have rendered their GUIs using software derived from the X Window System – X, for short – a venerable graphics layer that was developed for Unix by the Massachusetts Institute of Technology in the 1980s.
But many Linux developers think X is showing its age, and that it makes it too cumbersome to create the kinds of sophisticated graphical effects that modern desktop users have come to expect.
Recently, a number of Linux distributions have lent their support to Wayland, a free-software replacement for X that aims to make it easier to render modern, hardware-accelerated GUI desktops.
Until recently, Canonical could be counted among that list. But on Monday it unveiled its plans to develop Mir as a new, completely separate display server, one that is neither X nor Wayland.
"None of the existing solutions would allow us to implement our vision without taking major compromises which would come at the cost of user experience and quality," Canonical's Oliver Ries wrote in a post to an Ubuntu developer mailing list.
According to the Mir project's wiki, which was revealed on Monday, the goal is to develop Mir as a cross-platform alternative to X that can take advantage of existing resources – such as Android device drivers, for example, or hardware-based compositors – while remaining flexible enough to allow implementers to easily enable the behaviors they desire.
"In summary, we want to provide a graphics stack that works across different platforms and driver models by limiting our assumptions to a bare minimum," the wiki states.
It goes on to explain that while Canonical had been investigating Wayland as a possible replacement for X in future versions of Ubuntu, it found that the Wayland protocol "suffers from multiple problems," not least of which was mimicking too much of X.
"We still think that Wayland's attempt at standardizing the communication between clients and the display server component is very sensible and useful," the wiki explains, "but it didn't fit our requirements."
According to Robert Ancell, who is heading up the project to develop Mir, Canonical plans to replace X with its new graphics stack in a way that's as seamless as possible.
"In many ways, Mir will be completely transparent to the user," Ancell writes. "Applications that use toolkits (e.g. Qt, GTK+) will not need to be recompiled. Unity will still look like Unity. We will support legacy X applications for the foreseeable future."
A Unity that is actually unified
Canonical says it will also base the next version of its Unity desktop interface – currently dubbed Unity Next – entirely on Mir.
"A solution is needed to fulfill our Unity Next 'look and feel' requirements across all devices, phone to desktop to TV," explains the Unity Next wiki entry. "The solution decided upon is a related Ubuntu project known as Mir."
As part of this effort, the company says that the future version of the Unity interface will be based on QML, the markup language developed by the creators of the Qt GUI toolkit, which Canonical had used to develop its phone UI but which has not previously been used for desktop Ubuntu apps.
Canonical has said that its long-term goal is to develop Ubuntu into a client OS that works across multiple devices and offers a user experience tailored for whichever hardware is attached. Connect a smartphone to a monitor and keyboard, for example, and the OS could shift from a phone-like UI to a more traditional desktop PC experience.
In fact, to describe Canonical's goals as "long-term" might be too strong. The company says it aims to have Unity Next and Mir window management fully replace X and the existing X-based Unity desktop for smartphones beginining with Ubuntu 13.10, the next version of the OS that is due to ship this October.
The company says it plans to achieve its goal of a single Ubuntu OS for all types of devices, "with Mir serving as the carrier across form factors, powering a seamless transition between different use-cases and devices," by April 2014. ®