diff options
author | sternenseemann <sternenseemann@systemli.org> | 2022-04-11 01:36:54 +0200 |
---|---|---|
committer | sternenseemann <sternenseemann@systemli.org> | 2022-04-11 03:15:55 +0200 |
commit | 7ad0327b599c653cd8eecdae6dcb1eb2ceccc29e (patch) | |
tree | 75f025de6345f393b3525f6f859075a9cc836cbb /pkgs/top-level/release-haskell.nix | |
parent | fde2e98a0116ddba74569d11f281cd87fbdf13ab (diff) |
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.
Diffstat (limited to 'pkgs/top-level/release-haskell.nix')
-rw-r--r-- | pkgs/top-level/release-haskell.nix | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix index 4eb8d040a7da3..720b4e7fc3303 100644 --- a/pkgs/top-level/release-haskell.nix +++ b/pkgs/top-level/release-haskell.nix @@ -129,7 +129,18 @@ let jobs = recursiveUpdateMany [ (mapTestOn { 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; |