UBports Q&A 105 on 31 July 2021
Dalton and Alfred presented.
Go to devices.ubuntu-touch.io for info about whether your device is supported. The documentation to help people port devices to UT has been greatly expanded and improved, so make sure to check it out.
Native apps development future
As a Dalton aside, Anapurna have updated their interactive showcase. He was very hyped about that because he loves their games, especially Outer Wilds, which has been expanded. The thing is, he will have to play it on Proton because there is no Linux port of the game. Proton is a big bundle of software which makes it possible to run games which normally play on Windows but in a range of different Linux distributions. Steam are bringing out a new portable console called the SteamDeck. The deck will be running Proton. That of course has generated a lot of discussion in the desktop Linux community, since the games are not themselves native to Linux.
Those discussions of course mirror very closely the discussions we have had in our community about Anbox (now WayDroid, in its more developed form). Proton is a fork of Wine, so although it was developed mainly by games enthusiasts it will run other Windows apps too.
A central issue is that if Windows (or Android) apps can be made to run on Linux systems, why would anyone make Linux (or UT) native apps anymore? There are some apps (Whatsapp, most banking apps) that we and other groups such as Mobian and postmarketOS will never have natively. A common response is to say “Well you shouldn’t use those apps”. This is all very well if you are in a privileged position but Dalton gave the example of Argentina, where the rate of inflation is so high that it isn’t practical to carry around enough cash just to buy lunch. You have to pay electronically otherwise you don’t eat. In Germany, many places only offer the option of sending them a message by Whatsapp. Now, many countries have their own Covid app and it will not run on UT. If we can provide those essentials within UT, then it opens up use of our OS to a much wider spread of people.
Having development of WayDroid happen as an independent crowd-funded initiative has been a good approach, taking it out of the mainstream Foundation debates about policy direction.
Native apps look better and work better on our platform because they were built especially for us. Mateo Salta has done a roundup of recent UT app development. The GODOT game engine via the UT GDO project has seen a lot of progress thanks to Abmyii and check out the tests issued by Pavel Prosto. The tests give an indication of how various 3D graphics will work on your particular device. Throw a GDO game into the test app and see what runs. Bug Bounty by Marquis Kurt. There are also Liner app and CircleJump app.
There is now a UT app to scan and display EU Covid certificates. It is called CoronaApp. Mateo plugged a game which he has ported to UT. It is called DeadAscend and is a point-and-click game. That one was made with a QML game kit, so represents another different way to bring games across.
The latest version of QtWebview is now incorporated in Devel images. It provides a cross-platform way to use web-views in your app. This is not the same thing as QtWebkit by the way.
In Xenial, we have merged a change to network-manager which alters the way it decides to ask for passwords, after a disconnection from a network. If you are on Devel channel now (or rc channel from Wednesday 4 August) please watch out for any unexpected disconnects from Wifi and let us know if there are problems. If it isn’t causing issues it should help greatly to reduce the frequency with which devices like the Volla phone ask you for your password. This has been happening a lot when devices wake from sleep. Jose has done a lot of work on this.
Dalton has fixed PineTab rotation and you will get that feature soon. He has also merged the 5.13 kernel for
PinePhone and
PineTab If you update your phone or tab you will automatically be pushed to Devel. The fix for notifications on wake had some issues, so that is being reworked. If you have either a PinePhone or a PineTab, you should definitely be helping out with the tests because we are getting pretty close now to a properly functioning build. The more feedback we get from tests, the quicker you will have functional device. For those few of you who have a PineTab, please not that while Bluetooth is now working on the phone, it isn’t working on the tablet. Odd and needs more work…
Focal continues to make good progress. When it arrives, you won’t notice anything dramatic with the user interface. That is actually useful and sensible at the point when it is introduced. Further down the line though it will bring new capabilities which will be implemented gradually. An example of this is seeing both Mir and Wayland based apps running simultaneously on mainline devices but not only on devices — also within the
PDK (UBports Platform development Kit) and within the PinePhone running Mesa. Alfred showed a Wayland 3D rendering app operating on his phone with hardware acceleration at 60 fps, for full effect. The shade effects in QML have been tested and work. Frame dropping in Lomiri when using scrollbars etc was a nuisance before but that has been fixed and animations now run smoothly there (meaning around 40 fps).
Alfred has been working on trust prompts. These are permissions dialogs for apps. PulseAudio has been patched so that it integrates seamlessly with these prompts. Alfred has tested the convergence shell on the PinePhone. This is about turning the phone into a track-pad when displaying the shell on a monitor. It isn’t quite finished yet but it is on the way.
Aaron
of
Axolotl app fame has ported over the Gallery app to Focal using
the PDK. Dark mode seems to work. There are some modifications which
will be very beneficial for other apps too and those changes will be
imported soon. Others are very welcome to start making similar steps.
System images builder news
Ratchanan has been working on a rootfs builder for the new system images. Which will allow them to be shipped on the server in the usual way. It will be hidden for the time being behinds system image CLI because we don’t want people stumbling into it from Updates in Settings. They are too flaky at the moment to be played with. Serious testing only. We may make it available for mainline but we will certainly be starting with a Halium 7 build for Xperia X. That device has a solid user base and should provide some quality feedback.
What we expect of it is that performance will be given a boost and suddenly Lomiri will gain the capacity to run more than one monitor or input device simultaneously. For app developers it means you will finally be able to use C++ in versions 18 or 21(which is a big advance on the C++ version 11 that we use now!) Nicu commented in live chat that C++ 17 will be enough to get some KDE apps moving into UT.
If you don’t have a UT device or you have one and you are afraid you might brick it by playing with this stuff, there is a solution. The
PDK (Platform Development Kit) will work nicely as a test bed for Focal builds. It allows you to have a virtual machine running UT in 20.04. You can test packages in it and also test applications. The PDK is now available as a beta in the SnapStore. It is a fully confined snap and does not even require an SSH server on the host. The PDK boots a real Lomiri session now.
Xenial with 170 pull requests out-standing
On the Xenial side there are currently around 170 pull requests outstanding. All of these require testing before they proceed, to see if they work and if they make anything bad happen. Dalton is not able to do all of that work and he also isn’t able to put any meaningful effort into mentoring other people, so that they can do the work. There is a however a QA tool and that will take you a good part of the way. Dalton can give an outline on how to get that tool working, so that you can begin to help. LionelD has started a thread on the forum where he explains how the QA tool can be applied to pull requests for the
MMS module. That example will help you a lot towards doing something similar with other modules.
Testing of this kind means applying proposed fixes to your device [with device specific bugs, the PDK is not going to be of any use because it hosts a device agnostic UT] so there is a possibility that it will corrupt your phone build. It isn’t going to brick your device but if it does break, you will need to rescue it by using the UBports installer to get a fresh build. Unless you ask the installer to wipe your data, it won’t…
Official call for testing
There is an official call out for a testing squad. They will be tasked with making sure that existing 16.04 packages run nicely with the 20.04 builds. It is not necessary to be a developer to help with this. You can use the
PDK to check out components and ensure that they are renamed from their Canonical origins and branded as Lomiri. Each component which is checked out can then be moved into Focal. If you want to help out with this you can liaise with the UBports QA group.
Most of the details you will need are already in the Readme in the PDK repository. As has been said many times, the core team is stretched and this more routine work will speed up the work to complete Focal. If you would like to get involved, join the AppDev group or the QA group on Telegram and take it from there. We want to establish a production line where developers contribute changes to bring components into line with Focal [did we mention the name changes??!!] and the testers apply the changes and check that a. they work and b. they don’t break anything.
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.
Q&A on Funkwell?
Schad asked whether we would consider hosting the Q&A on Funkwell. Dalton did have a look at it but doesn’t have a lot of time to spend researching infrastructure. Funkwell hosting is an interesting idea. He doesn’t want to use another provider that we don’t control. Hosting there would be significantly more expensive than Soundcloud. If someone was able to host our own instance and do the work around that, we might then be able to re-host on Funkwell.
Core apps development contributions
Kryma asked how it would be possible to start contributing to the development of core apps? Is anything beyond Clickable needed? Actually they are almost all build on Clickable now. That is the mechanism which enables them to be added to the OpenStore. They also ask about the use of Qt as a key element of what makes UT work, when Qt is proprietary. How is that right? In terms of licensing, they now follow a dual model. They no longer provide free long term support. That though is a very long way from a ‘proprietary’ model. What they provide is free software in every sense of the word. They charge for some additional services.
Povoq recollects that some months ago there was talk of modernizing the push architecture, maybe by adding webpush functionality to Morph. Any further developments? Dalton clarified that wanting to do something and thinking it would be cool is not the same as being able to find the time to do it anytime soon. With everything being put into getting 20.04 working, nice improvements will have to wait a while.
How-To attract big companies
Thousandtopics asked what kind of things we could do to attract interest from big companies, to encourage them to build apps for our platform? For example, by showing their executives a UT phone so they can see what it can do. The UBports Foundation is a formally created body which has a specific legal remit to provide UT as free software. Our community is a much broader thing. Either way we are limited because we don’t know these high flyers. It would be a mistake to assume that ‘core’ people in UBports have better business contacts than you do. Of course we have our partners such as
Pine64 and
Volla but they probably don’t have contacts at that level either.
Android malware on WayDroid?
There was another reference to Pegasus in live chat. The bottom line is that with any software based device, it can be hacked and if there are people out there determined enough to do it, they will succeed. Could Android malware run on WayDroid? Yes, very likely it could. It wouldn’t have access to the entire system though. If someone decides to write malware aimed at UT, it will work, for sure.
On another question about whether WayDroid will bring back the functionality of the three hardware buttons when using Android apps, neither presenter had any idea.
See you next time :-)