Package: debian-policy Version: 4.6.0.1 Severity: wishlist We now have two implementations of the D-Bus well-known system bus available in Debian:
* dbus, the portable reference implementation * dbus-broker, a Linux-specific reimplementation so it seems like a good time to introduce {default-,}dbus-system-bus virtual packages, mirroring {default-,}dbus-session-bus. At the moment, dbus is the default for all architectures. It is possible that dbus-broker might take over as the default on Linux architectures in some future release (but it is explicitly not portable, so dbus will probably always be the default on kFreeBSD and Hurd, similar to how we choose dbus-user-session vs. dbus-launch). Packages depending on "dbus" can currently count on having most aspects of the reference implementation available (except for the session bus, which requires either dbus-user-session or dbus-launch), but I would prefer to move towards packages explicitly declaring a dependency on one or more of: * default-dbus-system-bus | dbus-system-bus: the well-known system bus, as required by e.g. Avahi, polkit, udisks2 * dbus-daemon: ability to run the dbus-daemon(1) and dbus-run-session(1) executables, or rely on having the D-Bus machine ID /var/lib/dbus/machine-id (dbus-session-bus and dbus-system-bus both imply some sort of machine ID, but it might be systemd's /etc/machine-id) * dbus-bin: ability to run assorted CLI tools such as dbus-send(1) and dbus-monitor(1) Proposed wording attached. Thanks, smcv
>From cc65839b65e9a41ca0e9e633ac32a085cec66fa2 Mon Sep 17 00:00:00 2001 From: Simon McVittie <s...@debian.org> Date: Fri, 29 Oct 2021 10:58:13 +0100 Subject: [PATCH] virtual-package-names-list: Add dbus-system-bus, default-dbus-system-bus This is the same as dbus-session-bus, but for the well-known system bus described in the D-Bus Specification[1]. dbus, the reference implementation of D-Bus, Provides these since bullseye. dbus-broker, an independent reimplementation, also Provides dbus-system-bus in unstable. The mention of "including service activation" is intended to make it clearer that some implementation of /usr/share/dbus-1/system-services/ activation is required, for example via dbus' setuid helper and conditional handoff to systemd, or dbus-broker's unconditional handoff to systemd. [1] https://dbus.freedesktop.org/doc/dbus-specification.html Signed-off-by: Simon McVittie <s...@debian.org> --- virtual-package-names-list.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/virtual-package-names-list.yaml b/virtual-package-names-list.yaml index 2a9857a..eb5ace2 100644 --- a/virtual-package-names-list.yaml +++ b/virtual-package-names-list.yaml @@ -118,6 +118,10 @@ virtualPackages: description: provides the D-Bus well-known session bus for most or all user login sessions - name: default-dbus-session-bus description: Debian's preferred implementation of dbus-session-bus, possibly architecture-specific + - name: dbus-system-bus + description: provides the D-Bus well-known system bus as a system service, including service activation + - name: default-dbus-system-bus + description: Debian's preferred implementation of dbus-system-bus, possibly architecture-specific - name: logind description: an org.freedesktop.login1 D-Bus API implementation (versioned) - name: default-logind -- 2.33.1