diff options
author | Peter Simons <simons@cryp.to> | 2017-11-08 16:25:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-08 16:25:16 +0100 |
commit | c7203efb7d9dcd6aa410863f16ce9b385fcd27f7 (patch) | |
tree | f42edf9906166ca0a6d7378bf437eaefb1c26403 /pkgs/development | |
parent | bb0b0822ef39d987952a04ae61fb8071eca45454 (diff) | |
parent | a38a3e21291ca8e751959a3f797ed2729bed6029 (diff) | |
download | nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.tar nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.tar.gz nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.tar.bz2 nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.tar.lz nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.tar.xz nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.tar.zst nixpkgs-c7203efb7d9dcd6aa410863f16ce9b385fcd27f7.zip |
Merge pull request #31333 from ElvishJerricco/unextracted-all-cabal-hashes
Unextracted all cabal hashes
Diffstat (limited to 'pkgs/development')
-rw-r--r-- | pkgs/development/haskell-modules/make-package-set.nix | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix index ebfe44dd25a..61043252155 100644 --- a/pkgs/development/haskell-modules/make-package-set.nix +++ b/pkgs/development/haskell-modules/make-package-set.nix @@ -118,23 +118,16 @@ let ''; }; - all-cabal-hashes-component = name: import (pkgs.runCommand "all-cabal-hashes-component-${name}.nix" {} - '' - set +o pipefail - for component in ${all-cabal-hashes}/*; do - if ls $component | grep -q "^${name}$"; then - echo "builtins.storePath $component" > $out - exit 0 - fi - done - echo "${name} not found in any all-cabal-hashes component, are you sure it's in hackage?" >&2 - exit 1 - ''); - - hackage2nix = name: version: let component = all-cabal-hashes-component name; in self.haskellSrc2nix { + all-cabal-hashes-component = name: version: pkgs.runCommand "all-cabal-hashes-component-${name}-${version}" {} '' + tar --wildcards -xzvf ${all-cabal-hashes} \*/${name}/${version}/${name}.{json,cabal} + mkdir -p $out + mv */${name}/${version}/${name}.{json,cabal} $out + ''; + + hackage2nix = name: version: let component = all-cabal-hashes-component name version; in self.haskellSrc2nix { name = "${name}-${version}"; - sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${component}/${name}/${version}/${name}.json")''; - src = "${component}/${name}/${version}/${name}.cabal"; + sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${component}/${name}.json")''; + src = "${component}/${name}.cabal"; }; in package-set { inherit pkgs stdenv callPackage; } self // { |