blob: b0d23147647ecc3461d8a22a645aa43c6ed0d096 (
plain)
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
{ config
, pkgs
, ...
}:
{
imports = [ ../../modules/tabnine.nix ];
home.packages = with pkgs;
[
shellcheck
shfmt
dockerfile-language-server-nodejs
yaml-language-server
lua-language-server
taplo # toml
license-cli
just
mosh
curlHTTP3
xh
htmlq
jq
dasel
miller
watchexec
entr
diffoscopeMinimal
skopeo
docker-credential-helpers
dive
] ++ (if stdenv.isDarwin then [
lima
colima
docker-client
] else [
httping
]);
home.sessionVariables = {
FLY_NO_UPDATE_CHECK = "1";
MOSH_TITLE_NOPREFIX = "1";
LIMA_INSTANCE = "nixos";
};
editorconfig = {
enable = true;
settings = {
"*" = {
charset = "utf-8";
end_of_line = "lf";
trim_trailing_whitespace = true;
insert_final_newline = true;
indent_style = "space";
indent_size = 2;
tab_width = 2;
};
"*.fish" = {
indent_size = 4;
};
justfile = {
indent_style = "tab";
tab_width = 4;
};
Makefile = {
indent_style = "tab";
tab_width = 4;
};
};
};
home.shellAliases = {
j = "just";
er = "direnv reload";
ea = "direnv allow";
ex = "direnv exec";
es = "direnv status";
curl3 = "${pkgs.curlHTTP3}/bin/curl --http3";
};
programs.direnv = {
enable = true;
nix-direnv = {
enable = true;
};
config = {
global = {
disable_stdin = true;
load_dotenv = true;
strict_env = true;
hide_env_diff = true;
};
whitelist = {
prefix = with config.home; [
"${homeDirectory}/projects/alanpearce.eu"
];
};
};
stdlib = ''
declare -A direnv_layout_dirs
direnv_layout_dir() {
echo "''${direnv_layout_dirs[$PWD]:=$(
local hash="$(${pkgs.coreutils}/bin/sha256sum - <<<"''${PWD}" | cut -c-7)"
local path="''${PWD//[^a-zA-Z0-9]/-}"
echo "${config.xdg.cacheHome}/direnv/layouts/''${hash}''${path}"
)}"
}
'';
};
services.lorri = {
enable = pkgs.stdenv.isLinux;
};
}
|