Fasten your seatbelts, after skipping the monthly progress report in June because of the v24.06 release, we have at least twice as much news to share!
Homepage
First, we obviously updated the homepage. The new design is a collaboration between Dika, Markus and Oliver. It's more than just a design change actually. If you take a close look at the links in the top navigation bar you may first notice that it isn't as overloaded with random links anymore as it used to be. And secondly that there is a new explore button that more or less lists the links we had there previously (but now nicely sorted in categories!) as well as a new team button.
Bryant spent a whole lot of time and effort on that. The team page shows who makes postmarketOS. Who the Core Contributors (renamed from Core Team for consistency) and Trusted Contributors are and what we are doing in postmarketOS. What we think about, enjoy doing and where you can find us on Matrix etc. The teams page also has the purpose to list the contributor groups and teams we now have, which have grown quite a lot in the last months, in one easy to read overview. So Bryant figured before we add yet another new button to the navigation bar, we should first unclutter the navigation bar and… while at it we just did this whole redesign!
Organizational
We decided on new approval requirements for merging patches. This addresses problems with good patches not getting merged, that oftentimes were caused by lack of clear understanding of who is supposed to approve and merge patches. With further work we plan to automatically assign maintainers to new merge requests (like it works in Alpine's aports). We apologize to everybody that had a hard time with the previous review process, and we hope this makes the workflow better for everyone. Feel free to reply to #66 if you still experience problems with the new workflow.
We wrote a separate blog post about postmarketOS being selected for NGI Zero Core funding, as well as how the European Commission made a draft in which NGI will not be funded anymore in 2025.
pmbootstrap 3.0.0_alpha
- The pmbootstrap feature freeze is over, Casey's big pmbootstrap v3 patch series has been merged! This brought massive refactorings and improvements, making pmbootstrap easier to maintain and bringing more performance and better usability. Read their blog post for details. Thanks to Casey and everybody who tested pmb v3 already and reported/fixed regressions!
- Several improvements in code formatting and linting. Thanks, WhyNotHugo, Newbyte, Casey, Oliver!
- kconfigcheck support was moved from inline Python to a toml file. This allowed to move the kconfig check file to pmaports. This makes it much easier to enforce kernel config changes, as we can now change the kernel configs at the same time as changing the kernel config checks, as well as having different kernel config checks depending on the pmaports branch. Thanks Oliver and everybody that took part on the discussion that led to this change!
- pmbootstrap documentation is now online! Thanks Rob for getting documentation ready and Luca for the infra work!
- In preparation to support building the split systemd repository, the mirrors configuration was reworked and documented (!2361). Thanks, Oliver and Casey!
- Lots of smaller fixes and improvements. Thanks, Casey, Oliver, WhyNotHugo, Clayton, Andrew Robbins, Newbyte, Gompa, Jane, Henri, Arnav, ijiki16, Henrik!
pmaports
We have 8 new device ports: Xiaomi Redmi 5, Xiaomi Redmi Note 9 Pro and Xioami Redmi Note 9S, Kobo Clara 2E, Pine64 Pinetab 2, Epson Moverio BT-200, Samsung Galaxy Tab PRO 10.1 (WiFi), Xunlong Orange Pi 4G-IoT, postmarketOS Trailblazer Thanks to all our device porters!
The trailblazer device port uses linux-next, which now gets upgraded automatically in pmaports every day. Thanks Casey!
Add sensor support for Xiaomi Poco F1, Fairphone 4, Fairphone 5, and Google Pixel 3a! Thanks Rob, Joel, Luca, and Richard! It is very cool to see how the initial work by Richard and Dylan is slowly resulting in more Qualcomm devices getting sensor support. Truly a team work!
Major initramfs changes to improve logging and the debug console as well as using udev and refining root/boot partition detection and waiting. This has some really nice features, such as holding volume up during boot to trigger a log dump. Beware that the size of the initramfs has increased, devices that are affected can use
postmarketos-initramfs-minimalinstead (edge blog post). Thanks Casey and Clayton!Enable EFI support for ARM64 QEMU. Thanks Clayton!
GNOME Extensions are now configurable and available by default in GNOME Shell and GNOME Shell Mobile. Thanks Pablo!
Update to latest official firmware for Fairphone 4 and 5. Thanks Luca!
Lenovo ThinkPad X13s is now in community. Thanks Clayton!
Add more apps to default GNOME installs, and replace Evince with the more modern and phone-adaptive Papers. Thanks Clayton and Pablo!
Stop hard-coding pulseaudio in some UIs. Users can now seamlessly switch between Pulseaudio and PipeWire by doing
apk add postmarketos-base-ui-pulseaudioorapk add postmarketos-base-ui-pipewire. Thanks Clayton, JustSoup, and Pablo! You can follow the work to use PipeWire by default in the milestone.mkinitfs 2.5.0 and 2.5.1 have been released and integrated, including lots of fixes for the UsrMerge use-case. Thanks Clayton and all the mkinitfs contributors!
boot-deploy 0.16.1 and 0.16.2 have been released and integrated. Thanks Clayton and all boot-deploy contributors!
mobile-config-firefox 4.3.2 has been released and integrated, with several fixes. Thanks Oliver and Peter!
Re-enable DNS filtering after it was broken due to a package upgrade. This means mobile data is again never been used while on WiFi. Thanks Clayton!
Update unl0kr to 3.2.0, including more themes and and some misc fixes. Thanks Johannes!
Allow initramfs hooks to clean up after themselves. Thanks MaeIsBad.
A regression with PulseAudio 17.0 that affected all devices using the sdm845 and sdm670 audio configs was fixed. Thanks Federico!
Backport more libcamera patches to improve performance on some devices. Thanks Robert!
Several amlogic ports for TVs were integrated into a generic
amlogic-tvboxport. Thanks Ferass!
Artwork
Our amazing recurring artwork contributor Dikasp hasn't only been busy with the homepage redesign, but also made a new Mastodon avatar and created new wallpapers to be used in future releases, as well as two sticker designs (MayJune, and July)! Thanks Dikasp!
A tablecloth design for the postmarketOS stand at FOSSY as well as a phone stand in postmarketOS design that can be 3D printed were made! Thanks Ranny!
Misc
Luca wrote an eSIM manager for Mobile Linux, and adapted lpac to work on Qualcomm devices! "This should work on any phone with Qualcomm SoC (unless it’s very old and not using QRTR) which has an eSIM chip built-in or with a removable eSIM card inserted."
We had a great time doing an interview with the Phosh lead developer Guido for the postmarketOS podcast. There's a lot of topics like how Phosh relates to Purism, being puzzled by people using Phosh on the PinePhone, comparing squeekboard and phosh-osk-stub, automatic hardware testing and more.
mrhlpr and mrtest 1.4.0 have been released. A nice new feature by Nikita that made into this release is an apk hook that prints a big notification message during upgrades if the user still has mrtest packages installed. (Those are for temporary testing and should be uninstalled afterwards.) Thanks Pablo, Nikita and everybody who contributed to the release!
And what's next?
systemd work is progressing at a stable pace. There will soon be a new blog post on this topic.
Events are happening! This weekend was GUADEC 2024, and postmarketOS folks also plan to be at FOSSY 2024 (Portland from August 1 to 4th), FrOSCOn (Sankt Augustin from August 17th to 18th), and Akademy 2024 (Würzburg from September 7th to 12th).
We are about to pay our first contributor to do upstreaming-related work from the donations. Keep an eye on the blog for more updates!
If you appreciate the work we're doing on postmarketOS, and want to support us, consider joining our OpenCollective.
