Subject: Re: bug#26320: Alpine News and Mail client

From: ng0 <[email-masked]>
Date: Sun, 2 Apr 2017 17:47:56 +0000

Kei Kebreau transcribed 7.4K bytes:
> ng0 <[email-masked]> writes:
> 
> > The appended patch adds Alpine. It was discontinued by its previous
> > developer team and is now being developed at
> > "http://patches.freeiz.com/alpine/index.html". There are two versions,
> > both released by the same developer. The one which every distro uses is
> > the one with extra, functionality enhancing and bugs fixing patches applied.
> > This is the one I picked to not break expectations of people.
> >
> > It compiles, builds, and can be started. I don't know this client and
> > only worked on it to complete the dinosaurs of mail clients collection
> > as some people still seem to use Alpine on other distros.
> > I haven't tested sending mail or receiving mail for obvious reasons. 
> > and I do not trust applications I rarely use.
> >
> >>From 932623f11a7f11173051c4f87683fe52052642ba Mon Sep 17 00:00:00 2001
> > From: ng0 <[email-masked]>
> > 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 | 56 +++++++++++++++++++++++++++++++++++++++++++++++++--
> >  1 file changed, 54 insertions(+), 2 deletions(-)
> >
> > diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> > index e36f884ea..d62437aa5 100644
> > --- a/gnu/packages/mail.scm
> > +++ b/gnu/packages/mail.scm
> > @@ -15,7 +15,7 @@
> >  ;;; Copyright © 2016 Lukas Gradl <[email-masked]>
> >  ;;; Copyright © 2016 Alex Kost <[email-masked]>
> >  ;;; Copyright © 2016 Troy Sankey <[email-masked]>
> > -;;; Copyright © 2016, 2017 <[email-masked]>
> > +;;; Copyright © 2016, 2017 ng0 <[email-masked]>
> >  ;;; Copyright © 2016 Clément Lassieur <[email-masked]>
> >  ;;; Copyright © 2016, 2017 Arun Isaac <[email-masked]>
> >  ;;; Copyright © 2016 John Darrington <[email-masked]>
> > @@ -39,6 +39,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)
> > @@ -62,6 +63,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)
> > @@ -69,6 +71,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)
> > @@ -84,6 +87,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)
> > @@ -94,7 +98,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)
> > @@ -2141,3 +2145,51 @@ 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"))))
> 
> Could you add a snippet that corrects the time-dependent code? Grepping
> (is that a word?) for "datestamp" in alpine's source directory should
> show you the offending code.

Okay.

> > +    (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"))))
> > +    (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.")
> 
> Maybe this can be a bit more descriptive, but then again, the mutt mail
> client has a fairly modest description as well.

I don't know. It's a text bsaed email and news client. It features its
own text editor (so it says) called pico. That's all I know. I don't
know wether the editor can be used on its own or just in application.

> > +    (license asl2.0)))
> 
> Other than that, the patch looks good. Sadly I'm not a user of alpine
> so I can't test its functionality. Do any alpine users want to step up
> to the plate and try this out?