[Nix-dev] Evaluation time vs build time

Profpatsch mail at profpatsch.de
Sat Jun 3 22:22:11 CEST 2017


On 17-05-31 08:07pm, Linus Heckemann wrote:
> On 31/05/17 18:01, Judson Lester wrote:
> As far as I understand it, it's mostly true — I believe it *is* actually
> possible, just strongly discouraged and absolutely not accepted in
> nixpkgs because (iiuc) of the mess of dependencies it can create.

That is true.

something like
```
let
  fooSrc = fechgit {};
  fooDerivation = import "${fooSrc}/default.nix"
in
  fooDerivation
```

will build the fooSrc derivation at *evaluation time*
(blocking the evaluator) before building the derivation
imported from the fooSrc derivation output.

Because the hash of `fooSrc` has to be given,
the default.nix in `fooSrc` is also fixed-input.

It is strongly discouraged in nixpkgs,
though I sometimes use it for private projects.

-- 
Proudly written in Mutt with Vim on NixOS.
Q: Why is this email five sentences or less?
A: http://five.sentenc.es
May take up to five days to read your message. If it’s urgent, call me.


More information about the nix-dev mailing list