>From c5298208448e0a46b6162801bbb17ae1d9e72a5c Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 15 Feb 2017 03:20:38 +0000 Subject: [PATCH] gnu: Add alpine. * gnu/packages/mail.scm (alpine): New variable. --- gnu/packages/mail.scm | 73 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 71 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 65fa9df54..463ed2850 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 Troy Sankey -;;; Copyright © 2016, 2017 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Clément Lassieur ;;; Copyright © 2016, 2017 Arun Isaac ;;; Copyright © 2016 John Darrington @@ -40,6 +40,7 @@ (define-module (gnu packages mail) #:use-module (gnu packages) + #:use-module (gnu packages aspell) #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages backup) @@ -63,6 +64,7 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages guile) #:use-module (gnu packages flex) + #:use-module (gnu packages kerberos) #:use-module (gnu packages libcanberra) #:use-module (gnu packages libevent) #:use-module (gnu packages libidn) @@ -70,6 +72,7 @@ #:use-module (gnu packages lua) #:use-module (gnu packages m4) #:use-module (gnu packages ncurses) + #:use-module (gnu packages openldap) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages python) @@ -85,6 +88,7 @@ #:use-module (gnu packages ruby) #:use-module (gnu packages samba) #:use-module (gnu packages screen) + #:use-module (gnu packages tcl) #:use-module (gnu packages tls) #:use-module (gnu packages networking) #:use-module (gnu packages web) @@ -95,7 +99,7 @@ #:select (gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ non-copyleft (expat . license:expat) bsd-3 public-domain bsd-4 isc (openssl . license:openssl) - bsd-2 x11-style agpl3)) + bsd-2 x11-style agpl3 asl2.0)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) @@ -2148,3 +2152,68 @@ Options can be specified in environment variables, configuration files, and the command line allowing maximum configurability and ease of use for operators and scripters.") (license gpl2+))) + +(define-public alpine + (package + (name "alpine") + (version "2.21") + (source + (origin + (method url-fetch) + ;; There are two versions: the plain continuation of Alpine without extra + ;; patches and the version which adds extra fixes. Every distro uses + ;; the patched version, and so do we to not break expectations. + ;; http://patches.freeiz.com/alpine/readme/README.patches + (uri (string-append "http://patches.freeiz.com/alpine/patches/alpine-" + version "/alpine-" version ".tar.xz")) + (sha256 + (base32 + "1k9hcfjywfk3mpsl71hjza3nk6icgf1b6xxzgx10kdzg5yci5x5m")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "CC=gcc") + #:configure-flags (list (string-append "--with-ssl-include-dir=" + (assoc-ref %build-inputs "openssl") + "/include/openssl") + (string-append "--with-ssl-dir=" + (assoc-ref %build-inputs "openssl")) + (string-append "--with-ssl-certs-dir=" + "/etc/ssl/certs/") + (string-append "--with-ssl-lib-dir=" + (assoc-ref %build-inputs "openssl") + "/lib") + (string-append "--with-interactive-spellcheck=" + (assoc-ref %build-inputs "aspell") + "/bin/aspell")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-reproducible + (lambda _ + ;; This removes time-dependent code to make alpine reproducible. + (substitute* "pico/blddate.c" + (("%02d-%s-%d") "1970-01-01")) + (substitute* (list "alpine/Makefile.in" + "web/src/alpined.d/Makefile.in") + (("`date`") "1970-01-01")) + #t))))) + (inputs + `(("ncurses" ,ncurses) + ("openssl" ,openssl) + ("gnutls" ,gnutls) + ("openldap" ,openldap) + ("cyrus-sasl" ,cyrus-sasl) + ("mit-krb5" ,mit-krb5) + ("aspell" ,aspell) + ("tcl" ,tcl) + ("linux-pam" ,linux-pam))) + (home-page "http://patches.freeiz.com/alpine/") + (synopsis "Alternatively Licensed Program for Internet News and Email") + (description + "Alpine is a text-based mail and news client. Alpine includes several +tools and applications: address@hidden address@hidden alpine, the Alpine mailer address@hidden pico, the standalone text editor, GNU nano's predecessor address@hidden pilot, the standalone file system navigator address@hidden enumerate\n") + (license asl2.0))) -- 2.12.2