dbus-run-session output.

Simon McVittie smcv at collabora.com
Fri Apr 7 11:05:27 UTC 2017

On Fri, 07 Apr 2017 at 10:17:09 +0930, Simon Lees wrote:
> In openSUSE we have users launching dbus-run-session and emacs (x11
> version) at the same time complaining about the following lines being
> outputted to std::err
>   Activating service name='org.gnome.GConf'
>   Successfully activated service 'org.gnome.GConf'

This is logging from dbus-daemon, not dbus-run-session (when
dbus-run-session starts a dbus-daemon, it inherits dbus-run-session's
stderr). In the master branch, syslog support was refactored, and I think
these lines would now get "dbus-daemon[12345]: " (or similar) prepended.

I'm curious why your users don't already have a D-Bus session bus?
In other distributions such as Debian and Fedora, the session bus is
automatically started by general OS integration infrastructure:

* Debian with dbus-user-session installed, recent Fedora, recent Arch Linux:
  login, gdm, etc. runs pam_systemd which starts systemd --user which
  has a socket-activated dbus-daemon available

* Debian with dbus-x11 but not dbus-user-session, older Fedora, many other
  distributions: /etc/X11/Xsession.d (or closest equivalent in non-Debian)
  starts dbus-daemon

This seems like something that OS integrators should be providing, rather
than something individual users should be wrapping around their emacs

> To me this seems intentional so that we know something has happened and
> it gets logged, if this is the rational would a patch adding something
> like a --quiet or --silent flag that suppresses this output be welcome.

In the current (1.11.x) development branch, dbus-daemon already has an option
to send this logging to the system log (syslog or systemd Journal) instead
or in addition. I'm not going to backport that to 1.10.x, but if your
distribution feels that it's important, you could.

Given the amount of criticism D-Bus gets (usually from people who didn't
really want to use it but do want to use software that relies on it)
for being perceived to be opaque, I'd be somewhat reluctant to turn
off the dbus-daemon's logging altogether, but perhaps dbus-run-session
should grow a --syslog-only option that passes the same thing through
to dbus-daemon? Or maybe that should even be the default?


More information about the dbus mailing list