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
Nix integration improvements #4193
Conversation
Does this not require some changes in documentation? |
It does, but I need it to build first! 😃 For some reason Travis won't run on my personal branch anymore... |
cabal2nix recently changed its generated expressions to read the IN_NIX_SHELL environment variable. Now we need to set this variable when calling nix-instantiate to produce the same result as calling nix-shell.
cabal only cares if it is running in a Nix shell that was started by another cabal process, so we should not read IN_NIX_SHELL; rather, we read a cabal-specific variable for that purpose.
Mention that we allow `shell.nix` or `default.nix`, the same as `nix-shell`.
I think it is the branch whitelist: Lines 7 to 15 in 19d9738
|
Branches with corresponding PRs shouldn't be affected by the whitelist... |
Travis does run on the PR, it just doesn't run on my personal clone anymore (unless I open a PR). That's why I opened this PR before it was really ready. It would be nice if the Travis web interface would indicate that the whitelist is blocking a branch... The branch still appeared in the web interface, so I was very confused why Travis would not build it. |
The Nix expressions for Cabal and cabal-install are updated. Nix expressions are instantiated in a "fake" Nix shell to cope with environment impurities introduced by newer versions of cabal2nix. cabal looks at the
CABAL_IN_NIX_SHELL
environment variable instead ofIN_NIX_SHELL
; it was pointed out that cabal need not care if it is running insidenix-shell
because we only care if we are running in a shell created by cabal.