summary refs log tree commit diff
path: root/pkgs/development/compilers/ghcjs-ng
diff options
context:
space:
mode:
authorWill Fancher <elvishjerricco@gmail.com>2018-07-15 22:53:54 -0400
committerWill Fancher <elvishjerricco@gmail.com>2018-07-15 23:47:47 -0400
commitff83aca51139a21a2dc6a2c20a25a0fad12358f6 (patch)
tree565326e8e27562defe1d4e4f5932ef3af8544b27 /pkgs/development/compilers/ghcjs-ng
parent68ea661bb438ec995fc26c0a2a3cc8040421e1b3 (diff)
downloadnixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.tar
nixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.tar.gz
nixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.tar.bz2
nixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.tar.lz
nixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.tar.xz
nixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.tar.zst
nixpkgs-ff83aca51139a21a2dc6a2c20a25a0fad12358f6.zip
Added ghcjs-base to GHCJS 8.4 / 8.2
Diffstat (limited to 'pkgs/development/compilers/ghcjs-ng')
-rw-r--r--pkgs/development/compilers/ghcjs-ng/README.md1
-rw-r--r--pkgs/development/compilers/ghcjs-ng/default.nix7
-rw-r--r--pkgs/development/compilers/ghcjs-ng/ghcjs-base.nix29
3 files changed, 36 insertions, 1 deletions
diff --git a/pkgs/development/compilers/ghcjs-ng/README.md b/pkgs/development/compilers/ghcjs-ng/README.md
index b75e4331651..6292f0cd4d2 100644
--- a/pkgs/development/compilers/ghcjs-ng/README.md
+++ b/pkgs/development/compilers/ghcjs-ng/README.md
@@ -16,5 +16,6 @@ $ 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 git://github.com/ghcjs/ghcjs-base > ghcjs-base.nix
 ```
 
diff --git a/pkgs/development/compilers/ghcjs-ng/default.nix b/pkgs/development/compilers/ghcjs-ng/default.nix
index 9aa3efe614e..ddabb7ca6bf 100644
--- a/pkgs/development/compilers/ghcjs-ng/default.nix
+++ b/pkgs/development/compilers/ghcjs-ng/default.nix
@@ -18,6 +18,7 @@
 , lib
 , nodePackages
 , ghcjsDepOverrides ? (_:_:{})
+, haskell
 }:
 
 let
@@ -48,7 +49,11 @@ let
 
     # Relics of the old GHCJS build system
     stage1Packages = [];
-    mkStage2 = _: {};
+    mkStage2 = { callPackage }: {
+      # https://github.com/ghcjs/ghcjs-base/issues/110
+      # https://github.com/ghcjs/ghcjs-base/pull/111
+      ghcjs-base = haskell.lib.dontCheck (haskell.lib.doJailbreak (callPackage ./ghcjs-base.nix {}));
+    };
 
     haskellCompilerName = "ghcjs-${bootGhcjs.version}";
   };
diff --git a/pkgs/development/compilers/ghcjs-ng/ghcjs-base.nix b/pkgs/development/compilers/ghcjs-ng/ghcjs-base.nix
new file mode 100644
index 00000000000..d03843aa336
--- /dev/null
+++ b/pkgs/development/compilers/ghcjs-ng/ghcjs-base.nix
@@ -0,0 +1,29 @@
+{ mkDerivation, aeson, array, attoparsec, base, binary, bytestring
+, containers, deepseq, directory, dlist, fetchgit, ghc-prim
+, ghcjs-prim, hashable, HUnit, integer-gmp, primitive, QuickCheck
+, quickcheck-unicode, random, scientific, stdenv, test-framework
+, test-framework-hunit, test-framework-quickcheck2, text, time
+, transformers, unordered-containers, vector
+}:
+mkDerivation {
+  pname = "ghcjs-base";
+  version = "0.2.0.0";
+  src = fetchgit {
+    url = "git://github.com/ghcjs/ghcjs-base";
+    sha256 = "0qr05m0djll3x38dhl85pl798arsndmwfhil8yklhb70lxrbvfrs";
+    rev = "01014ade3f8f5ae677df192d7c2a208bd795b96c";
+  };
+  libraryHaskellDepends = [
+    aeson attoparsec base binary bytestring containers deepseq dlist
+    ghc-prim ghcjs-prim hashable integer-gmp primitive scientific text
+    time transformers unordered-containers vector
+  ];
+  testHaskellDepends = [
+    array base bytestring deepseq directory ghc-prim ghcjs-prim HUnit
+    primitive QuickCheck quickcheck-unicode random test-framework
+    test-framework-hunit test-framework-quickcheck2 text
+  ];
+  homepage = "http://github.com/ghcjs/ghcjs-base";
+  description = "base library for GHCJS";
+  license = stdenv.lib.licenses.mit;
+}