3
0
Fork 0
forked from mirrors/nixpkgs

release-haskell.nix: build boot ghcjs on Hydra

By telling Hydra where to look explicitly, it can be instrumented
to build the boot ghcjs which is only about 300MB. This saves at
least some time compiling for users and will also provide some
eval CI automatically.
This commit is contained in:
sternenseemann 2022-04-11 01:36:54 +02:00
parent fde2e98a01
commit 7ad0327b59

View file

@ -129,7 +129,18 @@ let
jobs = recursiveUpdateMany [ jobs = recursiveUpdateMany [
(mapTestOn { (mapTestOn {
haskellPackages = packagePlatforms pkgs.haskellPackages; haskellPackages = packagePlatforms pkgs.haskellPackages;
haskell.compiler = packagePlatforms pkgs.haskell.compiler; haskell.compiler = packagePlatforms pkgs.haskell.compiler // (lib.genAttrs [
"ghcjs"
"ghcjs810"
] (ghcjsName: {
# We can't build ghcjs itself, since it exceeds 3GB (Hydra's output limit) due
# to the size of its bundled libs. We can however save users a bit of compile
# time by building the bootstrap ghcjs on Hydra. For this reason, we overwrite
# the ghcjs attributes in haskell.compiler with a reference to the bootstrap
# ghcjs attribute in their bootstrap package set (exposed via passthru) which
# would otherwise be ignored by Hydra.
bootGhcjs = (packagePlatforms pkgs.haskell.compiler.${ghcjsName}.passthru).bootGhcjs;
}));
tests.haskell = packagePlatforms pkgs.tests.haskell; tests.haskell = packagePlatforms pkgs.tests.haskell;