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
Fix honouring of nixpkgs.config #135
Conversation
/cc @adamtulinius @johanot @srhb a quick ping to get discussion going, if you have time. 🎐 (see also the alternative PRs) |
@blaggacao First of all, thank you for your interest in morph and for the PR!
on your branch this yields: That said; I understand what you are trying to do. Turns out there are a huge amount of permutations when considering both the Perhaps this is not actually documented in morph README, but in general I would advice against using the nixpkgs.* options, except I've created two examples that works with morph master, which (I hope) achieves what you want: https://gist.github.com/johanot/ec2e314e01d54951753b057f75f65f5b and https://gist.github.com/johanot/164ace22de35ccad8259edfcae26ec07 . Notes on reproducibility with morph: Not setting |
@johanot Thank you for the context. I ended up setting only evalConfig as morph dependency to the pinned nixpkgs version. Akin to what you suggested in this gist. I bet What absolutely strikes me, though, is that eval-config seems to be leaky. And I kind of think this is a bug in Conclusion: It suffices to — I would say — co-pin eval-config together with the modularized pinning of nixpkgs. IMO, having the two conflicting entry points definitely indicates a bug somewhere buried deep in Btw, thanks for the educative discussion! |
@johanot I think the fix for that should look somewhat like this PR: #136 EDIT: Just noticed that it doesn't break |
This is not entirely true. Modularily setting Furthermore, there is this comment from 7 years ago which seems to promote my own conclusions that eval-config should not be passed a I opened a discourse question on the abstract reasoning behind this very PR: https://discourse.nixos.org/t/configured-nixpkgs-vs-modularily-configured-nixpkgs/9300 — seems like a question for someone more familiar with the reasons, the git blame history is not particularly telling (or even seems outdated). |
Closing this for now. It's not really clear to me whether it's safe to do anything like this, and certainly not without extensive testing. This is the sort of thing that feels like the abstraction regarding |
This should honour modules that declare:
lazy evaluation is like magic