Mkosi – Build Bespoke OS Images

56 leetrout 16 7/16/2025, 4:14:20 PM mkosi.systemd.io ↗

Comments (16)

jauntywundrkind · 12h ago
Does seem to support cross-architecture image building, which is a feature that's kept me on Debian's multistrap and now mmdebstrap.

I should give this a go!

The README's reference page has some good write-ups et cetera! There's a good "re-introduction" on Lennart (creator of systemd, mkosi) site, from the current maintainer.

https://github.com/systemd/mkosi?tab=readme-ov-file#referenc... https://0pointer.net/blog/a-re-introduction-to-mkosi-a-tool-...

NewJazz · 12h ago
I've been meaning to try this other tool

https://github.com/osbuild/bootc-image-builder

jordemort · 9h ago
I've been having great success with this one at my day job. Being able to apply all the container workflows to VM images has been a boon.
deanputney · 8h ago
Does this work for Raspberry Pi? Say for example I wanted to make an image that would auto-connect to my Tailscale network, or pre-install some software, would this be able to achieve that?
klysm · 4h ago
I've checked on this several times over the years, and I think the answer will probably be no for a long time, or forever. The RPi boot process is a bit arcane and specific. Systemd's philosophy seems to want to target the 95% use case, but maybe the sheer size of the RPi sphere will provide enough pressure.
sl-1 · 7h ago
I use [pi-oven](https://github.com/keichi/pi-oven) for my raspberry images. Not perfect, but kind of works and removes a lot of hassle for the provisioning.

Could not quickly find out from the project page an example on how to bake rpi images with mkosi, but the descriptions do point towards somewhat similar use case :shrug:

klysm · 4h ago
I really wish this worked for raspberry pi
miladyincontrol · 10h ago
Yeah, systemd's particleOS relies on it. Pretty neat stuff
mring33621 · 10h ago
What's the use-case for this?
af78 · 7h ago
It is used by the systemd team to test systemd on a bunch of distros.

https://github.com/systemd/systemd/blob/main/.github/workflo...

mhitza · 9h ago
Most likely context I'm going to try it is in a systemd-nspawn context. Lightweight process namespace ("containers") closer to the native modern linux server runtime (systemd all the way).
its-summertime · 9h ago
one image to deploy mostly without additional tooling on any systemd-based OS (which mounts the image and integrates the units from it), on a VM (just use it), or on bare metal (probably needs to be built on a full image but still can just use it assuming that is the case).
pmarreck · 11h ago
is this another case of "something that nix already definitively solves, but for the rest of us"?
bsammon · 10h ago
Or "something that nix already solve, but with documentation"
bketelsen · 9h ago
Normally I'd nod and smile at the nix documentation joke, but mkosi's documentation is the man pages, or the man pages.
jraph · 9h ago
It seems quite well written and easy to follow.