From mboxrd@z Thu Jan 1 00:00:00 1970 From: ng0 Subject: [PATCH] gnu: Add epic5. Date: Tue, 6 Dec 2016 19:35:38 +0000 Message-ID: <20161206193538.22496-2-ng0@libertad.pw> References: <87y41v6evk.fsf@we.make.ritual.n0.is> <20161206193538.22496-1-ng0@libertad.pw> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40144) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cELX6-00057s-Mx for guix-devel@gnu.org; Tue, 06 Dec 2016 14:36:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cELX2-0003KS-7m for guix-devel@gnu.org; Tue, 06 Dec 2016 14:36:08 -0500 Received: from aibo.runbox.com ([91.220.196.211]:47450) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cELX2-0003KG-0Y for guix-devel@gnu.org; Tue, 06 Dec 2016 14:36:04 -0500 Received: from [10.9.9.212] (helo=mailfront12.runbox.com) by bars.runbox.com with esmtp (Exim 4.71) (envelope-from ) id 1cELX0-0000fe-Ti for guix-devel@gnu.org; Tue, 06 Dec 2016 20:36:02 +0100 In-Reply-To: <20161206193538.22496-1-ng0@libertad.pw> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org Cc: ng0 From: ng0 * 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 ;;; Copyright © 2015 Ludovic Courtès ;;; Copyright © 2015, 2016 Efraim Flashner -;;; Copyright © 2016 ng0 +;;; Copyright © 2016 ng0 ;;; ;;; 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