1// -*- mode:doc; -*-
2// vim: set syntax=asciidoc:
3
4[[integration-systemd]]
5=== Systemd
6
7This chapter describes the decisions taken in Buildroot's integration of
8systemd, and how various use cases can be implemented.
9
10==== DBus daemon
11
12Systemd requires a DBus daemon. There are two options for it: traditional dbus
13(+BR2_PACKAGE_DBUS+) and bus1 dbus-broker (+BR2_PACKAGE_DBUS_BROKER+). At
14least one of them must be chosen. If both are included in the configuration,
15dbus-broker will be used as system bus, but the traditional dbus-daemon is
16still installed as well and can be used as session bus. Also its tools (e.g.
17+dbus-send+) can be used (systemd itself has +busctl+ as an alternative). In
18addition, the traditional dbus package is the only one that provides +libdbus+,
19which is used by many packages as dbus integration library.
20
21Both in the dbus and in the dbus-broker case, the daemon runs as user +dbus+.
22The DBus configuration files are also identical for both.
23
24To make sure that only one of the two daemons is started as system bus, the
25systemd activation files of the dbus package (+dbus.socket+ and the
26+dbus.service+ symlink in +multi-user.target.wants+) are removed when
27dbus-broker is selected.
28