help-guix
[Top][All Lists]
Advanced

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

Re: various packaging issues


From: Ludovic Courtès
Subject: Re: various packaging issues
Date: Tue, 18 Jul 2017 19:09:34 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)

Hello Dave,

Glad to see another Guix user in HPC!

Dave Love <address@hidden> skribis:

> * I should specify a disjunction of licences like "BSD or GPLv2" rather
>   than the conjunction, which seems to be represented as a list (though
>   the doc doesn't say what a list represents).  I.e. in Fedora-ish
>   rpm-speak, I have A or B, rather than C and D.  Is that possible?

We cannot specify it currently, so what we do is just provide a list of
license objects as the ‘license’ field and explain the meaning of the
list in a comment.

Clearly this can be improved, though we have to pay attention of
overengineering in this domain.

> * RPM specs commonly have multiple sources specified, e.g. source and
>   doc or example tarballs, or configuration files of some kind which
>   aren't patches.  Is there a way to do that?

The ‘source’ field can be only one thing.  However, you can always
specify additional origin objects as inputs.  There are multiple
examples of that.

> * What if I effectively have multiple build systems?  For instance a
>   python interface needs to be built with an explicit
>   "python... setup.py" with an overall autotools build.  While I figured
>   out how to build and install in that situation, at least for one
>   python, it looks messy.  I wonder what the recommended way is,
>   particularly to provide python2 and python3 modules, or for other
>   things like Java or Perl components.

Most of the time there’s one build system that drives the others, so
you’d just specify that one.

If you really need bits of one build system and bits of another, you
still have to choose the “main” one, and then you can manually pick
build phases from the other build system(s) you’re interested in.  I
think there are a few examples of that, like things that combine
‘glib-or-gtk-build-system’ with ‘python-build-system’.  That’s not a
great answer, but that’s what we have so far.

For Python 2 vs. 3, there’s the ‘package-with-python2’ procedure, which
you can see in (gnu packages python).

HTH!

Ludo’.



reply via email to

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