X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/18e4d11bdf3d8061dd5eec9681174b8960ed8cdb..c3c56a4eb585b54012e92a995edc6e70f815c224:/gnu/packages/mail.scm diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index de57748b33..168e626d7e 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -22,7 +22,7 @@ ;;; Copyright © 2016, 2018 Marius Bakke ;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2017 Kyle Meyer -;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2017, 2018 Rene Saavedra ;;; Copyright © 2018, 2019 Pierre Langlois ;;; Copyright © 2018 Alex Vong @@ -405,7 +405,7 @@ operating systems.") (define-public neomutt (package (name "neomutt") - (version "20191102") + (version "20191207") (source (origin (method git-fetch) @@ -414,7 +414,7 @@ operating systems.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0x5f9zbvxsxg5y2ir4xq4xw1q2snaxkidhdyhcxw5ljw3qqwhlyq")))) + (base32 "147yjpqnsbfy01fhsflxlixk0985r91a6bjmqq3cwmf7gka3sihm")))) (build-system gnu-build-system) (inputs `(("cyrus-sasl" ,cyrus-sasl) @@ -489,7 +489,7 @@ operating systems.") (apply invoke bash (string-append (getcwd) "/configure") flags))))))) - (home-page "https://www.neomutt.org/") + (home-page "https://neomutt.org/") (synopsis "Command-line mail reader based on Mutt") (description "NeoMutt is a command-line mail reader which is based on mutt. @@ -499,7 +499,7 @@ It adds a large amount of new and improved features to mutt.") (define-public gmime (package (name "gmime") - (version "3.2.4") + (version "3.2.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/gmime/" @@ -507,7 +507,7 @@ It adds a large amount of new and improved features to mutt.") "/gmime-" version ".tar.xz")) (sha256 (base32 - "096hh4g6z343kncw9svcrzv05d41n4v2q5k9jsm6gc40w30ag7i4")))) + "0ndsg1z1kq4w4caascydvialpyn4rfbjdn7xclzbzhw53x85cxgv")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -768,6 +768,63 @@ messages you need; in addition, it allows you to view messages, extract attachments, create new maildirs, and so on.") (license gpl3+))) +(define mumimu + ;; This is a fork of mu for use in Mumi that stores message bug IDs in its + ;; database. It also renames the library to "mumimu" to avoid confusion. + (let ((commit "ad30b5e9c85f0465aeeeac461d8c32d95775d450") + (revision "1")) + (package + (inherit mu) + (name "mumimu") + ;; TODO The version here used to be (package-version guile-email), but + ;; that code caused problems + (version (git-version "0.2.2" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.elephly.net/software/mumimu.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1y8r8csvkyxncgpi469dir4n4sga4z9xdzc18qh5s8bk29qj689n")))) + (arguments + (substitute-keyword-arguments (package-arguments mu) + ((#:tests? anything '()) + #f) + ((#:phases phases) + `(modify-phases ,phases + (replace 'patch-configure + (lambda _ + (delete-file "autogen.sh") + (substitute* "configure.ac" + ;; Use latest Guile + (("guile-2.0") "guile-2.2")) + (substitute* '("guile/Makefile.am" + "guile/mu/Makefile.am") + (("share/guile/site/2.0/") "share/guile/site/2.2/")) + #t)) + (replace 'fix-ffi + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "guile/mumimu.scm" + (("\"libguile-mu\"") + (format #f "\"~a/lib/libguile-mumimu\"" + (assoc-ref outputs "out")))) + #t)) + (delete 'install-emacs-autoloads))) + ((#:configure-flags flags) + '("--disable-gtk" + "--disable-webkit" + "--disable-mu4e")))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("glib" ,glib "bin") + ("tzdata" ,tzdata-for-tests) + ("texinfo" ,texinfo)))))) + (define-public alot (package (name "alot") @@ -1157,14 +1214,14 @@ which can add many functionalities to the base client.") (define-public msmtp (package (name "msmtp") - (version "1.8.6") + (version "1.8.7") (source (origin (method url-fetch) (uri (string-append "https://marlam.de/msmtp/releases/" "/msmtp-" version ".tar.xz")) (sha256 - (base32 "1qa260xrm0fzlwxpjvgvq39m4dfkskjlyb7m4y2vlr8c8d3z29b6")))) + (base32 "1waiiksa57byb7gvx1zmh6srvl6r8rvwqklk0slb3iaf4kfbqlws")))) (build-system gnu-build-system) (inputs `(("libsecret" ,libsecret) @@ -1203,21 +1260,25 @@ delivery.") (define-public exim (package (name "exim") - (version "4.92.3") + (version "4.93.0.4") (source (origin (method url-fetch) - (uri (list (string-append "https://ftp.exim.org/pub/exim/exim4/exim-" - version ".tar.bz2") - (string-append "https://ftp.exim.org/pub/exim/exim4/old/exim-" - version ".tar.bz2"))) + (uri (let ((file-name (string-append "exim-" version ".tar.xz"))) + (list (string-append "https://ftp.exim.org/pub/exim/exim4/" + file-name) + ;; ‘Fix’ releases (exim-x.y.z.f) are kept separately. + (string-append "https://ftp.exim.org/pub/exim/exim4/fixes/" + file-name) + ;; After a new non-fix release, the old one is moved here. + (string-append "https://ftp.exim.org/pub/exim/exim4/old/" + file-name)))) (sha256 - (base32 - "0d0h0j9pl3yf089sc59ia60m3dqnkb3qh1qaz6vxfg2ja2mnm5i9")))) + (base32 "01g4sfycv13glnmfrapwhjbdw6z1z7w5bwjldxjmglwfw5p3czak")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb-5.3) ; ‘#error Version 6 and later BDB API is not supported’ - ("gnutls" ,gnutls) + ("gnutls" ,gnutls/dane) ("gzip" ,gzip) ("bzip2" ,bzip2) ("xz" ,xz) @@ -1227,7 +1288,8 @@ delivery.") ("libxaw" ,libxaw))) (native-inputs `(("pcre" ,pcre "bin") - ("perl" ,perl))) + ("perl" ,perl) + ("pkg-config" ,pkg-config))) (arguments '(#:phases (modify-phases %standard-phases @@ -1256,9 +1318,11 @@ delivery.") (("(COMPRESS_COMMAND=).*" all var) (string-append var gzip "/bin/gzip\n")) (("(ZCAT_COMMAND=).*" all var) - (string-append var gzip "/bin/zcat\n"))) - ;; This file has hardcoded names for tools despite the zcat - ;; configuration above. + (string-append var gzip "/bin/zcat\n")) + (("# (USE_GNUTLS(|_PC)=.*)" all line) + (string-append line "\n"))) + ;; This file has hard-coded relative file names for tools despite + ;; the zcat configuration above. (substitute* '("src/exigrep.src") (("'zcat'") (string-append "'" gzip "/bin/zcat'")) (("'bzcat'") (string-append "'" bzip2 "/bin/bzcat'")) @@ -1274,9 +1338,19 @@ delivery.") (let ((bash (assoc-ref inputs "bash"))) (substitute* '("scripts/Configure-eximon") (("#!/bin/sh") (string-append "#!" bash "/bin/sh")))) - #t))) - #:make-flags '("INSTALL_ARG=-no_chown") - ;; No 'check' target. + #t)) + (add-before 'build 'build-reproducibly + (lambda _ + ;; The ‘compilation number’ is incremented for every build from the + ;; same source tree. It appears to vary over different (parallel?) + ;; builds. Make it a ‘constant number’ instead. + (substitute* "src/version.c" + (("#include \"cnumber.h\"") "1"))))) + #:make-flags + (list "CC=gcc" + "INSTALL_ARG=-no_chown") + ;; No 'check' target. There is a test suite in test/, which assumes that + ;; certain build options were (not) used and that it can freely ‘sudo’. #:tests? #f)) (home-page "https://www.exim.org/") (synopsis @@ -1292,7 +1366,7 @@ facilities for checking incoming mail.") (define-public dovecot (package (name "dovecot") - (version "2.3.8") + (version "2.3.9.2") (source (origin (method url-fetch) @@ -1300,7 +1374,7 @@ facilities for checking incoming mail.") (version-major+minor version) "/" "dovecot-" version ".tar.gz")) (sha256 - (base32 "0jdng27hqqagjy6v7ymd0xflbv5dbc1rhh450nk39ar6pw1qsxy5")))) + (base32 "1yc6hi4hqg4hcc4495sf4m5f1lnargphi6dawj43if21vncgp127")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1631,14 +1705,14 @@ header.") (define-public perl-email-sender (package (name "perl-email-sender") - (version "1.300033") + (version "1.300034") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/" "Email-Sender-" version ".tar.gz")) (sha256 - (base32 "1flbnzyng4g0h1aksbsip1qa6sawgfihvblspqc0xsis8g9vcza7")))) + (base32 "14aj9kqa9dr2bdhzn2qvjj2mffj8wjb5397z8qw7qg057fk3ib05")))) (build-system perl-build-system) (native-inputs `(("perl-capture-tiny" ,perl-capture-tiny))) @@ -2078,18 +2152,17 @@ converts them to maildir format directories.") (define-public mpop (package (name "mpop") - (version "1.4.6") + (version "1.4.7") (source (origin (method url-fetch) (uri (string-append "https://marlam.de/mpop/releases/" "mpop-" version ".tar.xz")) (sha256 - (base32 "0q4ifzvl1gcndvqqqk7n9mc599r4s2knxjc7alflwb366fql58gv")))) + (base32 "0c6n5afn9pr4p7gxkv462lysrw52w9fhvavzm99c78dcp9dj5xnk")))) (build-system gnu-build-system) (inputs - `(("gnutls" ,gnutls) - ("libidn" ,libidn))) + `(("gnutls" ,gnutls))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://marlam.de/mpop/") @@ -2098,9 +2171,9 @@ converts them to maildir format directories.") fetchmail replacement. mpop supports multiple accounts, header based mail filtering, delivery -to mbox files, maildir folders or a Mail Delivery Agent (MDA), -TLS/SSL, several authentication methods, Internationalized Domain -Names (IDN) and SOCKS proxies.") +to mbox files, maildir folders or an @acronym{MDA, Mail Delivery Agent}, +TLS/SSL, several authentication methods, @acronym{IDN, Internationalized Domain +Names} and SOCKS proxies.") (license gpl3+))) (define-public mhonarc @@ -2805,15 +2878,14 @@ killed threads.") (define-public pan (package (name "pan") - (version "0.145") + (version "0.146") (source (origin (method url-fetch) (uri (string-append "http://pan.rebelbase.com/download/releases/" version "/source/" name "-" version ".tar.bz2")) (sha256 - (base32 - "1b4wamv33hprghcjk903bpvnd233yxyrm18qnh13alc8h1553nk8")))) + (base32 "17agd27sn4a7nahvkpg0w39kv74njgdrrygs74bbvpaj8rk2hb55")))) (arguments `(#:configure-flags '("--with-gtk3" "--with-gtkspell" "--with-gnutls" "--enable-libnotify" "--enable-manual" @@ -2953,12 +3025,24 @@ replacement for the @code{urlview} program.") (modules '((guix build utils))) (snippet '(begin - ;; Install .go files to $prefix/lib instead of - ;; $prefix/share. (substitute* "Makefile.am" + ;; Install .go files to $prefix/lib instead of + ;; $prefix/share. (("^godir[[:space:]]*=.*") "godir = \ -$(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n")) +$(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n") + + ;; Install assets. + (("^assetsdir.*" _) + "\ +assetsdir = $(pkgdatadir)/assets +assetscssdir = $(assetsdir)/css +assetsimgdir = $(assetsdir)/img +assetsjsdir = $(assetsdir)/js + +assetscss_DATA = $(wildcard assets/css/*) +assetsimg_DATA = $(wildcard assets/img/*) +assetsjs_DATA = $(wildcard assets/js/*)\n")) #t)))) (build-system gnu-build-system) (arguments @@ -2969,6 +3053,8 @@ $(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n")) #:imported-modules ((guix build guile-build-system) ,@%gnu-build-system-modules) + #:configure-flags '("--localstatedir=/var") + #:phases (modify-phases %standard-phases (add-after 'install 'wrap-executable @@ -2991,7 +3077,9 @@ $(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n")) ("guile-fibers" ,guile-fibers) ("guile-json" ,guile-json-1) ("guile-syntax-highlight" ,guile-syntax-highlight) - ("guile" ,guile-2.2))) + ("gnutls" ,gnutls) ;needed to talk to https://debbugs.gnu.org + ("guile" ,guile-2.2) + ("mumimu" ,mumimu))) ;'mumimu' executable recorded in (mumi config) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake)