aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorng0 <ng0@we.make.ritual.n0.is>2016-12-06 19:35:38 +0000
committerEfraim Flashner <efraim@flashner.co.il>2016-12-08 22:36:15 +0200
commit0c69a17efdba0c7c3da0f25800a3c3233200e47b (patch)
tree2543696889ecff9ab5490f95c34fa48950ccf514
parentc32f0e30591fa3fab3e0d2bede28639e7c7053a8 (diff)
downloadguix-0c69a17efdba0c7c3da0f25800a3c3233200e47b.tar
guix-0c69a17efdba0c7c3da0f25800a3c3233200e47b.tar.gz
gnu: Add epic5.
* gnu/packages/irc.scm (epic5): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
-rw-r--r--gnu/packages/irc.scm93
1 files changed, 92 insertions, 1 deletions
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 <lemonnierk@ulrar.net>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 ng0 <ng0@libertad.pw>
;;;
;;; 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"))))