;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015, 2016, 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Al McElrath <hello@yrns.org>
-;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Leo Famulari <leo@famulari.name>
;;; 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 Nikita <nikita@n0.is>
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2016, 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
;;; 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–2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2020 Rene Saavedra <pacoon@protonmail.com>
-;;; Copyright © 2018, 2019, 2020 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2018, 2019, 2020, 2021 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 © 2018, 2019, 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2020 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>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
-;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org>
+;;; Copyright © 2020, 2021 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
-;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
+;;; Copyright © 2020, 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
+;;; Copyright © 2020 divoplade <d@divoplade.fr>
+;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Benoit Joly <benoit@benoitj.ca>
;;;
;;; This file is part of GNU Guix.
;;;
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages mail)
+ #:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages aspell)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages golang)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages groff)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages ragel)
+ #:use-module (gnu packages regex)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
#:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
+ #:use-module (guix build-system go)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
+(define-public abook
+ (package
+ (name "abook")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://abook.sourceforge.io/devel/abook-" version ".tar.gz"))
+ (sha256
+ (base32 "1yf0ifyjhq2r003pnpn92mn0924bn9yxjifxxj2ldcsgd7w0vagh"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ ;; Fix "undefined reference to `field_id'" errors.
+ (add-after 'unpack 'fix-build-with-recent-gcc
+ (lambda _
+ (substitute* '("database.c" "database.h")
+ (("^inline int" all) (string-append "extern " all)))))
+ ;; Fix following error during bootstrap: "gettext infrastructure
+ ;; mismatch: using a Makefile.in.in from gettext version 0.18 but the
+ ;; autoconf macros are from gettext version 0.20".
+ (add-before 'bootstrap 'fix-gettext-macro-version
+ (lambda _
+ (substitute* "po/Makefile.in.in"
+ (("0.18") "0.20"))))
+ (replace 'bootstrap
+ (lambda _
+ (invoke "aclocal")
+ (invoke "automake" "--add-missing")
+ (invoke "autoconf"))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("gettext" ,gettext-minimal)))
+ (inputs
+ `(("ncurses" ,ncurses)
+ ("readline" ,readline)))
+ (home-page "https://abook.sourceforge.io/")
+ (synopsis "Text-based addressbook")
+ (description
+ "Abook is a text-based addressbook program designed to use with Mutt mail
+client.")
+ (license license:gpl2)))
+
(define-public anubis
(package
(name "anubis")
;; Libraries are under LGPLv3+, and programs under GPLv3+.
(list license:gpl3+ license:lgpl3+))))
+(define-public go-gitlab.com-shackra-goimapnotify
+ (let ((commit "832bc7112db9b28e28d69e90b91ea6c005244c9b")
+ (revision "0"))
+ (package
+ (name "go-gitlab.com-shackra-goimapnotify")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/shackra/goimapnotify")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1h27kshx4vwl5k6vc2szsq3d701fzs4gczjypz907f8hj0lrnjmy"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "gitlab.com/shackra/goimapnotify"))
+ (propagated-inputs
+ `(("go-github-com-emersion-go-imap" ,go-github-com-emersion-go-imap)
+ ("go-github-com-emersion-go-imap-idle" ,go-github-com-emersion-go-imap-idle)
+ ("go-github-com-emersion-go-sasl" ,go-github-com-emersion-go-sasl)
+ ("go-github-com-sirupsen-logrus" ,go-github-com-sirupsen-logrus)
+ ("go-golang-org-x-text" ,go-golang-org-x-text)))
+ (synopsis "Execute scripts on IMAP mailbox changes.")
+ (description
+ "Script to execute scripts on IMAP mailbox changes (new/deleted/updated
+messages) using IDLE. Implemented in Go.")
+ (home-page "https://gitlab.com/shackra/goimapnotify")
+ (license license:gpl3+))))
+
(define-public guile2.2-mailutils
(package
(inherit mailutils)
(define-public fetchmail
(package
(name "fetchmail")
- (version "6.4.13")
+ (version "6.4.18")
(source
(origin
(method url-fetch)
(version-major+minor version) "/"
"fetchmail-" version ".tar.xz"))
(sha256
- (base32 "1qablzgwx3a516vdhckx3pv716x9r7nyfyr6fbncif861c3cya3x"))))
+ (base32 "17r5zfk9yh7jhgdb360dlzx5fx9lsbmalasx6zgxw9v9vjycjb9h"))))
(build-system gnu-build-system)
(inputs
`(("openssl" ,openssl)))
(define-public mutt
(package
(name "mutt")
- (version "1.14.7")
+ (version "2.0.6")
(source (origin
(method url-fetch)
(uri (list
version ".tar.gz")))
(sha256
(base32
- "0r58xnjgkw0kmnnzhb32mk5gkkani5kbi5krybpbag156fqhgxg4"))
+ "165mpivdhvhavglykwlz0hss2akxd6i6l40rgxs29mjzi52irqw1"))
(patches (search-patches "mutt-store-references.patch"))))
(build-system gnu-build-system)
(inputs
(define-public neomutt
(package
(name "neomutt")
- (version "20200313")
+ (version "20210205")
(source
(origin
(method git-fetch)
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1k4k07l6h5krc3fx928qvdq3ssw9fxn95aj7k885xlckd2i1lnb5"))))
+ (base32 "15kr9nvb4j8lx5rl2yapv231rbp4sbn709vv82pfhx5717x3yf00"))))
(build-system gnu-build-system)
(inputs
`(("cyrus-sasl" ,cyrus-sasl)
("docbook-xsl" ,docbook-xsl)
("docbook-xml" ,docbook-xml-4.2)
("w3m" ,w3m)
- ("tcl" ,tcl)))
+ ("tcl" ,tcl)
+
+ ;; Test file data for the unit tests included in the neomutt source.
+ ("neomutt-test-files"
+ ,(let ((commit "8629adab700a75c54e8e28bf05ad092503a98f75"))
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/neomutt/neomutt-test-files")
+ (commit commit)))
+ (file-name (git-file-name "neomutt-test-files" commit))
+ (sha256
+ (base32 "1ci04nqkab9mh60zzm66sd6mhsr6lya8wp92njpbvafc86vvwdlr")))))))
(arguments
`(#:test-target "test"
#:configure-flags
(setenv "CONFIG_SHELL" bash)
(apply invoke bash
(string-append (getcwd) "/configure")
- flags)))))))
+ flags))))
+ (add-before 'check 'prepare-test-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (copy-recursively (assoc-ref inputs "neomutt-test-files") "tests")
+ (with-directory-excursion "tests"
+ (setenv "NEOMUTT_TEST_DIR" (getcwd)) ; must be absolute
+ (invoke "bash" "setup.sh")
+ #t))))))
(home-page "https://neomutt.org/")
(synopsis "Command-line mail reader based on Mutt")
(description
(define-public altermime
(package
(name "altermime")
- (version "0.3.10")
+ (version "0.3.11")
(source (origin
(method url-fetch)
(uri (string-append "http://pldaniels.com/altermime/altermime-"
version ".tar.gz"))
(sha256
(base32
- "0vn3vmbcimv0n14khxr1782m76983zz9sf4j2kz5v86lammxld43"))))
+ "15zxg6spcmd35r6xbidq2fgcg2nzyv1sbbqds08lzll70mqx4pj7"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "CC=gcc"
(define-public mu
(package
(name "mu")
- (version "1.4.13")
+ (version "1.4.15")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/djcb/mu/releases/"
"mu-" version ".tar.xz"))
(sha256
(base32
- "13kfpr77qrnp3i5qnb5zd03frd3fdviggnl50973gdk0hr7m0smj"))))
+ "0ailz0k5fdgq6gdl5m7jxy315b7qn5ckj6xwd49hsiq9vqblwlpp"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
(name "alot")
(version "0.9.1")
(source (origin
- (method url-fetch)
+ (method git-fetch)
;; package author intends on distributing via github rather
;; than pypi:
;; https://github.com/pazz/alot/issues/877#issuecomment-230173331
- (uri (string-append "https://github.com/pazz/alot/archive/"
- version ".tar.gz"))
- (file-name (string-append "alot-" version ".tar.gz"))
+ (uri (git-reference
+ (url "https://github.com/pazz/alot")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1r0x3n2fxi6sfq3paz8a4vn2mmyqaznj1207wa7jl0ixnjqilb7f"))))
+ "0s94m17yph1gq9f2svipb3bbwbw1s4j3zf2xkg5h91006v8286r6"))))
(build-system python-build-system)
(arguments
`(#:phases
(define-public notmuch
(package
(name "notmuch")
- (version "0.31.1")
+ (version "0.31.4")
(source (origin
(method url-fetch)
(uri (string-append "https://notmuchmail.org/releases/notmuch-"
version ".tar.xz"))
(sha256
(base32
- "0pmvwynd4f4kr38agd5m1ml20lq854knc9da7yiqfi776j8fg2rj"))))
+ "0magnyjjhhv11nwcm2596hdxszrj61y69i0hmwqdc3v6cxjvcqc6"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(define-public getmail
(package
(name "getmail")
- (version "5.14")
+ (version "5.15")
(source
(origin
(method url-fetch)
(uri (string-append "http://pyropus.ca/software/getmail/old-versions/"
"getmail-" version ".tar.gz"))
(sha256
- (base32 "1hcrd9h4g12f5gvl1djsbchcjry02ghq4icdr897s8v48pkrzagk"))))
+ (base32 "0ahn2jyj4ka996qzs99id59pwxv6sqxp61g7drcf53rzzigq0lyl"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; no tests
(sha256
(base32 "0g7an003simfdn7ihg9yjv7hl2czsmjsndjrp39i7cad8icixscn"))))
(build-system gnu-build-system)
- (native-inputs `(("autoconf" ,autoconf-wrapper)
+ (native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(define-public msmtp
(package
(name "msmtp")
- (version "1.8.13")
+ (version "1.8.15")
(source
(origin
(method url-fetch)
(uri (string-append "https://marlam.de/msmtp/releases/"
"/msmtp-" version ".tar.xz"))
(sha256
- (base32 "1fcv99nis7c6yc63n04cncjysv9jndrp469gcfxh54aiinmlbadd"))))
+ (base32 "1klrj2a77671xb6xa0a0iyszhjb7swxhmzpzd4qdybmzkrixqr92"))))
(build-system gnu-build-system)
(inputs
`(("libsecret" ,libsecret)
(("(ZCAT_COMMAND=).*" all var)
(string-append var gzip "/bin/zcat\n"))
(("# (USE_GNUTLS(|_PC)=.*)" all line)
- (string-append line "\n")))
+ (string-append line "\n"))
+ (("# (AUTH_CRAM_MD5=yes)" all line) line)
+ (("# (AUTH_DOVECOT=yes)" all line) line)
+ (("# (AUTH_EXTERNAL=yes)" all line) line)
+ (("# (AUTH_PLAINTEXT=yes)" all line) line)
+ (("# (AUTH_SPA=yes)" all line) line)
+ (("# (AUTH_TLS=yes)" all line) line))
;; This file has hard-coded relative file names for tools despite
;; the zcat configuration above.
(substitute* '("src/exigrep.src")
(package
(name "dovecot")
;; Also update dovecot-pigeonhole when updating to a new minor version.
- (version "2.3.11.3")
+ (version "2.3.14")
(source
(origin
(method url-fetch)
(version-major+minor version) "/"
"dovecot-" version ".tar.gz"))
(sha256
- (base32 "1p5gp8jbavcsaara5mfn5cbrnlxssajnchczbgmmfzr7228fmnfk"))))
+ (base32 "0jm3p52z619v7ajh533g2g7d790k82fk0w7ry0zqlm8ymzrxgcy8"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(let ((dovecot-version (version-major+minor (package-version dovecot))))
(package
(name "dovecot-pigeonhole")
- (version "0.5.11")
+ (version "0.5.14")
(source
(origin
(method url-fetch)
"https://pigeonhole.dovecot.org/releases/" dovecot-version "/"
"dovecot-" dovecot-version "-pigeonhole-" version ".tar.gz"))
(sha256
- (base32 "1w5mryv6izh1gv7davnl94rb0pvh5bxl2bydzbfla1b83x22m5qb"))
+ (base32 "1lmjzz4kd90wbdslacybizd1dks4bhwmrx39lj8b19naldw0zjk8"))
(modules '((guix build utils)))
(snippet
'(begin
(define-public isync
(package
(name "isync")
- (version "1.3.3")
+ (version "1.4.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/isync/isync/"
version "/isync-" version ".tar.gz"))
(sha256 (base32
- "10n8ykag0q3ws6fc15xqyg3v980v5nq3kzpablly2rh2z7vkn8gj"))))
+ "0l01880fcyqn6xq9n8236ha5n2a3wl5g8rmv22z8nv5hgfsxndhd"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
(inputs
`(("bdb" ,bdb)
("cyrus-sasl" ,cyrus-sasl)
- ("openssl" ,openssl-1.0)
+ ("openssl" ,openssl)
("zlib" ,zlib)))
(home-page "https://isync.sourceforge.io/")
(synopsis "Mailbox synchronization program")
(define-public mblaze
(package
(name "mblaze")
- (version "0.2")
+ (version "1.1")
(source
(origin
(method git-fetch)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0p97zfl35ilrnrx9ynj82igsb698m9klikfaicw5jhjpf6qp2n3y"))))
+ (base32 "1bir977vnqs76g8jgv1yivqw0wk2kn56l3l5r4w2ipix3fir138y"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
(define-public mpop
(package
(name "mpop")
- (version "1.4.11")
+ (version "1.4.13")
(source
(origin
(method url-fetch)
(uri (string-append "https://marlam.de/mpop/releases/"
"mpop-" version ".tar.xz"))
(sha256
- (base32 "1gcxvhin5y0q47svqbf90r5aip0cgywm8sq6m84ygda7km8xylwv"))))
+ (base32 "1hbx69d6ivbvjajrcp54fdb3g1ms4ydj0ybf3bfhlravqrk88jdk"))))
(build-system gnu-build-system)
(inputs
`(("gnutls" ,gnutls)))
(define-public opensmtpd
(package
(name "opensmtpd")
- (version "6.7.1p1")
+ (version "6.8.0p2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.opensmtpd.org/archives/"
"opensmtpd-" version ".tar.gz"))
(sha256
- (base32 "1jh8vxfajm1mvp1v5yh6llrhjzv0n9fgab88mlwllwqynhcfjy3l"))))
+ (base32 "05sd7bmq29ibnqbl2z53hiyprfxzf0qydfdaixs68rz55wqhbgsi"))))
(build-system gnu-build-system)
(inputs
`(("bdb" ,bdb)
;; See: https://github.com/OpenSMTPD/OpenSMTPD/issues/1069.
(add-after 'unpack 'fix-smtpctl-encrypt-bug
(lambda _
- (substitute* "smtpd/smtpctl.c"
+ (substitute* "usr.sbin/smtpd/smtpctl.c"
(("\"encrypt\", \"--\",")
"\"encrypt\","))
#t))
;; Fix some incorrectly hard-coded external tool file names.
(add-after 'unpack 'patch-FHS-file-names
(lambda _
- (substitute* "smtpd/smtpctl.c"
+ (substitute* "usr.sbin/smtpd/smtpctl.c"
;; ‘gzcat’ is auto-detected at compile time, but ‘cat’ isn't.
(("/bin/cat") (which "cat")))
- (substitute* "smtpd/mda_unpriv.c"
+ (substitute* "usr.sbin/smtpd/mda_unpriv.c"
(("/bin/sh") (which "sh")))
#t))
;; OpenSMTPD provides a single smtpctl utility to control both the
messages with @acronym{DKIM, DomainKeys Identified Mail} (RFC 4871).")
(license license:expat)))
+(define-public opensmtpd-filter-rspamd
+ (package
+ (name "opensmtpd-filter-rspamd")
+ (version "0.1.7")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/poolpOrg/filter-rspamd")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32 "1qhrw20q9y44ffgx5k14nvqc9dh47ihywgzza84g0zv9xgif7hd5"))
+ (file-name (git-file-name name version))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/poolpOrg/filter-rspamd"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'set-bootstrap-variables
+ (lambda* (#:key outputs inputs #:allow-other-keys)
+ ;; Tell the build system where to install binaries
+ (let* ((out (assoc-ref outputs "out"))
+ (libexec (string-append out "/libexec/opensmtpd")))
+ (setenv "GOBIN" libexec)))))))
+ (native-inputs
+ `(("opensmtpd" ,opensmtpd)))
+ (home-page "https://github.com/poolpOrg/filter-rspamd")
+ (synopsis "OpenSMTPd filter to request an Rspamd analysis")
+ (description
+ "The @command{filter-rspamd} OpenSMTPd filter implements the
+Rspamd protocol and allows OpenSMTPd to request an Rspamd analysis of
+an SMTP transaction before a message is committed to queue.")
+ (license license:isc)))
+
(define-public mailman
(package
(name "mailman")
(define-public balsa
(package
(name "balsa")
- (version "2.6.1")
+ (version "2.6.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://pawsa.fedorapeople.org/balsa/"
"balsa-" version ".tar.bz2"))
(sha256
- (base32 "1xkxx801p7sbfkn0bh3cz85wra4xf1z1zhjqqc80z1z1nln7fhb4"))))
+ (base32 "1w0239i01mw4wwwy7xh8gz7zgl5khwvfm5wy35x0swvvax021mai"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
("gnutls" ,gnutls)
("gpgme" ,gpgme)
("gtk+" ,gtk+)
- ("gtksourceview" ,gtksourceview-3)
+ ("gtksourceview" ,gtksourceview)
("gtkspell3" ,gtkspell3)
+ ("libassuan" ,libassuan) ; in gpgme.pc Requires
("libcanberra" ,libcanberra)
("libesmtp" ,libesmtp)
("libical" ,libical)
(define-public imapfilter
(package
(name "imapfilter")
- (version "2.6.16")
+ (version "2.7.5")
(source
(origin
(method git-fetch)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0f65sg6hhv6778fxwsz4hvarbm97dsb8jj0mg7a9qs273r35pqck"))))
+ (base32 "0a7f85r3axwclzw1s79zl2l8222nj2gklvvq33w9qv0dz5n71dcx"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
- "CC=gcc")
+ (string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
- (native-inputs
+ (inputs
`(("lua" ,lua)
- ("pcre" ,pcre)
+ ("pcre2" ,pcre2)
("openssl" ,openssl)))
(home-page "https://github.com/lefcha/imapfilter")
(synopsis "IMAP mail filtering utility")
(define-public urlscan
(package
(name "urlscan")
- (version "0.9.5")
+ (version "0.9.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "urlscan" version))
(sha256
- (base32 "07vcwirap0p4dkqrqblfn1q017slgd8m6qyijvbi3gxnr09pbyx2"))))
+ (base32 "09lxi7dhn49fpb3ij4cgrhj3qqqqs9rcxbjb7p9smw5wblrqpzga"))))
(build-system python-build-system)
(propagated-inputs
`(("python-urwid" ,python-urwid)))
(license license:gpl2+)))
(define-public mumi
- (let ((commit "5a578328199bab51a147fbadbce12c8d06959ed6")
- (revision "2"))
+ (let ((commit "9f070bd90adc67064cd8aff4e40f303d5957ef4a")
+ (revision "5"))
(package
(name "mumi")
(version (git-version "0.0.1" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "0hngv82gd19l4q7nnbf97r120z1yagsmkp0x3lc8haza5q4mc12c"))))
+ "1ym1j3nzy8qhd1ydadccbgm0nckkmnq3vnz9qh9x8rasx7zg1ldp"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(,go ,(getenv "GUILE_LOAD_COMPILED_PATH"))))
#t))))))
(inputs
- `(("guile-email" ,guile-email)
+ `(("guile-email" ,guile-email-latest)
("guile-fibers" ,guile-fibers)
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-3)
(file-name (git-file-name name version))
(sha256
(base32
- "07h48s5qf08503pp9kafqbwipdqghiif22ghki7z8j67gyp04l6l"))))
+ "07h48s5qf08503pp9kafqbwipdqghiif22ghki7z8j67gyp04l6l"))
+ (patches (search-patches "ytnef-CVE-2021-3403.patch"
+ "ytnef-CVE-2021-3404.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
related tools to process winmail.dat files.")
(license license:gpl2+)))
+(define-public l2md
+ ;; No official release.
+ (let ((commit "f7286b49bb5fce25c898c143712fe34ad4d7864e")
+ (revision "1"))
+ (package
+ (name "l2md")
+ (version (git-version "0.1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.kernel.org/pub/scm/linux/kernel/git/dborkman/l2md.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0hxz8i70v1xgv30zjclfvmjqszn073c7i8nwmswi2lr6vd7cklvp"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libgit2" ,libgit2)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ;no configure scripts
+ (delete 'check) ;no tests
+ (add-before 'install 'mkdir
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((l2md (string-append (assoc-ref outputs "out") "/bin")))
+ (mkdir-p l2md)))))
+ #:make-flags
+ (list ,(string-append "CC=" (cc-for-target))
+ (string-append "PREFIX=" %output "/bin"))))
+ (home-page
+ "https://git.kernel.org/pub/scm/linux/kernel/git/dborkman/l2md.git")
+ (synopsis "Import public-inbox archives via Git")
+ (description
+ "The @command{l2md} command line tool imports public-inbox archives via
+Git and exports them in maildir format or to an MDA through a pipe.")
+ (license license:gpl2))))
+
(define-public public-inbox
(package
(name "public-inbox")
(define-public rspamd
(package
(name "rspamd")
- (version "2.6")
+ (version "2.7")
(source
(origin
(method git-fetch)
(url "https://github.com/rspamd/rspamd")
(commit version)))
(sha256
- (base32 "0vwa7k2s2bkfb8w78z5izkd6ywjbzqysb0grls898y549hm8ii70"))
+ (base32 "0fw6nbfc3xqapzq5nydakwgpw6cz6vb3qby2aqlr06lzf87d3hic"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
score.")
(home-page "https://www.rspamd.com/")
(license license:asl2.0)))
+
+(define-public crm114
+ (package
+ (name "crm114")
+ (version "20100106")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://crm114.sourceforge.net/tarballs/crm114-"
+ version "-BlameMichelson.src.tar.gz"))
+ (sha256
+ (base32
+ "0awcjc5j2mclkkpbjyijj9mv8xjz3haljvaj0fyc4fm4xir68qpv"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ ((guix build emacs-build-system) #:prefix emacs:)
+ (guix build utils)
+ (ice-9 string-fun))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-build-system)
+ (guix build emacs-utils))
+ #:make-flags (list (string-append "prefix=" %output)
+ "LDFLAGS=") ; disable static linking
+ ;; Test suite is not fully automated. It requires a human to read the
+ ;; results and determine if the tests have passed.
+ #:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'fix-build
+ (lambda _
+ ;; Inline functions can only be used from the same compilation
+ ;; unit. This causes the build to fail.
+ (substitute* "crm_svm_matrix.c"
+ (("^inline ") ""))))
+ (add-before 'install 'pre-install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; Install maillib.crm library.
+ (install-file "maillib.crm" (string-append out "/share/crm"))
+ ;; Set absolute store paths.
+ (substitute* "mailreaver.crm"
+ (("insert maillib.crm")
+ (string-append "insert " out "/share/crm/maillib.crm"))
+ (("\\\\/bin\\\\/ls")
+ (string-replace-substring (which "ls") "/" "\\/"))
+ ((":\\*:trainer_invoke_command:")
+ (string-append out "/bin/mailtrainer.crm")))
+ ;; Install mail related crm scripts.
+ (for-each (lambda (file)
+ (install-file file (string-append out "/bin")))
+ (list "mailfilter.crm" "mailreaver.crm" "mailtrainer.crm"))
+ ;; Create emacs site-lisp directory so that the install phase
+ ;; can install crm-mode.
+ (mkdir-p (string-append out "/share/emacs/site-lisp")))))
+ ;; Run phases from the emacs build system.
+ (add-after 'install 'make-autoloads
+ (assoc-ref emacs:%standard-phases 'make-autoloads))
+ (add-after 'make-autoloads 'enable-autoloads-compilation
+ (assoc-ref emacs:%standard-phases 'enable-autoloads-compilation))
+ (add-after 'enable-autoloads-compilation 'emacs-build
+ (assoc-ref emacs:%standard-phases 'build))
+ (add-after 'emacs-build 'validate-compiled-autoloads
+ (assoc-ref emacs:%standard-phases 'validate-compiled-autoloads)))))
+ (inputs
+ `(("tre" ,tre)))
+ (native-inputs
+ `(("emacs" ,emacs-minimal)))
+ (home-page "http://crm114.sourceforge.net/")
+ (synopsis "Controllable regex mutilator")
+ (description "CRM114 is a system to examine incoming e-mail, system log
+streams, data files or other data streams, and to sort, filter, or alter the
+incoming files or data streams according to the user's wildest desires.
+Criteria for categorization of data can be via a host of methods, including
+regexes, approximate regexes, a Hidden Markov Model, Orthogonal Sparse
+Bigrams, WINNOW, Correllation, KNN/Hyperspace, or Bit Entropy (or by other
+means--it's all programmable).")
+ (license license:gpl3)))