mailmap: Update entries for Nikita.
[jackhill/guix/guix.git] / gnu / packages / mail.scm
index 7fb9a02..6fead2e 100644 (file)
@@ -15,7 +15,7 @@
 ;;; 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, 2018 ng0 <ng0@n0.is>
+;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
 ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
 ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2017, 2018 Rene Saavedra <pacoon@protonmail.com>
-;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2017, 2018, 2020 Rene Saavedra <pacoon@protonmail.com>
+;;; Copyright © 2018, 2019, 2020 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
 ;;; Copyright © 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
+;;; Copyright © 2020 Justus Winter <justus@sequoia-pgp.org>
+;;; Copyright © 2020 Eric Brown <ecbrown@ericcbrown.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
   #:use-module (gnu packages guile)
   #:use-module (gnu packages guile-xyz)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages libidn)
   #:use-module (gnu packages libunistring)
+  #:use-module (gnu packages libunwind)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lsof)
   #:use-module (gnu packages lua)
 
        #:parallel-tests? #f))
     (native-inputs
-     `(("perl" ,perl)))                           ;for 'gylwrap'
-    (inputs
-     `(("dejagnu" ,dejagnu)
-       ("m4" ,m4)
+     `(("perl" ,perl)                           ;for 'gylwrap'
        ("texinfo" ,texinfo)
-       ("guile" ,guile-2.2)
+       ("dejagnu" ,dejagnu)))
+    (inputs
+     `(("m4" ,m4)
+       ("guile" ,guile-3.0)
        ("gsasl" ,gsasl)
        ("gnutls" ,gnutls)
        ("ncurses" ,ncurses)
@@ -247,14 +252,17 @@ software.")
      ;; Libraries are under LGPLv3+, and programs under GPLv3+.
      (list gpl3+ lgpl3+))))
 
-(define-public guile3.0-mailutils
+(define-public guile2.2-mailutils
   (package
     (inherit mailutils)
-    (name "guile3.0-mailutils")
+    (name "guile2.2-mailutils")
     (inputs
-     `(("guile" ,guile-3.0)
+     `(("guile" ,guile-2.2)
        ,@(alist-delete "guile" (package-inputs mailutils))))))
 
+(define-public guile3.0-mailutils
+  (deprecated-package "guile3.0-mailutils" mailutils))
+
 (define-public nullmailer
   (package
     (name "nullmailer")
@@ -381,7 +389,7 @@ aliasing facilities to work just as they would on normal mail.")
 (define-public mutt
   (package
     (name "mutt")
-    (version "1.13.4")
+    (version "1.13.5")
     (source (origin
              (method url-fetch)
              (uri (list
@@ -391,7 +399,7 @@ aliasing facilities to work just as they would on normal mail.")
                                    version ".tar.gz")))
              (sha256
               (base32
-               "016dzx2c0kr9xgnw4nfzpkn4nvpk56rdlcqhrwa820fq8083yzdm"))
+               "0lx65a44b03rbvcrz0y9syrik67fx3hvblxyyvz5l9bb7rdipmvc"))
              (patches (search-patches "mutt-store-references.patch"))))
     (build-system gnu-build-system)
     (inputs
@@ -710,22 +718,21 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
 (define-public mu
   (package
     (name "mu")
-    (version "1.2.0")
+    (version "1.4.4")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/djcb/mu/releases/"
-                                  "download/" (version-major+minor version) "/"
+                                  "download/"  version "/"
                                   "mu-" version ".tar.xz"))
               (sha256
                (base32
-                "0fh5bxvhjqv1p9z783lym8y1k3p4jcc3wg6wf7zl8s6w8krcfd7n"))))
+                "0pmx8zh5fsfhkdl0cr7ydcv6cywhxbgavnjrfr5p2ibz9gx3q3vf"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("glib" ,glib "bin")             ; for gtester
        ("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)
@@ -753,13 +760,14 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
                             "guile/mu/Makefile.in")
                (("share/guile/site/2.0/") "share/guile/site/2.2/"))
              #t))
-         (add-after 'patch-configure 'fix-date-tests
-           ;; Loosen test tolerances to prevent failures caused by daylight
-           ;; saving time (DST).  See: https://github.com/djcb/mu/issues/1214.
+         (add-after 'unpack 'patch-bin-sh-in-tests
            (lambda _
-             (substitute* "lib/parser/test-utils.cc"
-               (("\\* 60 \\* 60, 1 },")
-                "* 60 * 60, 3600 + 1 },"))
+             (substitute* '("guile/tests/test-mu-guile.c"
+                            "mu/test-mu-cmd.c"
+                            "mu/test-mu-cmd-cfind.c"
+                            "mu/test-mu-query.c"
+                            "mu/test-mu-threads.c")
+               (("/bin/sh") (which "sh")))
              #t))
          (add-before 'install 'fix-ffi
            (lambda* (#:key outputs #:allow-other-keys)
@@ -791,53 +799,6 @@ 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 "6b42431052c7cc9a2e147938e1b67f14a93e4ee5")
-        (revision "2"))
-    (package
-      (inherit mu)
-      (name "mumimu")
-      (version (git-version (package-version mu) 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
-                  "044scxmjrckidqx935yza3aqnjyzrmhyvgx2gs2jyf68hl2qzb89"))))
-      (arguments
-       (substitute-keyword-arguments (package-arguments mu)
-         ((#:tests? anything '())
-          #f)
-         ((#:phases phases)
-          `(modify-phases ,phases
-             (replace 'patch-configure
-               (lambda _ (delete-file "autogen.sh") #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")
@@ -1073,6 +1034,38 @@ and search library.")
 (define-public python2-notmuch
   (package-with-python2 python-notmuch))
 
+(define-public muchsync
+  (package
+    (name "muchsync")
+    (version "5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://www.muchsync.org/src/"
+                           "muchsync-" version ".tar.gz"))
+       (sha256
+        (base32 "1k2m44pj5i6vfhp9icdqs42chsp208llanc666p3d9nww8ngq2lb"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("ghc-pandoc" ,ghc-pandoc)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("libcrypto" ,openssl)
+       ("notmuch" ,notmuch)
+       ("sqlite" ,sqlite)
+       ("xapian" ,xapian)))
+    (home-page "http://www.muchsync.org/")
+    (synopsis "Synchronize notmuch mail across machines")
+    (description
+     "Muchsync brings Notmuch to all of your computers by synchronizing your
+mail messages and Notmuch tags across machines.  The protocol is heavily
+pipelined to work efficiently over high-latency networks such as mobile
+broadband.  Muchsync supports arbitrary pairwise synchronization among
+replicas.  A version-vector-based algorithm allows it to exchange only the
+minimum information necessary to bring replicas up to date regardless of which
+pairs have previously synchronized.")
+    (license gpl2+)))
+
 (define-public getmail
   (package
     (name "getmail")
@@ -1126,13 +1119,7 @@ useful features.")
        ("expat" ,expat)
        ("zlib" ,zlib)))
     (arguments
-      '(#:phases
-        (modify-phases %standard-phases
-          (replace 'bootstrap
-            (lambda _
-              (setenv "NOCONFIGURE" "true")
-              (invoke "sh" "autogen.sh"))))
-        #:configure-flags
+      '(#:configure-flags
         '("--disable-static" "--disable-db")))
     (home-page "https://www.etpan.org/libetpan.html")
     (synopsis "Portable middleware for email access")
@@ -1229,14 +1216,14 @@ which can add many functionalities to the base client.")
 (define-public msmtp
   (package
     (name "msmtp")
-    (version "1.8.7")
+    (version "1.8.10")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://marlam.de/msmtp/releases/"
                            "/msmtp-" version ".tar.xz"))
        (sha256
-        (base32 "1waiiksa57byb7gvx1zmh6srvl6r8rvwqklk0slb3iaf4kfbqlws"))))
+        (base32 "041g921rdjiv8bapp61gp4rylq8cckfkcwzyh8bs7xwxs4wpzfna"))))
     (build-system gnu-build-system)
     (inputs
      `(("libsecret" ,libsecret)
@@ -1400,6 +1387,11 @@ facilities for checking incoming mail.")
     (inputs
      `(("bzip2" ,bzip2)
        ("libsodium" ,libsodium)         ; extra password algorithms
+       ;; FIXME: The 'test-backtrace' tests fail on arm when using glibc's
+       ;; backtrace_symbol() function so fallback to using libunwind.
+       ,@(if (target-arm?)
+          `(("libunwind" ,libunwind))
+          '())
        ("linux-pam" ,linux-pam)
        ("lz4" ,lz4)
        ("openssl" ,openssl)
@@ -1923,26 +1915,26 @@ maintained.")
 (define-public khard
   (package
     (name "khard")
-    (version "0.15.1")
+    (version "0.16.1")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri name version))
               (sha256
                (base32
-                "18ba2xgfq8sw0bg6xmlfjpizid1hkzgswcfcc54gl21y2dwfda2w"))))
+                "0fg4qh5gzki5wg958wlpc8a2icnk74gzg33lqxjm755cfnjng7qd"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
-         (add-after 'install 'install-doc
+         (add-after 'install 'install-completions
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
-                    (doc (string-append out "/share/doc/khard")))
-               (copy-recursively "misc/khard" doc)
+                    (zsh (string-append out "/share/zsh/site-functions")))
+               (copy-recursively "misc/zsh" zsh)
                #t))))))
     (native-inputs
      `(("python-setuptools-scm" ,python-setuptools-scm)))
-    (propagated-inputs
+    (inputs
      `(("python-atomicwrites" ,python-atomicwrites)
        ("python-configobj" ,python-configobj)
        ("python-pyyaml" ,python-pyyaml)
@@ -2759,14 +2751,14 @@ tools and applications:
 (define-public balsa
   (package
     (name "balsa")
-    (version "2.5.7")
+    (version "2.6.0")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://pawsa.fedorapeople.org/balsa/"
                            name "-" version ".tar.bz2"))
        (sha256
-        (base32 "0yfqhfpwm1qnwmbpr6dfn2f5w8a8xxq51pn8ypgg0fw973l1c1nx"))))
+        (base32 "0ycidvgy9npd6avxk88sf2ca609m7zb0hzrk1yajrgwb1rfqx68a"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags
@@ -2784,7 +2776,7 @@ tools and applications:
      `(("cyrus-sasl" ,cyrus-sasl)
        ("enchant" ,enchant)
        ("gdk-pixbuf" ,gdk-pixbuf)
-       ("gmime" ,gmime-2.6)
+       ("gmime" ,gmime)
        ("gnutls" ,gnutls)
        ("gpgme" ,gpgme)
        ("gtk+" ,gtk+)
@@ -2792,7 +2784,9 @@ tools and applications:
        ("gtkspell3" ,gtkspell3)
        ("libcanberra" ,libcanberra)
        ("libesmtp" ,libesmtp)
+       ("libical" ,libical)
        ("libnotify" ,libnotify)
+       ("libsecret" ,libsecret)
        ("openldap" ,openldap)
        ("sqlite" ,sqlite)
        ("webkitgtk" ,webkitgtk)))
@@ -2968,11 +2962,11 @@ replacement for the @code{urlview} program.")
     (license gpl2+)))
 
 (define-public mumi
-  (let ((commit "f7d6a54769f5540d498ff51a8c7fccbfcddc5bfb")
-        (revision "10"))
+  (let ((commit "75d34d4d9c20b87d637b027900744da976c5f436")
+        (revision "1"))
     (package
       (name "mumi")
-      (version (git-version "0.0.0" revision commit))
+      (version (git-version "0.0.1" revision commit))
       (source (origin
                 (method git-fetch)
                 (uri (git-reference
@@ -2981,7 +2975,7 @@ replacement for the @code{urlview} program.")
                 (file-name (git-file-name name version))
                 (sha256
                  (base32
-                  "0m2qlr08yghkq1kpf5p8nscdy6gz75pp8r696vg7nanqxsx480aj"))))
+                  "1f69fiz884lbm93wzfs52xlsg7cwhgvzw1y00fqn9gncvkdwng1y"))))
       (build-system gnu-build-system)
       (arguments
        `(#:modules ((guix build gnu-build-system)
@@ -3010,14 +3004,16 @@ replacement for the @code{urlview} program.")
                      (,go ,(getenv "GUILE_LOAD_COMPILED_PATH"))))
                  #t))))))
       (inputs
-       `(("guile-debbugs" ,guile-debbugs)
-         ("guile-email" ,guile-email)
+       `(("guile-email" ,guile-email)
+         ("guile-gcrypt" ,guile-gcrypt)
          ("guile-json" ,guile-json-3)
+         ("guile-redis" ,guile-redis)
          ("guile-sqlite3" ,guile-sqlite3)
          ("guile-syntax-highlight" ,guile-syntax-highlight)
-         ("gnutls" ,gnutls)         ;needed to talk to https://debbugs.gnu.org
-         ("guile" ,guile-2.2)
-         ("mumimu" ,mumimu)))   ;'mumimu' executable recorded in (mumi config)
+         ("guile-webutils" ,guile-webutils)
+         ("guile-xapian" ,guile-xapian)
+         ("guile" ,guile-3.0)
+         ("mailutils" ,mailutils)))
       (native-inputs
        `(("autoconf" ,autoconf)
          ("automake" ,automake)
@@ -3136,3 +3132,35 @@ related tools to process winmail.dat files.")
 complement or replace traditional mailing lists.  Readers may read via NNTP,
 Atom feeds or HTML archives.")
      (license agpl3+))))
+
+(define-public sylpheed
+  (package
+    (name "sylpheed")
+    (version "3.7.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://sylpheed.sraoss.jp/sylpheed/v3.7/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0j9y5vdzch251s264diw9clrn88dn20bqqkwfmis9l7m8vmwasqd"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("bogofilter" ,bogofilter)
+       ("compface" ,compface)
+       ("gnupg" ,gnupg-1)
+       ("gpgme" ,gpgme)
+       ("gtk+-2.0" ,gtk+-2)
+       ("gtkspell" ,gtkspell3)
+       ("libnsl" ,libnsl)
+       ("openldap" ,openldap)
+       ("openssl" ,openssl)))
+    (home-page "https://sylpheed.sraoss.jp/en/")
+    (synopsis "Lightweight GTK+ email client")
+    (description
+     "Sylpheed is a simple, lightweight but featureful, and easy-to-use e-mail
+client.  Sylpheed provides intuitive user-interface.  Sylpheed is also
+designed for keyboard-oriented operation.")
+    (license gpl2+)))