-
Notifications
You must be signed in to change notification settings - Fork 10
/
devShells.nix
74 lines (72 loc) · 1.88 KB
/
devShells.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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
{ inputs, lib, ... }:
{
imports = [ inputs.treefmt-nix.flakeModule ];
perSystem =
{ pkgs, ... }:
{
devShells.default = pkgs.mkShellNoCC {
nativeBuildInputs = [
pkgs.git
pkgs.ripgrep
pkgs.fd
pkgs.fzf
# inputs'.fast-flake-update.packages.default
# pkgs.python3.pkgs.invoke
# pkgs.python3.pkgs.deploykit
# inputs'.clan-core.packages.default
] ++ lib.optionals (!pkgs.stdenv.isDarwin) [ pkgs.bubblewrap ];
};
treefmt = {
projectRootFile = ".git/config";
programs = {
terraform.enable = true;
hclfmt.enable = true;
yamlfmt.enable = true;
mypy.directories = {
"tasks" = {
directory = ".";
modules = [ ];
files = [ "**/tasks.py" ];
extraPythonPackages = [
pkgs.python3.pkgs.deploykit
pkgs.python3.pkgs.invoke
];
};
};
deadnix.enable = true;
stylua.enable = true;
clang-format.enable = true;
deno.enable = true;
nixfmt.enable = true;
nixfmt.package = pkgs.nixfmt-rfc-style;
shellcheck.enable = true;
shfmt.enable = true;
rustfmt.enable = true;
};
settings = {
formatter = {
shellcheck = {
options = [
"--external-sources"
"--source-path=SCRIPTDIR"
];
excludes = [
"gdb/*"
"zsh/*"
];
};
shfmt = {
includes = [
"*.envrc"
"*.zshrc"
];
excludes = [
"gdb/*"
"zsh/*"
];
};
};
};
};
};
}