Subject: [bug#37379] [PATCH] [core-updates] gnu: glib: Reference dbus-launch by its absolute path.

From: Maxim Cournoyer <[email-masked]>
Date: Wed, 11 Sep 2019 21:32:49 +0900

Hello,

This allows programs or libraries compiled with glib to connect to dbus
without having the 'dbus-launch' binary present (propagated) into their
profile.

dbus triggers lots of rebuilds, so this should be merged to the
core-updates branch.

Thank you,

Maxim

From 1881ad1305f55f3bf7ac7a48ea1c76123f2864b2 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <[email-masked]>
Date: Tue, 10 Sep 2019 11:02:16 +0900
Subject: [PATCH] gnu: glib: Reference dbus-launch by its absolute path.

* gnu/packages/glib.scm (glib)[phases]{patch-dbus-launch-path}: New phase.
---
 gnu/packages/glib.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 3a50347f86..fb148eec19 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -199,6 +199,14 @@ shared NFS home directories.")
    (arguments
     `(#:phases
       (modify-phases %standard-phases
+        (add-after 'unpack 'patch-dbus-launch-path
+          (lambda* (#:key inputs #:allow-other-keys)
+            (let ((dbus (assoc-ref inputs "dbus")))
+              (substitute* "gio/gdbusaddress.c"
+                (("command_line = g_strdup_printf \\(\"dbus-launch")
+                 (string-append "command_line = g_strdup_printf (\""
+                                dbus "/bin/dbus-launch")))
+              #t)))
         (add-before 'build 'pre-build
           (lambda* (#:key inputs outputs #:allow-other-keys)
             ;; For tests/gdatetime.c.
-- 
2.23.0