···
homeDir = "/var/run/dbus";
13
+
systemExtraxml = concatStrings (flip concatMap cfg.packages (d: [
14
+
"<servicedir>${d}/share/dbus-1/system-services</servicedir>"
15
+
"<includedir>${d}/etc/dbus-1/system.d</includedir>"
18
+
sessionExtraxml = concatStrings (flip concatMap cfg.packages (d: [
19
+
"<servicedir>${d}/share/dbus-1/services</servicedir>"
20
+
"<includedir>${d}/etc/dbus-1/session.d</includedir>"
configDir = pkgs.stdenv.mkDerivation {
···
22
-
cp -v ${pkgs.dbus.daemon}/etc/dbus-1/system.conf $out/system.conf
24
-
# !!! Hm, these `sed' calls are rather error-prone...
26
-
# Tell the daemon where the setuid wrapper around
27
-
# dbus-daemon-launch-helper lives.
28
-
sed -i $out/system.conf \
29
-
-e 's|<servicehelper>.*/libexec/dbus-daemon-launch-helper|<servicehelper>${config.security.wrapperDir}/dbus-daemon-launch-helper|'
32
+
sed '${./dbus-system-local.conf.in}' \
33
+
-e 's,@servicehelper@,${config.security.wrapperDir}/dbus-daemon-launch-helper,g' \
34
+
-e 's,@extra@,${systemExtraxml},' \
35
+
> "$out/system-local.conf"
31
-
# Add the system-services and system.d directories to the system
33
-
sed -i $out/system.conf \
34
-
-e 's|<standard_system_servicedirs/>|${systemServiceDirs}|' \
35
-
-e 's|<includedir>system.d</includedir>|${systemIncludeDirs}|'
37
-
cp ${pkgs.dbus.daemon}/etc/dbus-1/session.conf $out/session.conf
39
-
# Add the services and session.d directories to the session bus
41
-
sed -i $out/session.conf \
42
-
-e 's|<standard_session_servicedirs />|${sessionServiceDirs}&|' \
43
-
-e 's|<includedir>session.d</includedir>|${sessionIncludeDirs}|'
37
+
sed '${./dbus-session-local.conf.in}' \
38
+
-e 's,@extra@,${sessionExtraxml},' \
39
+
> "$out/session-local.conf"
47
-
systemServiceDirs = concatMapStrings
48
-
(d: "<servicedir>${d}/share/dbus-1/system-services</servicedir> ")
51
-
systemIncludeDirs = concatMapStrings
52
-
(d: "<includedir>${d}/etc/dbus-1/system.d</includedir> ")
55
-
sessionServiceDirs = concatMapStrings
56
-
(d: "<servicedir>${d}/share/dbus-1/services</servicedir> ")
59
-
sessionIncludeDirs = concatMapStrings
60
-
(d: "<includedir>${d}/etc/dbus-1/session.d</includedir> ")
···
Whether to start the D-Bus message bus daemon, which is
···
type = types.listOf types.path;
Packages whose D-Bus configuration files should be included in
the configuration of the D-Bus system-wide message bus.
···
permissions = "u+rx,g+rx,o-rx";
132
-
services.dbus.packages =
133
-
[ "/nix/var/nix/profiles/default"
112
+
services.dbus.packages = [
# Don't restart dbus-daemon. Bad things tend to happen if we do.
systemd.services.dbus.reloadIfChanged = true;