Let's start with this amazing photo that Luca took of the Fairphone (Gen. 6) showing the brand new postmarketOS port. Like with Fairphone 4 and 5 before, he published it on release day of the new Fairphone, this time along with 59 (!) patches to upstream Linux! Below the phone you can see a new sticker pack that Ranny, dikasp, Oliver and Luca made for the upcoming FrOSCon 2025 event and many events after (!65, !66, until they run out, of course)!
Organizational
We have two new Trusted Contributors: Rudraksha and Paul! Among other things, Rudraksha is working on mainlining MSM8960 while Paul is doing a port to the BlackBerry KEY2. Welcome to the team!
It is only July, but we have already made more than 100% of the whole year's planned income via donations! With that in mind, the team has unanimously approved an amendment to our budget for spending 6400€ to improve the reliability of the audio stack. As Pablo wrote in the "implementing missing bits to improve phone call routing" issue pipewire#3704: "So after talking with Arnaud, we are paying Richard A., a member from our community and maintainer of the close-to-mainline kernel for the Pixel 3a, among many other things, to try do this work and get it upstream.". There will be a separate blog post on this topic. Thanks to Richard A., Pablo, Arnaud and everybody who donated to postmarketOS to make this possible!
From GNOME's 2025-07-12 Foundation Update: "We are excited to announce that postmarketOS has joined the GNOME Advisory Board! This is particularly fun, because it breaks GNOME out of its safe shell. GNOME has had a complete desktop product for 15 years. Phones and tablets are the most common computers in the world today and the obvious next step for GNOME app developers. It’s a long hard road to win the mobile market, but we will. 🙂 (I’m just going to keep saying that because I know some people think it’s extraordinarily silly… but I do mean it.)"
A good chunk of the work in postmarketOS is fueled by NLnet and NGI Zero Core funding. The OpenIMSd project has the goal to make 4G calls with VoLTE work with Qualcomm devices on postmarketOS, Mobian and related Linux Mobile distributions. Find the most recent progress in a separate blog post on unlocking VoLTE on Androids with libqmi. Additionally a new project that we have applied for to fund infrastructure work on the upcoming v25.12 and v26.06 releases of postmarketOS has been approved. Thanks to Lynxis, Oliver, NLnet/NGI Zero Core!
PMCRs 0002 (hermetic usr) and 0003 (name change plan) have been merged. (!2, !6). Thanks to Aster, Pablo and everybody who contributed to the discussions!
Following the split of downstream device ports into their own category, it was decided to keep building downstream ports for edge, but not for stable releases. Furthermore we don't provide binary packages for ports in the archived category anymore and if ports lack maintainers and don't build, they may be moved to archived (#109, !2631). Thanks Pablo, Oliver and everybody who contributed to the discussion.
apk3
After five years of development, the new major version 3 of the Alpine Package Keeper has been merged into Alpine edge! It includes some really nice changes, like downloading packages before installing them (which we enabled by default in postmarketOS), so that a flaky internet connection can't ever break your system again while installing updates. Thanks to Timo, Sertonix and everybody else who has contributed towards making this possible!
The graphical frontend GNOME Software uses apk-polkit-rs, which has been adjusted by Pablo and Rasmus (!55). For the KDE Discover backend libapk-qt, a patch by Sertonix exists but has not been integrated yet (if somebody wants to help with that, see #4).
From postmarketOS tooling side, pmbootstrap 3.5.1 has been adjusted to apk3 (!2635, !2636) and the release upgrade script is now working with apk3 after changing it to use the statically linked version (!23): "when upgrading apk-tools, we must also upgrade libapk and that can break other packages depending on it. After considering various approaches, the best seems to be to use the statically linked apk for the release upgrade. This avoids upgrading libapk early, but lets us use the new apk to do the upgrade." Thanks Clayton, Stefan and Oliver!
Immutable postmarketOS
Clayton has been heavily working on a proof-of-concept for the optionally immutable version of postmarketOS, which will rule out whole classes of errors for end-users that can currently happen when upgrading the package based systems. He recently showed a demo video of the update process for the first time. The implementation is done with the following:
mkosi is a used to create system images in a standardized way. It is useful for immutable because it automatically handles dm_verity and partition generation, removing the need for complex logic in pmbootstrap.
systemd-sysupdate allows updating a system based upon a set of rules, meaning you can update individual files or update whole partitions with one tool.
If you are curious about immutable postmarketOS, you can join the new Matrix/IRC room.
As part of this effort, there have been multiple patches making it into pmaports (!6565,!6602). Thanks Clayton, Casey, Aster, Pablo and also NLnet/NGI0 for funding a lot of this work as part of the daemons project!
/usr merge
"We are ready to merge /usr in postmarketOS!" — when we announced that on Mastodon with a link to our edge post, there was some confusion about what the /usr merge actually is. So for this monthly blog post, let's explain it first!
The /usr merge is where everything under /bin, /sbin, and /lib are moved into their respective /usr subdirectories. Then, for compatibility sake, the root-level directories are made into symlinks to their /usr counterparts. Doing this, as Pablo explains it, "simplifies the system hierarchy, and removes a common source of annoying-to-debug issues. It aggregates all vendor supplied system resources in a single place. So it can be very easily mounted read-only or over the network, backed up, etc.". Besides that almost every other Linux distribution is doing it, systemd requires it (we currently patch this out in pmOS), and it will be needed for immutable postmarketOS.
In postmarketOS, /usr merge is reaching its final implementation stage where we are recommending experienced edge users to do the switch. We are also preparing to automatically switch all remaining edge users over to merged /usr on 2025-08-27. The transition has been tested for some months now, so in theory users shouldn't notice anything different after merging. If you would like to help testing before the final merge period or just want to try out the newest stuff, follow the steps for testing.
The msm-firmware-loader was upgraded to use /run instead of /lib/firmware to comply with the usr-merge and prevent potentially being under a read-only directory where the script would fail to mount the msm-firmware (!21, !6824, !6825).
All of this wouldn't have been possible without the tireless work of the whole team (!6754, !2637) and beyond, so thanks to Pablo, Clayton, Ariadne, Aster, Achill, Brady, Bartłomiej, Jane, Oliver, Rob, Barnabás and everybody else who helped out!
Hardware testing automation
Our hardware testing automation project has seen some exciting progress:
On the hardware side, the first revision PCBs have arrived. As it is usually the case with PCB designs, each individual part now needs to be verified to ensure it works as intended before making the next iteration of the PCB. It is great to see this moving forward, thanks Federico and ncorna!
On the CI side, a few new MRs have made it in to test generated artifacts from postmarketos-mkinitfs and boot-deploy in CI-tron as well as adding related helper jobs and getting pmaports ready (!17, !63, !81, !6659). Thanks Martin R., Pablo!
pmbootstrap
Iterating over files in pmaports is now significantly faster. "I've seen this delay be upwards of 30 seconds or more in some cases. With this change, there's no observable delay when searching for packages in my local pmaports directory" (!2648, !2653). Thanks Clayton, MeexReay!
pmbootstrap now displays a warning when systemd is enabled and the selected kernel version is supposedly not supported by systemd (!2647, !6781): "WARNING: Kernel version 3.18.140 is lower than systemd's minimal requirement (5.14). Choosing systemd may result in non-bootable system. Get more information for systemd requirements at https://github.com/systemd/systemd/blob/main/README". Thanks Anri!
After the downstream ports split, we were able to only disable ext4's metadata_csum for downstream and archived ports (as some of them don't support this feature) instead of doing it for all devices (!2616, !2640). Thanks Stefan!
The Android bootimg parsing code now extracts the correct platform and subtype from dt.img headers from dtbtool-exynos. "For most devices these values are 0x50a6 and 0x217584da, respectively, but for some they have other values." (!2638). Thanks Henrik!
The code for generating cross compiler GCC packages has been adjusted to refactoring in Alpine. "[...] with the new method the gcc cross packages don't immediately break anymore when gcc gets changed in Alpine." (!2521). Thanks Oliver!
Various small fixes and improvements (!2610, !2614, !2617, !2618, !2619, !2621, !2622, !2626, !2627, !2628, !2634, !2639, !2641, !2642, !2643, !2644, !2646, !2651, !2655, !2656). Thanks Henrik, Anri, Luca, Stefan, Oliver, Pablo, Hugo!
New device ports
We are excited to announce that the following devices have been ported:
- Fairphone (Gen. 6) (!6715): Continuing the success of Fairphone ports created in pmaports on release day. Thanks Luca!
- Clockwork Tech ClockworkPi uConsole Kit Radxa CM5 (!6580): A fun and small portable device. Thanks Antoine!
- Apple iPhone X (Global) (!6642): The third, and most modern, iPhone version to hit the repos. Thanks Nick!
- Lynx R1 (!6748): The first Virtual Reality headset being supported in postmarketOS. Thanks Alicja!
- Xiaomi Mi Mix 3 (!6610): Another device based on the Qualcomm Snapdragon SDM845 chip, meaning mainline and quite good device support on day 1. Thanks Noi!
- ASUS Vivobook S 15 (!6578): Yet another Qualcomm laptop using a shared kernel. Thanks binarycraft007!
- The Amlogic Generic AArch64 TV Box port has gained support for the P281 reference board (!6771). Thanks Ferass!
New generic ports
All Apple devices supported by postmarketOS, with the exception of the Apple Tonga (M1) are now supported by the Apple Generic iDevice port (!6733), reducing the overall maintenance and simplifying the work for users! Thanks Aster and Nick!
Many Qualcomm development boards are now supported by the Qualcomm RBx generic package (!6650). Thanks Casey!
A new
postmarketos-qemu-commonpackage contains common config shared between all qemu "devices" (!6508). Thanks Clayton!
Kernel packaging
As usually here is the long list of kernel packaging related merge requests. The list below only has the names who made the merge request, but our thanks also go out to everybody who contributes in the git repositories that are packaged there, or who contributes in another way such as testing or reviewing. Without you this would not be possible!
- linux-postmarketos-marvell: upgrade to 6.15.0 (!6586). Thanks ΞЖKƆ/QVH!
- linux-postmarketos-qcom-sc7280: upgrade to 6.15.0 (!6577). Thanks Luca!
- linux-postmarketos-qcom-sm6350: upgrade to 6.15.0 (!6576). Thanks Luca!
- linux-postmarketos-qcom-sm7125: Upgrade to 6.14.7 (!6591). Thanks Nikroks!
- linux-postmarketos-qcom-laptop: upgrade to 6.15 (!6414). Thanks Clayton!
- linux-clockworkpi-uconsole-cm4: upgrade to 6.12.30 (!6582). Thanks Antoine!
- linux-postmarketos-mediatek-mt8183: fix Wayland compositors AFBC issue (!6589). Thanks Icenowy!
- linux-next: msm8960: expressatt: Enable Rust (!6541). Thanks Rudraksha!
- linux-postmarketos-qcom-msm8930: update to 6.15.0_rc7, fix building (!6629). Thanks User0!
- linux-postmarketos-qcom-msm8953: upgrade to 6.15.0-r0 (!6631). Thanks Barnabás!
- kconfigcheck: add missing option dependencies (!6641). Thanks Clayton!
- linux-postmarketos-qcom-msm89x7: upgrade to 6.15-r0 SDM439, venus, sensors, modem and more (!6633). Thanks Barnabás!
- kconfigcheck: add UDMABUF to default kconfig (!6167). Thanks Clayton!
- (edge) linux-postmarketos-qcom-sdm670: upgrade to v6.15.2 (!6649). Thanks Richard A.!
- kconfigcheck: minimum kernel version for UDMABUF (!6666). Thanks Sergey!
- linux-postmarketos-mediatek-mt8173: upgrade to 6.15.2 (!6664). Thanks Adam!
- linux-postmarketos-exynos7870: upgrade to 6.15 (!6645). Thanks methanal!
- linux-postmarketos-qcom-msm8226: enable missing kconfig options (!6673). Thanks Bart!
- {linux-radxa,device-clockworkpi-radxa-cm5}: upgrade to 6.1.115, add akms module subpackage (!6620). Thanks Antoine!
- device-beelink-gt1: drop linux-edge (!6593). Thanks ΞЖKƆ/QVH!
- device-radxa-zero: switch from linux-edge to linux-postmarketos-amlogic (!6592). Thanks ΞЖKƆ/QVH!
- linux-postmarketos-qcom-msm8226: upgrade to 6.14.8 (!6640). Thanks Luca!
- linux-postmarketos-qcom-msm8974: upgrade to 6.14.6 (!6639). Thanks Luca!
- device-*: switch from linux-edge to linux-stable (!6590). Thanks Achill!
- linux-postmarketos-mediatek-mt8173: upgrade to 6.15.3 (!6683). Thanks Adam!
- device/downstream/*: move or fix some kernels with 404 sources (!6675). Thanks Luca!
- device/downstream/linux-*: build fixes (!6670). Thanks Luca!
- device/community/linux-postmarketos-qcom-sdm845: upgrade to 6.16-rc2 (!6691). Thanks Casey!
- linux-postmarketos-qcom-msm8974: upgrade to 6.15.2 (!6685). Thanks Luca!
- linux-postmarketos-mediatek-mt8173: remove patch (!6517). Thanks Adam!
- linux-postmarketos-qcom-sdm845: upgrade to 6.16-rc2-4 (!6724). Thanks Noi!
- kconfigcheck: add netmount category to support NFS better (!6537). Thanks Willow!
- linux-postmarketos-allwinner: enable NFS over Kerberos security (!6533). Thanks Willow!
- linux-postmarketos-qcom-sc7180: Update maintainer, bump to newest LTS (!6740). Thanks Alicja!
- linux-postmarketos-exynos5: update to 6.12.36 (!6756). Thanks Henrik!
- linux-pine64-pinenote: upgrade to 6.15.5 (!6757). Thanks Antoine!
- Merge mt8183 and mt81xx kernels into mt81 (!6552). Thanks Brady!
- linux-postmarketos-allwinner: upgrade to 6.15.6_git20250710 (!6764). Thanks Arnav!
- linux-google-nyan: switch to -Os and enable xz compression for modules (!6765). Thanks Rob!
- linux-postmarketos-qcom-sc7180: Re-enable internal USB HUB (!6788). Thanks Alicja!
- linux-postmarketos-qcom-msm89x7: upgrade to v6.15.7-r0 SDM429 (!6809). Thanks Barnabás!
- linux-google-nyan: take over maintainership (!6782). Thanks Rob!
- linux-postmarketos-qcom-msm8953: shorten LOCALVERSION to -msm8953 (!6736). Thanks Luca!
- linux-postmarketos-qcom-msm8226: upgrade to 6.15.2 (!6684). Thanks Luca!
- linux-postmarketos-mediatek-mt8173: upgrade to 6.15.8 (!6823). Thanks Adam!
- linux-samsung-j4lte: 3.18.140-r1: zstd & Docker support (!6716). Thanks Hendra!
systemd
systemd has been upgraded to 257.7 (!9, !10, !6581, !6717, !6721). Thanks Jane, Achill!
The systemd bootstrap logic has been replaced with a systemd-stage0 package: "The repo bootstrap logic has worked well enough in the initial systemd bringup. But we have decided to replace the approach of building packages multiple times during the repo_bootstrap with building each package only once and adding -stage0 packages where necessary (currently only a systemd-stage0 package)" (!6440, !2588). Thanks Oliver!
systemd support has been added to SXMO (!5831), Mate and XFCE4 (!6668). Thanks Anjan, Rob!
BPF support was enabled in our systemd packaging (and for the kernel side in linux-postmarketos-qcom-laptop) to support unprivileged systemd-nspawn (!6637, !6708). To make this possible we also decided to disable building systemd for armhf for now, as this architecture is missing the bpftool dependency and we currently can't make installing it optional only for armhf (!6710, #2618). Thanks Clayton!
systemd-enabled packages have been upgraded (!6606, !6607, !6680, !6686, !6701, !6725, !6729, !6734, !6735, !6741, !6742, !6749, !6762, !6813, !6817). Thanks Clayton, and, Achill, Achill, Oliver, Bart!
Various improvements / additions for systemd service files (!6585, !6657, !6663, !6723, !6755, !6766, !6803). Thanks binarycraft007, Biswapriyo, Federico, George, Henrik, LEdoian, Val!
Various smaller systemd related improvements and fixes (!6566, !6573, !6598, !6614, !6654, !6658, !6669, !6752, !6761, !6769, !6811). Thanks Antoine, Biswapriyo, Clayton, Achill, Oliver, Bart!
pmaports
Plasma Camera 2.0.0 has been released, which "ports the application to use libcamera as the backend for interfacing with cameras, finally allowing for it to be used on Linux mobile devices (such as the OnePlus 6)." Following this change, the Plasma based UIs were adjusted to use Plasma Camera instead of GNOME Snapshot in new installs (!6780). Furthermore a config for the Google Pixel 3a has been added (!6791). If you want to learn more about this and/or see more of the cute dog plush, read "A libcamera port of Plasma Camera" and "Plasma Camera Porting to libcamera". Thanks Devin, Andrew, Bart!
Phosh now uses the more feature-full Stevia on-screen-keyboard instead of squeekboard (!6596, !6605). See the edge post if you want to keep using squeekboard. Stevia supports word completion, character popover and a lot more. We configured Stevia to show arrow keys in the terminal (!6609). Thanks Guido, Achill, Stefan, Oliver!
The Samsung Galaxy S9 has been moved to the community category of devices (!6493), and has continued receiving maintenance updates (!6638, !6692). Thanks Dzmitry!
Modem has been enabled for the MSM8917 (!6774). Thanks Barnabás!
msm-firmware-loader 1.7.0 has fixed an important bug that resulted in Wi-Fi not working. It has been backported to v25.06 (!6799, !6800). Thanks Barnabás!
The Raspberry Pi support has seen some improvements. Since the release of boot-deploy 0.19.0 (!6656), it is now possible to generate the boot files (!80) that the Raspberry Pi firmware expects automatically, instead of carrying copies of them (!6630). In addition, booting on the Raspberry Pi 3 has been fixed (!6731, !2632). Thanks Henrik, Clayton, and dddsnn!
The ClockworkPi uConsole has seen multiple maintenance improvements and generic upgrades, now booting in at least the Raspberry Pi Compute Modules 3, 4, and 5 (!6597, !6621, !6604, !6760). Thanks Antoine and Sample!
The PINE64 PineNote can now use the waveform binaries provided in the device, resulting in a smoother and more accurate experience when using the panel. In addition, the kernel and u-boot packages have seen multiple version bumps (!6667, !6796, !6815). Thanks Antoine!
Suspend isn't always blocked when audio is playing anymore as this caused problems. Modern audio player software / call programs etc. should "inhibit" themselves to prevent suspend instead (!6612, !6682). Thanks Clayton!
Rules for detection of vibration motors have been integrated upstream into feedbackd, allowing to drop a lot of configuration in pmaports (!6695). Thanks Luca!
New Plasma Mobile installations now present a more beautiful default screen with some default applications, like Angelfish or Plasma Dialer (!6786). Thanks Devin!
tuned-ppd now gets installed in new installations as power profile management daemon instead of older and less generic power-profiles-provider (!6599). The new tuned-ppd has better support for non-Intel/AMD devices (power-profiles-provider is just using a placeholder driver there). Thanks Adam!
postmarketos-ui-sway is now using bemenu instead of dmenu (!6697) and a new Sway configuration for the Nokia N900 has been added (!6714). Thanks sicelo!
The crossdirect method now runs archivers natively (!6763): "Run native binaries for extracting / packing various archives if they are installed in the native chroot when using the crossdirect compilation method, instead of having them go through QEMU. The resulting extracted/packed files should always be the same but this is significantly faster." Thanks Oliver!
Various smaller fixes and improvements (!6329, !6419, !6556, !6583, !6584, !6587, !6594, !6595, !6600, !6603, !6608, !6611, !6616, !6617, !6619, !6622, !6624, !6625, !6626, !6627, !6628, !6632, !6634, !6635, !6636, !6644, !6647, !6651, !6652, !6653, !6655, !6660, !6671, !6672, !6674, !6676, !6678, !6679, !6688, !6689, !6699, !6706, !6718, !6719, !6720, !6722, !6737, !6744, !6746, !6747, !6753, !6759, !6770, !6772, !6773, !6776, !6778, !6779, !6784, !6787, !6805, !6808, !6810, !6814, !6816, !6828). Thanks Jens, Alexey M., Alistair, André, Antoine, binarycraft007, Clayton, Achill, Ferass, GoldenVadim, Henrik, Anri, Aster, Rob, Luca, Florian, Stefan, Oliver, Shinjo, Bart, Richard A., Robert M., Paul, sicelo, Sergey, Nikita, Brady!
buffybox
Vladimir has continued improving our low-level suite of graphical applications that is buffybox and cleaning up the project.
Big improvements:
- Update LVGL, the low-level UI toolkit, from 9.2.2 to 9.3.0 (!59).
- Improve the rotation detection logic for terminals, so that it does not require configuration (!60). This was done after an initial implementation required being reverted (!56, thanks Johannes!).
- Changes in the terminal status (like clear, font change) no longer break rendering, improving both systemd integration and the development experience (!58).
…as well as small but important fixes:
- Fix a potential buffer overflow (!61).
- Fix a hang where graphics backends might not be available (!57).
Thanks Vladimir for the patches and Johannes for all the reviews!
Artwork and homepage
PastelSolitude shared a very cute mascot idea on Fedi. "For fun I wanted to try coming up with my idea for a postmarketOS mascot. (this is totally unofficial btw! I hope folks from @postmarketOS dont mind.) I made the initial sketch in Krita, but then decided to finally give Inkscape a try, took me whole weekend but it's here! Robot bnuuy.
Also shout out to @RannyBergamotte who came up with the cute little stick arm version of pmOS logo, I had to include it! 💚" — No we don't mind. We don't mind at all. This is amazing, thank you very much PastelSolitude!If you ever wondered how 3D printed cat ears with postmarketOS/NixOS/Asahi logos for ears looked like, have a look at Richard G.'s Mastodon post!
Our amazing recurring artwork contributor dikasp has made a new wallpaper "Mondew" (!64). Thanks dikasp!
Pronouns were added to all the CC and TC member's bios (!407, !4). Thanks Pablo and all the team members!
Various homepage improvements (!372, !403, !406, !410). Thanks Clayton, Ferass, Jane, Pablo, Paul!
Misc
The Xiaomi Redmi 4 Prime wiki page now explains a new method for dualbooting with Android. Thanks WinDos6.22!
Various small changes across various repositories (!129, !1, !20, !2, !2, !3, !3, !3, !76, !77, !78, !79, !82). Thanks Adam, Ferass, Luca, Stefan, Pablo, Sertonix, uvraj!
Events
Anjan at FOSSY showing postmarketOS running on a Pixel 3a and SHIFT6mq as well as Clayton's Pinebook Pro running an immutable install of pmOS.
Ranny has been working on maker chips for DEF CON 33: "They are a 3d printing enthusiast thing basically, incidentally also poker-sized, but 3d printing people make them to exchange, kinda like art cards or hex stickers. The intro to this video goes a bit more over them if you're more curious."
This weekend FOSSY 2025 has been going on in Portland, OR USA (July 31st - Aug 3rd). Thanks to Clayton and Anjan for representing postmarketOS there with a table and for co-organizing the mobile track! Clayton: "someone had a vizio TV that broke last week, so they ripped out the boards and brought them to me yesterday and asked if I could install pmOS on it 🤣"
DEF CON 33 is coming up from Aug 7 - 10th in Las Vegas, NV USA and we will be represented by Ranny who writes: "If there are people going who would be willing to lend their postmarketos device to show off at the table, that'd be really well appreciated! Also if there are any volunteers to run the table a few occasional moments here and there, that'd also be amazing! [...] If so let me know either by replying/DM'ing me here, or write in the relevant issue on gitlab or contact through my email."
FrOSCon 20 will happen from Aug 16 - 17th in Sankt Augustin, Germany, with two talks "Bringing distros to Android phones with U-Boot and EFI" (Casey) and "postmarketOS - Digital Independence in Your Pocket" (Luca) back-to-back, a FOSS on Mobile stand where we collaborate with our friends from Mobian and Phosh as well as a FOSS on Mobile project room (what exactly will happen there is undecided as of writing, but probably spontaneous hacking sessions, lightning talks and/or bring your own device and we try to flash something). If you are coming and want to show something in the devroom, there's a CfP. For discussions join #froscon-linux-mobile.
- Later this year KDE Akademy 2025 (Sept 6th-11th, Berlin, Germany) and Linux Day 2025 - Palermo (Oct 25th, Palermo, Italy) will also take place!
Help wanted
After the recent merge of GCC 15 into Alpine Linux edge, a lot of packages are failing to build. If you have the skills to resolve basic compiler errors, consider helping out in #17311.
You can send us topics to include in the next blog post by commenting in: #207. Also comment there if you are interested in writing parts of the next monthly blog post, we are in the process of distributing the work among more people.
Clayton is crowdfunding a used M2 MacBook for postmarketOS development:"My current ARM laptop can't safely run VMs (have to choose between virtualization or battery monitoring 😅). Daily-driving new hardware has helped me improve other ports (e.g. ThinkPad X13s), so this would help me work more efficiently and advance the M-series port in pmOS!"
If you appreciate the work we're doing with postmarketOS and want to support us, consider contributing financially via OpenCollective.




