systemd megathread

Read before commenting: https://postmarketos.org/blog/2024/03/05/adding-systemd/

Demo images

Demo images are currently located here: https://mirror.postmarketos.org/temp.fdcc091b56f5/

There are plenty of known issues with these demo builds, and no doubt plenty more unknown. Let's discuss them as well as other architectural/technical stuff here.

How to build your own systemd-based postmarketOS images

See https://wiki.postmarketos.org/wiki/Systemd

Next steps for integrating systemd into postmarketOS

  • pmbootstrap (systemd branch): support pmb:systemd-never option in postmarketos-ui-* packages for UIs where maintainers don't support systemd (e.g. Sxmo)
  • pmbootstrap: make MR, get current patches from systemd branch reviewed and merged into master (pmbootstrap!2273 (merged))
  • bpo: do pmbootstrap repo_bootstrap systemd before building any package, if the branch contains the postmarketos-base-systemd package and make it so that all bootstrapped packages get uploaded and added to the new repository at once (usually only one package at a time) (build.postmarketos.org#133 (closed))
  • bpo: create a systemd staging repository (with systemd + rest of pmaports combined as intermediate step), by rebasing the systemd branch on top of current master
    • repo bootstrap through bpo for x86_&4
    • repo bootstrap through bpo for aarch64
    • repo bootstrap through bpo for armv7
    • build entire branch on bpo for x86_64
    • build entire branch on bpo for aarch64
    • build entire branch on bpo for armv7
  • move instructions for building images to the wiki
  • pmaports (systemd branch): add pmb:systemd to all KDE and GNOME based UIs, add pmb:systemd-never to Sxmo's UI packages (see !4894 (closed))
  • pmbootstrap: extend to build the systemd dir of pmaports separate from the main postmarketOS binary package repository (pmbootstrap#2328 (closed))
  • bpo: extend to build the systemd dir of pmaports separate from the main postmarketOS binary package repository (pmbootstrap#2328 (closed))
  • pmaports (master_staging_systemd branch): clean up
  • pmaports: make MR, get current patches from systemd branch reviewed and merged into master
  • pmaports: remove master_staging_systemd branch, which in turn removes the staging repository
  • bpo: build the systemd binary repository
  • bpo: build the first edge images with systemd for GNOME and KDE
  • wiki: add some documentation to https://wiki.postmarketos.org/wiki/Systemd

Afterwards:

  • Lots of bug fixes
  • the next release (probably v24.12 then) will branch from current master as usually, and will have systemd for KDE and GNOME based UIs

How to contribute

  • Make merge requests towards the master_staging_systemd branch of pmbootstrap / pmaports for now
  • Join the postmarketos-devel chat, let's discuss there! https://postmarketos.org/chat/
Edited by Casey