Extract files one at a time from all-cabal-hashes
This commit is contained in:
parent
8caf9f13a6
commit
a38a3e2129
@ -1,11 +1,6 @@
|
|||||||
{ fetchFromGitHub }:
|
{ fetchurl }:
|
||||||
|
|
||||||
# Use builtins.fetchTarball "https://github.com/commercialhaskell/all-cabal-hashes/archive/hackage.tar.gz"
|
fetchurl {
|
||||||
# instead if you want the latest Hackage automatically at the price of frequent re-downloads.
|
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/5e87c40f2cd96bd5dd953758e82f302107c7895e.tar.gz";
|
||||||
|
sha256 = "0hjkddda9mdm21nb9bkhr9n5r9jllisif1qmzha91a9cps5w1mx5";
|
||||||
fetchFromGitHub {
|
|
||||||
owner = "commercialhaskell";
|
|
||||||
repo = "all-cabal-hashes";
|
|
||||||
rev = "5e87c40f2cd96bd5dd953758e82f302107c7895e";
|
|
||||||
sha256 = "12rw5fld64s0a2zjsdijfs0dv6vc6z7gcf24h4m2dmymzms4namg";
|
|
||||||
}
|
}
|
||||||
|
@ -118,10 +118,16 @@ let
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
hackage2nix = name: version: 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}";
|
name = "${name}-${version}";
|
||||||
sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${all-cabal-hashes}/${name}/${version}/${name}.json")'';
|
sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${component}/${name}.json")'';
|
||||||
src = "${all-cabal-hashes}/${name}/${version}/${name}.cabal";
|
src = "${component}/${name}.cabal";
|
||||||
};
|
};
|
||||||
|
|
||||||
in package-set { inherit pkgs stdenv callPackage; } self // {
|
in package-set { inherit pkgs stdenv callPackage; } self // {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user