[Nix-dev] [RFC] Merging of multiple-outputs-sandbox into trunk
Shea Levy
shea at shealevy.com
Sun Nov 6 22:12:04 CET 2011
Hi Nicholas,
On 11/6/11 4:01 PM, Nicolas Pierron wrote:
> Hi Shea,
>
> I guess the context is used to be able to build multiple outputs out
> of one derivation file, am I correct ?
Yes. The idea is actually described in Eelco's thesis, but it's only
recently that he put into place the infrastructure necessary to make it
a reality.
> What can be achieved with multiple outputs ? having variants such as
> headers, libraries, manpage ?
This is the main use case, I think.
> Or multiple versions ? Can we change
> the sources/build procedure and the dependencies based on the "output"
> ?
Unless we have a substitutor, building one output requires building all
of them. Of course, the commands we run to populate each output can be
whatever we want.
Once we have built the output or downloaded it with a substitutor,
though, we won't need to keep around the rest as part of the closure.
One example of the benefits is that the majority of packages would not
have a runtime dependency on the kernel headers (they do now because the
glibc headers do, and the glibc headers aren't currently separated from
glibc itself).
~Shea
More information about the nix-dev
mailing list