-
Notifications
You must be signed in to change notification settings - Fork 1
/
flake.nix
29 lines (27 loc) · 894 Bytes
/
flake.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
description = "Nix flake for the YulDSL monorepo";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
haskell-tooling.url = "github:hellwolf/haskell-tooling.nix";
};
outputs = { nixpkgs, haskell-tooling, flake-utils, ... }: (flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
requiredInputs = haskell-tooling.lib.install pkgs ["ghc96+hls"];
devInputs = with pkgs; [
nodePackages.nodemon
jq
shellcheck
];
shellHook = ''
# This makes binaries of this project available for testing, e.g. `yolc`
export PATH=$PWD/hs-pkgs/yol-suite/bin/:$PATH
'';
in {
devShells.default = pkgs.mkShell {
buildInputs = requiredInputs ++ devInputs;
inherit shellHook;
};
}));
}