aboutsummaryrefslogtreecommitdiff
path: root/shell.nix
blob: d6f2e436b82aa65525bf53d65e0fd4fec352684f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{ pkgs ? (import <nixpkgs> {})
, compilerName ? "ghc7103"
}:

let
  thermoprintPackages = builtins.attrValues (import ./default.nix {});
  ghc = pkgs.haskell.packages.${compilerName}.ghcWithPackages
    (ps: thermoprintPackages ++ utilities ps ++ testDeps ps);
  utilities = (ps: with ps; [ hlint cabal2nix ]);
  testDeps = (ps: with ps; [ temporary hspec ]);
in
pkgs.stdenv.mkDerivation rec {
  name = "thermoprint-env";
  buildInputs = [ ghc ];
  shellHook = ''
    eval $(egrep ^export ${ghc}/bin/ghc)
    export PROMPT_INFO="${name}"
  '';
}