D-Bus is an interprocess communication (IPC) system for software applications. Software makes use of D-Bus to communicate between services.
USE flags for sys-apps/dbus A message bus system, a simple way for applications to talk to each other
||Add support for X11||global|
||Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces||global|
||Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead of globally||global|
||Use sys-auth/elogind for session tracking.||local|
||!!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur||global|
||Build static versions of dynamic libraries as well||global|
||Build with sys-apps/systemd at_console support||local|
||Workaround to pull in packages needed to run with FEATURES=test. Portage-2.1.2 handles this internally, so don't set it in make.conf/package.use anymore||global|
||Enable user-session semantics for session bus under systemd||local|
After setting at least the
dbus global USE flag be sure update the system using
--changed-use option so Portage will be sure to notice the changes:
emerge --ask --changed-use --deep @world
The main configuration files include:
- /usr/share/dbus-1/system.conf for the system bus
- /usr/share/dbus-1/session.conf for the session bus
After configuration step, start D-Bus with:
To start D-Bus at boot time, add it the default run level:
rc-update add dbus default
Even without adding D-Bus to the default runlevel it often will get started by D-Bus dependent services. This should explain why D-Bus mysteriously gets started even though it has not been added formally added to a system runlevel.
Some useful commands include:
- dbus-monitor --system - To monitor the activities in the system bus.
- dbus-monitor --session - To monitor the activities in the session bus.
- dbus-send <PARAMETER> - To send a message. See the dbus-send man page (man dbus-send) for more information.
Use the dbus-monitor command to monitor the buses. Errors are also redirected to the syslog (/var/log/messages).
- eudev - A fork of systemd's udev with the goal of obtaining better compatibility with existing software such as OpenRC.
- udev - The device manager for the Linux kernel.