Kieran's opinionated (and probably slightly dumb) nix config

feat: add wakatime lsp for helix

dunkirk.sh 133fe4c5 d7f5d057

verified
+98 -2
+66 -1
flake.lock
··· 415 "type": "github" 416 } 417 }, 418 "hardware": { 419 "locked": { 420 "lastModified": 1758663926, ··· 871 "nur": "nur", 872 "soapdump": "soapdump", 873 "spicetify-nix": "spicetify-nix", 874 - "terminal-wakatime": "terminal-wakatime" 875 } 876 }, 877 "soapdump": { ··· 1052 "original": { 1053 "owner": "taciturnaxolotl", 1054 "repo": "terminal-wakatime", 1055 "type": "github" 1056 } 1057 }
··· 415 "type": "github" 416 } 417 }, 418 + "gitignore_2": { 419 + "inputs": { 420 + "nixpkgs": [ 421 + "wakatime-ls", 422 + "nixpkgs" 423 + ] 424 + }, 425 + "locked": { 426 + "lastModified": 1709087332, 427 + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", 428 + "owner": "hercules-ci", 429 + "repo": "gitignore.nix", 430 + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", 431 + "type": "github" 432 + }, 433 + "original": { 434 + "owner": "hercules-ci", 435 + "repo": "gitignore.nix", 436 + "type": "github" 437 + } 438 + }, 439 "hardware": { 440 "locked": { 441 "lastModified": 1758663926, ··· 892 "nur": "nur", 893 "soapdump": "soapdump", 894 "spicetify-nix": "spicetify-nix", 895 + "terminal-wakatime": "terminal-wakatime", 896 + "wakatime-ls": "wakatime-ls" 897 + } 898 + }, 899 + "rust-overlay": { 900 + "inputs": { 901 + "nixpkgs": [ 902 + "wakatime-ls", 903 + "nixpkgs" 904 + ] 905 + }, 906 + "locked": { 907 + "lastModified": 1748746145, 908 + "narHash": "sha256-bwkCAK9pOyI2Ww4Q4oO1Ynv7O9aZPrsIAMMASmhVGp4=", 909 + "owner": "oxalica", 910 + "repo": "rust-overlay", 911 + "rev": "12a0d94a2f2b06714f747ab97b2fa546f46b460c", 912 + "type": "github" 913 + }, 914 + "original": { 915 + "owner": "oxalica", 916 + "repo": "rust-overlay", 917 + "type": "github" 918 } 919 }, 920 "soapdump": { ··· 1095 "original": { 1096 "owner": "taciturnaxolotl", 1097 "repo": "terminal-wakatime", 1098 + "type": "github" 1099 + } 1100 + }, 1101 + "wakatime-ls": { 1102 + "inputs": { 1103 + "gitignore": "gitignore_2", 1104 + "nixpkgs": [ 1105 + "nixpkgs" 1106 + ], 1107 + "rust-overlay": "rust-overlay" 1108 + }, 1109 + "locked": { 1110 + "lastModified": 1752245636, 1111 + "narHash": "sha256-T6nLp1UsnKwrL7coEgH+aTcTavM5OIiNRufA3sM2okk=", 1112 + "owner": "mrnossiom", 1113 + "repo": "wakatime-ls", 1114 + "rev": "711644814c8e6842499c6c0852407321e9901597", 1115 + "type": "github" 1116 + }, 1117 + "original": { 1118 + "owner": "mrnossiom", 1119 + "repo": "wakatime-ls", 1120 "type": "github" 1121 } 1122 }
+5
flake.nix
··· 87 url = "github:taciturnaxolotl/soapdump"; 88 inputs.nixpkgs.follows = "nixpkgs"; 89 }; 90 }; 91 92 outputs =
··· 87 url = "github:taciturnaxolotl/soapdump"; 88 inputs.nixpkgs.follows = "nixpkgs"; 89 }; 90 + 91 + wakatime-ls = { 92 + url = "github:mrnossiom/wakatime-ls"; 93 + inputs.nixpkgs.follows = "nixpkgs"; 94 + }; 95 }; 96 97 outputs =
+27 -1
modules/home/apps/helix.nix
··· 2 lib, 3 config, 4 pkgs, 5 ... 6 }: 7 { ··· 31 vscode-langservers-extracted 32 kotlin-language-server 33 harper 34 ]; 35 settings = { 36 theme = "catppuccin_macchiato"; ··· 42 completion-replace = true; 43 end-of-line-diagnostics = "hint"; 44 color-modes = true; 45 - # rainbow-brackets = true; enable next release 46 inline-diagnostics.cursor-line = "warning"; 47 file-picker.hidden = false; 48 indent-guides = { 49 render = true; 50 character = "╎"; 51 skip-levels = 0; 52 }; 53 soft-wrap.enable = false; 54 auto-save = { ··· 96 biome = { 97 command = "${pkgs.biome}/bin/biome"; 98 args = [ "lsp-proxy" ]; 99 }; 100 }; 101 language = [ ··· 104 language-servers = [ 105 "clangd" 106 "harper-ls" 107 ]; 108 } 109 { ··· 111 language-servers = [ 112 "neocmakelsp" 113 "harper-ls" 114 ]; 115 } 116 { ··· 118 language-servers = [ 119 "clangd" 120 "harper-ls" 121 ]; 122 } 123 { ··· 125 language-servers = [ 126 "OmniSharp" 127 "harper-ls" 128 ]; 129 } 130 { ··· 132 language-servers = [ 133 "gopls" 134 "harper-ls" 135 ]; 136 } 137 { ··· 139 language-servers = [ 140 "jdtls" 141 "harper-ls" 142 ]; 143 } 144 { ··· 150 } 151 "biome" 152 "harper-ls" 153 ]; 154 auto-format = true; 155 } ··· 162 } 163 "biome" 164 "harper-ls" 165 ]; 166 auto-format = true; 167 } ··· 170 language-servers = [ 171 "lua-language-server" 172 "harper-ls" 173 ]; 174 } 175 { ··· 177 language-servers = [ 178 "nil" 179 "harper-ls" 180 ]; 181 } 182 { ··· 184 language-servers = [ 185 "intelephense" 186 "harper-ls" 187 ]; 188 } 189 { ··· 191 language-servers = [ 192 "pylsp" 193 "harper-ls" 194 ]; 195 } 196 { ··· 198 language-servers = [ 199 "ruby-lsp" 200 "harper-ls" 201 ]; 202 } 203 { ··· 205 language-servers = [ 206 "rust-analyzer" 207 "harper-ls" 208 ]; 209 } 210 { ··· 212 language-servers = [ 213 "bash-language-server" 214 "harper-ls" 215 ]; 216 } 217 { ··· 219 language-servers = [ 220 "sourcekit-lsp" 221 "harper-ls" 222 ]; 223 } 224 { ··· 226 language-servers = [ 227 "taplo" 228 "harper-ls" 229 ]; 230 } 231 { ··· 237 } 238 "biome" 239 "harper-ls" 240 ]; 241 auto-format = true; 242 } ··· 249 } 250 "biome" 251 "harper-ls" 252 ]; 253 auto-format = true; 254 } ··· 260 except-features = [ "format" ]; 261 } 262 "biome" 263 ]; 264 } 265 { ··· 267 language-servers = [ 268 "kotlin-language-server" 269 "harper-ls" 270 ]; 271 } 272 ];
··· 2 lib, 3 config, 4 pkgs, 5 + inputs, 6 ... 7 }: 8 { ··· 32 vscode-langservers-extracted 33 kotlin-language-server 34 harper 35 + inputs.wakatime-ls.packages.${pkgs.system}.default 36 ]; 37 settings = { 38 theme = "catppuccin_macchiato"; ··· 44 completion-replace = true; 45 end-of-line-diagnostics = "hint"; 46 color-modes = true; 47 inline-diagnostics.cursor-line = "warning"; 48 file-picker.hidden = false; 49 indent-guides = { 50 render = true; 51 character = "╎"; 52 skip-levels = 0; 53 + rainbow-option = "normal"; 54 }; 55 soft-wrap.enable = false; 56 auto-save = { ··· 98 biome = { 99 command = "${pkgs.biome}/bin/biome"; 100 args = [ "lsp-proxy" ]; 101 + }; 102 + wakatime = { 103 + command = "wakatime-ls"; 104 }; 105 }; 106 language = [ ··· 109 language-servers = [ 110 "clangd" 111 "harper-ls" 112 + "wakatime" 113 ]; 114 } 115 { ··· 117 language-servers = [ 118 "neocmakelsp" 119 "harper-ls" 120 + "wakatime" 121 ]; 122 } 123 { ··· 125 language-servers = [ 126 "clangd" 127 "harper-ls" 128 + "wakatime" 129 ]; 130 } 131 { ··· 133 language-servers = [ 134 "OmniSharp" 135 "harper-ls" 136 + "wakatime" 137 ]; 138 } 139 { ··· 141 language-servers = [ 142 "gopls" 143 "harper-ls" 144 + "wakatime" 145 ]; 146 } 147 { ··· 149 language-servers = [ 150 "jdtls" 151 "harper-ls" 152 + "wakatime" 153 ]; 154 } 155 { ··· 161 } 162 "biome" 163 "harper-ls" 164 + "wakatime" 165 ]; 166 auto-format = true; 167 } ··· 174 } 175 "biome" 176 "harper-ls" 177 + "wakatime" 178 ]; 179 auto-format = true; 180 } ··· 183 language-servers = [ 184 "lua-language-server" 185 "harper-ls" 186 + "wakatime" 187 ]; 188 } 189 { ··· 191 language-servers = [ 192 "nil" 193 "harper-ls" 194 + "wakatime" 195 ]; 196 } 197 { ··· 199 language-servers = [ 200 "intelephense" 201 "harper-ls" 202 + "wakatime" 203 ]; 204 } 205 { ··· 207 language-servers = [ 208 "pylsp" 209 "harper-ls" 210 + "wakatime" 211 ]; 212 } 213 { ··· 215 language-servers = [ 216 "ruby-lsp" 217 "harper-ls" 218 + "wakatime" 219 ]; 220 } 221 { ··· 223 language-servers = [ 224 "rust-analyzer" 225 "harper-ls" 226 + "wakatime" 227 ]; 228 } 229 { ··· 231 language-servers = [ 232 "bash-language-server" 233 "harper-ls" 234 + "wakatime" 235 ]; 236 } 237 { ··· 239 language-servers = [ 240 "sourcekit-lsp" 241 "harper-ls" 242 + "wakatime" 243 ]; 244 } 245 { ··· 247 language-servers = [ 248 "taplo" 249 "harper-ls" 250 + "wakatime" 251 ]; 252 } 253 { ··· 259 } 260 "biome" 261 "harper-ls" 262 + "wakatime" 263 ]; 264 auto-format = true; 265 } ··· 272 } 273 "biome" 274 "harper-ls" 275 + "wakatime" 276 ]; 277 auto-format = true; 278 } ··· 284 except-features = [ "format" ]; 285 } 286 "biome" 287 + "wakatime" 288 ]; 289 } 290 { ··· 292 language-servers = [ 293 "kotlin-language-server" 294 "harper-ls" 295 + "wakatime" 296 ]; 297 } 298 ];