-
Notifications
You must be signed in to change notification settings - Fork 19
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
Allow user to disable use of buildFromCabalSdist
#220
Conversation
@roberth What's your opinion on leaving this option disabled by default (as opposed to enabling it by default)? Because these kinds of issues are not straightforward to debug without knowledge of the nixpkgs Haskell infrastructure. |
We should try not to add more configuration for things that should just work, and haskell-flake has a role in CI to ensure release-worthiness. Building from sdist is an important part of that. Either using Taking a step back though, what's the point of having a broken
I see this as the purpose of tools like |
I tried using Here's the repro for the (1) case in the PR description: Since I can't contribute to nixpkgs anyway, I'd be in favour of keeping this option (albeit as undocumented), but your points are all valid - so we should leave it enabled by default. Obviously if someone resolves this upstream we wouldn't even need this PR. Is there an official nixpkgs bug for this? |
Doesn't seem so; no open issues for the
Shouldn't that use the right Note the docs on the
If
I could help out with the communication if needed. |
Or perhaps even ignore the little performance optimization and just go for |
Let's do that then: #221 |
Using
buildFromCabalSdist
, as we do here:haskell-flake/nix/build-haskell-package.nix
Lines 15 to 16 in 7384172
haskell-flake/nix/build-haskell-package.nix
Lines 40 to 43 in 7384172
is problematic, because it uses its own
cabal-install
from a different package set calledbuildHaskellPackages
. Thus, the user's own own overrides are not respected when buildingcabal-install
.See:
To make this user configurable I made it part of the package settings (
all.nix
). So toggling this is now same as toggling haddock/jailbreak/check and the like, viz. this patch for https://github.com/srid/haskell-multi-nix :