Subject: [PATCH] gnu: Add mairix. (WIP)
From: Martin Marshall <[email-masked]>
To: [email-masked]
Cc: Martin Marshall <[email-masked]>
Date: Tue, 28 Feb 2023 22:55:23 -0500
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/mail.scm (mairix): Add variable
---
Greetings,

Building with "--system=armhf" fails the check phase.  However,
building with "--system=i686" or "--system=aarch64" succeeds, as does
building without emulation on x86_64.

On an actual armhf device running a debian-based OS (a "Beaglebone
Black" single-board-computer), compilation via "./configure" and
"make" was successful.  And all tests passed "make check".  But that
only proves the upstream source can work on armhf.  It doesn't explain
why the "make check" fails for armhf on Guix.

Any suggestions or fixes for getting this package definition ready to
commit would be appreciated.

 gnu/packages/mail.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 6ef4c6fdab..3cb3b4cc3f 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -408,6 +408,40 @@ (define-public mailutils
      ;; Libraries are under LGPLv3+, and programs under GPLv3+.
      (list license:gpl3+ license:lgpl3+))))
 
+(define-public mairix
+  (let ((commit "1cc06f4a73ba4b940008c1ffc398d2ac708cd6d6")
+        (revision "0"))
+    (package
+      (name "mairix")
+      (version (git-version "0.24" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/vandry/mairix")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "12bhmk5j77cl3vjda48cmdysq1c2yjzvfv6zm4hlky6d5g3l49d7"))))
+      (build-system gnu-build-system)
+      (arguments
+       (list #:parallel-tests? #f
+             #:phases #~(modify-phases %standard-phases
+                          (replace 'configure
+                            (lambda* (#:key inputs #:allow-other-keys)
+                              (setenv "LC_ALL" "en_US.UTF-8")
+                              (invoke "./configure"
+                                      (string-append "--prefix="
+                                                     #$output)))))))
+      (propagated-inputs (list zlib openssl bzip2 xz))
+      (native-inputs (list flex bison))
+      (home-page "https://github.com/vandry/mairix")
+      (synopsis "Program for indexing and searching email messages")
+      (description
+       "Mairix is a program for indexing and searching email messages stored in
+Maildir, MH, MMDF or mbox folders.")
+      (license license:gpl2))))
+
 (define-public go-gitlab.com-shackra-goimapnotify
   (package
     (name "go-gitlab.com-shackra-goimapnotify")
-- 
2.39.1