Ubuntu Touch Q&A 91
An awesome look back at UBports in 2020

 
 
 

Looking for the Audio-only version

of the Q&A?  You're just one big orange

button away -->

News and Update

This Q&A had a retrospective feel and was introduced by Dalton, Alfred and Florian.
Go to devices.ubuntu-touch.io for info about whether your device is supported.
Questions were taken first this time round.

Questions

The News section of our Forum is the best place to post questions for the Q&A. YouTube live chat, Telegram and Matrix are other places to post a question.

If you didn't know, the Forum questions get priority.

Installing Lomiri

Jonny referrred to the fact that in the last Q&A Marius said he had prepared some documents about installing Lomiri. Where to find those? At this point there is just a summary of the dependencies and a description of what each one does but there is nothing detailed available yet.

PinePhone

Equario asked about the fact that the last stable PinePhone image was made available on 18 September. When will the rc move to stable? The PinePhone has a completely different release cadence from all the other devices. Dalton has been waiting on some kernel refinements prior to pushing the button but actually there are already some good things in rc which are not yet in stable, so there is a good case for issuing a stable upgrade now.

TheBest3000 asks who is working full time on UT? 

There are four at the core. Dalton, Marius, Rodney and Ratchananan. Without the foundation it would have been difficult to organise the necessary funding.

And which device is best to try out the convergence feature? 

We need to start with what we mean by ‘convergence’. For us, it means “running the same code base everywhere”, not just in terms of the apps but also the shell – so Lomiri. An external display or a ‘PC in your pocket’ is what most people tend to mean when they say convergence. If the latter, you will be rather disappointed but you can see what is on offer by using a Nexus 5 with a Slimport adapter, which plugs into the micro USB. A Microsoft wireless display adapter works well with casting for some phones. It does have quite a bad latency though. Think of convergence more as a party trick. It doesn’t honestly have a lot of utility.

Qt 5.12

Lionel D asked about the Qt 5.12 upgrade and whether it will support the Python bindings in pyside2? No it will not, although we are still building for pyotherside. Pyside is a new binding and a step beyond what we have now. We would need to discuss before deciding whether to implement it as a new feature set.

Essential apps

Dad_and_alive asked about those few apps that are deemed essential but are only available for the two main phone operating systems. Banks, telecoms, insurance, electricity etc all have commercial apps. Can we expect businesses to provide us with apps for UT? Part of the problem is that those apps on the main platforms are free, so there is little incentive to assist minor platforms. It would take resources, developers, maintainers. Taking Spotify as an exception, since it sells a service, if there were enough UT users there would be an argument for them providing an app, in order to expand their market. We are still a very small market though.

Telegram did not create an app for us but they stand out as an organization which was prepared to engage and spend time answering our questions.

Of course there is a lot more to the decision to use UT than app availability. We are never going to win that race. The important issues are the intangibles like community, privacy and transparency. The practical solution to this problem is pretty simple though. Many of us keep an Android device around somewhere for those occasional proprietary transactions. It doesn’t have to be set up as a main phone, it can just be a base for using apps which you can’t otherwise access.

On the positive side, we have new devices now available with UT pre-installed. That is fundamental to expanding our user base beyond enthusiasts. We have seen that change already with laptops. It grows the market.

Sponsors were thanked.

OTA 15

OTA-15 has been released. It came out on Wednesday. QT 5.12 is not in this one but Volla phone support is much improved. Morph browser has swipe away tabs. Lots of work has been done on MMS. That will hardly be noticed in most parts of the world but it is something big in the US. Bluetooth car kit integration improvements have been made but there is are still audio fixes that need to be done. A Thai keyboard is now available.

There was a shout out to LionelB [Me :)] for regularly doing these notes.

The look back at 2020 

2020 has been a great year for UBports. Jan gave two talks about UT early this year, when OTA-12 was about to be released. At the end of 2019 we predicted new hardware without any Android blobs and we have seen that arrive. Without everything that Canonical and Debian are doing our project would simply grind to a halt. Meanwhile our work with KDE, Manjaro, postmarketOS etc helped all of us and without that cooperative spirit none of us could have made so much progress.

It has been a dreadful year in so many ways but for us there have been huge advances. Our team has grown and our reach has meant it has been difficult to scale our activities.

In January 2020 we started to talk about Halium 7.1 for core devices like Nexus 5. Florian was then talking about Samsung S3 Neo and a 5.1 port for it. The hackathon over Christmas means we still have time to remove some of the blockages on those projects but it is fair to say they haven’t got far because some more exciting things took over.

In February we took part in FOSDEM (it seems like another world!) and were around the Plasma Mobile stall. This is where the prompts about updating Qt came up. We have made progress but at the same time the KDE apps we were discussing have moved on from Qt 5.12 so even with our upgrade, they remain as out of reach as ever. OTA-12 came to fruition. The issue of the blank keyboard which couldn’t be swiped away was fixed. Ratchanan has fixed not only that but a huge catalogue of technical glitches. A big shout-out to him!

In March we got lock-down… Unity 8 became Lomiri but we are still working through renaming the components of it, even now. The Foundation bank account finally opened to direct donations. That was an important milestone in funding. Florian only just got out of Munich in time, after signing all the papers! Volla became a formal sponsor then. Their phone project developed very quickly and of course that meant that we had to divert significant work into supporting it. By December, we now have a pre-installed build for Volla phone. There are still some unsolved problems but it has come a very long way in a short time.

In April we had major issues with Covid and a lot of things became more difficult. Some people were diverted away from assisting us by new responsibilities in their lives. Nevertheless, lock-down time did supercharge porting efforts, as lots of people found themselves stuck at home for long periods. Despite Covid, the PinePhone UBports edition became available. The devices pages got a major re-vamp to reflect all the new devices coming on stream. Now that the entries are based on markdown it can be updated much more flexibly. OTA-12 was at this point getting very close, after a six month struggle. The main issue was whether Libertine would work right with the new Mir. One lesson learned was that those who tested Libertine for us almost always used just one particular application for the test, so the results were very distorted and many issues were overlooked.

The generic system image or GSI arrived at this time. This was a very important innovation which allowed the sharing of resources across a wide range of Android 9 based devices. This contribution authored by Erfan has been a hugely important resource for porters and has turbocharged development. Nikita deserves a special mention for his great input to the porting effort.

In May we finally delivered OTA-12. The PineTab arrived suddenly and that also shipped with UT pre-installed. The OpenStore got a major makeover, to the design you see today. There is now a review facility available there. The Seabass app has been updated multiple times since it got its new code base.

In June we were joined on a Q&A by Jonny who explained how Clickable was gaining the ability to run an IDE directly, allowing the debugging of apps virtually, with way more ease. That provided a more professional platform for app development. The PinePhone shipped to customers.

In July Jan asked for testers to try out his structured testing app which we now know as OpenCuts ‘Yo Dog I heard you like testing’. OTA-13 started to be discussed and it was the time when Joan was making huge changes to the UI, especially making the Suru dark theme more consistent and attractive. That work has continued for the rest of the year. We also started to talk about our joint work with Manjaro.

In August Florian discussed his Nexus 6P port. Today, the number of people using it with UT are in two figures :) and there is even a YouTube video about it. Qtwebengine 5.14 was added to the system image. We found that the PinePhone had a Qt dependency which had to be satisfied, which meant some elements of 5.12 being added.

Finally in September OTA-13 was released but still not with the long awaited general upgrade of Qt. The installer gained the ability to unlock the boot-loader on many devices and got better device detection. That was in release 4.20 :) The number of devices supported by the installer began to expand rapidly from that point. Installer improvements were a big success story in 2020, with not only more devices but a much more reliable and trouble free install process most of the time. Snapcraft routinely updates on the number of people downloading the snap version and the total is becoming quite sizeable.

In October we saw a significant uptick in work contributions by community members, maybe as a result of renewed lock-downs. Lots of people have helped Jan with the installer and the pace of development there has been impressive. A huge amount has been done with its node modules and that has lessons for how projects like the installer could become broader and incorporate new functions with ease, by importing directly from developers and porters. Jan was also responsible for the OpenCuts implementation. It is a manual testing framework which can be applied to almost anything. We are using it for software assessment in limited ways but it has a lot more potential. For now its main impact has been felt in the UBports installer, where it provides an intuitive feedback mechanism, to aid fault finding and confirm success. The process is completely under the control of the user. The necessary ‘calling home’ can only take place if they consent to that.

November brought OTA-14. Dalton did a talk on battery saving with UT at the Linux Summit, explaining how some of our architecture works. The Fx(tech) Pro1 X device arrived, ready to be dispatched with UT pre-installed. That device is the nearest to the ‘convergent device’ as popularly imagined, by virtue of its integrated physical keyboard and HDMI out. It owes a big debt to the Nokia Communicator – a visionary device that was well before its time in terms of the available supporting hardware. We will be working alongside Planet Computers, offering them advice, as we expect their link with UT to remain when they take their next steps. Cosmo Communicator is already supported and we expect that to carry over to their forthcoming device (which will have an illuminated keyboard!!!!)

December is not over yet but to give an indication of our progress, if we exclude translations there have been more than 800 pull requests. One of the biggest was the Morph tab swipe. One of the smallest was a one character change. But all contributed to making UT a better OS. Dobey took 200 pull requests that had been hanging around for a while with uncertain status and reduced those down to 100.

Notes app was completely rebuilt for Qtwebengine by Joan. Unav was overhauled and ported. Teleports saw a ton of releases and upgrades.

Considering the huge challenges piled on us by Covid, it really is pleasing to see the amount of progress we have been able to make this year.

There are lots of Android devices coming on stream, courtesy of the GSI. In order to update from Settings, we need to have them adopted as community devices. We are not doing a great job right now of tracking how system images are being maintained. With older ports especially, maintainer-ship is getting to be a problem and that is something which we need to tackle more effectively. Florian is working on doing that.

The scope of things being handled by the core team grew hugely during the year but the team itself didn’t grow. On its own, the move to Ubuntu 20.04 will be a massive project and it is going to be hard. It involves the move to systemd and the recompiling of many of our applications. The commitments we have made for packaging for other distributions will place an additional strain on our resources.

When thinking about what we can learn from this year and apply to next, the elephant in the room is of course Covid, which has made this such a strange year. Even progress back from that (hopefully) in 2021 will amount to a new upheaval. One thing to note is that we need to avoid hyping things up before we are close to the point where we can actually deliver them. We have been getting better at sticking to the release schedule by accepting that we will make some minor improvements on a regular basis rather than waiting until we have a blockbuster release. Dalton needs to offload some responsibilities, to be less stressed. We need more people, to fill all the specialist roles.

Onto forecasts 

(which of course never turn out quite as imagined)
Dalton commented on the fact that where we have tried in some areas to reduce what we do, people from the community typically step forward and undertake to rescue whatever we are trying to jettison. Unfortunately, what happens next is that their enthusiasm wanes and then the responsibility boomerangs back to the core team who have to mount a rescue.

In 2021, the team need to think more about their mental health. A big project and small team means a lot of stress and that has done real damage. This means not putting in too many hours and getting some proper rest. After burnout it is very difficult to get back to normal functioning again.

On marketing, our key people have been massively busy in their own lives and we have just not been able to keep up with news organisation and specialist Linux media outlets.

Developers are of course not necessarily the ones who are best at the effective communication which is so important to what we do. Just as one small example, we are pushing Lomiri into the Debian repositories. That is important news in some quarters but while we have been doing the work, we haven’t been shouting about it as we should.

Qt 5.12 and the removal of Oxide have been going on forever but we will do it for OTA-16.

Developers will take a short break for Christmas so not a lot will get done before the end of 2020. Three new servers are going to be coming online, so our infrastructure will get a major upgrade. Our facilities for building Android system images will get a major boost.

16.04 is moving out of its support phase soon, so we will lose updates and especially security fixes. It isn’t possible to avoid a gap but we want to keep that as short as possible. A lot of the groundwork for the change to 20.04 has already been done. Last time we had Canonical holding our hand but his time we will be doing it alone. There will be updates for stable during the gap but they will necessarily be thinner without the upstream.

We have done very well, just to keep going. Other community projects have often driven into the sand or been split apart by divisions. We are lucky that our community is strong, supportive and flexible.

Season’s greetings to all of you.

See you next time :-)





Ubuntu Touch OTA-15 Release