e6a476c862
The compilers themselves can pull them from `bootPkgs`, where they should always come from anyways. This enforces that, simplifies that code, and allows use to avoid more `rec { ... }` too. |
||
---|---|---|
.. | ||
8.2 | ||
8.4 | ||
common-overrides.nix | ||
configured-ghcjs-src.nix | ||
default.nix | ||
ghcjs-base.nix | ||
mk-stage0.nix | ||
README.md |
New build system for GHCJS 8.2
ghcjs-8.2
reworked the build system, and now comes with its own
small package set of dependencies. This involves autogenerating
several sources and cabal files, based on a GHC
checkout. callCabal2nix
is off limits, since we don't like "import
from derivation" in nixpkgs. So there is a derivation that builds the
nix expression that should be checked in whenever GHCJS is updated.
Updating
$ nix-prefetch-git https://github.com/ghcjs/ghcjs --rev refs/heads/ghc-8.4 \
| jq '{ url, rev, fetchSubmodules, sha256 }' \
> 8.4/git.json
$ cat $(nix-build ../../../.. -A haskell.compiler.ghcjs82.genStage0 --no-out-link) > 8.4/stage0.nix
$ cabal2nix --compiler ghcjs git://github.com/ghcjs/ghcjs-base > ghcjs-base.nix