910a3ae7ec
This allows us to deprecate GHCJS 8.4 (which makes sense, as vanilla GHC < 8.6 is already deprecated). We re-use GHCJS from reflex-platform, which unfortunately isn't up-to-date with latest GHC and is only 8.6. The benefit of using reflex-platform is that it provides nix expressions for GHCJS + a binary nix cache. reflex-platform patches text to use a JS-String based internal representation for performance reasons, so we provide a few haskell dependencies from reflex-platform as well: - hashable - attoparsec As those rely on text's internal representation but have been patched for reflex-platform.
22 lines
610 B
Nix
22 lines
610 B
Nix
let reflex-platform = import (builtins.fetchTarball
|
|
{ name = "reflex-platform";
|
|
url = "https://github.com/reflex-frp/reflex-platform/archive/1aba6f367982bd6dd78ec2fda75ab246a62d32c5.tar.gz";
|
|
}) {};
|
|
pkgs = import ./nix/nixpkgs.nix; in
|
|
|
|
pkgs.stdenv.mkDerivation {
|
|
name = "ghcjs-shell";
|
|
buildInputs =
|
|
[ (reflex-platform.ghcjs.ghcWithPackages (p: with p; [
|
|
attoparsec
|
|
hashable
|
|
]))
|
|
pkgs.cabal-install
|
|
pkgs.gmp
|
|
pkgs.haskellPackages.cabal-plan
|
|
pkgs.haskellPackages.hspec-discover
|
|
pkgs.nodejs
|
|
pkgs.perl
|
|
pkgs.zlib
|
|
];
|
|
}
|