haskell-ng: expose Hackage's revision number in hackage-packages.nix and use it to generate stable download URLs for edited Cabal files

Fixes https://github.com/NixOS/nixpkgs/issues/6914.
This commit is contained in:
Peter Simons 2015-03-24 20:09:49 +01:00
parent e77ad8855a
commit 013b12a54c
2 changed files with 192 additions and 2 deletions

View file

@ -3,7 +3,7 @@
}:
{ pname
, version
, version, revision ? null
, sha256 ? null
, src ? fetchurl { url = "mirror://hackage/${pname}-${version}.tar.gz"; inherit sha256; }
, buildDepends ? []
@ -46,6 +46,7 @@
}:
assert pkgconfigDepends != [] -> pkgconfig != null;
assert editedCabalFile != null -> revision != null;
let
@ -53,8 +54,9 @@ let
concatStringsSep enableFeature optionalAttrs;
newCabalFile = fetchurl {
url = "http://hackage.haskell.org/package/${pname}-${version}/${pname}.cabal";
url = "http://hackage.haskell.org/package/${pname}-${version}/revision/${revision}.cabal";
sha256 = editedCabalFile;
name = "${pname}-${version}-r${revision}.cabal";
};
defaultSetupHs = builtins.toFile "Setup.hs" ''

File diff suppressed because it is too large Load diff