From 74a6c1e552a6ae8f438e91cbe318882401b440f8 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 21 Sep 2016 18:08:42 +0000 Subject: [PATCH 1/2] gnu: Add psyclpc. * gnu/packages/psyc.scm (psyclpc): New variable. --- gnu/packages/psyc.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/gnu/packages/psyc.scm b/gnu/packages/psyc.scm index 58ce3c6..5a6f1db 100644 --- a/gnu/packages/psyc.scm +++ b/gnu/packages/psyc.scm @@ -24,9 +24,16 @@ #:use-module (guix build-system perl) #:use-module (gnu packages) #:use-module (gnu packages admin) + #:use-module (gnu packages autotools) + #:use-module (gnu packages bison) + #:use-module (gnu packages compression) + #:use-module (gnu packages gettext) #:use-module (gnu packages linux) + #:use-module (gnu packages man) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages tls) #:use-module (gnu packages web)) ;; The URL at sdf.org is a mirror, officially known. The host www.psyced.org @@ -151,3 +158,68 @@ PSYC, useful for all kinds of clients and servers including psyced.") (license (list license:agpl3+ ;; test/test.c is based on a public-domain test license:public-domain)))) + +(define-public psyclpc + (package + (name "psyclpc") + (version "20160821") + (source (origin + (method url-fetch) + (uri (list (string-append "http://www.psyced.org/files/" + name "-" version ".tar.xz") + (string-append "http://krosos.sdf.org/static/unix/" + "perlpsyc-" version ".zip"))) + (sha256 + (base32 + "0c2afcj8b2yr2vmy9sy0528iqs9sw01j6q35lvxicm42gs7vnik2")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; There are no tests/checks. + #:configure-flags (list + "--enable-use-tls=yes" + "--enable-use-mccp" + (string-append "--with-openssl=" + (assoc-ref %build-inputs "openssl")) + (string-append "--prefix=" + (assoc-ref %outputs "out")) + (string-append "--libdir=" ; "-DMUD_LIB=" + (assoc-ref %outputs "out") + "/opt/psyced/world") + (string-append "--bindir=" + (assoc-ref %outputs "out") + "/opt/psyced/bin") + (string-append "--libexecdir=" ; "-DERQ_DIR=" + (assoc-ref %outputs "out") + "/opt/psyced/run")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir-to-src + (lambda _ + (chdir "src") + (setenv "CONFIG_SHELL" (which "sh")) + (setenv "SHELL" (which "sh")))) + (replace 'install + (lambda _ + (zero? (system* "make" "install-all"))))))) + (inputs + `(("zlib" ,zlib) + ("openssl" ,openssl))) + ;; pcre is bundled to ensure the version is compatible. XXX: look into + ;; unbundling it. Upstream should update from pcre 4.5 to 8.38. For + ;; functionality reasons we can not unbundle it now. + ;; ("pcre" ,pcre))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("bison" ,bison) + ("gnu-gettext" ,gnu-gettext) + ("help2man" ,help2man) + ("autoconf" ,autoconf) + ("automake" ,automake))) + (home-page "http://lpc.psyc.eu/") + (synopsis "psycLPC is a multi-user network server programming language") + (description + "LPC is a bytecode language, invented to specifically implement +multi user virtual environments on the internet. This technology is used for +MUDs and also the psyced implementation of the Protocol for SYnchronous Conferencing (PSYC). psycLPC is a fork of LDMud with some new features and +many bug fixes.") + (license license:gpl2))) -- 2.10.0