Configuration for my NixOS based systems and Home Manager
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

direnv for this repo, clean up nvim lsps

+60 -20
+1
.envrc
··· 1 + use_nix
+1
.gitignore
··· 1 1 hardware-configuration.nix 2 2 noah-password 3 + .direnv/
+6
noah-home.nix
··· 37 37 rustup 38 38 zig 39 39 luarocks 40 + luajit 41 + lua-language-server 40 42 leiningen 41 43 libressl 42 44 erlang ··· 177 179 enable = true; 178 180 defaultCacheTtl = 1800; 179 181 enableSshSupport = true; 182 + }; 183 + programs.direnv = { 184 + enable = true; 185 + nix-direnv.enable = true; 180 186 }; 181 187 182 188 # Independent config files.
+48 -20
nvim/lua/lsp.lua
··· 10 10 } 11 11 } 12 12 13 - -- Clojure 14 - nvim_lsp.clojure_lsp.setup{} 15 - 16 13 local util = require("lspconfig.util") 17 14 18 15 -- Rust 19 - nvim_lsp.rust_analyzer.setup({}) 20 16 -- Python LSP 21 17 nvim_lsp.pylsp.setup( 22 18 { ··· 33 29 end 34 30 } 35 31 ) 36 - 37 - -- More Python, I like it strict 38 - nvim_lsp.pyright.setup{} 39 - nvim_lsp.ruff_lsp.setup{} 40 - 41 32 --nvim_lsp.scheme_langserver.setup{} 42 33 43 34 -- Golang 44 - nvim_lsp.gopls.setup{} 45 35 -- Lots of things 46 36 --nvim_lsp.diagnosticls.setup( 47 37 -- { ··· 50 40 -- } 51 41 -- } 52 42 --) 53 - -- JSON 54 - nvim_lsp.jsonls.setup{} 55 - nvim_lsp.jsonls.setup{} 56 - -- Vim 57 - nvim_lsp.vimls.setup{} 58 - 59 - nvim_lsp.bashls.setup{} 60 - nvim_lsp.ccls.setup{} 61 - nvim_lsp.asm_lsp.setup{} 62 43 nvim_lsp.lua_ls.setup{ 63 44 settings = { 64 45 Lua = { ··· 81 62 } 82 63 } 83 64 } 84 - nvim_lsp.fennel_ls.setup{} 65 + 66 + -- LSPs that just use default config 67 + local simple_lsps = { 68 + "fennel_ls", 69 + "nil_ls", 70 + "htmx", 71 + "bzl", 72 + "bufls", 73 + "crystalline", 74 + "dockerls", 75 + "erlangls", 76 + "elixirls", 77 + "fortls", 78 + "gleam", 79 + "gopls", 80 + "hls", 81 + "jsonls", 82 + "vimls", 83 + "asm_lsp", 84 + "ccls", 85 + "pyright", 86 + -- ruff", idk if this is wrong? 87 + "ruff_lsp", 88 + "clojure_lsp", 89 + "guile_ls", 90 + -- Of course the Java-based ones are verbose af 91 + "kotlin_langauge_server", 92 + "java_language_server", 93 + "jsonls", 94 + "pest_ls", 95 + "ocamllsp", 96 + "reason_ls", 97 + "racket_langserver", 98 + "rust_analyzer", 99 + "scheme_langserver", 100 + "sqls", 101 + "thriftls", 102 + "typst_lsp", 103 + "vhdl_ls", 104 + "yamlls", 105 + "zls", 106 + "tsserver", 107 + "eslint", 108 + } 109 + -- #simple_lsps is the length of the table when treated as a list... funky! 110 + for _,v in pairs(simple_lsps) do 111 + nvim_lsp[v].setup{} 112 + end 85 113 86 114 -- Whenever an LSP is attached to a buffer 87 115 local on_attach = function(ev)
+4
shell.nix
··· 1 + { pkgs ? import <nixpkgs> {} }: 2 + pkgs.mkShell { 3 + packages = with pkgs; [ nil lua-language-server ]; 4 + }