Subject: [PATCH] gnu: emacs-notmuch: Install desktop files.
From: Arun Isaac <[email-masked]>
To: [email-masked]
Cc: Arun Isaac <[email-masked]>
Date: Wed, 19 Jun 2024 23:26:35 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/mail.scm (emacs-notmuch)[arguments]: Add install-desktop-files
phase.

Change-Id: I9f3a049acb7062807a58d95ca526813caab0d563
---
 gnu/packages/mail.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index d853fab4d3..fe2135a22d 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1512,7 +1512,23 @@ (define-public emacs-notmuch
               (let ((notmuch (search-input-file inputs "/bin/notmuch")))
                 (substitute* "notmuch-lib.el"
                   (("\"notmuch\"")
-                   (string-append "\"" notmuch "\"")))))))))
+                   (string-append "\"" notmuch "\""))))))
+          ;; Install desktop files so that mailto URIs can be opened using
+          ;; emacs-notmuch.
+          (add-after 'install 'install-desktop-files
+            (lambda* (#:key inputs #:allow-other-keys)
+              (install-file "notmuch-emacs-mua"
+                            (string-append #$output "/bin"))
+              (let ((applications (string-append #$output "/share/applications")))
+                (install-file "notmuch-emacs-mua.desktop"
+                              applications)
+                (copy-file "notmuch-emacs-mua.desktop"
+                           (string-append applications
+                                          "/notmuch-emacsclient-mua.desktop"))
+                (substitute* (string-append applications
+                                            "/notmuch-emacsclient-mua.desktop")
+                  (("Exec=notmuch-emacs-mua" all)
+                   (string-append all " --client")))))))))
     (synopsis "Run Notmuch within Emacs")
     (description
      "This package provides an Emacs-based interface to the Notmuch mail

base-commit: e32e3d0a03dc17c4c54a91aad053c9036998b601
-- 
2.45.1