Coming soon to #postmarketOS Duranium...
System extensions!
| Web | https://0pointer.de/blog/ |
| GitHub | https://github.com/poettering |
| https://www.linkedin.com/in/lennart-poettering/ |
Coming soon to #postmarketOS Duranium...
System extensions!
Age verification clearly doesn't belong into #systemd. We should have never merged this. Instead this should be incrementally added to the kernel itself. I'm doing my part:
https://lore.kernel.org/all/20260401-i-hope-someone-believes-this-is-real-04f24e03944e@brauner
I just finished my #systemd260 series of posts. And I now also prepped a blog story linking to every single one of them here:
https://0pointer.net/blog/mastodon-stories-for-systemd-v260.html
Make sure to stay tuned for the #systemd261 series, most likely starting already in a few weeks!
The last remaining step, i.e. #2 I am currently working on.
Once that's in place an interactive OS installer could then just install an OS very cleanly, very robustly, and very quickly via 4 Varlink IPC calls. Yay!
…API for it. This is useful as a backend for OS installers.
To provide a bigger picture: in my view of the world an OS installer does four things:
1. Stream in a /usr/ tree and very few auxiliary partitions via systemd-repart
2. Install a suitable UKI kernel image in the ESP or XBOOTLDR
3. Install systemd-boot as boot loader in the ESP
4. Configure a few basic parameters for the new installation via systemd-creds.
Of these 4 steps, #1, #3 and #4 now are accessible via nice Varlink APIs.
2️⃣1️⃣ Here's the 21st and last post highlighting key new features of the recently published v260 release of systemd. #systemd260 #systemd
If you have been following this series of posts I am sure you recognized some repeating themes. One of them is the progressing Varlinkification of systemd's functionality. The last item on my list of features to post about for v260 is another one in this theme:
"bootctl install" is what gets systemd-boot installed in your ESP. With v260 there's now a Varlink…
…which is enough to run a full OS inside a system service. Yay!
And not just that: it also works unprivileged, i.e. it's enough to also run a full OS with 64K UIDs from a user controlled directory tree. Yippieh yay!