Mass bug filing: dependencies on dbus-glib
Quite a lot of source packages have Build-Depends on dbus-glib, or
produce binary packages with a Depends on it.
dbus-glib is a deprecated D-Bus library with some significant design
flaws, and is essentially unmaintained. I would like to minimize its use,
and eventually remove it from Debian. There will not be a version that
fixes its design flaws, because that would be a major compatibility break,
and any user of dbus-glib who is willing to port their application to a
newer, incompatible version should instead be porting their application
to a better D-Bus implementation such as GDBus.
For most purposes, the recommended replacement for dbus-glib is the
GDBus family of APIs in GLib, found in <gio/gio.h>. This does not
add an additional dependency, because dbus-glib already depends on a
sufficiently new version of GLib. A porting guide is available in the
GLib documentation: <https://developer.gnome.org/gio/stable/ch35.html>.
Practical examples of porting from dbus-glib to GDBus can be found in
the git history of most older GNOME applications.
Alternatives to GDBus, with different design emphasis and trade-offs,
include sd-bus (systemd's D-Bus implementation), QtDBus (Qt's D-Bus
API), and libdbus (the low-level reference D-Bus implementation).
Please contact the D-Bus mailing list <dbus at lists.freedesktop.org>
if you are unsure which D-Bus implementation is most suitable for
a particular package.
Some libraries expose dbus-glib as part of their API/ABI, in which
case removing the deprecated dependency requires breaking API/ABI
(telepathy-glib is a good example). For these libraries, maintainers
should talk to the dependent library's upstream developers about whether
the dependent library should break API/ABI and switch to GDBus, or
whether the dependent library should itself be deprecated.
In a few cases, the package uses the reference D-Bus library
libdbus for all D-Bus-related APIs, and only uses dbus-glib as a
way to connect libdbus to the GLib main loop: if the only functions
referenced from dbus-glib are dbus_connection_setup_with_g_main()
and dbus_server_setup_with_g_main(), then you are in this
situation. The recommended replacement in this case is to bundle
the dbus-gmain branch from the dbus-glib git repository,
for example as a `git subtree` or `git submodule`. For
example, dbus-python's GLib integration now works like this. See
<https://gitlab.freedesktop.org/dbus/dbus-glib/blob/dbus-gmain/README.md>
for more details.
Affected packages can be found in the attached source package list and
dd-list.
I intend to open bugs for this at normal severity. Please forward them
to the packages' upstream developers if there is not already an upstream
plan to escape from dbus-glib.
smcv
abiword
anyremote
ario
artha
at-spi2-atk
audacious
audacious-plugins
audtty
ayatana-indicator-application
bluez
bluez-tools
cairo-dock
cairo-dock-plug-ins
caja-extensions
caja-seahorse
cinnamon
cinnamon-control-center
cinnamon-session
cinnamon-settings-daemon
cluster-glue
compiz
compiz-boxmenu
conky
dbus-test-runner
dbusada
dee
desktopnova
dlt-daemon
efax-gtk
empathy
enchant
enchant-2
entangle
eom
fcitx-configtool
fcitx-fbterm
firefox
firefox-esr
folks
fprintd
freerdp2
freetuxtv
gconf
gimp
gjay
gmpc-plugins
gnome-flashback
gnome-phone-manager
gnome-screensaver
gpick
gpsd
growl-for-linux
gsm0710muxd
gthumb
guake-indicator
handbrake
hexchat
inkscape
k3d
kbdd
kerneloops
kmplayer
ladish
libaccounts-glib
libappindicator
libaudclient
libayatana-appindicator
libcryptui
libdbusmenu
libfm
libnet-dbus-glib-perl
liboobs
libopenusb
libunique
light-locker
lxappearance
lxsession
mangler
mate-applets
mate-control-center
mate-power-manager
mate-screensaver
mate-session-manager
mate-settings-daemon
mate-user-share
mp3splt
navit
netatalk
network-manager-strongswan
notify-osd
obex-data-server
ofono
ogmrip
osdlyrics
paprefs
parole
pidgin
pidgin-audacious
pidgin-awayonlock
pidgin-mpris
pinot
pommed
pyatspi
restorecond
seahorse-nautilus
sensors-applet
synapse
system-tools-backends
telepathy-farstream
telepathy-gabble
telepathy-glib
telepathy-haze
telepathy-idle
telepathy-logger
telepathy-logger-qt
telepathy-mission-control-5
telepathy-qt
telepathy-rakia
telepathy-ring
telepathy-salut
thermald
thunderbird
tiemu
torbrowser-launcher
ukui-control-center
ukui-power-manager
ukui-settings-daemon
urfkill
usbguard
vagalume
vdr-plugin-xineliboutput
vinagre
wmauda
worker
workrave
xboxdrv
xchat
xcowsay
xfburn
xfce4-pulseaudio-plugin
xfce4-screensaver
xfce4-session
xfce4-verve-plugin
xiphos
xwrited
zpspell
Adam Conrad <adconrad@0c3.net>
telepathy-glib (U)
Adrian Bunk <bunk@debian.org>
gconf
Adrian Heine <mail@adrianheine.de>
telepathy-ring (U)
Aigars Mahinovs <aigarius@debian.org>
dlt-daemon
Alberto Garcia <berto@igalia.com>
vagalume
Alessio Garzi <gun101@email.it>
guake-indicator
Alessio Treglia <alessio@debian.org>
ladish (U)
ogmrip (U)
Alf Gaida <agaida@siduction.org>
audacious-plugins (U)
Andreas B. Mundt <andi@debian.org>
tiemu (U)
Andreas Henriksson <andreas@fatal.se>
libunique (U)
Andreas Tille <tille@debian.org>
artha (U)
entangle (U)
Andrew Lee (李健秋) <ajqlee@debian.org>
libfm (U)
lxappearance (U)
lxsession (U)
Andrew Shadura <andrewsh@debian.org>
libaudclient (U)
Andrew Starr-Bochicchio <asb@debian.org>
notify-osd (U)
Andrey Rahmatullin <wrar@debian.org>
xboxdrv (U)
Andriy Grytsenko <andrej@rep.kiev.ua>
libfm (U)
liboobs
lxappearance (U)
lxsession (U)
system-tools-backends
Antoine Beaupré <anarcat@debian.org>
gmpc-plugins (U)
Ari Pollak <ari@debian.org>
gimp
gimp (U)
pidgin
Aron Xu <aron@debian.org>
fcitx-configtool (U)
fcitx-fbterm (U)
ukui-control-center (U)
ukui-power-manager (U)
ukui-settings-daemon (U)
Ayatana Packagers <pkg-ayatana-devel@lists.alioth.debian.org>
ayatana-indicator-application
libayatana-appindicator
Balint Reczey <balint@balintreczey.hu>
kerneloops
Balint Reczey <rbalint@ubuntu.com>
kerneloops
Bernd Zeimetz <bzed@debian.org>
gpsd
Bernhard Miklautz <bernhard.miklautz@shacknet.at>
freerdp2 (U)
Bilal Akhtar <bilalakhtar@ubuntu.com>
audacious (U)
audacious-plugins (U)
Birger Schacht <birger@rantanplan.org>
usbguard
Boyuan Yang <byang@debian.org>
osdlyrics
Brian Campbell <brian.campbell@editshare.com>
netatalk (U)
Carlos Maddela <e7appew@gmail.com>
seahorse-nautilus (U)
Carsten Schoenert <c.schoenert@t-online.de>
thunderbird
Chris Boot <debian@bootc.net>
netatalk (U)
Chris Lamb <lamby@debian.org>
seahorse-nautilus (U)
Chris Taylor <ctaylor@debian.org>
audacious (U)
audacious-plugins (U)
audtty
Christoph Goehre <chris@sigxcpu.org>
thunderbird (U)
Clément Hermann <nodens@nodens.org>
seahorse-nautilus (U)
Colin King <colin.king@canonical.com>
thermald
Craig Small <csmall@debian.org>
gjay
CrossWire Packaging Team <pkg-crosswire-devel@alioth-lists.debian.net>
xiphos
Cyril Brulebois <cyril@debamax.com>
compiz (U)
Cyril Lavier <cyril.lavier@davromaniak.eu>
audacious (U)
audacious-plugins (U)
Dafydd Harries <daf@debian.org>
empathy (U)
telepathy-gabble (U)
telepathy-glib (U)
telepathy-idle (U)
telepathy-logger (U)
telepathy-rakia (U)
Daniel Glassey <wdg@debian.org>
xiphos (U)
Debian Accessibility Team <pkg-a11y-devel@lists.alioth.debian.org>
at-spi2-atk
pyatspi
Debian Bluetooth Maintainers <pkg-bluetooth-maintainers@lists.alioth.debian.org>
bluez
Debian Bluetooth Maintainers <team+pkg-bluetooth@tracker.debian.org>
bluez
bluez-tools
gnome-phone-manager
Debian Cairo-dock Maintainers <team+pkg-cairo-dock-devel@tracker.debian.org>
cairo-dock
cairo-dock-plug-ins
Debian Cinnamon Team <debian-cinnamon@lists.debian.org>
cinnamon
cinnamon-control-center
cinnamon-session
cinnamon-settings-daemon
Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
xboxdrv
Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
enchant-2
folks
gimp
gnome-flashback
gnome-screensaver
libcryptui
libunique
vinagre
Debian HA Maintainers <debian-ha-maintainers@lists.alioth.debian.org>
cluster-glue
Debian Input Method Team <debian-input-method@lists.debian.org>
fcitx-configtool
fcitx-fbterm
Debian KDE Extras Team <pkg-kde-extras@lists.alioth.debian.org>
kmplayer
telepathy-logger-qt
telepathy-qt
Debian LXDE Maintainers <pkg-lxde-maintainers@lists.alioth.debian.org>
libfm
lxappearance
lxsession
Debian Mactel <team+pkg-mactel-devel@tracker.debian.org>
pommed
Debian Multimedia Maintainers <debian-multimedia@lists.debian.org>
audacious
audacious-plugins
handbrake
inkscape
ladish
ogmrip
Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
freetuxtv
ladish
libaudclient
ogmrip
Debian Netatalk team <pkg-netatalk-devel@lists.alioth.debian.org>
netatalk
Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
libnet-dbus-glib-perl
Debian PhotoTools Maintainers <pkg-phototools-devel@lists.alioth.debian.org>
entangle
Debian Privacy Maintainers <pkg-privacy-maintainers@lists.alioth.debian.org>
seahorse-nautilus
Debian Privacy Tools Maintainers <pkg-privacy-maintainers@lists.alioth.debian.org>
torbrowser-launcher
Debian QA Group <packages@qa.debian.org>
abiword
gsm0710muxd
libappindicator
obex-data-server
pidgin-audacious
pidgin-mpris
Debian Remote Maintainers <debian-remote@lists.debian.org>
freerdp2
Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
tiemu
Debian Science Team <debian-science-maintainers@lists.alioth.debian.org>
artha
Debian SELinux maintainers <selinux-devel@lists.alioth.debian.org>
restorecond
Debian Telepathy maintainers <pkg-telepathy-maintainers@lists.alioth.debian.org>
empathy
folks
ofono
telepathy-farstream
telepathy-gabble
telepathy-glib
telepathy-haze
telepathy-idle
telepathy-logger
telepathy-mission-control-5
telepathy-rakia
telepathy-ring
telepathy-salut
Debian VDR Team <pkg-vdr-dvb-devel@lists.alioth.debian.org>
vdr-plugin-xineliboutput
Debian Window Maker Team <pkg-wmaker-devel@lists.alioth.debian.org>
wmauda
Debian Xfce Maintainers <debian-xfce@lists.debian.org>
light-locker
parole
xfburn
xfce4-pulseaudio-plugin
xfce4-screensaver
xfce4-session
xfce4-verve-plugin
Debian Xfce Maintainers <pkg-xfce-devel@lists.alioth.debian.org>
xfce4-session
Debian+Ubuntu MATE Packaging Team <debian-mate@lists.debian.org>
caja-extensions
caja-seahorse
eom
mate-applets
mate-control-center
mate-power-manager
mate-screensaver
mate-session-manager
mate-settings-daemon
mate-user-share
Debian/Kubuntu Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
libaccounts-glib
Diane Trout <diane@debian.org>
libaccounts-glib (U)
telepathy-logger-qt (U)
telepathy-qt (U)
Didier Raboud <odyx@debian.org>
fprintd (U)
Dimitri John Ledkov <xnox@debian.org>
xiphos (U)
Dmitry Shachnev <mitya57@debian.org>
gnome-flashback (U)
gnome-screensaver (U)
Dominique Corbex <dominique@corbex.org>
xiphos (U)
Doug Torrance <dtorrance@piedmont.edu>
wmauda (U)
Dr. Tobias Quathamer <toddy@debian.org>
worker
Elías Alejandro Año Mendoza <ealmdz@gmail.com>
gpick
Emilio Pozuelo Monfort <pochu@debian.org>
empathy (U)
folks (U)
gnome-screensaver (U)
libcryptui (U)
libunique (U)
telepathy-glib (U)
telepathy-logger (U)
Eric Beuque <eric.beuque@gmail.com>
freetuxtv (U)
Etienne Millon <me@emillon.org>
gmpc-plugins (U)
Fabian Greffrath <fabian+debian@greffrath.com>
handbrake (U)
Fabio Fantoni <fantonifabio@tiscali.it>
cinnamon (U)
cinnamon-control-center (U)
cinnamon-session (U)
cinnamon-settings-daemon (U)
Felipe Sateler <fsateler@debian.org>
paprefs (U)
Filippo Giunchedi <filippo@debian.org>
gnome-phone-manager (U)
Filippo Giunchedi <filippo@esaurito.net>
sensors-applet (U)
FingerForce Team <fingerforce-devel@lists.alioth.debian.org>
fprintd
Francesco Namuri <francesco@namuri.it>
gnome-phone-manager (U)
Francois Marier <francois@debian.org>
workrave
Geert Stappers <stappers@debian.org>
gnome-phone-manager (U)
Gianfranco Costamagna <locutusofborg@debian.org>
xchat
Gilles Filippini <pini@debian.org>
navit
handsome_feng <jianfengli@ubuntukylin.com>
ukui-control-center (U)
ukui-power-manager (U)
ukui-settings-daemon (U)
Harald Dunkel <harri@afaics.de>
network-manager-strongswan
Hector Oron <zumbi@debian.org>
ofono (U)
Herbert Parentes Fortes Neto <hpfn@debian.org>
gthumb
Hypra Team <bugs@hypra.fr>
compiz
Héctor Orón Martínez <zumbi@debian.org>
ofono (U)
Iain Lane <laney@debian.org>
folks (U)
gimp (U)
gnome-screensaver (U)
intrigeri <intrigeri@debian.org>
libnet-dbus-glib-perl (U)
Jeremy Bicha <jbicha@debian.org>
gimp (U)
gnome-flashback (U)
gnome-screensaver (U)
libcryptui (U)
vinagre (U)
Jeremy Sowden <jeremy@azazel.net>
wmauda (U)
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
caja-extensions (U)
eom (U)
mate-applets (U)
mate-control-center (U)
mate-power-manager (U)
mate-screensaver (U)
mate-session-manager (U)
mate-settings-daemon (U)
mate-user-share (U)
Jonas Smedegaard <dr@jones.dk>
netatalk (U)
pinot (U)
Jonathan Marsden <jmarsden@fastmail.fm>
xiphos (U)
Jonny Lamb <jonny@debian.org>
telepathy-idle (U)
telepathy-rakia (U)
Jordi Mallach <jordi@debian.org>
at-spi2-atk (U)
gimp (U)
libcryptui (U)
workrave (U)
Joseph Herlant <aerostitch@debian.org>
navit (U)
Joseph Herlant <herlantj@gmail.com>
navit (U)
Josselin Mouette <joss@debian.org>
libunique (U)
Kartik Mistry <kartik@debian.org>
dee
Keng-Yu Lin <kengyu@lexical.tw>
urfkill
Kentaro Hayashi <hayashi@clear-code.com>
growl-for-linux
Kylin Team <team+kylin@tracker.debian.org>
ukui-control-center
ukui-power-manager
ukui-settings-daemon
Laurent Bigonville <bigon@debian.org>
empathy (U)
enchant-2 (U)
folks (U)
restorecond (U)
telepathy-farstream (U)
telepathy-gabble (U)
telepathy-glib (U)
telepathy-haze (U)
telepathy-idle (U)
telepathy-logger (U)
telepathy-mission-control-5 (U)
telepathy-rakia (U)
telepathy-salut (U)
vinagre (U)
Leo Costela <costela@debian.org>
pidgin-awayonlock
Lionel Le Folgoc <mrpouit@gmail.com>
parole (U)
xfce4-session (U)
xfce4-verve-plugin (U)
Lior Kaplan <kaplan@debian.org>
efax-gtk
Loic Minier <lool@dooz.org>
telepathy-rakia (U)
Maintainers of Mozilla-related packages <team+pkg-mozilla@tracker.debian.org>
firefox
firefox-esr
Manuel A. Fernandez Montecelo <mafm@debian.org>
k3d
Marc Pavot <marc.pavot@gmail.com>
ario
Margarita Manterola <marga@debian.org>
cinnamon (U)
cinnamon-control-center (U)
cinnamon-session (U)
cinnamon-settings-daemon (U)
Mark Purcell <msp@debian.org>
kmplayer (U)
Martin Bagge <brother@bsnet.se>
libfm (U)
Martin Pitt <mpitt@debian.org>
libunique (U)
Martin Wimpress <code@flexion.org>
mate-applets (U)
Matteo F. Vescovi <mfv@debian.org>
entangle (U)
Mattia Rizzolo <mattia@debian.org>
hexchat
inkscape (U)
Maximiliano Curia <maxy@debian.org>
cinnamon (U)
cinnamon-control-center (U)
cinnamon-session (U)
cinnamon-settings-daemon (U)
libaccounts-glib (U)
telepathy-logger-qt (U)
Michael Biebl <biebl@debian.org>
gnome-screensaver (U)
libcryptui (U)
libunique (U)
vinagre (U)
Michał Zając <quintasan@kubuntu.org>
telepathy-logger-qt (U)
telepathy-qt (U)
Mike Gabriel <sunweaver@debian.org>
ayatana-indicator-application (U)
caja-extensions (U)
caja-seahorse (U)
dbus-test-runner
eom (U)
freerdp2 (U)
libayatana-appindicator (U)
libdbusmenu (U)
mate-applets (U)
mate-control-center (U)
mate-power-manager (U)
mate-screensaver (U)
mate-session-manager (U)
mate-settings-daemon (U)
mate-user-share (U)
Mike Hommey <glandium@debian.org>
firefox (U)
firefox-esr (U)
mpd maintainers <pkg-mpd-maintainers@lists.alioth.debian.org>
gmpc-plugins
Nicolas Boulenguez <nicolas@debian.org>
dbusada (U)
Nobuhiro Iwamatsu <iwamatsu@debian.org>
bluez (U)
bluez-tools (U)
cairo-dock (U)
cairo-dock-plug-ins (U)
pommed (U)
Norbert Preining <norbert@preining.info>
cinnamon (U)
cinnamon-control-center (U)
cinnamon-session (U)
cinnamon-settings-daemon (U)
Olly Betts <olly@survex.com>
pinot
Petr Baudis <pasky@ucw.cz>
mate-power-manager (U)
Philipp Huebner <debalance@debian.org>
anyremote
Prach Pongpanich <prach@debian.org>
enchant
Pulseaudio maintenance team <pkg-pulseaudio-devel@lists.alioth.debian.org>
paprefs
Rail Aliev <rail@i-rs.ru>
zpspell
Reinhard Tartler <siretart@tauware.de>
handbrake (U)
Reto Buerki <reet@codelabs.ch>
dbusada
Riccardo Setti <giskard@debian.org>
empathy (U)
telepathy-idle (U)
Rico Tzschichholz <ricotz@ubuntu.com>
ogmrip (U)
Roger Shimizu <rosh@debian.org>
torbrowser-launcher (U)
Ron Lee <ron@debian.org>
mp3splt
Russell Coker <russell@coker.com.au>
restorecond (U)
Sam Morris <sam@robots.org.uk>
sensors-applet
Samuel Henrique <samueloph@debian.org>
xcowsay
Samuel Thibault <sthibault@debian.org>
at-spi2-atk (U)
compiz (U)
compiz-boxmenu
pyatspi (U)
Sean Davis <smd.seandavis@gmail.com>
xfce4-pulseaudio-plugin (U)
Sebastian Ramacher <sramacher@debian.org>
handbrake (U)
Simon McVittie <smcv@debian.org>
telepathy-idle (U)
telepathy-rakia (U)
Simon Quigley <tsimonq2@ubuntu.com>
caja-seahorse (U)
Simon Richter <sjr@debian.org>
libopenusb
Sjoerd Simons <sjoerd@debian.org>
empathy (U)
enchant-2 (U)
folks (U)
gnome-screensaver (U)
paprefs (U)
telepathy-farstream (U)
telepathy-gabble (U)
telepathy-glib (U)
telepathy-idle (U)
telepathy-logger (U)
telepathy-mission-control-5 (U)
telepathy-rakia (U)
telepathy-salut (U)
Stanislav Maslovski <stanislav.maslovski@gmail.com>
kbdd
Stefan Haller <haliner@googlemail.com>
desktopnova
Stefano Karapetsas <stefano@karapetsas.com>
caja-extensions (U)
eom (U)
mate-applets (U)
mate-control-center (U)
mate-power-manager (U)
mate-screensaver (U)
mate-session-manager (U)
mate-settings-daemon (U)
mate-user-share (U)
Sundaram Ramaswamy <legends2k@yahoo.com>
artha (U)
Teus Benschop <teusjannette@gmail.com>
xiphos (U)
The Ayatana Packagers <pkg-ayatana-devel@lists.alioth.debian.org>
libdbusmenu
notify-osd
Thibaut Paumard <thibaut@debian.org>
pommed (U)
Thomas Günther <tom@toms-cafe.de>
vdr-plugin-xineliboutput (U)
Thomas Koch <thomas@koch.ro>
xwrited
Thomas Schmidt <tschmidt@debian.org>
vdr-plugin-xineliboutput (U)
Tobias Grimm <etobi@debian.org>
vdr-plugin-xineliboutput (U)
Tomasz Buchert <tomasz@debian.org>
synapse
Ulrike Uhlig <u@451f.org>
seahorse-nautilus (U)
Unit 193 <unit193@ubuntu.com>
xfce4-pulseaudio-plugin (U)
xiphos (U)
Valentin Vidic <vvidic@debian.org>
cluster-glue (U)
Vangelis Mouhtsis <vangelis@gnugr.org>
caja-extensions (U)
caja-seahorse (U)
eom (U)
mate-applets (U)
mate-control-center (U)
mate-power-manager (U)
mate-screensaver (U)
mate-session-manager (U)
mate-settings-daemon (U)
mate-user-share (U)
Vincent Cheng <vcheng@debian.org>
conky
mangler
Xiang Li <lixiang@kylinos.cn>
ukui-power-manager (U)
Youhei SASAKI <uwabami@gfd-dennou.org>
cairo-dock (U)
cairo-dock-plug-ins (U)
YunQiang Su <syq@debian.org>
fcitx-configtool (U)
fcitx-fbterm (U)
Yves-Alexis Perez <corsac@debian.org>
light-locker (U)
parole (U)
xfburn (U)
xfce4-pulseaudio-plugin (U)
xfce4-screensaver (U)
xfce4-session (U)
xfce4-verve-plugin (U)
Reply to: