Nemomobile in October/2021
Highlights for last month are translations, waydroid, update of lipstick, bugfixes and more.
Translations
The publishing of translations via transifex has drawn some attention. We now have a Polish (pl) translation thanks to knuxify and Finnish (fi) translation thanks to Erik. Their brave work showed some typos and bugs in translation sources.
The glacier-settings is a little bit tricky to translate due to its plugins architecture. The plugin may come with any third party package. Currently, the filename of translations is defined as a separate item in the json definition of plugin. The name of plugin must be the same as title in headerTools in the main page of the plugin. The categories translations expect to fit into one of predefined categories.
Some sources are still not included in transifex. I have seen some messages comming from nemo-qml-plugins-*. The titles of applications are translated in *.desktop files.
Now we have English, Russian, Czech, Polish, and Finnish translations.
Fresh code with fresh blood
Erik Inkinen did Finnish translations and also started to contribute code. He improved the gesture behavior on home screen. He proposed also a set of patches to reach similar graphical effect with background as SailfishOS have. There is still some discussion what is the right way to add this to nemo with respect to windowed mode.
I didn’t inspect code much, but the result looks beautiful. So thanks Erik, welcome to us and keep working on nemo!
Update of lipstick
There were many updates to lipstick (~140 commits) which brings the work of upstream (SailfishOS) for the last five years to nemo. Main changes are related to notifications, screen lock, performance and responsiveness.
Resizing
The default resolution was changed to 1440 x 720 pixels which corresponds to PinePhone resolution. All font sizes padding and others are computed based on it. The screenshots show the difference between before and after. The font size is too small and some artifacts can be seen. Sergey is still working on better sizing.
Waydroid
I tried to run waydroid after @DanctNIX announced its manjaro packaging on twitter. It was necessary to switch to unstable branch to install it.
sudo pacman -Syu
sudo pacman -S waydroid-image
sudo waydroid init -f
sudo systemctl enable waydroid-container --now
and it wasn’t running. I tried it again and again after every update. After some time it suddenly started to work. Android icons appeared on the home screen.
As can be seen in the picture, waydroid started two windows, one with “Waydroid is starting” and other one with “Settings app”. Only one android app concurrently was running.
Some bug fixes
After some changes the sounds section in glacier-settings wasn’t working due to paths. It started to work with full path instead of file name only. Its inspection showed an bug in folder list model.
The filemuncher was improved while testing the folder list model. The images thumbnails aren’t colorized same as icons anymore. The file manager should provide access to whole filesystem not only to the home directory.
Non graphical feedback suddenly stopped working. It turned out that upstream introduced a wider set of haptical effects. On the pinephone it doesn’t fit into memory for vibra motor device and makes the whole service crash. In the end, I suggested reverting it.
Last month, we had a fix for the ohm-plugin-misc generating of the pkg-config configuration. The proposed fix has been merged to upstream now.
The (nightly) images are compiling again. There were some conflicts with pinephone-manjaro-tweak package in pulseaudio configuration.
Pressing the power key once was triggering poweroff. We have added the systemd configuration into overlay files.
Contacts
The contacts app is one of central application for phone. Previously, it showed just the first phone number associated to the contact.
The application already had an import dialog implemented, but it was abandoned some time ago. It was necessary to add some button to be able to reach it and rework it because it was using ancient qtquickcontrols.
Finally, it is now possible to import contacts from *.vcf file. It seems it import contacts in most cases.
Unfortunately, I probably had an incorrectly formed file
with two REV=
records, which caused failure of import. The error is not detected in UI and nothing was imported.
The vcardconverter contacts.vcf
was able to point to incorrect contacts, skip them, and import the rest of contacts. Additionally, the vcardconverter
also imports correctly contact avatars.
As you can see on the screenshots, there is selection in ListView which was added because of import dialog.
If you are curious about overall state: Editing contacts and phone calls still dont’t work for me. Ofono says simply denied when trying to connect to network.
Manjaro /nemo-ux update
The PKGBUILD
files in nemo-ux was
updated after three months. About 80 packages were updated. Mostly version changes, but not the method of packaging.
Eleven new packages (repos) were created:
- glacier-testtool-git
- hybris/libhybris
- nemo-qml-plugin-signon-git
- nemo-theme-openmoko-git
- ngfd-git
- profiled-settings-nemo-git
- pulseaudio-policy-enforcement
- qt-mobility-haptics-ffmemless-git
- qt5-sensors-sensorfw
- swi-prolog7
- tzdata-timed-git
All the repositories are accessible as submodules via jmlich/nemo-ux so you can work with them just as with the nemo-packaging repo. Some day we may merge those two repositories together.
The main issue with Manjaro repositories is that the built packages aren’t pushed automatically to unstable/testing. We (Sergey and I) don’t have permission to do it manually. Spikerguy does have permission, but it takes quite some time to rebuild and update all packages one by one. We will continue ‘wild’ development outside of Manjaro probably for some time yet. The packaging itself (i.e. files in git repositories) could be probably done in their gitlab.
Known issues
If you have troubles with pacman, installing packages, and gpg signatures. You can try to recreate keyring.
pacman-key --init
pacman-key --populate archlinuxarm manjaro manjaro-arm
pacman-mirrors -f5
You can turn it off if it doesn’t help. This is very very bad and goes against fundamentals of security, but it may help you to workaround this issue:
sed 's/SigLevel.*/SigLevel = Optional TrustAll/' -i /etc/pacman.conf; pacman-key --init
Bug to start with
Sergey fixed the issue with Folder View n Application Launcher. He reworked that part from scratch. I described that issue in the July blog post as a good thing to start with. So I can cross it of my list.
Next, I also described the reboot issue in the same blog post. Sergey proposed the fix and submited it to upstream. The SailfishOS permission model is simply a little bit different than Manjaro one.
In one of the previous blog posts I described an issue with updating of contacts. I think this could be also a good starter issue. For me personally, it is a little bit harder, because debugging across multiple components is needed. The communication is handled via dbus so it is more tricky to find the exact place where the problem is. However, the contacts application is crucial for a smartphone OS, so everyone will see your code when you provide a fix.