guix-devel
[Top][All Lists]
Advanced

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

guix.el & multiple outputs


From: Ludovic Courtès
Subject: guix.el & multiple outputs
Date: Sat, 06 Sep 2014 23:11:59 +0200
User-agent: Gnus/5.130011 (Ma Gnus v0.11) Emacs/24.3 (gnu/linux)

Taylan Ulrich Bayirli/Kammer <address@hidden> skribis:

> By the way, it might be nice to have an option to list the secondary
> outputs of a package explicitly alongside the normal, as if it were just
> another package.

Currently *Guix Package List* shows, for instance:

  gcc-toolchain        4.9.1      out, debug    debug, out    Complete GCC tool 
chain for C/C++ development

Are you suggesting that it should instead show it as two lines?

  gcc-toolchain        4.9.1      out      yes   Complete GCC tool chain for 
C/C++ development
  gcc-toolchain        4.9.1      debug    yes   Complete GCC tool chain for 
C/C++ development

I think I would prefer it.  (One advantage is that it would allow users
to mark just one specific output, which is not currently possible.)

> So far the concept of outputs and how they're usually hidden from me has
> only caused me (minor) irritations, and I don't really understand why we
> can't just make them separate packages, but I'm ignorant on most Guix
> internals so might just not be "getting" it.

Conceptually, this is similar to the distinction between “binary”
packages and “source” packages in distros like Debian.

Technically, the main reason why things are this way is that in most
cases it’s not possible to have separate build processes (and thus
separate <package> objects) producing the various outputs, in part
because byproducts contain hard-coded file names, which makes them
non-relocatable.

An obvious example is the “debug” output.  Another is packages that
produce both shared libraries and programs linked against those libs:
what shared lib would appear in the RUNPATH of the executables?

HTH,
Ludo’.



reply via email to

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