git.iko.soy/typeable/stackage2nix
on master help sign in
Support building from nightly stackage.

This only modifies the wrapped version in `nix`, but this seems to me the correct version to use anyway.

commitb19fea5eff5846dda613b22f373a0def0b33b6fb authorNicholas Clarke <nick@topos.org.uk> dateMon 16 Oct 2017, 18:08 (9 years ago) parent3c0961a
2 files changed+22−3
nix/lib.nix+21−2 nix/stackage2nix/default.nix+1−1
nix/lib.nix+21−2
@@ -1,7 +1,7 @@
1−{ stdenv, cacert, git, curl
1+{ stdenv, cacert, git, curl, lndir, runCommand
22, _cacheVersion ? "0" }:
33
4−{
4+rec {
55 hackage-db = stdenv.mkDerivation {
66 name = "hackage-db";
77 version = _cacheVersion;
@@ -38,4 +38,23 @@
3838 '';
3939 SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt";
4040 };
41+ stackage-nightly = stdenv.mkDerivation {
42+ name = "stackage-nightly";
43+ version = _cacheVersion;
44+ phases = [ "installPhase" ];
45+ buildInputs = [ git ];
46+ installPhase = ''
47+ mkdir -p $out
48+ git clone --depth 1 https://github.com/fpco/stackage-nightly.git $out
49+ '';
50+ SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt";
51+ };
52+ stackage-all = runCommand "stackage-all"
53+ {nativeBuildInputs = [ stackage-nightly stackage-lts lndir ];}
54+ ''
55+ mkdir $out
56+ for i in ${stackage-nightly} ${stackage-lts}; do
57+ lndir -silent $i $out
58+ done
59+ '';
4160}
nix/stackage2nix/default.nix+1−1
@@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
1414 mkdir -p $out/bin
1515 makeWrapper ${haskellPackages.stackage2nix}/bin/stackage2nix $out/bin/stackage2nix \
1616 --add-flags "--all-cabal-hashes ${lib.all-cabal-hashes}" \
17− --add-flags "--lts-haskell ${lib.stackage-lts}" \
17+ --add-flags "--lts-haskell ${lib.stackage-all}" \
1818 --add-flags "--hackage-db ${lib.hackage-db}/01-index.tar" \
1919 --prefix PATH ":" "${nix}/bin" \
2020 --prefix PATH ":" "${nix-prefetch-scripts}/bin"