Ubuntu Touch OTA-12 Release

Ubuntu Touch is the privacy and freedom respecting mobile operating system by UBports. Today we are happy to announce the release of Ubuntu Touch OTA-12! OTA-12 is immediately available for many supported Ubuntu Touch devices. It is easily our largest release ever, featuring a number of new features while saying goodbye to some old friends. You can skip down to "How to get OTA-12" to get it right away if you're impatient, or read on to learn more about this release.

What's new?

The better question is, "What isn't new?"

Like OTA-4, our first release based on Ubuntu 16.04, this update involved taking many parts of the Ubuntu Touch stack down to their foundation and building back up. This has given us a more solid understanding of the stack and paved the way for more improvements in the future.

For this update, we merged 251 non-translation PRs in 203 days (there were 137 translation PRs, if you were wondering). For the full list of changes, see this GitHub search query

Unity8 (Lomiri) 8.20 and Mir 1.2

The headline feature of this new release is our import of Canonical's final changes to Unity8. This is a transition that started in April of 2019 and has brought many new features.

As an Ubuntu Touch user, you'll be seeing the effects of the revision right away -- the Ubuntu Touch "home screen", the Unity8 Dash, has now been replaced by a blank background, with the Drawer serving as the new app list.

The new version of Unity8 performs extensive self-tests, helping us to avoid introducing new bugs or triggering old ones again.

Unity8 is now called Lomiri, though the code naming is only being updated slowly to reflect this.

Most importantly for us, we upgraded from Mir 0.24, released back in 2015, to Mir 1.2, released in 2019. This newer version of Mir features support for Wayland clients! This support is not currently available to our Android-based devices due to a missing implementation, but mainline devices such as the PinePhone and Raspberry Pi are already using Wayland. Best of all, upgrading from Mir 1.2 to 1.8 (released in April 2020) should be much easier than going from 0.24 to 1.2 was.

Suru 'Style Police'

Joan (Cibersheep) has been on a color-sleuthing marathon for the past six months, working toward making Ubuntu Touch apps more consistent and aesthetically pleasing. This involved making some changes to our default colors, adding some much-needed contrast to previously lacking areas.

The new colors contrast better between background and text, bringing Ubuntu Touch into compliance with the W3's Web Content Accessibility Guidelines for text contrast. Simply put, everything is easier to see now.

Joan made (or recommended) changes to almost all of the default apps, making many dialogs clearer for the user.

Michele changed the default aspect of some controls so they appear debossed rather than embossed and vice versa. It really makes everything pop.

Keyboard improvements

No Ubuntu Touch update is complete without improvements to our touch keyboard!

In this update, Kugi has added a bottom-swipe gesture to switch from the keyboard to the editing overlay. This means that all layouts can now access the editing overlay, where previously those which did not have a spacebar were excluded. Double-tapping in the blank area on the editing overlay now switches between selection and cursor mode, and the Done button exits from either mode.

Additionally, Michele fixed an important usability issue for almost all languages: typing a colon no longer capitalizes the next letter.

Morph Browser improvements

The default Ubuntu Touch web browser has also seen a number of fixes for this update.

Private browsing now deletes only the private browsing session upon leaving, rather than all browsing sessions. Additionally, a settings option has been added to allow deletion of cookies.

Apps created with the webapp container can now download files.

Dropdown elements are now handled more gracefully by the browser, opening a themed window with touchable options rather than tiny dropdown boxes. This also fixes crashing when opening dropdown boxes!

An automatic fit-to-width feature was added. When enabled, the browser will attempt to zoom a webpage automatically to avoid rendering issues.

Unfortunately, a QtWebEngine upgrade was not on the cards for OTA-12. However, Chris has already been testing QtWebEngine 5.14 personally for a while, and we believe it will be ready for OTA-13.

Miscellaneous changes

Devices with a multi-color LED will now use it to indicate their charge status. The LED will flash orange when the battery is low, while it will be solid white during charging and solid green when full.

On the FairPhone 2, switching a SIM to 4G no longer requires manually switching the other slot to 2G. This switch is now done automatically.

Many indicators received a fix that allows them to create and load their translation files properly, so there will be far less English in the Indicators for people who have selected a different language.

The kernel driver required for Anbox has been added to default kernels for the Nexus 5, OnePlus One, and FairPhone 2. Users of these devices will no longer need to flash a different kernel in order to experiment with Anbox.

The OnePlus One now vibrates correctly on keypress.

We are now using our own Google OAUTH keys to enable Google Contacts and Calendar to sync. However, Google has started blocking browsers they deem "suspicious" and many users are unable to use Google sign-in. See "Google: Unable to sign in again" on GitHub for updates on this situation.

And so much more

As mentioned earlier, this update has been in the works for over a year, so "250 Pull Requests" understates the changes. Many people have helped us get here, including the Mir team at Canonical and what was the Ubuntu Phone Team before the project was dropped (talk about delayed gratification for them!), and our amazing and vibrant community.

Truly, thank you all for your work. We could not have done this without you.

What's next?

Our work is cut out for us for the next few months. Between the PinePhone, *other 'upcoming but unannounced hardware' * ;) and the 99 other pull requests filed but not merged between the start of the OTA-12 cycle and now. One thing for sure is that we will have no problem finding something to do! Most importantly, look forward to the inclusion of the new QtWebEngine release, which will make browsing the web much more delightful.

How to get OTA-12

Existing Ubuntu Touch users

Existing users of Ubuntu Touch in the Stable channel (which is selected by default in the UBports Installer) can obtain the OTA-12 update through the Updates screen of System Settings.

New Ubuntu Touch users

You will find instructions for installing Ubuntu Touch on your device at devices.ubuntu-touch.io.

"I found an issue!"

We expect the removal of scopes will be the most talked-about change in this update, as it will change the home screen for everyone. This topic was heavily discussed in "I wanna go Home" on the UBports Forum, and we anticipate that this discussion will continue with this update. The whole forum topic is required reading before sharing your thoughts, we think. Many excellent viewpoints were raised.

Have you found a bug? We want to know!

You can follow our Bug Reporting document to learn how to present the information we'll need to confirm and fix your issue. Every bit helps. The best way to improve Ubuntu Touch is to use it and then tell us about the experience.

You should always check to see whether your bug has already been reported on ubports/ubuntu-touch on Github. Browsing open bugs is worth doing, even if you have nothing to report. This ensures that you can watch for any of the open issues and help fix them by providing more information.

Changelog

We apologize, but there were far too many changes in this release to compile a complete changelog for this post. It'd also make this post go on for what would seem like forever... You can check out this GitHub search query for all of the PRs merged between the release of OTA-11 and the release of OTA-12.

Ubuntu Touch Q&A 75
PinePhone factory build