guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 3/4] gnu: Add psyclpc.


From: Ricardo Wurmus
Subject: Re: [PATCH 3/4] gnu: Add psyclpc.
Date: Sun, 30 Oct 2016 07:03:48 +0100
User-agent: mu4e 0.9.16; emacs 26.0.50.1

ng0 <address@hidden> writes:

> * gnu/packages/psyc.scm (psyclpc): New variable.
> ---
>  gnu/packages/psyc.scm | 79 
> +++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 79 insertions(+)
>
> diff --git a/gnu/packages/psyc.scm b/gnu/packages/psyc.scm

As before, please add this to “messaging”.

> +
> +;; This commit removes the historic bundled pcre, not released as a tarball 
> so far.
> +(define-public psyclpc
> +  (let* ((commit "8bd51f2a4847860ba8b82dc79348ab37d516011e")
> +         (revision "1"))

Okay.

> +  (package
> +    (name "psyclpc")
> +    (version (string-append "20160821-" revision "." (string-take commit 7)))
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "git://git.psyced.org/git/psyclpc")
> +                    (commit commit)))
> +              (sha256
> +               (base32
> +                "10w4kx9ygcv1lcmd7j4knvjiy8dac1y3hjfv3lhp67jpv6w3iagz"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f ; There are no tests/checks.
> +       #:configure-flags
> +       ;; If you have questions about this part, look at
> +       ;; "src/settings/psyced" and the ebuild.

Please don’t do this.  Guix is not a derivative of Gentoo.  This should
be explained right here.

> +       (list
> +        "--enable-use-tls=yes"
> +        "--enable-use-mccp" ; Mud Client Compression Protocol, leave this 
> enabled.
> +        (string-append "--prefix="
> +                       (assoc-ref %outputs "out"))
> +        ;; src/Makefile: Set MUD_LIB to the directory which contains
> +        ;; the mud data. defaults to MUD_LIB = @libdir@
> +        (string-append "--libdir="
> +                       (assoc-ref %outputs "out")
> +                       "/opt/psyced/world")
> +        (string-append "--bindir="
> +                       (assoc-ref %outputs "out")
> +                       "/opt/psyced/bin")
> +        ;; src/Makefile: Set ERQ_DIR to directory which contains the
> +        ;; stuff which ERQ can execute (hopefully) savely.  Was formerly
> +        ;; defined in config.h. defaults to ERQ_DIR= @libexecdir@
> +        (string-append "--libexecdir="
> +                       (assoc-ref %outputs "out")
> +                       "/opt/psyced/run"))

I don’t think it’s wise to override the target directories to have a
prefix of “/opt/psyced”.  We already have a prefix:
“/gnu/store/<hash>-<name>-<version>/”.  If this is needed at runtime for
some reason it should be done by a service.

> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-before 'configure 'chdir-to-src
> +           ;; We need to pass this as env variables
> +           ;; and manually change the directory.

What is “this”?

> +           (lambda _
> +             (chdir "src")
> +             (setenv "CONFIG_SHELL" (which "sh"))
> +             (setenv "SHELL" (which "sh")))))

CONFIG_SHELL and SHELL are usually set for autoconf.  Why does this not
work in this case?

Please end the phase with #t.

> +       #:make-flags (list "install-all")))
> +    (inputs
> +     `(("zlib" ,zlib)
> +       ("openssl" ,openssl)
> +       ("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")

s/psycLPC is a//

> +    (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.")

Please fix the line lengths.

> +    (license license:gpl2))))

GPLv2 only?

~~ Ricardo



reply via email to

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