[Nix-dev] understanding Nix: dependencies
Vladimír Čunát
vcunat at gmail.com
Thu Jan 10 20:26:48 CET 2013
On 01/10/2013 08:07 PM, Shea Levy wrote:
> The long answer is: Currently, the way we build most of our packages the
> build time dependencies (e.g. where do I get my library headers) and the
> run time dependencies (e.g. which library do I link to) are the same, so
> updating the run time dependencies will require a rebuild. There are
> some proposed solutions to take one package built against one version of
> a library and relink it to another without recompiling it (so you still
> need to 'rebuild' the package, but the rebuild is trivial), but a)
> libraries are never as good at compatibility as they claim and b) we've
> found that the cost of recompiling everything isn't actually all that
> high, all things considered. In general, the question of whether and how
> to separate what something was compiled against and what it uses is
> still open, but what we have for now works very well.
I second Shea, only an additional note:
there are external-runtime dependencies (let me call them that), like
executables from other packages only run when *executing* something in
the package (like firefox plugins). These can be added via wrappers, so
in case the external executables are rebuilt you only need to rebuild
the wrappers (which is trivial) and not the whole package.
Vlada
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3251 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.science.uu.nl/pipermail/nix-dev/attachments/20130110/6e6b6f85/attachment-0001.bin
More information about the nix-dev
mailing list