From d594a0b91ed7a3733e563eb8d92562df2919fb62 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Feb 2018 12:57:00 +0000 Subject: [PATCH] gnu: neomutt: Update to 20171215. * gnu/packages/mail.scm (neomutt): Update to 20171215. [inputs]: Move "docbook-xsl" to [native-inputs]. [native-inputs]: Remove "autoconf". Add "tcl", "docbook-xml", "w3m". [argumnets]: Switch to autosetup based build. Add new phases "fix-sasl-test", "fix-docbook". Remove phase "autoconf". --- gnu/packages/mail.scm | 95 ++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 67 insertions(+), 28 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 2ff61bbf9..a01e157c4 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2016 Lukas Gradl ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2016, 2017 Troy Sankey -;;; Copyright © 2016, 2017, 2018 ng0 +;;; Copyright © 2016, 2017, 2018 ng0 ;;; Copyright © 2016 Clément Lassieur ;;; Copyright © 2016, 2017, 2018 Arun Isaac ;;; Copyright © 2016 John Darrington @@ -103,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) @@ -295,7 +296,7 @@ operating systems.") (define-public neomutt (package (name "neomutt") - (version "20171208") + (version "20171215") (source (origin (method url-fetch) @@ -303,7 +304,7 @@ operating systems.") "/archive/" name "-" version ".tar.gz")) (sha256 (base32 - "0dfp7m794ws6vg029zx7wrrjrscrnmi8cvbzqzgxafl97bbjipwz")))) + "1df1c2ynvivna42ifj1lxmgb0bbfih0ggn1afyniadzjm6cnxdvz")))) (build-system gnu-build-system) (inputs `(("cyrus-sasl" ,cyrus-sasl) @@ -318,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) + (zero? (apply system* bash + (string-append (getcwd) "/configure") + flags)))))))) (home-page "https://www.neomutt.org/") (synopsis "Command-line mail reader based on Mutt") (description -- 2.16.1