2024-04-04 18:44:12 +00:00
|
|
|
{pkgs, ...}: {
|
|
|
|
programs.neovim = {
|
|
|
|
enable = true;
|
|
|
|
viAlias = true;
|
|
|
|
vimAlias = true;
|
|
|
|
|
|
|
|
# Packages required for:
|
2024-09-10 13:32:35 +00:00
|
|
|
#
|
2024-04-04 18:44:12 +00:00
|
|
|
# - Mason to build various language servers / linters / formatters from source
|
|
|
|
# - Runtime dependencies of plugins / lang servers / ...
|
|
|
|
withNodeJs = true;
|
|
|
|
withPython3 = true;
|
|
|
|
extraPackages = with pkgs; [
|
2024-09-10 13:32:35 +00:00
|
|
|
# Tools for building Mason packages
|
2024-04-04 18:44:12 +00:00
|
|
|
go
|
|
|
|
python3
|
|
|
|
rustc
|
|
|
|
cargo
|
|
|
|
gcc
|
2024-09-10 13:32:35 +00:00
|
|
|
cmake
|
|
|
|
gnumake
|
|
|
|
|
|
|
|
# lang servers
|
|
|
|
lua-language-server
|
|
|
|
rust-analyzer
|
|
|
|
taplo
|
|
|
|
gopls
|
|
|
|
marksman
|
|
|
|
yaml-language-server
|
|
|
|
ruff
|
|
|
|
neocmakelsp
|
|
|
|
bash-language-server
|
|
|
|
nixd
|
2024-09-12 20:56:56 +00:00
|
|
|
emmet-language-server
|
2024-09-17 00:27:04 +00:00
|
|
|
vscode-langservers-extracted
|
2024-09-10 13:32:35 +00:00
|
|
|
|
|
|
|
# Linters / formatters
|
|
|
|
stylua
|
|
|
|
shfmt
|
|
|
|
gofumpt
|
|
|
|
gotools
|
|
|
|
sqlfluff
|
|
|
|
hadolint
|
|
|
|
markdownlint-cli2
|
|
|
|
nodePackages.prettier
|
2024-09-17 00:27:04 +00:00
|
|
|
nodePackages.eslint
|
2024-09-10 13:32:35 +00:00
|
|
|
shellcheck
|
|
|
|
shfmt
|
|
|
|
alejandra
|
2024-07-08 21:49:24 +00:00
|
|
|
deadnix
|
|
|
|
statix
|
2024-09-10 13:32:35 +00:00
|
|
|
|
|
|
|
# Other tools / utilities
|
|
|
|
ripgrep
|
|
|
|
fd
|
|
|
|
jq
|
|
|
|
lazygit
|
2024-04-04 18:44:12 +00:00
|
|
|
];
|
|
|
|
};
|
|
|
|
}
|