Unity8: a project that uses Mir

Unity8: a project that uses Mir

Unity8 is a graphical shell targeting a range of devices and form factors including phones, tablets, laptops and desktops.

Unity8 delivers a “convergent” experience: The user interface dynamically adapts to the display and input capabilities of the device it runs on. For example, when running on a smartphone, when the phone is connected to an external display, keyboard and mouse, Unity8 automatically transitions to a traditional “desktop shell experience”.

Usage of Unity8

Unity8 is a key part of the Ubuntu Touch smartphone OS and provides its “convergent” experience. A key part of the Ubuntu Touch vision is that traditional linux command line and “desktop” applications work when using both the “phone shell” and the “desktop shell”.

Edit: A few days after this blogpost the UBports team blogged:

“UBports’ users are happily plugging their devices into monitors using a SlimPort adaptor, and pairing them with WiFi keyboards, in order to take advantage of a wealth of Free and Open Source software, like LibreOffice, Gimp and Firefox. And this is thanks to Unity8.”

Enabling Unity8 for the Ubuntu desktop is a work in progress. Instructions for installing an experimental preview are here. There is also work under way to target other distributions such as Fedora, Debian and Arch.

Video of Unity8 on Ubuntu 18.04: https://www.youtube.com/watch?v=7IcHPhBOydk

Unity8 uses Mir

Mir simplifies the complexity that shell authors need to deal with: it provides a stable, well tested and performant platform with touch, mouse and tablet input capability, and secure client-server communications.

Mir deals with the initialization and configuration of a broad array of graphics and input hardware, abstracts hardware differences away from shell authors (transparently dealing with hardware quirks) and integrates with system components such as greeters.

Mir’s modular design means it can integrate well with Qt/QML, meaning desktop shells can be written in a higher level language.

Unity8 customizes Mir’s default window management (to give the “convergent” experience) and provides components of the desktop: various panels, server-side decorations, transitions and animations.

Project: https://ubports.com/

Source: https://github.com/ubports

7 Likes

Just installed Unity8 and Mir on ubuntu 18.04 (Unity7). Looks nice, though some apps such as Opera, Vivaldi, Chromium, Firefox, Synaptic, ClamTk, Atom, Gimp doesn’t open. The only web browser that opens in Epiphany (writing from that).

Doesn’t log in the first attempt, only in the 2nd. Canot logout back to Unity(7).

I like the apps menu on the left and the open apps on the right cursor push. Btw, Epipany is a pretty useless web browser, at least in Unity8. As no other web browser opens, for the moment Unity 8 cannot be used fully. Epiphany works well with Unity7, just checked.

With 12 apps opened, Unity8 showed only 1.1GB memory usage!

(Not a help post, just info.)

Additionally, it would be nice to have Unity8 on TV boxes with Amlogic, Rockchip and Allwinner processors.

@chanath,

Unity8 (now a UBports project) is still in the early development preview stage. Most of the bugs that you mention are known to the UBports devs.

In the case of the login issues, logind support was only recently added to Mir by the Mir development team, and a few glitches in the way Unity8 interacts with Mir’s logind support still need to be worked out.

As for the non-working apps that you mentioned, some of those apps require XWayland support. The Mir team is still working to implement XWayland support in Mir. Once that’s done, most of those apps should work with Unity8. (But some of them, like Synaptic, have other problems that currently prevent them form working on Wayland, whether with Unity8, GNOME Shell, KDE Plasma, or otherwise.)

Some of the currently known bugs can be found on the Unity8 issue tracker maintained by UBports. Please feel free to contribute issue reports there.

2 Likes

@GizmoChicken
I installed Unity8 after reading your discussions with Alan at Github. My posting here is just info. maybe others might read, if they ever come here. I shall be checking the issues there from time to time, also updating the install.

Btw, @alan_g, @GizmoChicken is there a way to install Unity8 on a TV box with Amlogic, Rockchip or Allwinner processors?

@chanath I don’t know what would be involved in getting Unity8 running on those systems but it should be possible. (The people that do know are more likely to see the question and response on the Unity8 forum: https://forums.ubports.com/category/36/unity8.)

But what is your goal with this? Getting some unfinished software running on a device doesn’t solve any useful problems.

I liked Unity8 from the time it appeared, even though it looked ugly. I know that it is unfinished software. (Btw, all are unfinished software, otherwise, they won’t go on giving updates.) If Unity8 can dual boot with Android on a tv box, or boot from a microsd card, it’d be nice to test.