aboutsummaryrefslogtreecommitdiff
path: root/shell.nix
diff options
context:
space:
mode:
Diffstat (limited to 'shell.nix')
-rw-r--r--shell.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 0000000..b1a597f
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,40 @@
1let
2
3 all-hies = fetchTarball {
4 url = "https://github.com/infinisil/all-hies/tarball/534ac517b386821b787d1edbd855b9966d0c0775";
5 sha256 = "0bw1llpwxbh1dnrnbxkj2l0j58s523hjivszf827c3az5i4py1i2";
6 };
7
8 pkgs = import <nixpkgs> {
9 # Pass no config for purity
10 config = {};
11 overlays = [
12 (import all-hies {}).overlay
13 ];
14 };
15
16 inherit (pkgs) haskellPackages;
17
18 haskellDeps = ps: with ps; [
19 base
20 lens
21 parsec
22 mtl
23 readline
24 ];
25
26 ghc = haskellPackages.ghcWithPackages haskellDeps;
27
28 externalPackages = [
29 ghc
30 pkgs.gdb
31 pkgs.cabal2nix
32 haskellPackages.cabal-install
33 haskellPackages.hie
34 haskellPackages.hoogle
35 ];
36in
37pkgs.stdenv.mkDerivation {
38 name = "env";
39 buildInputs = externalPackages;
40}