Package: systemd-container
Version: 249.6-1
Severity: minor

Dear developers,

systemd-container lists "default-dbus-system-bus | dbus-system-bus" as a dependency. This is usually correct since APT is smart enough to resolve the dependency, but that's not the case with debootstrap.

Since systemd-container is usually needed in systemd-nspawn containers, it should be installed at debootstrap time, but currently, running debootstrap with "--include=systemd-container" fails because no D-Bus implementation is pulled in as dependency. It used to work in versions older than 249.6-1 (before the dependency was changed from the real "dbus" package to "default-dbus-system-bus | dbus-system-bus" virtual packages, so it may qualify as a regression). Using "--include=systemd-container,dbus" (or dbus-broker) works.

Could the real dbus package (since it's currently the default D-Bus implementation in Debian) be listed as an alternative dependency (and ideally, in bookworm too) ?

Note 1: one could think that it's debootstrap's fault for not resolving dependencies on virtual packages; indeed, it has already been reported several times (#878961, merged with #827602 and #931760; as well as Launchpad #86536) unfortunately never fixed yet; but, IMHO, since systemd-container is usually needed in systemd-nspawn containers, and (except for the host) is usually installed via debootstrap, it makes it kind of a special case, in the sense that systemd (as a whole) should take care that systemd-nspawn containers can be built and started easily.

Note 2: dbus-broker has the reputation of being better than dbus on various points, and could be considered as a clever choice for containers, but systemd-container currently lists "default-dbus-system-bus" as first alternative, which is provided by "dbus".

Regards,

--
Raphaël Halimi

Reply via email to