unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Andreas Enge <andreas@enge.fr>
Cc: guix-devel@gnu.org
Subject: Re: Perl modules
Date: Fri, 06 Dec 2013 23:56:17 +0100	[thread overview]
Message-ID: <87a9gd612m.fsf@gnu.org> (raw)
In-Reply-To: <20131206221704.GA11316@debian> (Andreas Enge's message of "Fri, 6 Dec 2013 23:17:04 +0100")

Andreas Enge <andreas@enge.fr> skribis:

> it looks like I have stumbled upon an enormous dependency tree:
>
> For kdelibs, I would like soprano;
> for soprano, I would like redland;
> for redland, I need rasqal;
> for some tests of rasqal to work, I need perl-xml-dom;
> for perl-xml-dom, I need libwww-perl;
> for libwww-perl, I need a lot of packages:

Ouch.  :-)

> This leads me to the question: How should the packages containing perl
> modules be named, and in which files should they be defined?
>
> So far, there are the following packages in xml.scm:
> perl-xml-parser containing XML-Parser
> perl-xml-parser-perlsax containing libxml-perl
> perl-xml-simple containing XML-Simple
>
> The second one is definitely a misnomer; I was looking for
> XML::Parser::PerlSAX, and a search led me to the documentation page
>   http://search.cpan.org/~kmacleod/libxml-perl-0.08/lib/XML/Parser/PerlSAX.pm
> which is just one of the modules of libxml-perl
>   http://search.cpan.org/~kmacleod/libxml-perl-0.08/
>
> If we follow our standard naming scheme, then the packages should be called
> xml-parser, libxml-perl and xml-simple. Notice that two of them do not
> contain the word "perl". Should we add "perl" in front then, similarly to
> what we do with python modules? How about libxml-perl? Do we keep it as such,
> or should we then call it perl-libxml-perl for consistency?

I would add the ‘perl-’ prefix, unless the package stands alone (for
instance, Hydra would be called ‘hydra’, not ‘perl-hydra’.)

For the rest of the name, I would take the Perl module name.  So
‘XML::Parser’ leads to ‘perl-xml-parser’, etc.

In cases where there’s not a single module tree root, I would stick to
the upstream name, removing any redundant ‘perl’ in the name.  So
‘libxml-perl’ (which provides modules under XML::, Data::Grove, etc.)
would lead to ‘perl-libxml’.

How does that sound?

> Concerning the files, maybe all perl modules should go into perl.scm?

I don’t think so.  For instance, I think it’s OK to have perl-xml-* in
xml.scm, esp. because they are also used by ‘intltool’ for instance.
I’d use perl.scm for any Perl-specific library that doesn’t have a
better home (yeah, that’s very informal...)

WDYT?

Ludo’.

  reply	other threads:[~2013-12-06 22:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-06 22:17 Perl modules Andreas Enge
2013-12-06 22:56 ` Ludovic Courtès [this message]
2013-12-07 20:24   ` Andreas Enge
  -- strict thread matches above, loose matches on Subject: below --
2014-05-11  8:56 Andreas Enge
2014-05-11  9:20 ` John Darrington
2014-05-11  9:34   ` Andreas Enge
2014-05-11  9:54 ` Ludovic Courtès
2014-05-11 10:30   ` Andreas Enge
2014-05-11 11:31     ` Ludovic Courtès
2014-05-11 11:41       ` Andreas Enge
2014-05-11 19:16         ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87a9gd612m.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=andreas@enge.fr \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).