Skip to content
Snippets Groups Projects
Commit da51f5bb authored by Ludovic Courtès's avatar Ludovic Courtès
Browse files

gnu: dbus: Add variant with proper helper for service activation.

* gnu/packages/patches/dbus-helper-search-path.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/glib.scm (dbus/activation): New variable.
parent 4a663ca4
No related branches found
No related tags found
No related merge requests found
...@@ -427,6 +427,7 @@ dist_patch_DATA = \ ...@@ -427,6 +427,7 @@ dist_patch_DATA = \
gnu/packages/patches/cssc-missing-include.patch \ gnu/packages/patches/cssc-missing-include.patch \
gnu/packages/patches/clucene-contribs-lib.patch \ gnu/packages/patches/clucene-contribs-lib.patch \
gnu/packages/patches/cursynth-wave-rand.patch \ gnu/packages/patches/cursynth-wave-rand.patch \
gnu/packages/patches/dbus-helper-search-path.patch \
gnu/packages/patches/dealii-p4est-interface.patch \ gnu/packages/patches/dealii-p4est-interface.patch \
gnu/packages/patches/diffutils-gets-undeclared.patch \ gnu/packages/patches/diffutils-gets-undeclared.patch \
gnu/packages/patches/dfu-programmer-fix-libusb.patch \ gnu/packages/patches/dfu-programmer-fix-libusb.patch \
......
...@@ -59,6 +59,7 @@ (define dbus ...@@ -59,6 +59,7 @@ (define dbus
(name "dbus") (name "dbus")
(version "1.10.0") (version "1.10.0")
(source (origin (source (origin
;; TODO: Apply patch from DBUS/ACTIVATION below.
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"http://dbus.freedesktop.org/releases/dbus/dbus-" "http://dbus.freedesktop.org/releases/dbus/dbus-"
...@@ -123,6 +124,17 @@ (define dbus ...@@ -123,6 +124,17 @@ (define dbus
shared NFS home directories.") shared NFS home directories.")
(license license:gpl2+))) ; or Academic Free License 2.1 (license license:gpl2+))) ; or Academic Free License 2.1
(define-public dbus/activation
;; D-Bus with a patch to fix service activation.
;; TODO: Merge with DBUS above.
(package
(inherit dbus)
(version (string-append (package-version dbus) ".a"))
(source (origin
(inherit (package-source dbus))
(patches
(list (search-patch "dbus-helper-search-path.patch")))))))
(define glib (define glib
(package (package
(name "glib") (name "glib")
......
The setuid helper of D-Bus is responsible for "service activation".
It looks for '.service' files in fixed locations, but the default locations
make no sense (see below), so replace them with /etc/dbus-1/system-services.
--- dbus-1.10.0/dbus/dbus-sysdeps-util-unix.c 2015-10-22 00:07:03.829251854 +0200
+++ dbus-1.10.0/dbus/dbus-sysdeps-util-unix.c 2015-10-22 00:07:14.893445175 +0200
@@ -1410,10 +1410,7 @@ _dbus_get_standard_system_servicedirs (D
* be available.
*/
static const char standard_search_path[] =
- "/usr/local/share:"
- "/usr/share:"
- DBUS_DATADIR ":"
- "/lib";
+ "/etc";
DBusString servicedir_path;
_dbus_string_init_const (&servicedir_path, standard_search_path);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment