blob: 1c90dde87128f6f13146450e8f9dc4870d2e5007 (
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
|
{
flake,
config,
pkgs,
home-manager,
...
}: {
# Found this here: nix-community.github.io configuration example
home.username = "mike";
home.homeDirectory = "/home/mike";
home.stateVersion = "22.05";
programs.home-manager.enable = true;
home.packages = with pkgs; [
docker
kubectl
k9s
htop
fortune
vim
stow
(nerdfonts.override {fonts = ["FiraCode"];})
ripgrep
inotify-tools
firefox-wayland
swaylock
swayidle
wl-clipboard
mako
wofi
waybar
];
programs.git = {
enable = true;
userName = "Mike Vink";
userEmail = "mike1994vink@gmail.com";
};
programs.alacritty = {
enable = true;
settings = {
env.TERM = "alacritty";
font = {
normal = {
family = "FiraCode Nerd Font";
style = "Regular";
};
};
};
};
xsession = {
enable = true;
windowManager.spectrwm = {
enable = true;
programs = {
term = "alacritty";
search = "dmenu -ip -p 'Window name/id:'";
browser = "firefox";
};
bindings = {
browser = "Mod+w";
term = "Mod+Return";
restart = "Mod+Shift+r";
quit = "Mod+Shift+q";
};
settings = {
modkey = "Mod4";
workspace_limit = 5;
focus_mode = "manual";
focus_close = "next";
};
};
};
home.activation = {
clearHotpotCache = home-manager.lib.hm.dag.entryAfter ["writeBoundary"] ''
HOTPOT_CACHE="${config.xdg.cacheHome}/nvim/hotpot"
if [[ -d "$HOTPOT_CACHE" ]]; then
$DRY_RUN_CMD rm -rf "$VERBOSE_ARG" "$HOTPOT_CACHE"
fi
'';
};
programs.neovim = {
enable = true;
package = pkgs.neovim-unwrapped;
viAlias = true;
vimAlias = true;
extraPackages = with pkgs; [
fennel
sumneko-lua-language-server
pyright
gopls
yaml-language-server
alejandra
statix
];
extraConfig = "
lua <<LUA
Flake = {
lua_language_server = [[${pkgs.sumneko-lua-language-server}]],
bash = [[${pkgs.bashInteractive}/bin/bash]]
}
vim.opt.runtimepath:append({ [[~/dotnix/neovim]], [[~/dotnix/neovim/lua]], [[~/dotnix/neovim/fnl]]})
package.path = [[/home/mike/dotnix/?/init.lua;]] .. [[/home/mike/dotnix/?/?;]] .. [[/home/mike/.cache/nvim/hotpot/hotpot.nvim/lua/?/init.lua;]] .. package.path
require'neovim'
LUA
";
plugins = with pkgs.vimPlugins; [
# highlighting
(nvim-treesitter.withPlugins (plugins: pkgs.tree-sitter.allGrammars))
nvim-ts-rainbow
playground
gruvbox-material
# external
vim-dirvish
vim-fugitive
vim-oscyank
firvish-nvim
# moving around
marks-nvim
# Coding
nvim-lspconfig
nvim-dap
nvim-dap-ui
luasnip
trouble-nvim
null-ls-nvim
plenary-nvim
nlua-nvim
lsp_signature-nvim
vim-test
# cmp
nvim-cmp
cmp-nvim-lsp
cmp-buffer
cmp-path
cmp_luasnip
# trying out lisp
conjure
vim-racket
nvim-parinfer
hotpot-nvim
cmp-conjure
];
};
}
|