For the first time postmarketOS was represented at an event in Japan thanks to Rob and Masanori who went to the Open Source Conference 2024 Tokyo/Fall! As shown in the photo above, they had a cool table with asus-grouper, asus-tf201, xiaomi-beryllium, pine64-pinephone as well as stickers and flyers in Japanese (which ran out by the end!) and English. Several visitors mentioned that they were astonished how fast the tf201 and grouper appeared in the shell - and in general they were interested in seeing devices running with (near) mainline kernels. Thanks to everybody who came by! If you are in the area and missed the event, a Spring edition is coming up in February 2025.
Organizational
NLnet Grants Accepted
Pablo and Oliver helped members of the Linux Mobile community to apply for grants from NLnet's NGI Zero Core fund, and we are excited to announce that they have been accepted!
Biktor and Lynxis will be working on OpenIMSd, which aims to bring VoLTE (4G voice calls) to Qualcomm based phones (like the PinePhone) running Free Software Mobile Operating Systems including postmarketOS, Mobian and others. They will create a daemon which runs in parallel to ModemManager, which configures the baseband via QMI and brings up all the required services to be able to place VoLTE calls.
Danny will be able to improve mobile-config-firefox and replace hacks we currently carry there to make the desktop version of Firefox work on mobile, with proper solutions in upstream Firefox. See Enhancing Firefox for Linux on Mobile for details. Milestones have been created and will be filled with related issues and merge requests.
Trusted Contributors
Aster is a new Trusted Contributor! They have been contributing to postmarketOS a lot over the past months, especially the Lomiri packaging, systemd support and design ideas for optionally immutable postmarketOS.
Bryant stepped down as TC, and we thank him for the great improvements he has made to the project in the short time as TC: a lot of help with organizing ourselves better, reworking the homepage navigation and adding team pages (which also resulted in the amazing redesign!), work on mainlining the Galaxy Tab 4 family of devices and writing blog posts.
GitLab Migration
We have migrated from gitlab.com to our own instance at gitlab.postmarketos.org, see this separate post for details: Why and how we migrated from gitlab.com to gitlab.postmarketos.org
The migration was followed by a lot of clean up work, and for the most part the new instance is functional. Sometimes cross compilation CI jobs are failing (#3275), we are working on it.
systemd timeline
In last month's And what's next? section it seemed feasible that we could merge the systemd branch into edge in October. However the GitLab migration and related clean up tasks took longer than expected, and so we were not able to work on systemd blockers like #140 as much.
In a recent team meeting we had to decide whether to include systemd in the upcoming v24.12 release or not (so we have enough time for testing and follow-up bug fixing). As we talked through it, we realized that we would likely burn ourselves out by attempting to have it in v24.12. It was not easy, but we decided on the new plan to merge it into edge after v24.12 is out and to ship it in a stable release for the first time with v25.06.
pmbootstrap
Work on the upcoming pmbootstrap v3 has been going on for several months now. It is reliable enough that we can use it pretty much everywhere in our own infrastructure (edge jobs for CI, building packages and images, monitoring, etc.) We slimmed down the related milestone to the critical path of what is really needed to make the release and plan to have it done before v24.12.
Stefan joined Oliver and Casey in maintaining pmbootstrap. Stefan also made a lot of improvements to the code base, mostly to get v3 ready for release and to improve typing (!2411/imported, !2415/imported, !2419/imported, !2421/imported, !2428, !2424, !2432, !2425, !2431, !2441, !2434, !2450, !2442, !2464, !2466). Thanks Stefan!
SHA1 RSA signatures are considered insecure nowadays, for that reason they have been disabled in Fedora 41. Bart adjusted apk-tools in Alpine to also have a SHA256 RSA signature and Clayton made pmbootstrap to use this signature (!2417/imported, !2465). This fix has been backported to pmbootstrap 2.3.3, so it works on Fedora 41. Thanks Clayton, Bart!
In order to be able to set PipeWire/PulseAudio as default per UI (which makes sense in a transitional phase until all UIs can use PipeWire) and similar use cases, pmbootstrap can now use a custom
_pmb_defaultkey from APKBUILDs (!2301/imported). Thanks Aster, Clayton!pmbootstrap now uses gitlab.postmarketos.org for new pmaports.git clones and can migrate users from the previous (archived) gitlab.com URL to the new URL in their already checked out pmaports. This has been backported to 2.3.2. (!2427, !2443, !2445, !2447, !2429, !2460). Thanks Luca, Stefan, Casey, Oliver!
"pmbootstrap install" now uses GPT (GUID Partition Table, not the AI thing) instead of MBR by default and implements the Discoverable Partitions Specification (!2426, !5707). Thanks Aster, sicelo!
The CI jobs for generating pmbootstrap docs can now run in pmbootstrap's chroots. This is useful so users running this CI script locally don't need to install sphinx dependencies on the host system (!2413/imported). Thanks Luca!
Lots of additional automated testing via integration tests (!2444, !2453). Thanks Clayton, Casey!
Fixes for making sure pmbootstrap works with Python >= 3.10 as well as running our CI tests against both 3.10 and 3.12 (!2455, !2471). Thanks Casey!
pmbootstrap was still running apk through QEMU in some cases, the related code has been reworked so this is no longer the case (!2463). Thanks Casey!
Lots of smaller fixes and improvements (!2416/imported, !2423/imported, !2433, !2412/imported, !2439, !2438, !2446, !2440, !2346/imported, !2449, !2448, !2454, !2451, !2456, !2457, !2458, !2461, !2459, !2462, !2470). Thanks Luca, Casey, Clayton, Alexey M., Oliver, Jane, Vikram!
pmaports + aports
User interfaces: GNOME was upgraded to 47.1, Phosh was upgraded to 0.42.1, KDE Plasma was upgraded to 6.2.2. Thanks Achill, Stefan, Bart, Robert M., Patrycja!
Lots of kernel packaging patches, mostly upgrades to 6.11 (!5399/imported, !5557/imported, !5640/imported, !5608/imported, !5624/imported, !5669/imported, !5611/imported, !5672/imported, !5486/imported, !5602/imported, !5686/imported, !5731, !5741, !5753, !5705, !5702, !5709, !5690, !5725, !5716, !5745). Thanks Clayton, Stefan, Jianhua, Barnabás, Arnav, Adam, Duje, Casey, Luca, Joel, Andreas, Alexey M., Richard A., Mighty!
New devices: Google Pixel 3 (!5514/imported), a generic (!!) qcom-msm8953 device (!5692), Sony Xperia Z Ultra (!5739). Thanks Petr, Casey, Barnabás, Kevin!
A bunch of work went into making libcamera work on ex-Android devices (!5615/imported, !5623/imported, !5626/imported, !5628/imported, !5644/imported, !5710). One notable result is Pixel 3A rear camera enablement! Thanks Robert M., Alistair, Clayton!
Initramfs improvements to be able to drop the minimal initramfs and making initramfs-extra opt-in (!5636/imported, !5621/imported, !5751). Thanks Casey, Luca, Clayton!
Trailblazer now has support for PINE64 PinePhone (!5703). Thanks ArenM!
With latest libadwaita, adaptive windows and dialogs in upstream GTK 4 are finally a reality! Therefore it was possible to finally drop our GTK 4 fork (!5622/imported). Thanks Pablo!
A new postmarketos-dev package has been added to install bash and coreutils by default. We plan to provide -dev variants of some postmarketOS images for some devices for use by the Linux Mobile developer community, and in the meantime this can be used to conveniently add development tools when building your own image (!5180/imported). Thanks Casey, Clayton!
lk2nd: upgrade to 19.0 and related patches (!5682/imported, !5691, !5750). Thanks Barnabás, kouta-kun!
The router linksys-jamaica has gotten (close to) mainline support (!5649/imported). Thanks ΞЖKƆ/QVH!
samsungipcd has been upgrade to v0.3.0, which adds a PPP bypass, so that traffic can flow through the native interface (rmnet0) directly, and not via the emulated PPP (!5698). Thanks Sergey!
Enable flathub by default (!5726), if flatpak is installed. Thanks Clayton!
If you ever came across the error "crossdirect: can't handle LD_PRELOAD": why this happens has been researched and the error message has been improved to be a lot more helpful (!5744). Thanks Oliver!
dtbloader: upgrade to 1.2.2, adding 3 new devices (!5737). Thanks Nikita!
Initial SoC paackges for common configs of msm8226/msm8974 devices have been added in (!5732). Thanks Barnabás!
The boot partition of google-x64cros devices was increased to 32 mb (!5730, edge post) Thanks Aster!
Lots of patches related to systemd (!5631/imported, !5629/imported, !5592/imported, !5597/imported, !5635/imported, !5647/imported, !5651/imported, !5652/imported, !5560/imported, !5661/imported, !5576/imported, !5630/imported, !5685/imported, !5734). Thanks Jane, Bart, Casey, Bart, Aster, Clayton, Pablo, Andrei!
Lots of smaller fixes and improvements (!5625/imported, !5627/imported, !5634/imported, !5610/imported, !5639/imported, !5632/imported, !5653/imported, !5637/imported, !5663/imported, !5678/imported, !5679/imported, !5638/imported, !5642/imported, !5654/imported, !5687/imported, !5643/imported, !5633/imported, !5696, !5695, !5699, !5700, !5720, !5721, !5718, !5715, !5722, !5724, !5728, !5714, !5727, !5712, !5735, !5740, !5742, !5743). Thanks Minecrell, Jakko, Clayton, Pablo, Sergey, Casey, Masanori, Bart, Jens, Alistair, Luca, Oliver!
mobile-config-firefox
Years ago, by popular demand the navigation bar in mobile-config-firefox was moved to the bottom. However, after it was done we also got requests of making it configurable so people who prefer it differently can choose. This is now possible through an about:config option (!56). Thanks Peter!
Declare touch density (!57) and add an option (via about:config as above) to give more place to tabs (!58). Both merge requests were opened by Peter and are based on an earlier MR from Cédric who started to upstream these patches from Droidian into mobile-config-firefox. Thank you both!
Get some more space in the address bar by removing the
->arrow (you can just press return on your on-screen keyboard instead, !55). Thanks Peter!Fix: let clients detect touch screen (!54/imported). Thanks Seth!
mrhlpr and mrtest
mrtest/add_packages.py: add explanation why there might be no artifacts (!49/imported). Thanks Rob!
mrtest: Add support for using an MR as a repo when upgrading (!50/imported). Thanks Stefan!
CI: Build native libraries for mrhlpr and mrtest via mypyc (sort of as test ground for also doing this with pmbootstrap later on) (!53) Thanks Stefan!
Various small improvements and fixes (!52, !46/imported, !55, !56, !54). Thanks Stefan, Rob, Zach, Pablo!
Misc
xfce4-phone: simplify display power behavior (!11/imported) and fix values to disable brightness reduction (!12/imported). Thanks Jakko!
images: trailblazer: build gnome instead of gnome-mobile (!112/imported). Thanks Casey!
BuffyBox has seen various small improvements (!28/imported, !29/imported, !30/imported, !31/imported, !34). Thanks Johannes, Pablo, Colin, Владимир!
postmarketos-mkinitfs: allow including initramfs-extra files in the initramfs (!48/imported). and add compile-time flag to disable Go GC (!56/imported). Thanks Clayton!
bpo_failed_to_queued: add arguments for packages/images/bootstraps (!111/imported). Thanks Luca!
Upstream-compatibility tests have been updated to work with pmbootstrap v3 (!14). Thanks Luca!
openrc-settingsd: Implement Slackware specific information for rc.ntpd (!13). Thanks Nathaniel!
Changes related to gitlab.com -> gitlab.postmarketos.org move (!113, !314, !319, !73, !9, !13, !51). Thanks Luca, Oliver, Arnav, Connor!
Various fixes and improvements in other repositories (!8/imported, !10, !13, !4/imported, !5/imported, !3/imported) Thanks Stefan, Clayton, Oliver, Clayton, Jakko, Rob!
And what's next?
Since the Mozilla Location Service has been shutdown, we are discussing what other service to use instead for geoclue (#82), with the goal to enable one soon.
SeaGL is coming up, 2024-11-08 to 09 in Seattle, US. Anjan will do an Introduction to postmarketOS talk there, and Clayton will be there as well. Consider stopping by if you are in the area!
The FOSS on mobile devices devroom is back for another round at FOSDEM 2025! If you have a great idea for a talk, we want to hear from you - have a look at the Call for Proposals!
Help wanted
Edge images for
google-nyan-bigandgoogle-nyan-blazehave been disabled, as the depthcharge images have become too big and nobody was able to look into it. If you have one of these devices and are interested in tweaking compression or coming up with another fix, it would be highly appreciated! (#3186)Our wiki still has many pages that link to the legacy repositories at gitlab.com/postmarketOS, including people's user pages. If somebody wants to help out with fixing these, please do!
You can send us topics to include in the next blog post by commenting in: #185
If you appreciate the work we're doing with postmarketOS and want to support us, consider contributing financially via OpenCollective.
