aboutsummaryrefslogtreecommitdiff
path: root/shell.nix
diff options
context:
space:
mode:
Diffstat (limited to 'shell.nix')
-rw-r--r--shell.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/shell.nix b/shell.nix
new file mode 100644
index 0000000..f1d55b5
--- /dev/null
+++ b/shell.nix
@@ -0,0 +1,41 @@
1let
2 sources = import ./nix/sources.nix;
3 pkgs = import sources.nixpkgs {};
4
5 inherit (pkgs) haskellPackages;
6 all-hls = pkgs.fetchFromGitHub {
7 owner = "masaeedu";
8 repo = "all-hls";
9 rev = "155e57d7ca9f79ce293360f98895e9bd68d12355";
10 sha256 = "04s3mrxjdr7gmd901l1z23qglqmn8i39v7sdf2fv4zbv6hz24ydb";
11 };
12
13 hls = import all-hls {
14 platform = "Linux";
15 version = "0.4.0";
16 ghc = "8.6.5";
17 }; # All parameters are optional. The default values are shown here.
18
19
20 haskellDeps = ps: with ps; [
21 base
22 lens
23 parsec
24 mtl
25 ];
26
27 ghc = haskellPackages.ghcWithPackages haskellDeps;
28
29 externalPackages = [
30 ghc
31 pkgs.gdb
32 pkgs.cabal2nix
33 haskellPackages.cabal-install
34 haskellPackages.hoogle
35 haskellPackages.hlint
36 ];
37in
38pkgs.stdenv.mkDerivation {
39 name = "aoc";
40 buildInputs = externalPackages ++ [ hls ];
41}