summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-01-13 15:37:32 +0100
committerLudovic Courtès <ludo@gnu.org>2013-01-13 16:34:41 +0100
commita661e420250ed063c79296a214f4f2298dc11a7f (patch)
tree67d488cf093d68a9fb960195ba8abd8c894edc54
parentd5529a9162be82df2a9d8f7fecd5b0c6916c2c9e (diff)
downloadguix-a661e420250ed063c79296a214f4f2298dc11a7f.tar.gz
distro: Add GNU Mailutils.
* distro/packages/mailutils.scm: New file.
* Makefile.am (MODULES): Add it.
-rw-r--r--Makefile.am1
-rw-r--r--distro/packages/mailutils.scm106
2 files changed, 107 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
index eee6139f25..dd08050641 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -85,6 +85,7 @@ MODULES =					\
   distro/packages/lout.scm			\
   distro/packages/lsh.scm			\
   distro/packages/m4.scm			\
+  distro/packages/mailutils.scm			\
   distro/packages/make-bootstrap.scm		\
   distro/packages/mit-krb5.scm			\
   distro/packages/multiprecision.scm		\
diff --git a/distro/packages/mailutils.scm b/distro/packages/mailutils.scm
new file mode 100644
index 0000000000..55b40f5974
--- /dev/null
+++ b/distro/packages/mailutils.scm
@@ -0,0 +1,106 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (distro packages mailutils)
+  #:use-module (distro)
+  #:use-module (distro packages linux)
+  #:use-module (distro packages gnutls)
+  #:use-module (distro packages gdbm)
+  #:use-module (distro packages guile)
+  #:use-module (distro packages ncurses)
+  #:use-module (distro packages readline)
+  #:use-module (distro packages dejagnu)
+  #:use-module (distro packages m4)
+  #:use-module (distro packages texinfo)
+  #:use-module (distro packages mysql)
+  #:use-module (distro packages autotools)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public mailutils
+  (package
+    (name "mailutils")
+    (version "2.2")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://gnu/mailutils/mailutils-"
+                                 version ".tar.bz2"))
+             (sha256
+              (base32
+               "0szbqa12zqzldqyw97lxqax3ja2adis83i7brdfsxmrfw68iaf65"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(;; TODO: Add `--with-sql'.
+       #:patches (list (assoc-ref %build-inputs
+                                  "patch/gets-undeclared"))
+       #:phases (alist-cons-before
+                 'build 'pre-build
+                 (lambda _
+                   ;; Use Guile 2.0's public API.
+                   (substitute* "libmu_scm/mu_message.c"
+                     (("scm_i_string_length")
+                      "scm_c_string_length"))
+
+                   ;; This file should be generated to use the right
+                   ;; value of $(libdir) et al.
+                   (delete-file "libmu_scm/mailutils.scm")
+
+                   ;; Use the right file name for `cat'.
+                   (substitute* "testsuite/lib/mailutils.exp"
+                     (("/bin/cat")
+                      (which "cat"))))
+                 %standard-phases)
+       #:parallel-tests? #f))
+    (inputs
+     `(("dejagnu" ,dejagnu)
+       ("m4" ,m4)
+       ("texinfo" ,texinfo)
+       ("guile" ,guile-2.0)
+       ("gnutls" ,gnutls)
+       ("ncurses" ,ncurses)
+       ("readline" ,readline)
+       ("linux-pam" ,linux-pam)
+       ("libtool" ,libtool)
+       ("gdbm" ,gdbm)
+       ("patch/gets-undeclared"
+        ,(search-patch "m4-gets-undeclared.patch"))))
+    (home-page "http://www.gnu.org/software/mailutils/")
+    (synopsis "A rich and powerful protocol-independent mail framework")
+    (description
+     "GNU Mailutils is a rich and powerful protocol-independent mail
+framework.  It contains a series of useful mail libraries, clients, and
+servers.  These are the primary mail utilities for the GNU system.  The
+central library is capable of handling electronic mail in various
+mailbox formats and protocols, both local and remote.  Specifically,
+this project contains a POP3 server, an IMAP4 server, and a Sieve mail
+filter.  It also provides a POSIX `mailx' client, and a collection of
+other handy tools.
+
+The GNU Mailutils libraries supply an ample set of primitives for
+handling electronic mail in programs written in C, C++, Python or
+Scheme.
+
+The utilities provided by Mailutils include imap4d and pop3d mail
+servers, mail reporting utility comsatd, general-purpose mail delivery
+agent maidag, mail filtering program sieve, and an implementation of MH
+message handling system.")
+    (license
+     ;; Libraries are under LGPLv3+, and programs under GPLv3+.
+     (list gpl3+ lgpl3+))))