From 0c69a17efdba0c7c3da0f25800a3c3233200e47b Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 6 Dec 2016 19:35:38 +0000 Subject: gnu: Add epic5. * gnu/packages/irc.scm (epic5): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/irc.scm | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 92 insertions(+), 1 deletion(-) (limited to 'gnu/packages/irc.scm') diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 3b63c899eb..1a02fbeebc 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,91 @@ 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"))) + #t)) + (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") + (("/bin/chgrp") "chgrp") + (("/bin/mkdir") "mkdir") + (("/bin/rm") "rm") + (("/bin/mv") "mv") + (("/etc/") "")) + #t)) + (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")))) -- cgit v1.2.3