From 972e5f9c68cc433c5fc26adf92cd25b293a3776a Mon Sep 17 00:00:00 2001 From: brustybee Date: Mon, 9 Mar 2026 17:02:03 +0530 Subject: One shot upload --- cats.nix | 190 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 190 insertions(+) create mode 100644 cats.nix (limited to 'cats.nix') diff --git a/cats.nix b/cats.nix new file mode 100644 index 0000000..42a996a --- /dev/null +++ b/cats.nix @@ -0,0 +1,190 @@ +inputs: +let + inherit (inputs.nixcats) utils; +in +{ + pkgs, + settings, + categories, + extra, + name, + mkPlugin, + ... +}@packageDef: +{ + lspsAndRuntimeDeps = with pkgs; { + general = [ + fd + ripgrep + lsof + tree-sitter + # lldb + ]; + + markdown = [ + marksman + harper + ]; + + typst = [ + tinymist + ]; + + nix = [ + nixd + nil + nixfmt + ]; + + java = [ + jdt-language-server + google-java-format + ]; + + lua = [ + lua-language-server + stylua + ]; + + python = [ + ruff + zuban + ]; + + zig = [ + zls + ]; + + toml = [ + tombi + ]; + javascript = [ + eslint + prettierd + typescript-language-server + ]; + }; + + startupPlugins = with pkgs.vimPlugins; { + theme = [ + kanagawa-nvim + vague-nvim + kanso-nvim + rose-pine + catppuccin-nvim + tokyonight-nvim + gruvbox-material-nvim + onedark-nvim + onedarkpro-nvim + ]; + + ui = [ + nvim-web-devicons + ]; + + general = [ + pkgs.neovimPlugins.lze + pkgs.neovimPlugins.lzextras + nvim-lspconfig + ]; + + rust = [ + rustaceanvim + ]; + + extras = [ + plenary-nvim + ]; + }; + + optionalPlugins = with pkgs.vimPlugins; { + core = { + general = [ + oil-nvim + guess-indent-nvim + undotree + nvim-surround + conform-nvim + nvim-lint + lazydev-nvim + ]; + + picker = { + mini = [ + mini-pick + mini-extra + ]; + telescope = [ + telescope-nvim + telescope-fzf-native-nvim + telescope-ui-select-nvim + ]; + }; + + git = [ + pkgs.neovimPlugins.neogit + gitsigns-nvim + ]; + + completion = [ + blink-cmp + blink-ripgrep-nvim + friendly-snippets + ]; + }; + + tsitter = [ + nvim-treesitter.withAllGrammars + nvim-treesitter-textobjects + # (nvim-treesitter.withPlugins ( + # plugins: + # with plugins; [ + # nix + # lua + # rust + # cpp + # c + # go + # yaml + # python + # javascript + # typescript + # toml + # json + # ] + # )) + ]; + + debug = [ + nvim-dap + nvim-dap-ui + nvim-dap-virtual-text + nvim-dap-go + ]; + + misc = [ + obsidian-nvim + typst-preview-nvim + ]; + + ai = [ + pkgs.neovimPlugins.opencode-nvim + ]; + }; + + sharedLibraries = { + general = with pkgs; [ + # libgit2 + ]; + }; + + environmentVariables = { + }; + + extraWrapperArgs = { + }; + + extraLuaPackages = { + test = [ (_: [ ]) ]; + }; +} -- cgit v1.3.1