Subject: [PATCH] gnu: mu: Update to 1.10.8 and re-enable Guile bindings

From: Thiago Jung Bauermann <[email-masked]>
Date: Fri, 17 Nov 2023 14:21:44 -0300

Version 1.10.8 fixes the installation of the Guile bindings, so we can
enable it again.

* gnu/packages/mail.scm (mu): Update to 1.10.7.
  [inputs]: Add guile-3.0.
  [arguments]: Add "-Dguile-extension-dir" to #:configure-flags.
  Add fix-ffi phase to allow Guile module to load its native library.

Change-Id: I2a8250d8d6298712ad116b1d88157a4344175722
---

Hello,

I find the Guile bindings useful, so I'd like to reenable them.
I've tested that my script that uses them is working.

Kind regards,
Thiago

 gnu/packages/mail.scm | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 256bd4b03a5a..353c8c7bd722 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1206,14 +1206,14 @@ (define-public emacs-mew
 (define-public mu
   (package
     (name "mu")
-    (version "1.10.7")
+    (version "1.10.8")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://github.com/djcb/mu/releases/download/v"
                            version "/mu-" version ".tar.xz"))
        (sha256
-        (base32 "089w1m6sd0nk9l9j40d357fjym8kxmz7kwh3bclk58jxa6xckapa"))))
+        (base32 "129m6rz8vbd7370c3h3ma66bxqdkm6wsdix5qkmv1vm7sanxh4bb"))))
     (build-system meson-build-system)
     (native-inputs
      (list pkg-config
@@ -1221,7 +1221,7 @@ (define-public mu
            gnupg                        ; for tests
            texinfo))
     (inputs
-     (list glib gmime xapian))
+     (list glib gmime guile-3.0 xapian))
     (arguments
      (list
       #:modules '((guix build meson-build-system)
@@ -1229,6 +1229,8 @@ (define-public mu
                   (guix build utils))
       #:imported-modules `(,@%meson-build-system-modules
                            (guix build emacs-utils))
+      #:configure-flags
+      #~(list (format #f "-Dguile-extension-dir=~a/lib" #$output))
       #:phases
       #~(modify-phases %standard-phases
           (add-after 'unpack 'patch-bin-references
@@ -1241,6 +1243,11 @@ (define-public mu
               (substitute* '("lib/tests/bench-indexer.cc"
                              "lib/utils/mu-test-utils.cc")
                 (("/bin/rm") (which "rm")))))
+          (add-after 'install 'fix-ffi
+            (lambda _
+              (substitute* (find-files #$output "mu.scm")
+                (("\"libguile-mu\"")
+                 (format #f "\"~a/lib/libguile-mu\"" #$output)))))
           (add-after 'install 'install-emacs-autoloads
             (lambda* (#:key outputs #:allow-other-keys)
               (emacs-generate-autoloads

base-commit: fc6bdaad57bf91609849623c5f485403c030cb49