guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add epic5.


From: Efraim Flashner
Subject: Re: [PATCH] gnu: Add epic5.
Date: Thu, 8 Dec 2016 22:38:05 +0200
User-agent: Mutt/1.7.1 (2016-10-04)

On Tue, Dec 06, 2016 at 07:35:38PM +0000, ng0 wrote:
> From: ng0 <address@hidden>
> 
> * gnu/packages/irc.scm (epic5): New variable.
> ---
>  gnu/packages/irc.scm | 91 
> +++++++++++++++++++++++++++++++++++++++++++++++++++-
>  1 file changed, 90 insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
> index 3b63c899e..74124cf86 100644
> --- a/gnu/packages/irc.scm
> +++ b/gnu/packages/irc.scm
> @@ -3,7 +3,7 @@
>  ;;; Copyright © 2014 Kevin Lemonnier <address@hidden>
>  ;;; Copyright © 2015 Ludovic Courtès <address@hidden>
>  ;;; Copyright © 2015, 2016 Efraim Flashner <address@hidden>
> -;;; Copyright © 2016 ng0 <address@hidden>
> +;;; Copyright © 2016 ng0 <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -32,9 +32,11 @@
>    #:use-module (gnu packages autogen)
>    #:use-module (gnu packages autotools)
>    #:use-module (gnu packages base)
> +  #:use-module (gnu packages backup)
>    #:use-module (gnu packages compression)
>    #:use-module (gnu packages curl)
>    #:use-module (gnu packages cyrus-sasl)
> +  #:use-module (gnu packages databases)
>    #:use-module (gnu packages file)
>    #:use-module (gnu packages gettext)
>    #:use-module (gnu packages glib)
> @@ -47,6 +49,7 @@
>    #:use-module (gnu packages perl)
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages python)
> +  #:use-module (gnu packages ruby)
>    #:use-module (gnu packages qt)
>    #:use-module (gnu packages tcl)
>    #:use-module (gnu packages tls)
> @@ -329,3 +332,89 @@ and extensible with plugins and scripts.")
>  embedded web server, translations (fr, fi, it, hu, de), and many
>  other enhancements and bug fixes.")
>      (license license:bsd-3)))
> +
> +(define-public epic5
> +  (package
> +    (name "epic5")
> +    (version "2.0.1")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append 
> "http://ftp.epicsol.org/pub/epic/EPIC5-PRODUCTION/";
> +                                  name "-" version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "1ap73d5f4vccxjaaq249zh981z85106vvqmxfm4plvy76b40y9jm"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:test-target "test"
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-perl
> +           (lambda _
> +             (substitute* "regress/crash-irc"
> +               (("perl5") (which "perl")))))
> +         (add-after 'unpack 'patch-bsdinstall
> +           ;; If we just remove /bin/ some part of the bsdinstall breaks.
> +           ;; Furthermore bsdinstalls has a reference to /etc/chmod here, 
> which
> +           ;; means if we leave /etc/ in, install fails.
> +           (lambda _
> +             (substitute* "bsdinstall"
> +               (("/bin/strip") "strip")
> +               (("/bin/cp") "cp")
> +               (("/bin/chmod") "chmod")
> +               (("/etc/chown") "chown")
> +               (("/bin/chgrp") "chgrp")
> +               (("/bin/mkdir") "mkdir")
> +               (("/bin/rm") "rm")
> +               (("/bin/mv") "mv")
> +               (("/etc/") ""))))
> +         (replace 'configure
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             ;; The tarball uses a very old version of autconf. It does not
> +             ;; understand extra flags like `--enable-fast-install', so
> +             ;; we need to invoke it with just what it understands.
> +             (let ((out (assoc-ref outputs "out")))
> +               ;; 'configure' doesn't understand '--host'.
> +               ,@(if (%current-target-system)
> +                     `((setenv "CHOST" ,(%current-target-system)))
> +                     '())
> +               (setenv "CONFIG_SHELL" (which "bash"))
> +               (setenv "SHELL" (which "bash"))
> +               (zero?
> +                (system* "./configure"
> +                         (string-append "--prefix=" out)
> +                         "--with-ipv6" "--with-libarchive"
> +                         ;; We use libressl because openssl does not come
> +                         ;; with the lib/libssl.a which is needed for epic5.
> +                         ;; XXX: No matter which implementation is chosen,
> +                         ;; epic5 fails to connect to tls ports of roundrobin
> +                         ;; irc networks. This however is believed to be an
> +                         ;; protocol issue at epic5 related to ircd.
> +                         (string-append "--with-ssl="
> +                                        (assoc-ref %build-inputs "libressl"))
> +                         (string-append "--with-tcl="
> +                                        (assoc-ref %build-inputs "tcl")
> +                                        "/lib/tclConfig.sh")))))))))
> +    (inputs
> +     `(("libressl" ,libressl)
> +       ("ncurses" ,ncurses)
> +       ("libarchive" ,libarchive) ; CHANGELOG: "Support for loading zip 
> files"
> +       ("perl" ,perl)
> +       ("tcl" ,tcl)
> +       ("ruby" ,ruby)))
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)))
> +    (home-page "http://epicsol.org";)
> +    (synopsis "Epic5 IRC Client")
> +    (description
> +     "EPIC is a IRC client that has been under active development for
> +over 20 years.  It is stable and mature, and offers an excellent ircII
> +interface for those who are accustomed to the ircII way of doing things.")
> +    (license (list license:bsd-3
> +                   license:isc
> +                   license:bsd-4
> +                   ;; The epic license is equal to the standard three-clause
> +                   ;; BSD license except that you are not permitted to 
> remove the
> +                   ;; "Redistribution is permitted" clause of the license if 
> you
> +                   ;; distribute binaries.
> +                   license:non-copyleft "http://epicsol.org/copyright";))))
> -- 
> 2.11.0
> 
> 

I made some minor changes to the substitutes* to return #t and pushed

-- 
Efraim Flashner   <address@hidden>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]