PostmarketOS v25.06: The One with Systemd

4 months ago 2

postmarketOS v25.06 with various UIs on OP6T

This release is geared mainly towards Linux enthusiasts. We are working hard on stability improvements and automated testing, but if you expect Android or iOS levels of polish, then this is not for you yet.

Introduction

This is it, the one that adds systemd to postmarketOS! We have talked about the decision at length on this blog, make sure to read the initial announcement if this is the first time you are hearing about this. Thanks to Jane, Casey, Clayton, Achill, Jakub, Bryant, Stefan, Bart, Pablo, Oliver, Robert, Alexey M., Alistair, Devin, Aster, George, Luca, Bhushan, Dylan, Henrik, bjorn3, David H., Jens, Federico, Ferass, Sam and everybody else who has helped with making this possible. It was truly a team effort!

Software Stack

As always we target the most recent Alpine release. In case of v25.06 it is the excellent Alpine Linux 3.22.

User Interfaces (UIs)

Mobile UI Versions

  • GNOME 48 and gnome-shell-mobile 48.mobile.0 replace GNOME 47 and 46-mobile.1 from v24.12. With the new versions we get massive performance improvements with dynamic triple buffering and more, new fonts, notification stacking, window placement and input improvements and much more. Thanks to Jonas, Achill and all the GNOME contributors!

  • KDE Plasma Mobile 6.3.5 replaces version 6.2.4 from v24.12. This release has improvements for the task switcher, window placement, action drawer, quick settings, status bar, volume controls, manual screen rotation, a new traffic monitor in the Wi-Fi settings and major bug fixes regarding the lockscreen and dual-sim devices. The new chat page has gotten new UX as well. See the recent dev log post for details (search for 6.3). Thanks to Devin, Bhushan, Luis, Micah, Vlad, User8395, Sebastian, Bart and all the KDE contributors!

  • Phosh 0.47.0 replaces version 0.45.0 from v24.12. Between these releases, Phosh has gained support for setting a lockscreen wallpaper (which we have enabled in pmOS), quick settings improvements, searching in the file chooser portal and adjusting haptic strength in the settings. In postmarketOS we have changed the default on-screen-keyboard to Stevia. See the edge post if you want to keep using squeekboard. Stevia supports word completion, character popover and a lot more! Thanks to Guido, Stefan, Achill and all the Phosh contributors!

  • Sxmo stays on the fine 1.17.1 release. Unlike other UIs listed above, the pre-built images use OpenRC. With that being said you can build your own systemd-based Sxmo image by using pmbootstrap and applying some manual tweaks (which future Sxmo releases will have out of the box). Thanks to Anjan, Maarten, Willow, ArenM and all the Sxmo contributors!

Wallpaper

Once again we had a lot of fun browsing through the amazing wallpapers that dikasp created for postmarketOS, narrowed them down to a short list of only four and created a Mastodon poll where the final wallpaper was chosen. The winner is Evergreen with 164/330 votes and lovely comments like "because it's pmOS logo-themed" and "because I like triangles". Find previous wallpapers in the wiki. Thanks dikasp!

Other Notable Changes

Screenshot of os-installer

  • A new os-installer UI is now available, which has the primary use case of making installations on laptops, netbooks and convertibles easier. Grab a pre-built image or build your own one with this UI, flash it to a USB stick, boot it, and then create an encrypted installation on the internal storage. Thanks Clayton!

  • The v25.06 release includes mobile-config-thunderbird for the first time, which — you guessed it — can be used to turn the amazing desktop version of Thunderbird into a mobile friendly Linux Mobile app. Thanks Dylan!

  • mobile-config-firefox on the other hand has received many UI fixes and improvements as well as per-site user-agent spoofing to make e.g. YouTube use its proper mobile site. Thanks Danny, Peter and people working on furios-firefox-tweaks!

  • The openssh-client package is not installed by default anymore. Install it manually either with apk add openssh-client or as dependency of the development tools package postmarketos-dev (which also includes alpine-sdk, bash and completions, coreutils, etc.).

Devices

  • Initial camera 📷 support has been merged for the OnePlus 6 in !6291 and several MSM89x7 devices (Motorola Moto E5 Plus, Motorola Moto G5s, Xiaomi Redmi 3S, Xiaomi Redmi 4 Standard, Xiaomi Redmi 4A) in !6327, !6368. Thanks to Barnabás, Casey, DrGit, Joel, KiciukVasiliy, Robert, vldly, and everybody else who has helped with developing and testing, this is absolutely amazing!

  • MSM89x7: audio and charging support has been enabled for almost every device supported by this close-to-mainline kernel, flashlight and suspend support have been added for the pmi8950 (!6101, !6207). Thanks Barnabás!

  • Device ports with downstream kernels have been split into their own category. For the v25.06 release, we have built binary packages for devices in community and testing categories (both only have close-to-mainline ports now), but not in the downstream category as those are generally not that useful. If you need a specific downstream kernel in v25.06, feel free to make a merge request that backports the current version from edge. Thanks Luca, Stefan, Pablo!

  • Lots of kernel upgrades, improvements and bug fixes for all devices. Thanks to all device maintainers and contributors!

Thanks to all of our amazing device porters, and everybody who contributed!

  • ASUS MeMO Pad 7
  • Arrow DragonBoard 410c
  • BQ Aquaris X5
  • Fairphone 4
  • Generic x86_64
  • Google Chromebooks with x64 CPU
  • Google Gru Chromebooks
  • Google Kukui Chromebooks
  • Google Nexus 10
  • Google Oak Chromebooks
  • Google Pixel 3A
  • Google Pixel 3A XL new
  • Google Trogdor Chromebooks
  • Google Veyron Chromebooks
  • Generic Qualcomm MSM8953
    • Motorola Moto G5 Plus new
    • Xiaomi Mi A1
    • Xiaomi Mi A2 Lite
    • Xiaomi Redmi 4 Prime
    • Xiaomi Redmi 5 Plus
    • Xiaomi Redmi 7 new
    • Xiaomi Redmi Note 4
    • Xiaomi Redmi S2/Y2
  • Generic Qualcomm SM7150
    • Xiaomi Mi 9T / Redmi K20 new
    • Xiaomi POCO X3 NFC new
  • Lenovo A6000
  • Lenovo A6010
  • Lenovo ThinkPad X13s
  • Microsoft Surface RT
  • Motorola Moto G4 Play
  • Nokia N900
  • NVIDIA Tegra ARMv7
  • ODROID XU4
  • OnePlus 6
  • OnePlus 6T
  • PINE64 Pinebook Pro
  • PINE64 PinePhone
  • PINE64 PinePhone Pro
  • PINE64 ROCKPro64
  • Purism Librem 5
  • SHIFT6mq
  • Samsung Chromebook
  • Samsung Chromebook 2 11.6"
  • Samsung Galaxy A3 (2015)
  • Samsung Galaxy A5 (2015)
  • Samsung Galaxy Core Prime VE LTE
  • Samsung Galaxy E7
  • Samsung Galaxy Grand Max
  • Samsung Galaxy S III (GT-I9300 and SHW-M440S)
  • Samsung Galaxy S4 Mini Value Edition
  • Samsung Galaxy Tab 2 (7.0")
  • Samsung Galaxy Tab 2 (10.1")
  • Samsung Galaxy Tab A 8.0 (2015)
  • Samsung Galaxy Tab A 9.7 (2015)
  • Wileyfox Swift
  • Xiaomi Mi Note 2
  • Xiaomi Mi Pad 5 Pro new
  • Xiaomi Pocophone F1
  • Xiaomi Redmi 2

Device/UI Testing And Known Issues

A huge thank you to device maintainers and the testing team, and people who spontaneously decided to take part in testing this new release (#3754) and fixing bugs right before finalizing it! If you would like to join the fun next time, add yourself to the Testing Team. Note that if you added yourself there previously and now have a different nickname in our new GitLab instance, then you need to update your nickname on this wiki page.

While testing, audio issues on the OP6/6T were reported and fixed that may also affect other devices. If you have installed an early version of v25.06 that was built before the release was officially announced and you have audio issues, follow these two posts to have it fixed. If it does not work for you, reach out in the #postmarketos-audio chat or the issue tracker.

This release has GTK 4.18, which has dropped the old GL renderer. Notably this breaks the camera app Megapixels on the original PinePhone and Librem 5. Peter wrote a good blog post on this topic. MSM8916 and similar have OpenGLES 3.0 support and therefore can use the new renderer but are affected by driver bugs (see mesa#12634 and pmaports!5559).

The following issues are as of writing not yet resolved, help with fixing them is appreciated. See related issues for more information (workarounds etc.):

  • #3787 iio-sensor-proxy: delays shutdown on systemd installs
  • #4, #3613: qcom-msm8953: wifi is not working ootb
  • #3786 microsoft surface-rt wifi adapter not detected
  • #3788 Thinkpad X13s: internal microphone does not work
  • #3760 sddm screen distorted on google-kukui/krane w/ plasma-desktop/systemd

How To Get It

New Installation

Look at install postmarketOS and make sure to read the wiki page for your device.

Upgrade

We considered supporting an upgrade from OpenRC to systemd in our upgrade script, but then decided against it as such an upgrade path might introduce its own bugs and we would rather spend the time improving other parts of postmarketOS. So for this one-time scenario we ask you to please reinstall postmarketOS to get from OpenRC to systemd. Thank you for your understanding!

If you want to upgrade your v24.12 installation without switching to systemd, you can do that by following the usual upgrade to a newer postmarketOS release wiki article. If your installation is from 2022 or older, adjust your /etc/fstab.

The device packages for the Xiaomi SM7150 devices in the community category (xiaomi-davinci and xiaomi-surya) have been removed in favor of a generic device package. Migration requires manual intervention and, in most cases, also a reinstall from scratch. See the edge post for more information.

Powered by

A big thanks to everybody who contributed to postmarketOS, to Alpine or to any of the numerous upstream components we use — without you this would not be possible! ❤️

We would also like to thank NLnet and NGI Zero Core for funding most of the infrastructure and maintenance work that went into this release as well as a lot of the systemd related work. NLnet is funding a lot of great free software projects, including quite a few projects in the Linux Mobile world. If you would like to get your project funded, consider applying for a grant!

And what's next?

  • The next monthly blog post is scheduled for July 2025 (skipping June 2025 due to the v25.06 release).

  • As announced earlier, postmarketOS will get a shiny new name. Which one is not decided yet, but the form for sending in name ideas has been closed together with this release announcement. We have put a lot of thought into how we will figure out the new name, see PMCR0003 for details.

  • Members of the postmarketOS community and wider Linux Mobile scene can be found at various upcoming events:

If you appreciate the work we're doing with postmarketOS and want to support us, consider contributing financially via OpenCollective.

Read Entire Article