guix-devel
[Top][All Lists]
Advanced

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

Re: Proposal: Prefix language-name for language library packages


From: alírio eyng
Subject: Re: Proposal: Prefix language-name for language library packages
Date: Sun, 1 May 2016 03:00:48 +0000

On 4/29/16, Leo Famulari <address@hidden> wrote:
> On Fri, Apr 29, 2016 at 06:31:24PM +0000, alírio eyng wrote:
>> Ludovic Courtès:
>> >what about multiple-language packages?  I’m thinking of
>> >‘c+guile-guile’ and ‘c+siod+python-gimp’.
>> the ideal categorization would be one output for each interface.
>> so "guile" (scheme), "guile:c", "gimp" (gui), "gimp:c", "gimp:siod",
>> "gimp:python", "emacs" (gui), "emacs:tui", "emacs:elisp" (to run
>> "emacs -batch -eval").
>> e.g. guile:c and emacs:tui are pretty useless for me, so i could not
>> install them.
>> it's worth to focus on packages already split: "emacs" (gui+tui+elisp)
>> and "emacs:no-gui" (tui+elisp), linux-libre, ...
>
> I don't think we should split packages up unless there is a pressing
> reason to do it. For example, some our packages have a rarely-used
> component that uses a lot of disk space or has a very large dependency.
> It makes sense to put those in different outputs.
>
> But if we go too far, nobody will be able to tell which package to
> install to accomplish their task.
defining "too far" is a problem, but ok.
in the end splitting things (in packages or outputs) is just an
optimization; with unlimited resources we could just install
everything (ignoring security, untracked dependencies, ...).
note the difference between "ideal categorization" to answer about
multiple-language packages and "suggestions" (that i want
implemented).

>> c nomenclature:
>> packages with c interface currently have nothing, "lib" (prefix or
>> postfix), "c-", "-c", "4c" or "-headers".
>> e.g. "readline" "libunistring" "htslib" "c-ares" "json-c" "icu4c"
>> "mesa-headers" "linux-libre-headers".
>> and lots of synopses with nothing, "C library for", "C library
>> providing", "C library to", "implementation in C" or "written in C".
>
> Again, unless some package's headers take up a large amount of disk
> space, or have some other onerous cost, I don't see a reason to put them
> in a separate output.
note the "currently"; mesa and linux-libre (and emacs) are _already_
split in packages, so a reason should exist.
linux-libre-headers seems to avoid rebuilds.
i guess in mesa the runtime has some onerous cost (probably disk space).
splitting in outputs would be cleaner, and probably more efficient on hydra.
but mesa and linux-libre are corner cases, which my suggestion was
comprehensive enough to handle.

the point is trisquel has a standardized way to express c interface in
names (lib*-dev), guix doesn't; there's lot of evidence it would be
useful (eleven non-standardized ways).



reply via email to

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