mirror of
https://mzte.de/git/LordMZTE/dotfiles.git
synced 2024-06-01 09:53:21 +02:00
37 lines
1 KiB
Nix
37 lines
1 KiB
Nix
|
{ lib, pkgs, system, config, ... }:
|
||
|
let
|
||
|
flakePkg = ref: (builtins.getFlake ref).packages.${system}.default;
|
||
|
default-packages = with pkgs; [
|
||
|
# MISSING: glsl_analyzer, haxe_language_server, prosemd_lsp, racket_langserver, yamlls, zls
|
||
|
# Language Servers
|
||
|
(flakePkg "github:oxalica/nil")
|
||
|
(pkgs.linkFarm "clangd" [{ name = "bin/clangd"; path = "${clang-tools}/bin/clangd"; }]) # only clangd
|
||
|
elixir-ls
|
||
|
jdt-language-server
|
||
|
lua-language-server
|
||
|
ocamlPackages.ocaml-lsp
|
||
|
openscad-lsp
|
||
|
taplo
|
||
|
vscode-langservers-extracted # cssls, eslint, html, jsonls
|
||
|
|
||
|
# Formatters
|
||
|
(pkgs.linkFarm "prettier" [{ name = "bin/prettier"; path = "${nodePackages.prettier}/bin/prettier"; }]) # needed due to symlink shenanigans
|
||
|
fnlfmt
|
||
|
nixpkgs-fmt
|
||
|
|
||
|
# Misc
|
||
|
html-tidy
|
||
|
shellcheck
|
||
|
];
|
||
|
in
|
||
|
{
|
||
|
options.cgnix.nvim-tools = lib.mkOption {
|
||
|
default = default-packages;
|
||
|
};
|
||
|
|
||
|
config.cgnix.entries.nvim_tools = pkgs.symlinkJoin {
|
||
|
name = "nvim-tools";
|
||
|
paths = config.cgnix.nvim-tools;
|
||
|
};
|
||
|
}
|