blob: f26b4227ca076961be29f2b3d03b3a3c0859e8b6 (
plain) (
blame)
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
|
{ pkgs
, config
, ...
}:
let
pythonEnv = pkgs.python3.withPackages (p:
with p; [
black
click
isort
pylsp-mypy
requests
types-requests
pip
ipython
virtualenv
]);
in
{
programs.go = {
enable = true;
goPath = ".local/share/pkg.go";
goBin = ".local/bin.go";
package = pkgs.go_1_21;
};
home.packages = with pkgs; [
go-tools
golangci-lint
gopls
dive # explore layers in docker images
pythonEnv
kubectl
google-cloud-sdk
rnix-lsp
alejandra
nil
];
home.sessionPath = [
config.home.sessionVariables.GOBIN
];
programs.zsh.shellAliases = {
kc = "kubectl";
};
programs.vscode = {
enable = true;
# Workaround https://github.com/nix-community/home-manager/issues/3507
mutableExtensionsDir = false;
extensions = with pkgs.vscode-extensions; [
#go
golang.go
# nix
arrterian.nix-env-selector
bbenoist.nix
jnoortheen.nix-ide
# python
ms-python.python
ms-python.vscode-pylance
# utils
mkhl.direnv
editorconfig.editorconfig
tamasfe.even-better-toml
];
userSettings = {
editor.fontSize = 16;
"editor.formatOnSave" = true;
"editor.minimap.enabled" = false;
workbench.colorTheme = "Default Light Modern";
workbench.sideBar.location = "right";
"telemetry.telemetryLevel" = "off";
"files.autoSave" = "afterDelay";
# in milliseconds
"files.autoSaveDelay" = 100;
"nix.serverPath" = "nil";
"nix.serverSettings" = {
"nil" = {
"formatting" = {
"command" = [ "alejandra" ];
};
};
};
"nix.enableLanguageServer" = true;
};
};
home.sessionVariables = with config.xdg; {
IPYTHONDIR = "${cacheHome}/ipython";
PIP_LOG = "${cacheHome}/pip/pip.log";
PYLINTHOME = "${cacheHome}/pylint";
PYTHON_EGG_CACHE = "${cacheHome}/python-eggs";
MYPY_CACHE_DIR = "${cacheHome}/mypy";
};
}
|