Home News Embedded / Mobile Mobile Linux Canonical's Windowing Shift: More than a Mir Techie Footnote

Canonical's Windowing Shift: More than a Mir Techie Footnote

Soon after Canonical's unveiling of its slick Ubuntu Touch platform for phones and tablets, and on the same day it released the first beta of Ubuntu 13.04, the Ubuntu project announced a potentially significant -- and already controversial -- change in windowing interfaces.

Starting with the Ubuntu Touch smartphone implementation in this coming October's Ubuntu 13.10 release, a revised version of Ubuntu's Unity environment will shift from the Server implementation of X Window to a homegrown display server called Mir. Two years ago, Canonical had said it would instead switch to the Wayland windowing interface. According to a MirSpec wiki written by Canonical's Mir project leader, Robert Ancell, Wayland was unable to meet Ubuntu 14.04's  goal of being able to smoothly display window environments from the same code running on different desktop and mobile devices.

Ubuntu Mir display stackThe Mir-equipped "Unity Next" environment will be rebuilt entirely on the Qt framework and QML (Qt Meta-Object-Language) Javascript language, says Canonical. Unity Next and Mir will be fully integrated into Ubuntu 14.04, the platform-convergent LTS release due in April 2014.

Mir will support Android drivers right from the start. According to Ancell, in an email to, the first two targets will be the Android-based Galaxy Nexus and the Nexus 4 smartphones, which were already slated as the first devices to run Ubuntu Touch.

"We expect this list to grow in the future," said Ancell. The current Ubuntu Touch version running on those devices uses the Android-based SurfaceFlinger windowing technology, which will be swapped out for Mir in October.

Moving Beyond X

Unix- and Linux-based systems have been depending on X Window for some three decades, and it's definitely showing its age. When Canonical's Mark Shuttleworth announced in Nov. 2010 that Ubuntu would scrap the venerable display server in favor of the newer Wayland interface, there was relatively little grumbling. After all, other Linux distros such as Fedora were looking to adopt Wayland, and Google took a pass on using X in Android.

The shift from X was nowhere near as controversial as the earlier decision to swap out GNOME in favor of Canonical's Unity UI environment. Nor did it stir the same angst that came from the Jan.  2011 announcement that in Ubuntu 11.04 Canonical would scrap the GTK+-like "Nux" OpenGL toolkit in favor of Qt.

All three changes would help Ubuntu support both desktop and mobile devices with a single binary, promised Shuttleworth. Unity was quickly cemented as the default Ubuntu environment, despite some defections to other distros, but Qt has only been partially integrated, and Wayland has been missing in action.

Like Wayland, Mir is faster and less complicated than, and it similarly adds built-in support for the hardware-accelerated graphics commonly found on modern computers and mobile devices. In fact, Mir requires a GPU, says Ancell.

They are also both similarly well-suited to work with Qt, he adds. "Qt doesn't matter here," says Ancell. "Qt has a Wayland backend and we have developed a Mir backend, so applications will work in both."

According to Ancell, Wayland is less flexible than Mir in supporting existing resources like hardware-based compositors or Android device drivers, while at the same time has difficulty adapting to new input methods like 3D gesture technology. Unlike the more rigid Wayland, Mir offers a well-crafted "protocol-agnostic inner core" as well as an "outer-shell together with a frontend-firewall that allow us to port our display server to arbitrary graphics stacks and bind it to multiple protocols," according to Ancell's wiki.

The switch to Mir means that "certain legacy applications" will require "an in-session rootless X server that is integrated with Mir," according to the wiki. Ancell told me these potentially include some major apps like LibreOffice and Firefox, "though we will investigate if it's possible to have them running natively on Mir." Ancell added, "GTK+ and Qt applications should run on Mir fine, which will cover the vast majority of current applications out there. Cases that won't be native are Java applications and other toolkits." In any case, he says, "The end user shouldn't notice."

Another challenge may be getting GPU manufacturers to quickly support the technology. So far, Canonical has yet to announce any specific Ubuntu Touch support from chip vendors, hardware manufacturers, or carriers. The wiki notes that the Mir project plans to "distill a reusable and unified [OpenGL-based] EGL-centric driver model that further eases display server development."

Ancell expanded on this in his email, saying, "Currently Mir doesn't work on closed source drivers and we want to change that. We are working actively to solve that and the timeframe will be dependent on working with those driver developers."

Another Ubuntu Controversy?

Mir is already proving more controversial than the switch to Wayland, according to some Google+ discussions summarized by Michael Larabel on Phoronix. Wayland developers led by Kristian Høgsberg claim that Mir's benefits over Wayland are overstated, and that Wayland's input handling is not nearly as bad as Canonical says. Open source driver developer Jerome Glisse argues that the architecture described on the wiki appears to be missing key components like atomic commit or frame synchronization.

At this point, it is difficult to determine how serious the alleged gaps may be, and whether they will delay Canonical's proposed timeline. Although there do appear to be some issues here beyond sour grapes over the late-stage switch, there is also a lot of pent-up anger at Canonical for insisting on homegrown solutions rather than established open source technologies.

Larabel himself seems to agree with the overall critique, writing, "If there is one thing though that Canonical is becoming wildly successful at is alienating and fragmenting the core upstream Linux communities with their 'Not Invented Here' syndrome."



Subscribe to Comments Feed
  • Debi Prasad Said:

    I agree with Michael Larabel, Canonical is not much interested in contribution back to the foundation. It seems that they have forgotten or are ignoring the fact that it is because of Free Software, are they able to earn the marketing that they get. I have heard they have rare contributions to the kernel too. Now, they are walking away from Wayland and saying they don't fit in their work. It's okay till they don't hone their skills to become a combination of the new APPL and M$, saying "we did it now you must use it, we hate to hear a NO from you".....

  • Andrew Jackson Said:

    Open source needs forks and options as it's how breakaway progress happens. This will be better for freebsd and alternate kernels as simpler nonX drivers are easier to port, yet Wayland was too Linux centered for them.

  • Istimsak Abdulbasir Said:

    I hope Canonical is not trying to re-invent the wheel. However, the X server has been in use for decades and UIs are modernizing. Perhaps is it time to create a better X server that can quickly adapt to UI change. I would like to see Mir do great wonders. Lets see what it has in store. One thing that stoodout was the mention of built-in support for Graphic accelerators. This would be very helpful.

  • mehmoomoo Said:

    You missed one important question: What will Mir mean for corporate environments? In short, they will never touch it even with 30ft pole. The reason is that it seems to throw all networking capabilities to the wolves. Show me high performance thin client using Mir, and I will reconsider the previous. Xorg's network transparency sucks on its own, but combined with stuff like NX it's really wonderful. The basic capabilities are great for administrators, as you can run tools in root windowless mode from remote servers - just like they were on local system. Before Mir does that there will be a stigma on it. A bad one. It's not just an issue, it's a blocker level issue for many.

Upcoming Linux Foundation Courses

  1. LFD312 Developing Applications For Linux
    16 Feb » 20 Feb - Atlanta - GA
  2. LFD331 Developing Linux Device Drivers
    16 Feb » 20 Feb - San Jose - CA
  3. LFS220 Linux System Administration
    16 Feb » 19 Feb - Virtual

View All Upcoming Courses

Become an Individual Member
Check out the Friday Funnies

Sign Up For the Newsletter

Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Join / Linux Training / Board