refactor: notebook configration
This commit is contained in:
115
hosts/nb/modules/development/nvim/default.nix
Normal file
115
hosts/nb/modules/development/nvim/default.nix
Normal file
@@ -0,0 +1,115 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
# unstable = import (fetchTarball https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz) {
|
||||
# config = { allowUnfree = true; };
|
||||
# };
|
||||
in
|
||||
{
|
||||
environment.variables = { EDITOR = "vim"; };
|
||||
nixpkgs.overlays = [
|
||||
(import ./chatgpt.nix)
|
||||
# (import ./gitea.nix)
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
nodePackages.typescript-language-server
|
||||
sumneko-lua-language-server
|
||||
nest
|
||||
nodePackages.intelephense
|
||||
nodePackages.vscode-langservers-extracted
|
||||
nodePackages.yaml-language-server
|
||||
gopls
|
||||
lazygit
|
||||
ripgrep
|
||||
lua
|
||||
luaPackages.lyaml
|
||||
aider-chat
|
||||
(neovim.override {
|
||||
vimAlias = true;
|
||||
configure = {
|
||||
packages.myPlugins = with pkgs.vimPlugins; {
|
||||
start = [
|
||||
bigfile-nvim
|
||||
bufferline-nvim
|
||||
catppuccin-nvim
|
||||
chatgpt-nvim
|
||||
# gitea-nvim
|
||||
cmp-buffer
|
||||
cmp-nvim-lsp
|
||||
cmp-path
|
||||
cmp-spell
|
||||
cmp-treesitter
|
||||
cmp-vsnip
|
||||
comment-nvim
|
||||
copilot-vim
|
||||
copilot-lua
|
||||
copilot-cmp
|
||||
# CopilotChat-nvim
|
||||
dracula-vim
|
||||
friendly-snippets
|
||||
gitsigns-nvim
|
||||
jq
|
||||
lightline-vim
|
||||
lspkind-nvim
|
||||
mini-icons
|
||||
neogit
|
||||
none-ls-nvim
|
||||
nvim-autopairs
|
||||
nvim-cmp
|
||||
nvim-colorizer-lua
|
||||
nvim-lspconfig
|
||||
nvim-tree-lua
|
||||
nvim-web-devicons
|
||||
nvim-treesitter.withAllGrammars
|
||||
nvim-treesitter-parsers.http
|
||||
# (nvim-treesitter.withPlugins (_: pkgs.tree-sitter.allGrammars))
|
||||
octo-nvim
|
||||
plenary-nvim
|
||||
project-nvim
|
||||
rainbow-delimiters-nvim
|
||||
telescope-fzf-native-nvim
|
||||
telescope-nvim
|
||||
todo-comments-nvim
|
||||
toggleterm-nvim
|
||||
vim-floaterm
|
||||
vim-sneak
|
||||
vim-vsnip
|
||||
which-key-nvim
|
||||
pkgs.vimPlugins.rest-nvim
|
||||
aider-nvim
|
||||
];
|
||||
opt = [];
|
||||
};
|
||||
customRC = let
|
||||
luaRequire = module:
|
||||
builtins.readFile (builtins.toString
|
||||
./config
|
||||
+ "/${module}.lua");
|
||||
luaConfig = builtins.concatStringsSep "\n" (map luaRequire [
|
||||
"init"
|
||||
"keymappings"
|
||||
"chatgpt"
|
||||
"copilot"
|
||||
"icons"
|
||||
"lspconfig"
|
||||
"nvim-cmp"
|
||||
"theming"
|
||||
"project"
|
||||
"telescope"
|
||||
"terminal"
|
||||
"treesitter"
|
||||
"treesitter-textobjects"
|
||||
"utils"
|
||||
"bufferline"
|
||||
"which-key"
|
||||
]);
|
||||
in ''
|
||||
lua << EOF
|
||||
${luaConfig}
|
||||
EOF
|
||||
'';
|
||||
};
|
||||
extraLuaPackages = luaPackages: [ luaPackages.lyaml ];
|
||||
}
|
||||
)];
|
||||
}
|
||||
Reference in New Issue
Block a user