We already wrote plenty about FOSDEM 2025 and the Hackathon we did afterwards. But that was just the start of February! Two weeks later, a mainlining workshop in Aachen (DE) took place. Jens organized it and posted some notes including "1 Xiaomi tablet now boots mainline quite well and can boot to system from UFS" and "it is damn hard to explain this to people with almost no technical knowledge in this area, but we tried our best and they learnt a lot". Another week later, Rob represented postmarketOS on the Saturday of the OSC 2025 Tokyo Spring event hosted at the Komazawa University in Tokyo (JP): "It was quite busy and several good discussions were held with different members of the Open-Source community." Thanks Jens, Rob and all who came by!
Post the Market: A New Fame
We plan to give postmarketOS a new name. Back in 2017 when postmarketOS was first getting off the ground, this project was smaller scale. Just a port of Alpine Linux to devices abandoned by their manufacturers. Now, the year is 2025 and while many of our ports are still for devices past their manufacturer's supported period, we also have a lot of devices running postmarketOS far before they reach their official End of Life. For the Fairphone 4 and Fairphone 5 we even had ports on the day they were released!
This is one of the reasons why we are looking for a new name. Another is that postmarketOS is not easy to pronounce. It is five syllables, including the OS at the end. To some it sounds more like a sentence than a name. Last but not least, the capitalization is a bit awkward at this point: Our official branding is postmarketOS with lowercase p, but of course people end up writing PostmarketOS (especially at the beginning of sentences) or even PostMarketOS.
So we are looking for a new name! To be clear, we only want to change the name. The beloved logo and all the rest of our branding will stay the same.
What's the new name?
You tell us. Since postmarketOS isn't just the distro, but also the community around it, we don't think it is fair to just rename the whole thing without community input. Thus, we thought it's best to turn to you all for ideas. Although, there are a few rules on name submissions:
- It should be 1–3 syllables long.
- Use the standard Latin alphabet. No accents, umlauts, rockdots, etc.
- Should be easy to pronounce for as many people as possible.
Submit name ideas to our nextcloud form by clicking this link right here
We will take our time looking through all suggestions to make sure we pick a good one — we'll keep postmarketOS at least until the upcoming v25.06 release is out. We also considered making a public poll. But given that it is very likely that somebody will just register related domains once we have a public list of names to consider… it doesn't seem like a smart thing to do. So the Trusted Contributors and Core Contributors will decide on one. The name postmarketOS has served us well, but it is time to modernize!
Other Organizational News
We are excited to announce that Achill is now a Trusted Contributor! He maintains GNOME, Phosh and many other related packages in Alpine, fixes issues between Alpine and pmOS and more — read his TC page for more information. Thanks Achill!
With inspiration from LLVM, we are now experimenting with office hours where some postmarketOS contributors are available regularly to chat through Jitsi with folks who have questions, need help, or have ideas. All are welcome to participate! Thanks Clayton, Casey, Jens!
In order to make what we do more transparent, a lot of important organizational information that was scattered across the wiki, mails and other places has been tidied up and can now be accessed easily through our homepage (!335): The list of of current and previous board members, a new financials page that has our processes and policies for reimbursements, expenditure approval and executing big projects and a new social media team page featuring our guidelines for posting and boosting. The explore page now has a new organizational section linking to our recently established PMCR process, financials and code of conduct. Thanks Pablo, Oliver!
A five day security audit of build.postmarketos.org has been completed by Radically Open Security as part of the postmarketOS daemons grant from NGI Zero Core / NLnet. There were only "non-findings". If you are curious you can take a look at the report. Thanks ROS, NGI, NLnet!
For the postmarketOS infrastructure, we finally have an automatic daily off-site backup pulling set up with monitoring. This replaces the previous workflow of manually pulling the backups every few days. Thanks Luca, Oliver!
GitLab CI now uses our custom runner for jobs that need QEMU to fix the random segfaults we frequently saw before this change (#83, !2548, !6143). While this has made CI much more reliable, we sometimes still see unrelated failures where CI jobs just fail to start on the custom runner (#101). This is annoying, but at least it doesn't happen as often and it should be much easier to debug and fix than the problem we had before using our custom runner. In the meantime, just restart jobs if you run into this. Thanks Casey, Oliver!
New device ports
This time we have 6 new device ports:
- Lenovo Yoga Tab 3 10 LTE/WiFi (!6128). Thanks ΞЖKƆ/QVH!
- Samsung Galaxy S10+ (!6161). Thanks rodent!
- Motorola Moto E5 (nora) (MSM8917) (!6101, !9). Thanks Val, Barnabás!
- Motorola Moto E5 Plus (hannah) (MSM8937) (!6101, !10). Thanks Bartłomiej, Barnabás!
- Khadas VIM3 (!6220). Thanks Mattijs!
- HMD Global Nokia 1 Plus (!6134). Thanks Piotr!
Device category changes
Two devices moved from the testing category into community:
As they were released in 2019 and 2020, they are the most modern phones in the community category (all newer devices are in testing currently). Find pre-build images on the install page (!6210, !6253, !6212, !120, !367). Thanks Jens, David W.!
pmbootstrap
Pigz (a parallel implementation of gzip) is now used during
pmbootstrap buildto speed up compressing packages (!2561). Thanks Casey!The new cross compilation method
cross-native2has been added to pmbootstrap, which usesabuildand the build system from the package being built (e.g.meson) to do the cross compilation instead of running everything except for the compiler through QEMU (default methodcrossdirect) or using a hack that only works for bare-metal packages (cross-nativeversion 1). The new method massively speeds up the compilation. You need to opt-in into this feature by usingoptions="pmb:cross-native2in yourAPKBUILD. If this sounds confusing, but you would like to learn more about it then check out the new Cross Compiling page in the pmbootstrap documentation where we carefully explained the differences between the approaches and even added a nice markdown table (!2474, !2562). Thanks Casey, Oliver!As part of the above merge request, pmbootstrap now does more strict dependency handling. During builds it will only install packages listed in
makedepends(_host,_build). Previously also packages fromdependswere installed. This gives a nice speed improvement because we don't spend time downloading and installing packages that are not needed during the build anymore. However it may also cause someAPKBUILDs to fail if they rely on the old behavior (which they should not). In that case, just add the missing packages to makedepends as done in !6268 for example.Before this major feature was merged, pmbootstrap 3.3.0 has been released (also 3.3.1 right afterwards to ensure we don't install tests in distro packages). If you get unexpected errors with current master of pmbootstrap, please compare against the latest released version. As usually, you can try to make a fix yourself or create an issue if there isn't one yet and mention there whether it is a regression or not.
During
pmbootstrap init, the user is now asked for their pmaports path to easily allow using an existing checkout (!2502). Thanks Hugo!If you ever saw a mysterious "No space left on device" errors during
pmbootstrap install: this was caused by having the wrong amount of inodes configured when making ext4 filesystems, and it has been fixed now (!2552, !2555, !2558). Thanks Oliver!A new
--usbargument has ben added to thepmbootstrap chrootcommand, which will bind-mount in the necessary sysfs directories for USB devices to be accessed inside the chroot. This is the same as how we already do it forpmbootstrap flasherbut allows running arbitrary commands in the chroot. This is useful to allow using pmbootstrap chroot's as a sandbox for custom flashing procedures (!2554). Thanks Casey!Tests are now in a separate module so we can avoid installing them when packaging
pmbootstrapin Alpine and other distros (!2551). Thanks Hugo!Various small but important fixes to the
install,flasher,init,configandchrootactions (!2534, !2543, !2535, !2546, !2556, !2557). Thanks Szczurek, knuxify, Stefan, Anri!Various improvements to make code and docs more maintainable (!2537, !2485, !2545, !2515). Thanks Stefan, Casey!
Kernel packaging
MSM89x7 has been upgraded to 6.13, enabling audio support for almost every supported device and also charging support for every supported device except Redmi 4A (!6101). In a follow-up, flashlight support for pmi8950 was added as well as suspend (!6207). Thanks Barnabás!
All kernels have been adjusted to pass the latest kconfigcheck.toml and now have the null TTY driver enabled: "The null TTY driver provides a proper (dummy) TTY interface when console=null is set on the kernel cmdline. This fixes certain applications which don't correctly handle read() immediately returning with 0 bytes (e.g. busybox syslogd). Most normal EFI devices don't boot with console=null and as such there are various foot-guns littered all over Linux userspace and even in our own initramfs. However some android devices even enforce console=null, so it's something we have to deal with." (!6087, #3269). Thanks Luca, Casey, Pablo!
And so many more kernel changes… find details in the MR descriptions:
- linux-postmarketos-imx-ereader: Update to 6.13.0 (!6102). Thanks Andreas!
- linux-postmarketos-omap: upgrade to 6.13 (!6071). Thanks sicelo!
- linux-pine64-pinephonepro: upgrade to 6.13 (!6093). Thanks Jan!
- Weird kernel fixes (!6139). Thanks Luca!
- linux-postmarketos-qcom-sc7280: upgrade to 6.13.0 (!6072). Thanks Luca!
- linux-postmarketos-qcom-msm8953: upgrade to v6.13.0-r0 (!6116). Thanks Barnabás!
- linux-next: use git.kernel.org as source (!6012). Thanks Achill!
- samsung-loganrelte: boot mainline (!6142). Thanks User0!
- linux-postmarketos-qcom-sm7150: Upgrade to 6.13.2 (!6193). Thanks Jens!
- linux-postmarketos-marvell: switch to 6.13.2 (!6174). Thanks Rob!
- linux-postmarketos-mediatek-mt8173: upgrade to 6.13.2 (!6176). Thanks Adam!
- linux-postmarketos-allwinner: upgrade to 6.13.2_git20250209 (!6199). Thanks Arnav!
- linux-samsung-v1awifi: fix for not compiling kernel (!6211). Thanks Eisenbahnfan!
- linux-samsung-lt023g: Update Kernel to v3.4.113 (!6231). Thanks Yahia!
- linux-next: enable PMEM (!6228). Thanks Casey!
- linux-postmarketos-qcom-msm8974: upgrade to 6.13.2 (!6179). Thanks Luca!
- linux-xiaomi-ido: fix kernel compile error caused by Sun Solaris style flag on section (!6242). Thanks Kidd!
- device-fairphone-fp3: drop downstream kernel variant & clean up (!6245). Thanks Luca!
- linux-postmarketos-qcom-sm7150: Upgrade to 6.13.4 (!6235). Thanks Jens!
- linux-postmarketos-qcom-sm6350: upgrade to 6.13.1 (!6165). Thanks Luca!
- linux-postmarketos-qcom-msm8930: update to 6.13.0 (!6238). Thanks User0!
- linux-pine64-pinetab2: Upgrade to kernel 6.13.4 (!6251). Thanks Dang!
- linux-postmarketos-mediatek-mt8173: upgrade to 6.13.5 (!6262). Thanks Adam!
- linux-postmarketos-qcom-sdm670: upgrade to v6.13.3 (!6241). Thanks Richard A.!
- linux-amazon-biscuit: remove dummy mmap from pcm audio driver (!6233). Thanks Connor!
- SM7150 device updates (6.13.2 kernel, sensor support) (!6195). Thanks Jens!
systemd
Systemd was upgraded to version 256.11 (!6145, !5). Thanks Jane!
Phosh: dbus now gets launched via socket-activation (!6243) and tinydm is used to start Phosh with systemd (!6150, we plan to change both the systemd and openrc version to greetd and phrog 🐸 with upcoming !6106). Now that these two changes are merged, Phosh starts up correctly again. Thanks Achill, Jane!
Systemd support was added in msm-modem to get SIM selection working for devices like the OnePlus 6 with multiple SIM slots (!6173). Thanks Clayton!
Initramfs: the stale
/dev/lognow gets removed beforeswitch_root, fixingsystemd-journald-dev-log.socket(!6156). Thanks Jane!SWAP with ZRAM now works on systemd installs (!6208). Thanks Clayton!
libkmod now gets added to initrfs-extra on systemd installs, it is needed by udev (!6118). Thanks Henrik!
Our upstream compatibility monitoring script now checks whether any of our packages forked from Alpine needs to be updated. We fork packages to enable systemd, but also for other reasons such as trying out more experimental libcamera patches (!17). Thanks Jane!
The
upgradefeature of mrtest can now be used with systemd (!67). Thanks Stefan!A fix was made for having pmaports CI build systemd packages again (!6214). Thanks Clayton!
Various services and presets related patches (!6094, !6108, !6149, !6157, !6147, !6188, !6191, !6183, !6203, !6196, !6205, !6218, !6247, !6252). Thanks Clayton, Achill, Bart, Devin, Robert M.!
Various upgrades of systemd-enabled packages (!6162, !6197, !6213, !6277). Thanks Achill, Bart, Teemu!
pmaports
The Xfce phone configuration was adapted to the Xfce 4.20 release. Additional changes were made to the layout, among other goals for taking the increasing number of high-resolution touchscreen devices into account. In OpenRC installs, brightnessctl is now used to save and restore display brightness over boots (!5942, !13). Thanks Jakko!
Initial packaging of the Mediaberry user interface has been added. This is "an open platform for streaming boxes and smart TVs" (!6066). Thanks hexaheximal, Aster!
The Gstreamer experience on Gnome DEs has been improved by making sure a lot of default codecs and elements are installed by default in new installations. "This was often not obvious for users as Gst in various cases has less optimal fallbacks, easily leaving the impression that either an app, drivers or hardware are at fault" (!6086). Furthermore Gstreamer hardware video de- and encoders have been disabled for SDM845 for now, as they currently tend to destabilize the whole system if something goes wrong (!6098). Thanks Robert M.!
The buffyboard touchscreen keyboard (of unl0kr fame, now all living in buffybox.git) has been packaged as separate UI package
postmarketos-ui-buffyboardand can now be used instead of fbkeyboard. It works better on devices with a narrow display and looks more modern (!6127). Thanks ΞЖKƆ/QVH!The iio-sensor-proxy fork in postmarketOS has been updated to use the latest libscc support patches that are being upstreamed by Dylan in !381. The MR makes sensors work on several SDM845 devices like Oneplus 6/6T, Xiaomi POCOPHONE F1, and SHIFTPHONES SHIFT6mq. Recently, mainline kernels running on newer SoCs like in Fairphones or Xiaomi are also making use of this MR with libssc to make their sensors work (!6040). Thanks Dylan!
An universal udev rule has been added for udmabuf. "The udmabuf allocator enjoys increasing popularity, not only being used by libcameras swISP and some virtualisation apps, but since Mesa commit d74ea2c1 even in llvmpipe - and more projects plan adoption, such as Gstreamer. Thus let's ensure it's universally available for UI users if the kernel supports it." (!6163). Thanks Robert M.!
Many Nokia N900 related improvements and fixes (!6123, !6164, !6168, !6202, !6257, !6268). Thanks sicelo!
GNOME packaging has been adjusted to enable fingerprint support (!6206). Thanks Robert M.!
Samsung Galaxy SII Plus now has working Wi-Fi (!6110). Thanks VaporGame!
For the LXQt packaging, the button size has been increased (!6068). Thanks Jakko!
Every install now has translations installed by default, which is very helpful for default installs, or to be able to change the system when defaulting to English (!6146). Thanks Achill!
The mobile-config-firefox packaging now works with LibreWolf (!6270). Thanks Adam!
Misc
Tinydm has gotten two fixes for
tinydm-run-session(!16, !19) and 1.2.1 was tagged. Thanks sicelo, Jane!q6voiced was ported to libasound (!6). Previously it was using the Android library tinyalsa instead, which is not packaged in e.g. Debian, which is of course important for our friends at Mobian. Thanks Arnaud!
The initramfs was modified to run e2fsck before resizing the root partition so that resize2fs will actually succeed (!6159). Thanks Casey!
In mobile-config-firefox, the Private Browsing indicator was fixed for Firefox >132 (!70). With out this change, we had an icon and text next to it leading to tab titles being partially hidden on mobile. Thanks Peter!
Smaller changes and improvements for the homepage (!355, !321, !357, !360, !363, !364, !366, !365, !369). Thanks Pablo, Ranny, quick, Pablo, Achill, Max, smlrrlms, Richard A., Clayton!
Smaller fixes and improvements in various projects (!13, !37, !68, !69, !76, !6117, !6151, !6177, !6200, !6223, !6113, !6119, !6064, !6085, !6097, !6140, !6136, !6132, !6107, !6122, !6169, !6187, !6180, !6178, !6190, !6184, !6204, !6192, !6217, !6226, !6185, !6175, !6234, !6189, !6237, !6236, !6170, !6171, !6222, !6249, !60, !3, !4). Thanks AbortRetryFail, Jens, MasterPlexus, Stefan, Bart, Alexey M., Barnabás, Casey, Clayton, ΞЖKƆ/QVH, Ferass, Jianhua, Rob, Luca, Oliver, Pablo, Richard A., Robert M., Sam, sicelo, User0, vipaoL, Vladimir!
And what's next?
The
CODEOWNERSfile in pmaports will soon be completely removed, as the aports-qa-bot that Pablo adjusted and Luca set up pings maintainers based on the# Maintainer:and# Co-Maintainer:lines inAPKBUILDs (as mentioned in the FOSDEM post).
Help wanted
Some shell scripts in Sxmo have been rewritten in harelang. Unfortunately hare programs don't run on 32-bit arm architectures yet. We are looking for somebody who would have the skills and time to add 32 bit support to QBE to make this work, and who would be interested to get paid for implementing this. If this fits you, then get in touch via mail: team <at> postmarketos.org
knuxify has written an impressively detailed troubleshooting on-device issues wiki article (thank you very much)! There are still some related cleanups that need to be done for other troubleshooting pages. If you are good at writing documentation or improving wiki pages, consider taking a look at #133.
We have some unfinished ideas for collaboration with camera libraries (libcamera, megapixels, libobscura) to create calibration data for phone camera sensors. If you have some input, see the discussion in #98.
You can send us topics to include in the next blog post by commenting in: #195
If you appreciate the work we're doing with postmarketOS and want to support us, consider contributing financially via OpenCollective.
