unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#44501] [PATCH] gnu: Add mblaze.
@ 2020-11-07 10:05 B. Wilson via Guix-patches via
  2020-11-18  9:15 ` bug#44501: " Christopher Baines
  0 siblings, 1 reply; 2+ messages in thread
From: B. Wilson via Guix-patches via @ 2020-11-07 10:05 UTC (permalink / raw)
  To: 44501; +Cc: B. Wilson

* gnu/packages/mail.scm (mblaze): New variable.
---
 gnu/packages/mail.scm | 47 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 44a156fd99..3d3e8ab540 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -37,6 +37,7 @@
 ;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org>
 ;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
 ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
+;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3960,3 +3961,49 @@ black lists.  Each message is analysed by Rspamd and given a spam
 score.")
     (home-page "https://www.rspamd.com/")
     (license license:asl2.0)))
+
+(define-public mblaze
+  (package
+    (name "mblaze")
+    (version "0.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/leahneukirchen/mblaze")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0p97zfl35ilrnrx9ynj82igsb698m9klikfaicw5jhjpf6qp2n3y"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("perl" ,perl)))
+    (arguments
+     `(#:tests? #f        ; XXX: Upstream tests appear to be broken
+       #:make-flags (list "CC=gcc" "PREFIX="
+                          (string-append "DESTDIR=" %output))
+       #:phases (modify-phases %standard-phases (delete 'configure))))
+    (home-page "https://github.com/leahneukirchen/mblaze")
+    (synopsis "Unix utilities to deal with Maildir")
+    (description
+     "The mblaze message system is a set of Unix utilities for processing and
+interacting with mail messages which are stored in maildir folders.
+
+Its design is roughly inspired by MH, the RAND Message Handling System, but it
+is a complete implementation from scratch.
+
+mblaze is a classic command line MUA and has no features for receiving or
+transferring messages; you can operate on messages in a local maildir spool, or
+fetch your messages using fdm(1), getmail(1), offlineimap(1), or similar
+utilities, and send it using dma(8), msmtp(1), sendmail(8), as provided by
+OpenSMTPD, Postfix, or similar.
+
+mblaze operates directly on maildir folders and doesn't use its own caches or
+databases.  There is no setup needed for many uses.  All utilities have been
+written with performance in mind.  Enumeration of all messages in a maildir
+is avoided unless necessary, and then optimized to limit syscalls.  Parsing
+message metadata is optimized to limit I/O requests.  Initial operations on a
+large maildir may feel slow, but as soon as they are in the file system cache,
+everything is blazingly fast.  The utilities are written to be memory efficient
+(i.e. not wasteful), but whole messages are assumed to fit into RAM easily
+(one at a time).")
+    (license license:public-domain)))
-- 
2.29.2





^ permalink raw reply related	[flat|nested] 2+ messages in thread

* bug#44501: [PATCH] gnu: Add mblaze.
  2020-11-07 10:05 [bug#44501] [PATCH] gnu: Add mblaze B. Wilson via Guix-patches via
@ 2020-11-18  9:15 ` Christopher Baines
  0 siblings, 0 replies; 2+ messages in thread
From: Christopher Baines @ 2020-11-18  9:15 UTC (permalink / raw)
  To: B. Wilson; +Cc: 44501-done

[-- Attachment #1: Type: text/plain, Size: 3907 bytes --]


Hi,

This looks pretty good to me, I've pushed to master as
df661fb960ed996c4378d10a5e5f24499335002c.

B. Wilson via Guix-patches via <guix-patches@gnu.org> writes:

> * gnu/packages/mail.scm (mblaze): New variable.
> ---
>  gnu/packages/mail.scm | 47 +++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 47 insertions(+)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 44a156fd99..3d3e8ab540 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -37,6 +37,7 @@
>  ;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org>
>  ;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
>  ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
> +;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -3960,3 +3961,49 @@ black lists.  Each message is analysed by Rspamd and given a spam
>  score.")
>      (home-page "https://www.rspamd.com/")
>      (license license:asl2.0)))
> +
> +(define-public mblaze
> +  (package
> +    (name "mblaze")
> +    (version "0.2")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/leahneukirchen/mblaze")
> +             (commit (string-append "v" version))))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "0p97zfl35ilrnrx9ynj82igsb698m9klikfaicw5jhjpf6qp2n3y"))))
> +    (build-system gnu-build-system)
> +    (native-inputs `(("perl" ,perl)))
> +    (arguments
> +     `(#:tests? #f        ; XXX: Upstream tests appear to be broken

I'm also unsure about the tests, I only has a quick look though.

> +       #:make-flags (list "CC=gcc" "PREFIX="

I believe using (cc-for-target) is better than hardcoding gcc here, I
think it's something to do with cross compiling:

  (string-append "CC=" ,(cc-for-target))

> +                          (string-append "DESTDIR=" %output))
> +       #:phases (modify-phases %standard-phases (delete 'configure))))
> +    (home-page "https://github.com/leahneukirchen/mblaze")
> +    (synopsis "Unix utilities to deal with Maildir")
> +    (description
> +     "The mblaze message system is a set of Unix utilities for processing and
> +interacting with mail messages which are stored in maildir folders.
> +
> +Its design is roughly inspired by MH, the RAND Message Handling System, but it
> +is a complete implementation from scratch.
> +
> +mblaze is a classic command line MUA and has no features for receiving or
> +transferring messages; you can operate on messages in a local maildir spool, or
> +fetch your messages using fdm(1), getmail(1), offlineimap(1), or similar
> +utilities, and send it using dma(8), msmtp(1), sendmail(8), as provided by
> +OpenSMTPD, Postfix, or similar.
> +
> +mblaze operates directly on maildir folders and doesn't use its own caches or
> +databases.  There is no setup needed for many uses.  All utilities have been
> +written with performance in mind.  Enumeration of all messages in a maildir
> +is avoided unless necessary, and then optimized to limit syscalls.  Parsing
> +message metadata is optimized to limit I/O requests.  Initial operations on a
> +large maildir may feel slow, but as soon as they are in the file system cache,
> +everything is blazingly fast.  The utilities are written to be memory efficient
> +(i.e. not wasteful), but whole messages are assumed to fit into RAM easily
> +(one at a time).")
> +    (license license:public-domain)))

I also moved this definition up from the bottom of mail.scm. If everyone
adds packages at the bottom of modules, it makes Git conflicts more
likely, so it's best to avoid the bottom, unless you specifically want
the package to go there.

Generally all fine though,

Thanks again,

Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 987 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-11-18  9:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-07 10:05 [bug#44501] [PATCH] gnu: Add mblaze B. Wilson via Guix-patches via
2020-11-18  9:15 ` bug#44501: " Christopher Baines

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).