guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] gnu: perl-net-psyc


From: ng0
Subject: Re: [PATCH] gnu: perl-net-psyc
Date: Thu, 16 Jun 2016 06:18:15 +0000

On 2016-06-15(04:53:34PM-0500), Eric Bavier wrote:
> On Wed, 15 Jun 2016 16:41:48 +0000
> ng0 <address@hidden> wrote:
>
> > Optional dependencies incoming in the future, Perl Curses being the
> > first one.
> > They are optional and need to explanation as the binaries themselves
> > complaint (and give you motivation to package them ;) )
> >
> >
> > On 2016-06-15(04:39:30PM+0000), ng0 wrote:
> > > From 10eeb85733c67c4fdd5cd4df84457a565e45971e Mon Sep 17 00:00:00 2001
> > > From: ng0 <address@hidden>
> > > Date: Wed, 15 Jun 2016 16:30:30 +0000
> > > Subject: [PATCH] gnu: Add perl-net-psyc.
> > >
> > > * gnu/packages/perl.scm (perl-net-psyc): New Variable.
> > > ---
> > >  gnu/packages/perl.scm | 71 
> > > +++++++++++++++++++++++++++++++++++++++++++++++++++
> > >  1 file changed, 71 insertions(+)
> > >
> > > diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
> > > index e7e7967..8772d0a 100644
> > > --- a/gnu/packages/perl.scm
> > > +++ b/gnu/packages/perl.scm
> > > @@ -7,6 +7,7 @@
> > >  ;;; Copyright © 2016 Mark H Weaver <address@hidden>
> > >  ;;; Copyright © 2016 Jochem Raat <address@hidden>
> > >  ;;; Copyright © 2016 Efraim Flashner <address@hidden>
> > > +;;; Coypright © 2016 ng0 <address@hidden>
> > >  ;;;
> > >  ;;; This file is part of GNU Guix.
> > >  ;;;
> > > @@ -28,6 +29,7 @@
> > >    #:use-module (gnu packages)
> > >    #:use-module (guix packages)
> > >    #:use-module (guix download)
> > > +  #:use-module (guix git-download)
> > >    #:use-module (guix build-system gnu)
> > >    #:use-module (guix build-system perl))
> > >
> > > @@ -3865,6 +3867,75 @@ cycle.  Functions called in the package itself 
> > > will still be bound by their
> > >  name, but they won't show up as methods on your class or instances.")
> > >      (license (package-license perl))))
> > >
> > > +;; highly optional dependencies: rxaudio (mp3 binary from 1996)
> > > +;; opt. perl: MP3::List (psycmp3), Curses (psycion), pwd.pl
> > > +;; (psyccmd), SGI::FAM module (psycfilemonitor); for full
> > > +;; functionality package all except MP3::List.
> > > +(define-public perl-net-psyc
>
> Is it not possible to use the zip at
> http://perlpsyc.psyc.eu/perlpsyc-1.0.zip ?  If there are bug fixes in
> the git repo that we cannot do without, could you give a brief summary
> in a comment?

As far as I know there were minor bugfixes done I did not want to
do on my own plus the author dislikes snapshots.. Very rarely releases
happens, and those are equal to certain commits.
In the ebuild, versions are equal to commit numbers.

What happened since 1.0:

commit 4176f5236e73e99391c0877152d5596ab0a9b154
    psycion: allow /usr/lib path
commit 5134eaa2a751db479c4d9ee4eb14defd0df4810a
    NEWS.txt
commit bd63f70975091a2614cc0f303c7b0ed0d82ed372
    The formalities of a 1.0 release.
commit f604153f48dd935df67686469b7d9bb3eac1704e
    +
commit caeb32761cb41d5f0bd63f89d82d973a38766f6c
    +
commit d8c60d0296351d2d59784f655c85c83239647dbe
    This is perlpsyc 1.0

Mostly I assume it was because the paths were old. I will get a reply later 
today.

>
> > > +  (let ((commit "4176f5236e73e99391c0877152d5596ab0a9b154"))
> > > +    (package
> > > +      (name "perl-net-psyc")
> > > +      (version (string-append "1.0" "-"
> > > +                              (string-take commit 8)))
> > > +      (source (origin
> > > +                (method git-fetch)
> > > +                (uri (git-reference
> > > +                      (url "git://git.psyced.org/git/perlpsyc")
> > > +                      (commit commit)))
> > > +                (file-name (string-append name "-" version))
> > > +                (sha256
> > > +                 (base32
> > > +                  
> > > "19msvr1kriqa6n8cnk8z96xd5i0v5cy2y52jsj08vaj79b4m7sph"))))
> > > +      (build-system perl-build-system)
> > > +      (arguments
> > > +       `(#:phases
> > > +         (modify-phases %standard-phases
> > > +           (delete 'configure)
> > > +           (delete 'build)
> > > +           (replace 'install
>
> Could you add a comment saying that the source distribution's
> INSTALL.txt says to roll-your-own installation?

Okay.

>
> > > +             (lambda* (#:key outputs #:allow-other-keys)
> > > +               (let* ((out (assoc-ref outputs "out"))
> > > +                      (doc (string-append out 
> > > "/share/doc/perl-net-psyc"))
> > > +                      (libpsyc (string-append out "/lib/psyc/ion"))
> > > +                      (libperl (string-append out "/lib/perl5/site_perl/"
> > > +                                              ,(package-version perl)))
> > > +                      (bin (string-append out "/bin")))
> > > +                 (copy-recursively "lib/perl5" libperl)
> > > +                 (copy-recursively "lib/psycion" libpsyc)
> > > +                 (copy-recursively "bin" bin)
> > > +                 (install-file "cgi/psycpager" (string-append doc 
> > > "/cgi"))
> > > +                 (copy-recursively "contrib" (string-append doc 
> > > "/contrib"))
>
> I doesn't seem clear to me that the contents of "contrib" are covered
> under the same license as the rest of the package.

See below.

>
> > > +                 (copy-recursively "hooks" (string-append doc "/hooks"))
> > > +                 (copy-recursively "sdj" (string-append doc "/sdj"))
> > > +                 (install-file "README.txt" doc)
> > > +                 (install-file "TODO.txt" doc)
> > > +                 #t)))
> > > +           (add-after 'install 'wrap-programs
> > > +             (lambda* (#:key outputs #:allow-other-keys)
> > > +               ;; Make sure all executables in "bin" find the Perl 
> > > modules
> > > +               ;; provided by this package at runtime.
> > > +               (let* ((out  (assoc-ref outputs "out"))
> > > +                      (bin  (string-append out "/bin/"))
> > > +                      (path (string-append out "/lib/perl5/site_perl")))
> > > +                 (for-each (lambda (file)
> > > +                             (wrap-program file
> > > +                               `("PERL5LIB" ":" prefix (,path))))
> > > +                           (find-files bin "\\.*$"))
> > > +                 ;; XXX: hooks/dpa2psyc,examples/{recvtest,sendtest},
> > > +                 ;; cgi/psycpager,contrib/{makenoise,keefchat
> > > +                 ;; contrib/MovableTypeBlog/plugins/psyc.pl
>
> Should this XXX be removed?

No, as those are not covered by the wrapper but possibly need a wrapper,
but are not the primary focus. It is optional to fix them.

>
> > > +                 #t))))))
> > > +      (description
> > > +       "Net::PSYC with support for TCP, UDP, Event.pm, IO::Select and
> > > +Gtk2 event loops. This package includes 12 applications and
>
> Perhaps "@code{Net::PSYC} is a Perl implementation of the PSYC protocol
> with support for ..."?
>
> > > +additional scripts: psycion, a @uref{http://about.psyc.eu, PSYC} chat 
> > > client,
> > > +remotor, a control console for @uref{https://torproject.org, tor} 
> > > router, and many more.
> > > +Further information is included in the package source and on the 
> > > website.")
> > > +      (synopsis "Perl implementation of PSYC protocol")
> > > +      (home-page "http://perlpsyc.psyc.eu/";)
> > > +      ;;dual licensed: gpl2+ Artistic
> > > +      (license (list gpl2+ (package-license perl))))))
>
> LICENSE.txt says "GPL-2", and I cannot see an "or later" in the source
> files themselves.  In fact, the few files I see that mention a license
> have just the "under the same terms as perl itself" verbiage.  So
> maybe leave out the "gpl2+"?
>
> Could you send an updated patch?
>
> Thanks,
> `~Eric

I asked lynX about this and got the reply that it is GPL-2+ and Artistic.

I will point him to this post and ask for direct replies.

--
♥Ⓐ ng0
For non-prism friendly talk find me on
psyced.org / loupsycedyglgamf.onion

Attachment: signature.asc
Description: Digital signature


reply via email to

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