6.65. D-Bus-1.8.0

D-Bus is a message bus system, a simple way for applications to talk to one another. D-Bus supplies both a system daemon (for events such as "new hardware device added" or "printer queue changed") and a per-user-login-session daemon (for general IPC needs among user applications). Also, the message bus is built on top of a general one-to-one message passing framework, which can be used by any two applications to communicate directly (without going through the message bus daemon).

Approximate build time: less than 0.4 SBU
Required disk space: 35 MB

6.65.1. Installation of D-Bus

Prepare D-Bus for compilation:

./configure --prefix=/usr \
            --sysconfdir=/etc \
            --localstatedir=/var \
            --libexecdir=/usr/lib/dbus-1.0 \
            --disable-static \
            --enable-systemd \
            --docdir=/usr/share/doc/dbus-1.8.0 \
            --with-console-auth-dir=/run/console/ \
            --with-systemdsystemunitdir=/lib/systemd/system

The meaning of the configure options:

--enable-systemd

This enables support for authentication check using Systemd Logind.

--with-console-auth-dir=/run/console

This specifies the location of the ConsoleKit auth directory.

Compile the package:

make

This package does come with a testsuite, but it requires several packages that are not included in LFS.

Install the package:

make install

The shared library needs to be moved to /lib, and as a result the .so file in /usr/lib will need to be recreated:

mv -v /usr/lib/libdbus-1.so.* /lib
ln -sfv ../../lib/$(readlink /usr/lib/libdbus-1.so) /usr/lib/libdbus-1.so

Create a symlink, so that D-Bus and Systemd can use the same machine-id file:

ln -sv /etc/machine-id /var/lib/dbus

6.65.2. Contents of D-Bus

Installed programs: dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor, dbus-send, and dbus-uuidgen
Installed libraries: libdbus-1.so
Installed directories: /etc/dbus-1, /usr/include/dbus-1.0, /usr/lib/dbus-1.0, /usr/share/dbus-1, /usr/share/doc/dbus-1.8.0, /var/lib/dbus

Short Descriptions

dbus-cleanup-sockets

Used to clean up leftover sockets in a directory.

dbus-daemon

The D-Bus message bus daemon.

dbus-launch

Starts dbus-daemon from a shell script.

dbus-monitor

Monitors messages passing through a D-Bus message bus.

dbus-send

Sends a message to a D-Bus message bus.

dbus-uuidgen

Generates a universally unique ID.

libdbus-1.so

Contains API functions used to communicate with the D-Bus message bus.