-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathshell.nix
More file actions
28 lines (28 loc) · 1.03 KB
/
shell.nix
File metadata and controls
28 lines (28 loc) · 1.03 KB
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
with (import ./default.nix); let
mkGhcid = mod:
modern-pkgs.writeShellApplication {
name = "ghcid-${mod}";
text = ''(cd ${builtins.toString ./.} && ${modern-pkgs.ghcid}/bin/ghcid ${
if mod == "exe"
then ''--test=":run Main.main"''
else ""
} --command="${readmeGen}/bin/readmeGen && ${pkgs.haskell.packages.ghc865.cabal-install}/bin/cabal new-repl ${mod}:app --disable-optimization --repl-options=-fobject-code --repl-options=-fno-break-on-exception --repl-options=-fno-break-on-error --repl-options=-v1 --repl-options=-ferror-spans --repl-options=-j")'';
};
in
dev.env.overrideAttrs (old: {
buildInputs =
old.buildInputs
++ [
modern-pkgs.hlint
modern-pkgs.ormolu
modern-pkgs.alejandra
modern-pkgs.haskellPackages.cabal-fmt
modern-pkgs.nodePackages.prettier
modern-pkgs.zbar
modern-pkgs.pandoc
pkgs.haskell.packages.ghc865.cabal-install
(mkGhcid "lib")
(mkGhcid "exe")
publish
];
})