@@ -20,17 +20,20 @@ let
20 darcs = (self.haskell-nix.hackage-package {
20 darcs = (self.haskell-nix.hackage-package {
21 name = "darcs";
21 name = "darcs";
22 version = "2.14.2";
22 version = "2.14.2";
23+ index-state = "2019-10-28T00:00:00Z";
23 # Apply the latest darcs.net Setup.hs patches
24 # Apply the latest darcs.net Setup.hs patches
24 modules = [{packages.darcs.patches = [ ./patches/darcs-setup.patch ];}];
25 modules = [{packages.darcs.patches = [ ./patches/darcs-setup.patch ];}];
25 }).components.exes.darcs;
26 }).components.exes.darcs;
26 })]; } // nixpkgsArgs);
27 })]; } // nixpkgsArgs);
27 haskell = pkgs.haskell-nix;
28 haskell = pkgs.haskell-nix;
30− inherit (haskell) haskellNixRoots;
31 tests = import ./test/default.nix { inherit nixpkgs nixpkgsArgs; };
31 tests = import ./test/default.nix { inherit nixpkgs nixpkgsArgs; };
33 # Scripts for keeping Hackage and Stackage up to date, and CI tasks.
33 # Scripts for keeping Hackage and Stackage up to date, and CI tasks.
34+ # The dontRecurseIntoAttrs prevents these from building on hydra
35+ # as not all of them can work in restricted eval mode (as they
34 maintainer-scripts = pkgs.dontRecurseIntoAttrs {
37 maintainer-scripts = pkgs.dontRecurseIntoAttrs {
35 update-hackage = haskell.callPackage ./scripts/update-hackage.nix {};
38 update-hackage = haskell.callPackage ./scripts/update-hackage.nix {};
36 update-stackage = haskell.callPackage ./scripts/update-stackage.nix {};
39 update-stackage = haskell.callPackage ./scripts/update-stackage.nix {};
@@ -51,4 +54,14 @@ in {
51 check-hydra = haskell.callPackage ./scripts/check-hydra.nix {};
54 check-hydra = haskell.callPackage ./scripts/check-hydra.nix {};
52 check-closure-size = haskell.callPackage ./scripts/check-closure-size.nix {};
55 check-closure-size = haskell.callPackage ./scripts/check-closure-size.nix {};
58+ # These are pure parts of maintainer-script so they can be built by hydra
59+ # and added to the cache to speed up buildkite.
60+ maintainer-script-cache = pkgs.recurseIntoAttrs {
61+ inherit (maintainer-scripts) update-docs check-hydra check-closure-size;
62+ # Some of the dependencies of the impure scripts so that they will
63+ # will be in the cache too for buildkite.
64+ inherit (pkgs) coreutils glibc git openssh cabal-install nix-prefetch-git;
65+ inherit (haskell) nix-tools;