guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] gnu: Add epic5.


From: ng0
Subject: Re: [PATCH] gnu: Add epic5.
Date: Thu, 08 Dec 2016 21:28:52 +0000

Efraim Flashner <address@hidden> writes:

> 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

Thanks! I wonder why it can't cope with round robin ircs (tls)
networks.. I have to try and get in contact with the upstream to
see if this is a common issue.

-- 
♥Ⓐ  ng0  | ng0.chaosnet.org



reply via email to

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