-
Notifications
You must be signed in to change notification settings - Fork 245
Make it easier to cache eval-time dependencies. #728
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
To be clear, I'm not talking about materialization or otherwise saving the Nix generated by IFD. I'm totally fine with using IFD, I'd just like to cache all of the exes/libraries needed at eval time. |
Sorry this is not documented, but please try |
That's precisely what I was looking for, thanks! I'll leave this open and add a note to the docs. |
Damn it, I've been doing this completely wrong (down with |
Hmm, I think there's something missing for |
Narrowed it down to something required by
in builder/default.nix. This is the Hoogle used for hoogleLocal in shellFor. |
^^^ This specific case looks to be solved by #738 |
It would be nice to have all of the eval time packages that Haskell.nix requires available in one place. Without this, as far as I can tell one must manually work out the required packages and cache them separately. Things like
nix-store -q -R --include-outputs ...
don't know about dependencies that come as a consequence of IFD. If you get this wrong, users downstream of Haskell.nix (who might not be writing Haskell at all, merely depending on Haskell packages) will need to wait for e.g.nix-tools
to build.Ideally, one would be able to do something like
nix copy --to my-binary-cache $(nix-store -q -R --include-outputs $(nix-instantiate -A haskell-nix.evalDeps))
to get everything needed at eval time on the given platform in their cache. If this already exists and I'm just too dense to find it, a clearer note in the docs might help.The text was updated successfully, but these errors were encountered: