summaryrefslogtreecommitdiff
path: root/shell.nix
diff options
context:
space:
mode:
authorGregor Kleen <gkleen@yggdrasil.li>2016-05-07 20:29:45 +0200
committerGregor Kleen <gkleen@yggdrasil.li>2016-05-07 20:29:45 +0200
commit39de6510e0830df7ca36ec0da2f4aaf485be0283 (patch)
treee694fc90ea189db6d4a46d587bc9fca901c2df79 /shell.nix
download2017-01-16_17:13:37-39de6510e0830df7ca36ec0da2f4aaf485be0283.tar
2017-01-16_17:13:37-39de6510e0830df7ca36ec0da2f4aaf485be0283.tar.gz
2017-01-16_17:13:37-39de6510e0830df7ca36ec0da2f4aaf485be0283.tar.bz2
2017-01-16_17:13:37-39de6510e0830df7ca36ec0da2f4aaf485be0283.tar.xz
2017-01-16_17:13:37-39de6510e0830df7ca36ec0da2f4aaf485be0283.zip
build system
Diffstat (limited to 'shell.nix')
-rw-r--r--shell.nix17
1 files changed, 17 insertions, 0 deletions
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 0000000..294fea0
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,17 @@
1{ pkgs ? (import <nixpkgs> {})
2, haskellPackages ? (import ./default.nix { inherit pkgs; }).haskellPackages
3}:
4
5let
6 ghc = (haskellPackages.ghcWithPackages (ps: (payload ++ depends ++ (with ps; [ hlint cabal2nix cabal-install ])))).override { ignoreCollisions = true; };
7 payload = builtins.attrValues (import ./default.nix {});
8 depends = builtins.concatLists (builtins.map (x: if builtins.hasAttr "nativeBuildInputs" x then x.nativeBuildInputs else []) (builtins.attrValues (import ./default.nix {})));
9in pkgs.stdenv.mkDerivation rec {
10 bareName = "sequence";
11 name = "${bareName}-env";
12 buildInputs = [ ghc ];
13 shellHook = ''
14 eval $(egrep ^export ${ghc}/bin/ghc)
15 export PROMPT_INFO="${name}"
16 '';
17}