On Fri, 2021-12-24 at 10:05 +0000, Simon McVittie wrote:
> Sending this to -devel since Sean pointed out that new general-
> purpose
> virtual package names are meant to go there, not just to a Policy
> bug.
> 
> On Fri, 29 Oct 2021 at 11:12:07 +0100, Simon McVittie wrote:
> > 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)
> 
> A patch against Policy can be found on
> https://bugs.debian.org/998063,
> but the important content is:
> 
> - 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
> 
> This split is already implemented in bookworm, and a few packages
> already
> depend on the new virtual package names.
> 
> dbus in bullseye had a Provides: for default-dbus-system-bus,
> dbus-system-bus, dbus-daemon and dbus-bin in preparation for the
> split,
> so this dependency change can safely be backported from bookworm to
> bullseye-backports without changes (but will need to be reverted in
> the
> rare case of a backport from bookworm to buster-backports-sloppy).
> 
> On the Policy bug, Adam Borowski queried whether it would be better
> to
> repurpose the dbus package name as the virtual package and use a new
> package name for the reference implementation, similar to the way the
> sysvinit package name was repurposed to mean "an init system" during
> the
> transition to systemd, with the real SysV init renamed to sysvinit-
> core. I
> think this would not have been correct, because packages that depend
> on
> dbus have historically been able to rely on the combined
> functionality
> of what we're now calling dbus-system-bus, dbus-daemon and dbus-bin,
> and should continue to be able to do so.
> 
>     smcv
> 
With my dbus-broker maintainer hat on, I fully agree with your proposal
and reasoning w.r.t. package names. Thank you very much for your work!
-- 
Kind regards,
Luca Boccassi

Attachment: signature.asc
Description: This is a digitally signed message part



Reply via email to