Files
haskell.nix/scripts/check-compiler-materialization/default.nix
T
Hamish Mackenzie cacfba0b45 Replace ghc 8.8.3 with 8.8.4 (#766)
Also adds some tooling/docs for adding new ghc versions (see `docs/adding-new-ghc.md`)
2020-07-21 14:10:23 +12:00

21 lines
1.4 KiB
Nix

# This is for checking the materialization of new GHC versions
# See docs/adding-new-ghc.md for more details.
{ compiler-nix-name }:
let
eval = (import ../../. {}).pkgs;
linux = (import ../../. { checkMaterialization = true; system = "x86_64-linux"; }).pkgs;
darwin = (import ../../. { checkMaterialization = true; system = "x86_64-darwin"; }).pkgs;
in eval.linkFarm "check-${compiler-nix-name}" [
# This set of derivations should be enough to ensure all the materialized files for a
# given GHC version are checked.
{ name = "linux-cabal-install"; path = linux.haskell-nix.cabal-install.${compiler-nix-name}; }
{ name = "darwin-cabal-install"; path = darwin.haskell-nix.cabal-install.${compiler-nix-name}; }
{ name = "linux-nix-tools"; path = linux.haskell-nix.nix-tools.${compiler-nix-name}; }
{ name = "linux"; path = linux.ghc-extra-projects.${compiler-nix-name}.plan-nix; }
# In some cased you may need comment out one or more of these if the GHC version needed cannot be built.
{ name = "musl"; path = linux.pkgsCross.musl64.ghc-extra-projects.${compiler-nix-name}.plan-nix; }
# { name = "windows"; path = linux.pkgsCross.mingwW64.ghc-extra-projects.${compiler-nix-name}.plan-nix; }
{ name = "arm"; path = linux.pkgsCross.aarch64-multiplatform.ghc-extra-projects.${compiler-nix-name}.plan-nix; }
]