gnu: mumble: Fix mumble-overlay.
authorLeo Prikler <leo.prikler@student.tugraz.at>
Thu, 25 Jun 2020 13:46:18 +0000 (15:46 +0200)
committerLudovic Courtès <ludo@gnu.org>
Sun, 28 Jun 2020 21:26:54 +0000 (23:26 +0200)
The canonical mumble-overlay script searches for libmumble.so.1 in various
directories, none of which are relevant in Guix installations and
additionally does some work to match the architecture of the library to that
of the command that will be executed.
This work is unnecessary in Guix and only causes the script to fail, so we
instead just hardcode the path.

* gnu/packages/telephony.scm (mumble)[#:phases]: Add fix-mumble-overlay.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu/packages/telephony.scm

index 4c84ddc..542d36a 100644 (file)
@@ -588,6 +588,16 @@ address of one of the participants.")
              (substitute* "src/mumble/Settings.cpp"
                (("bUsage = true;") "bUsage = false;"))
              #t))
+         (add-before 'configure 'fix-mumble-overlay
+           (lambda* (#:key outputs #:allow-other-keys)
+              (with-output-to-file "scripts/mumble-overlay"
+                (lambda ()
+                  (format #t "#!~a~%" (which "bash"))
+                  (format #t "export LD_PRELOAD=\"~a $LD_PRELOAD\"~%"
+                          (string-append (assoc-ref outputs "out")
+                                         "/lib/mumble/libmumble.so.1"))
+                  (format #t "exec \"${@}\"")))
+              #t))
          (add-before 'install 'disable-murmur-ice
            (lambda _
              (substitute* "scripts/murmur.ini.system"