Latest posts by Guido Günther (see all)
This is another incarnation of the software development progress for the Librem 5. This time for April 2020 (weeks 14-18). Some items are covered in more detail in separate blog posts at https://puri.sm/news. The idea of this summaries is so you can have a closer look at the coding and design side of things. It also shows how much we’re standing on the shoulders of giants reusing existing software and how contributions are flowing back and forth. So these reports are usually rather link heavy pointing to individual merge requests on https://source.puri.sm or to the upstream side (like e.g. GNOME’s gitlab.)
Short and instant messaging
Chats (aka Chatty) handles SMS and instant messaging via XMPP. It has experimental support for various other formats via libpurple.
- Arnaudd Ferraris fixed a bug where new SMS wasn’t shown: chatty!331
- Internal refactoring by Sadiq continued
The lurch plugin is responsible for OMEMO encryption within libpurple:
Calls (the app handling phone calls) can now be translated via the GNOME infrastructure thanks to Claude Paroz: calls!110. This prompted a Persian translation by Danial Behzadi.
Compositor and Shell
This section highlights progress in Librem 5’s GTK based graphical shell name phosh and its wlroots based compositor phoc:
- Thanks to Claude Paroz Phosh’s translations moved to the GNOME infrastructure: phosh!487
- Use a symbolic icon for the PolicyKit authentication prompt: phosh!485
- There’s a patch that enables the shell to provide haptic feedback on top/home bar presses, app launch, and window close: phosh!423
- Cleanup the compositor configuration file name to not cause confusion: phosh!491
- Avoid excessive
g_strdup() usage and plug leak on WiFi signal strength changes: phosh!489
- Arnaud Ferraris fixed some typos in the source code that showed up when preparing the Debian upload: phosh!492
- Rafael Fontenelle fixed the DOAP file’s repository URL: phosh!495
- phosh: Update i18n files and add a check so that we don’t forget to add new files including translations to the i18n infrastructure: phosh!497
- Allow to skip build and test in CI and only produce Debian packages. This can save some time when one only needs a package to install: phosh!498
- Thanks to Zander Brown, phosh now has a notification list persisting unseen notifications: phosh!463
- Thanks to Arnaud Ferraris phosh’s systemd unit dropped the hard-coded user name and directory making it more portable: phosh!493
- Arnaud Ferraris fixed the long date format when using a French locale: phosh!501
- Danial Behzadi contributed a Persian translation: phosh!499
- Rafael Fontenelle updated the Brazilian Portuguese translation: phosh!496
- Phoc now has a small testlib to ease adding automatic tests. This (among other things) allows to take and compare output content to saved screenshots: phoc!143 This also adds test to exercise some of the layer-shell related code.
- Triggered by a compile warning that showed up when working on the above we fixed an issue in upstream Wayland so client and server headers can be included at the same time: https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/77
- We now provide add test coverage information: phoc!144
- Based on work by Arnaud Ferraris update the copyright information phoc!146 in preparation for an upload to Debian.
Debian Packaging / Upload
Arnaud Ferraris reworked phosh’s, phoc’s, and feedbackd’s packaging to make it suitable for inclusion in Debian. This complements wlroots and libhandy giving a more complete mobile stack in upstream Debian.
Gnome Control Center (Settings) / GNOME Settings daemon
- There’s a merge request for editing wired connections re-enabling more parts that were previously disabled because they weren’t adaptive.
- Sadiq submitted a patch to upstream GNOME Settings that allows to show a QR code when enabling hot spot mode so it becomes easy for other devices to connect.
Feedbackd is responsible for haptic, audio (and later) LED based feedback:
- Allow to set feedback level per application: feedbackd!12 This allows e.g. the shell and on screen keyboard to use only haptic feedback
- We backported some packaging improvements from Debian: feedbackd!13
The process of upstreaming our Linux kernel work progress is covered in a separate report. The current one is for Linux 5.5 and 5.6 so this is about downstream improvements:
Linux 5.6 is now the default kernel version for Librem 5 and devkit based on this tree It is also getting point release (and hence security) updates on a regular basis:
In order to keep up with kernel development 5.7 based release candidate kernels are also available. These follow closely the release candidates tagged by Linus and are and installable on the phone as
Improvements based on upstream devfreq support for clocking down the DRAM makes it possible to use the powersave governor instead of handling that in userspace.
Work continued in mainlining the needed parts of the display stack. We put out v11 of the NWL mipi host controller driver and tested Laurent’s mxsfb rework that will give us alpha planes
It’s now possible to read the (built-in) firmware version of the touch controller: linux-next!97
Martin did some initial cleanups for the phone device tree working towards a state that can be submitted for upstream inclusion: linux-next!125
NXP currently uses a downstream for of the arm trusted firmware to implement clocking down DRM but it would be good if the kernel would at least boot without that).
Librem 5 base packages
If you made it down here and want to start contributing join us on matrix. We certainly welcome patches and issue comments on https://source.puri.sm. If you want to grab an issue and can’t think of a particular problem, check the easy and helpwanted tags in our gitlab instance. See you next month.