From e66aa35ea314f522a2cdfaebdacf87894a44bd04 Mon Sep 17 00:00:00 2001 From: sommerfeld Date: Wed, 20 May 2026 13:56:09 +0100 Subject: feat(nix): add LSPs/formatters/linters/DAPs to common.nix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaces Mason entirely (phase p6 of the nix migration will rip out mason-tool-installer and friends). The set tracks the previous ensure_installed list in nvim's lsp.lua, with five niche tools dropped per the migration plan: - groovy-language-server, npm-groovy-lint - nginx-language-server, nginx-config-formatter - systemdlint systemd-lsp is renamed to systemd-language-server (the nixpkgs attr name). codelldb is replaced by lldb-dap (upstream successor, ships with pkgs.lldb); dap configs switch in phase p6. Drops jre, basedpyright, cargo, rustc from vm.nix — they only existed to work around Mason quirks on Ubuntu 20.04 (uv-python wheel incompatibility, source-build needs). With Mason gone, basedpyright comes from nixpkgs cleanly on both profiles. Phase 5 of the nix-on-host migration plan. --- nix/common.nix | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) (limited to 'nix/common.nix') diff --git a/nix/common.nix b/nix/common.nix index b6a8493..9bfe2d6 100644 --- a/nix/common.nix +++ b/nix/common.nix @@ -89,6 +89,56 @@ in claude-code github-copilot-cli # NB: pkgs.copilot-cli is AWS Copilot, NOT this + # ── LSPs / formatters / linters / DAPs ───────────────────────────────── + # Replaces Mason entirely (phase p6 of the nix migration rips out + # mason-tool-installer). The set tracks the previous + # `ensure_installed` list in dot_config/nvim/lua/plugins/lsp.lua, with + # five niche tools dropped: groovy-language-server (Mason-only build, + # upstream stale), npm-groovy-lint, nginx-language-server, + # nginx-config-formatter, systemdlint (all rarely-edited domains; + # losing them is acceptable). + + # LSPs + actionlint + autotools-language-server + basedpyright + bash-language-server + dockerfile-language-server-nodejs + gh-actions-language-server + just-lsp + lua-language-server + neocmakelsp + ruff + rust-analyzer + systemd-language-server + taplo + typescript-language-server + vscode-langservers-extracted # cssls + html + jsonls + eslint + yaml-language-server + + # Formatters + mdformat + nodePackages.prettier + shfmt + stylua + + # Linters + codespell + hadolint + nodePackages.jsonlint + markdownlint-cli + selene + shellcheck + shellharden + stylelint + typos + yamllint + + # DAPs / debuggers — `lldb-dap` (from pkgs.lldb) is the upstream + # successor to vscode-lldb's `codelldb`. dap configs in + # plugins/debug.lua target it via `type = "lldb"`. + lldb + # Zsh and plugins (loaded from $HOME/.nix-profile/share/... by the # shared zshrc; nix-profile path is preferred, system path is the # fallback for un-bootstrapped states). -- cgit v1.3.1