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