diff options
author | Georges Dubus <georges.dubus@gmail.com> | 2020-02-26 15:26:14 +0100 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2020-03-13 20:18:14 +0100 |
commit | 2645e1a1eb41742905394db9d7679a1bb3343eeb (patch) | |
tree | 7b50b3bca204456f1094daf5fdebd1d1e12eb492 /pkgs/development/haskell-modules/make-package-set.nix | |
parent | c2dcdea8c68631fc15ec837d0df7def2b66d0676 (diff) |
cabal2nix: split into a lightweight version and a wrapper
Current, the `cabal2nix` derivation contains both the executable, and a wrapper that adds `nix` and `nix-prefetch-scripts`, which are required for some features. However, when calling `callCabal2nix` to create a derivation from a cabal file at evaluation time, these features are not actually used, but the huge closure of `nix-prefetch-scripts` (which includes multiple vcs, as well as python and perl) still needs to be fetched. This commit splits cabal2nix into a lightweight version that is a standalone static binary (`cabal2nix-unwrapped`), and a wrapper that includes the proper dependencies in the path for full usage of the command line utility (`cabal2nix`). This commit also switches to the default ghc, to reduce the likelyhood of building a different ghc when calling `callCabal2nix`.
Diffstat (limited to 'pkgs/development/haskell-modules/make-package-set.nix')
-rw-r--r-- | pkgs/development/haskell-modules/make-package-set.nix | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix index 17fb1ab8ae850..1418cfef0574d 100644 --- a/pkgs/development/haskell-modules/make-package-set.nix +++ b/pkgs/development/haskell-modules/make-package-set.nix @@ -124,7 +124,7 @@ let sha256Arg = if sha256 == null then "--sha256=" else ''--sha256="${sha256}"''; in buildPackages.stdenv.mkDerivation { name = "cabal2nix-${name}"; - nativeBuildInputs = [ buildPackages.cabal2nix ]; + nativeBuildInputs = [ buildPackages.cabal2nix-unwrapped ]; preferLocalBuild = true; allowSubstitutes = false; phases = ["installPhase"]; |