diff options
Diffstat (limited to 'gnu/packages/mail.scm')
-rw-r--r-- | gnu/packages/mail.scm | 176 |
1 files changed, 116 insertions, 60 deletions
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c415e85552..d7e76ac3e5 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2014 Sou Bunnbu <iyzsong@gmail.com> @@ -15,15 +15,17 @@ ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com> -;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> +;;; Copyright © 2016, 2017, 2018 ng0 <ng0@crash.cx> ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> -;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net> +;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com> -;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> +;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -101,6 +103,7 @@ #:use-module (gnu packages networking) #:use-module (gnu packages web) #:use-module (gnu packages webkit) + #:use-module (gnu packages w3m) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (gnu packages docbook) @@ -128,7 +131,15 @@ version ".tar.bz2")) (sha256 (base32 - "1dn71p85wlyisnwsb485sk3q5v393k3dizsa9fmimskdwjwgk3ch")))) + "1dn71p85wlyisnwsb485sk3q5v393k3dizsa9fmimskdwjwgk3ch")) + (patches + (search-patches "mailutils-uninitialized-memory.patch")) + (snippet + ;; For a rebuild of the Flex/Bison byproducts touched by the + ;; patch above. + '(for-each delete-file + '("mh/mh_alias_lex.c" + "libmailutils/cfg/parser.c"))))) (build-system gnu-build-system) (arguments '(#:phases @@ -181,6 +192,12 @@ ;; TODO: Add `--with-sql'. #:configure-flags '("--sysconfdir=/etc") #:parallel-tests? #f)) + (native-inputs + ;; Note: Bison and Flex needed due to + ;; 'mailutils-uninitialized-memory.patch'. + `(("bison" ,bison) + ("flex" ,flex) + ("perl" ,perl))) ;for 'gylwrap' (inputs `(("dejagnu" ,dejagnu) ("m4" ,m4) @@ -240,14 +257,14 @@ aliasing facilities to work just as they would on normal mail.") (define-public mutt (package (name "mutt") - (version "1.9.2") + (version "1.9.3") (source (origin (method url-fetch) (uri (string-append "https://bitbucket.org/mutt/mutt/downloads/" "mutt-" version ".tar.gz")) (sha256 (base32 - "15kqxpx8bykqbyw4q33hkz0j2f65v6cl21sl5li2vw5vaaim5qd2")) + "1qbngck1pq1jkpnbpcwcb2q2zqrkgp0nd68wwp57bprxjgb8a6j3")) (patches (search-patches "mutt-store-references.patch")))) (build-system gnu-build-system) (inputs @@ -279,7 +296,7 @@ operating systems.") (define-public neomutt (package (name "neomutt") - (version "20171208") + (version "20171215") (source (origin (method url-fetch) @@ -287,7 +304,7 @@ operating systems.") "/archive/" name "-" version ".tar.gz")) (sha256 (base32 - "0dfp7m794ws6vg029zx7wrrjrscrnmi8cvbzqzgxafl97bbjipwz")))) + "1df1c2ynvivna42ifj1lxmgb0bbfih0ggn1afyniadzjm6cnxdvz")))) (build-system gnu-build-system) (inputs `(("cyrus-sasl" ,cyrus-sasl) @@ -302,46 +319,84 @@ operating systems.") ("libidn" ,libidn) ("libxml2" ,libxml2) ("lmdb" ,lmdb) - ("docbook-xsl" ,docbook-xsl) ("notmuch" ,notmuch))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) + `(("automake" ,automake) ("gettext-minimal" ,gettext-minimal) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("docbook-xsl" ,docbook-xsl) + ("docbook-xml" ,docbook-xml) + ("w3m" ,w3m) + ("tcl" ,tcl))) (arguments - `(#:configure-flags - (list "--enable-gpgme" + `(#:tests? #f + #:configure-flags + (list "--gpgme" ;; database, implies header caching - "--without-tokyocabinet" - "--without-qdbm" - "--without-bdb" - "--with-lmdb" - (string-append "--with-kyotocabinet=" - (assoc-ref %build-inputs "kyotocabinet")) - "--with-gdbm" - - "--with-gnutls" - "--without-ssl" - "--with-sasl" - - "--enable-smime" - "--enable-notmuch" - "--with-idn" + "--disable-tokyocabinet" + "--disable-qdbm" + "--disable-bdb" + "--lmdb" + "--kyotocabinet" + + "--gdbm" + + "--gnutls" + "--disable-ssl" + "--sasl" + (string-append "--with-sasl=" + (assoc-ref %build-inputs "cyrus-sasl")) + + + "--smime" + "--notmuch" + "--idn" ;; If we do not set this, neomutt wants to check ;; whether the path exists, which it does not ;; in the chroot. The workaround is this. "--with-mailpath=/var/mail" - (string-append "--with-curses=" - (assoc-ref %build-inputs "ncurses"))) + "--with-ui=ncurses" + (string-append "--with-ncurses=" + (assoc-ref %build-inputs "ncurses")) + (string-append "--prefix=" + (assoc-ref %outputs "out")) + "--debug") #:phases (modify-phases %standard-phases - (add-after 'unpack 'autoconf + ;; TODO: autosetup is meant to be included in the source, + ;; but we should package autosetup and use our own version of it. + (add-before 'configure 'fix-docbook + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("doc/chunk.xsl" "doc/manual.xml.tail" + "doc/html.xsl" "doc/manual.xml.head") + (("http://docbook.sourceforge.net/release/xsl/current/") + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) "/")) + (("http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/docbookx.dtd"))) + #t)) + (add-before 'configure 'fix-sasl-test (lambda _ - (zero? (system* "sh" "autoreconf" "-vfi"))))))) + ;; Upstream suggestion to fix the failing sasl autosetup test. + (substitute* "auto.def" + (("cc-with \\[list -cflags -I\\$prefix/include -libs") + "cc-with [list -includes stddef.h -cflags -I$prefix/include -libs")) + #t)) + (replace 'configure + (lambda* (#:key outputs inputs configure-flags #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (flags `(,@configure-flags)) + (bash (which "bash"))) + (setenv "SHELL" bash) + (setenv "CONFIG_SHELL" bash) + (apply invoke bash + (string-append (getcwd) "/configure") + flags))))))) (home-page "https://www.neomutt.org/") (synopsis "Command-line mail reader based on Mutt") (description @@ -429,7 +484,7 @@ and corrections. It is based on a Bayesian filter.") (define-public offlineimap (package (name "offlineimap") - (version "7.1.4") + (version "7.1.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/OfflineIMAP/offlineimap/" @@ -437,7 +492,7 @@ and corrections. It is based on a Bayesian filter.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0m34iks3l9p6shqkgfhfpiccglm6gk5nj98x20pvahl58nclmzn6")))) + "1qa3km3s3yhmpgzh76dnzwn22aa8fh39814zgnlyhs07l23ffa4f")))) (build-system python-build-system) (native-inputs `(("asciidoc" ,asciidoc))) @@ -532,27 +587,27 @@ security functionality including PGP, S/MIME, SSH, and SSL.") (define-public mu (package (name "mu") - (version "0.9.18") + (version "1.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/djcb/mu/releases/" - "download/" version "/mu-" - version ".tar.gz")) + "download/v" version "/mu-" + version ".tar.xz")) (sha256 (base32 - "02g82zvxfgn17wzy846bfxj0izjj7yklhwdnhwxy1y2kin4fqnb5")))) + "04x5azl19gszw2h7argq666gf9xs4hy9q7w9cbqxvy08n56xqsln")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("glib" ,glib "bin") ; for gtester - ("emacs" ,emacs-minimal))) + ("emacs" ,emacs-minimal) + ("tzdata" ,tzdata-for-tests))) ;for mu/test/test-mu-query.c ;; TODO: Add webkit and gtk to build the mug GUI. (inputs `(("xapian" ,xapian) ("guile" ,guile-2.2) ("glib" ,glib) - ("gmime" ,gmime) - ("tzdata" ,tzdata))) ;for mu/test/test-mu-query.c + ("gmime" ,gmime))) (arguments `(#:modules ((guix build gnu-build-system) (guix build utils) @@ -1049,17 +1104,17 @@ delivery.") (define-public exim (package (name "exim") - (version "4.90") + (version "4.90.1") (source (origin (method url-fetch) - (uri (list (string-append "ftp://ftp.exim.org/pub/exim/exim4/exim-" + (uri (list (string-append "https://ftp.exim.org/pub/exim/exim4/exim-" version ".tar.bz2") - (string-append "ftp://ftp.exim.org/pub/exim/exim4/old/exim-" + (string-append "https://ftp.exim.org/pub/exim/exim4/old/exim-" version ".tar.bz2"))) (sha256 (base32 - "1cmx2648zhpsc4pznky7qsqbjazd3wn4gpslbl30j56cv1m6rb3x")))) + "1w6blvvrd87c649j8xpag034md2w1ib0db9c4ijqbzc5dh2i1xfq")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb) @@ -1144,6 +1199,7 @@ facilities for checking incoming mail.") (uri (string-append "https://www.dovecot.org/releases/" (version-major+minor version) "/" name "-" version ".tar.gz")) + (patches (search-patches "dovecot-CVE-2017-15132.patch")) (sha256 (base32 "10c5myzgys866c3x6jdr1s9x9pqnjd5vpyz8z384sph21m3wnq6y")))) (build-system gnu-build-system) @@ -1916,14 +1972,14 @@ transfer protocols.") (define-public opensmtpd (package (name "opensmtpd") - (version "6.0.2p1") + (version "6.0.3p1") (source (origin (method url-fetch) (uri (string-append "https://www.opensmtpd.org/archives/" name "-" version ".tar.gz")) (sha256 (base32 - "1b4h64w45hpmfq5721smhg4s0shs64gbcjqjpx3fbiw4hz8bdy9a")))) + "10bsfsnlg9d9i6l2izdnxp05s3ri8fvwzqxvx1jmarc852382619")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb) @@ -1937,10 +1993,10 @@ transfer protocols.") ("groff" ,groff))) (arguments `(#:configure-flags - (list "--with-table-db" "--localstatedir=/var" + (list "--with-table-db" "--with-auth-pam" "--localstatedir=/var" "--with-user-smtpd=smtpd" "--with-user-queue=smtpq" "--with-group-queue=smtpq" - "--with-path-socket=/var/run" + "--with-path-socket=/var/run" ; not default (./configure lies) "--with-path-CAfile=/etc/ssl/certs/ca-certificates.crt") #:phases (modify-phases %standard-phases @@ -2039,14 +2095,14 @@ for OpenSMTPD to extend its functionality.") (define-public python-mailmanclient (package (name "python-mailmanclient") - (version "1.0.1") + (version "3.1.1") (source (origin (method url-fetch) (uri (pypi-uri "mailmanclient" version)) (sha256 (base32 - "1cfjh45fgbsax5hjj2inq9nk33dhdvh63xhysc8dhnqidgqgm8c5")))) + "0fdfs5g3pf30v2i7w18pdkv9xnfxmfcv66mzv56dck0a1igq07m3")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; Requires mailman running @@ -2066,7 +2122,7 @@ the GNU Mailman 3 REST API.") (define-public mlmmj (package (name "mlmmj") - (version "1.2.19.0") + (version "1.3.0") (source (origin (method url-fetch) @@ -2074,7 +2130,7 @@ the GNU Mailman 3 REST API.") version ".tar.bz2")) (sha256 (base32 - "1piwvcxkqadjwk5x8jicaiyz9nngmaj3w13ghdqgaki32xd7zk9v")))) + "0hpj10qad821ci11si8xc2qnmkzfn90y13s43fm4fca38f0qjp8w")))) (build-system gnu-build-system) (inputs `(("perl" ,perl))) ; For "contrib/web/" @@ -2125,14 +2181,14 @@ installation on systems where resources are limited. Its features include: (define-public python2-django-mailman3 (package (name "python2-django-mailman3") - (version "1.0.1") + (version "1.1.0") (source (origin (method url-fetch) (uri (pypi-uri "django-mailman3" version)) (sha256 (base32 - "1adxyh8knw9knjlh73xq0jpn5adml0ck4alsv0swakm95wfyx46z")))) + "1xjdkgfjwhgyrp5nxw65dcpcsr98ygj6856sp0bwkrmyxpd1xxk2")))) (build-system python-build-system) (arguments `(#:phases @@ -2236,7 +2292,7 @@ on the fly. Both programs are written in C and are very fast.") (origin (method url-fetch) (uri (string-append - "http://jetmore.org/john/code/swaks/files/swaks-" + "https://jetmore.org/john/code/swaks/files/swaks-" version ".tar.gz")) (sha256 (base32 @@ -2252,7 +2308,7 @@ on the fly. Both programs are written in C and are very fast.") (delete 'configure) (replace 'build (lambda _ - (zero? (system* "pod2man" "doc/ref.pod" "swaks.1")))) + (invoke "pod2man" "doc/ref.pod" "swaks.1"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -2265,7 +2321,7 @@ on the fly. Both programs are written in C and are very fast.") "/bin/swaks") `("PERL5LIB" ":" = (,(getenv "PERL5LIB")))) #t))))) - (home-page "http://jetmore.org/john/code/swaks/") + (home-page "https://jetmore.org/john/code/swaks/") (synopsis "Featureful SMTP test tool") (description "Swaks is a flexible, scriptable, transaction-oriented SMTP test tool. It handles SMTP features and extensions such as TLS, |