docs/manual: add integration section for systemd with dbus

Add a section to the "Integration topics" chapter about how we integrate
systemd. Add a first subsection about how dbus and dbus-broker work with
systemd.

This is just the start of the integration information about systemd.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Arnout Vandecappelle (Essensium/Mind) 2022-07-28 00:12:17 +02:00 committed by Yann E. MORIN
parent 15c972f32a
commit 32b341fa34
2 changed files with 29 additions and 0 deletions

View File

@ -0,0 +1,27 @@
// -*- 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.

View File

@ -9,4 +9,6 @@ level. Buildroot is highly configurable, almost everything discussed
here can be changed or overridden by xref:rootfs-custom[rootfs overlay
or custom skeleton] configuration.
include::integration-systemd.txt[]
include::integration-selinux-support.txt[]