Podman + Distrobox
The Podman + Distrobox extension puts its own copy of Podman, Buildah, and Distrobox, with the networking and storage tools they use, over the copy that a Frostyard bootc image already has. Snow, Snowfield, Sundog, and Floe already ship these tools and their helpers in the image, so you do not need the extension to run containers. Every image carries the extension’s definition, switched off. The extension itself is not in the image: Updex turns it on and downloads it.
Before you start
Section titled “Before you start”You need:
- A Frostyard bootc image. Every image built on Base has
systemd-sysextandfrostyard-updex. - Root access to enable, update, and remove the extension.
- Network access to
https://repository.frostyard.org/ext/podman/. - Free space in
/varfor the image.
Podman + Distrobox has no published test results on Frostyard images yet. Try it on a machine you can spare first.
Enable Podman + Distrobox
Section titled “Enable Podman + Distrobox”See what Updex found, then enable the feature and download it now:
updex features list --component=podmansudo updex features enable podman --nowpodman appears as a component, with its feature disabled. The enable command
downloads the image, checks its checksum and signature, links it, and refreshes
the merge.
Check the merge and the commands that the extension adds:
systemd-sysext statuscommand -v podman buildah distroboxsystemd-sysext status lists podman, and each name prints a path.
There is no unit to check. The extension ships no service.
If enable --now exits with a refresh error (refresh_error in JSON), the
download worked, but the activation did not. If the output says
activation did not finish, the extension is merged, but users and groups can
be missing: reboot. Otherwise the merge state is unknown: reboot. A
sudo systemd-sysext refresh by hand does not create users and groups. Then run
the checks above again.
Use Podman + Distrobox
Section titled “Use Podman + Distrobox”Run podman, buildah, and distrobox from your own account. The extension also adds the container tools that Podman uses: aardvark-dns, catatonit, containernetworking-plugins, containers-storage, criu, crun, fuse-overlayfs, slirp4netns, and passt.
The Docker extension page says that running Docker next to another container engine on one host is not a supported setup.
Update, roll back, and remove
Section titled “Update, roll back, and remove”Check for an update, then install it:
updex features check --component=podmansudo updex features update --component=podmanUpdex downloads and verifies the new image, switches the link, deletes older versions, and refreshes the merge. See Manage system extensions for --no-vacuum, --dry-run, and the update timer. The refresh swaps /usr under the running system.
Roll back with sudo updex features rollback podman. It takes effect at the next boot. See Roll back.
Remove Podman + Distrobox:
sudo updex features disable podman --now --forceUpdex unmerges all extensions on the host, deletes the image, and merges the rest again. The extension’s copy goes, and the image’s copy stays. Removal does not touch /var or your home directory. Reboot when the command finishes. Without --force, Updex refuses while the image is merged.
What ships
Section titled “What ships”| Item | What you get |
|---|---|
| Package requests | podman, distrobox, aardvark-dns, buildah, catatonit, containernetworking-plugins, containers-storage, criu, crun, fuse-overlayfs, slirp4netns, passt |
| Commands | /usr/bin/podman, /usr/bin/buildah, /usr/bin/distrobox |
| Version | The image file name carries the podman package version, plus a +rN snosi revision when one is set |
| Image file | podman_<version>_<os>_<arch>.raw.zst; .raw.xz, .raw.gz, and .raw also work |
| Download | From https://repository.frostyard.org/ext/podman/, signature required (Verify=true), into /var/lib/extensions.d/ |
| Services | None |
Each build checks that podman, buildah, and distrobox are present in /usr/bin. A build that is missing one fails.
See also
Section titled “See also”- System extension catalog
- Manage system extensions
- Docker system extension
- pilothouse system extension
Sources
Section titled “Sources”Reviewed 2026-10-27; Updex facts reviewed 2026-10-30. snosi commit
b2858ca0222814c395cf8248db98f3e096d57dc9;
Updex v2.1.3 commit
2661e987faac986f2594d1d9bbbadf1bf3053f5b.
-
mkosi.images/base/mkosi.extra/usr/lib/sysupdate.podman.d/podman.feature -
mkosi.images/base/mkosi.extra/usr/lib/sysupdate.podman.d/podman.transfer -
Updex
docs/adr/0019-apply-merged-sysusers-and-tmpfiles-on-a-live-refresh.md(a live refresh runssystemd-sysusersandsystemd-tmpfiles --create; when the last refresh fails, the merge state is unknown; a refresh by hand does not runsystemd-sysusers)