{ pkgs, lib,... }:
{

 home.packages = with pkgs; [
  lua-language-server
  nil
  ripgrep
  lldb
  lazygit
  gcc
  # gopls
  stylua
  rustfmt
 ];

programs.neovim = {
  enable = true;
  vimAlias = true;
};
catppuccin.nvim.enable = false;

programs.neovim.plugins = [
  pkgs.vimPlugins.lazy-nvim
];

 home.file =
  lib.mkMerge [
   {
     ".config/nvim/init.lua".source = ./init.lua;
    ".config/nvim/lua/config/lazy.lua".source = ./lua/config/lazy.lua;
    ".config/nvim/lua/plugins/flutter.lua".source = ./lua/plugins/flutter.lua;
#    ".config/nvim/lua/plugins/coq.lua".source = ./lua/plugins/coq.lua;
    ".config/nvim/lua/plugins/blink-cmp.lua".source = ./lua/plugins/blink-cmp.lua;
    ".config/nvim/lua/plugins/lsp.lua".source = ./lua/plugins/lsp.lua;
   ".config/nvim/lua/plugins/mason.lua".source = ./lua/plugins/mason.lua;
   ".config/nvim/lua/plugins/mason-lspconfig.lua".source = ./lua/plugins/mason-lspconfig.lua;
    # ".config/nvim/lua/plugins/treesitter.lua".source = ./lua/plugins/treesitter.lua;
    ".config/nvim/lua/plugins/catppuccin.lua".source = ./lua/plugins/catppuccin.lua;
    ".config/nvim/lua/plugins/telescope.lua".source = ./lua/plugins/telescope.lua;
    ".config/nvim/lua/plugins/highlight-colors.lua".source = ./lua/plugins/highlight-colors.lua;
    ".config/nvim/lua/plugins/comment.lua".source = ./lua/plugins/comment.lua;
#    ".config/nvim/lua/plugins/lazydev.lua".source = ./lua/plugins/lazydev.lua;
    ".config/nvim/lua/plugins/lualine.lua".source = ./lua/plugins/lualine.lua;
    ".config/nvim/lua/plugins/whichkey.lua".source = ./lua/plugins/whichkey.lua;
    ".config/nvim/lua/plugins/trouble.lua".source = ./lua/plugins/trouble.lua;
    ".config/nvim/lua/plugins/dap.lua".source = ./lua/plugins/dap.lua;
    ".config/nvim/lua/plugins/blankline.lua".source = ./lua/plugins/blankline.lua;
    # ".config/nvim/lua/plugins/rustaceanvim.lua".source = ./lua/plugins/rustaceanvim.lua;
    ".config/nvim/lua/plugins/lazygit.lua".source = ./lua/plugins/lazygit.lua;
    ".config/nvim/lua/plugins/toggleterm.lua".source = ./lua/plugins/toggleterm.lua;
    ".config/nvim/lua/plugins/love.lua".source = ./lua/plugins/love.lua;
    ".config/nvim/lua/plugins/code-action.lua".source = ./lua/plugins/code-action.lua;
    ".config/nvim/lua/plugins/tabby.lua".source = ./lua/plugins/tabby.lua;
    ".config/nvim/lua/plugins/tabout.lua".source = ./lua/plugins/tabout.lua;
    ".config/nvim/lua/plugins/autopair.lua".source = ./lua/plugins/autopair.lua;
    ".config/nvim/lua/plugins/mini-animate.lua".source = ./lua/plugins/mini-animate.lua;
    ".config/nvim/lua/plugins/vim-suda.lua".source = ./lua/plugins/vim-suda.lua;
    ".config/nvim/lua/plugins/tiny-inline-diagnostic.lua".source = ./lua/plugins/tiny-inline-diagnostic.lua;
    ".config/nvim/lua/plugins/conform.lua".source = ./lua/plugins/conform.lua;
    ".config/nvim/lua/plugins/nvim-tree.lua".source = ./lua/plugins/nvim-tree.lua;
    ".config/nvim/lua/plugins/notify.lua".source = ./lua/plugins/notify.lua;
    # ".config/nvim/lua/plugins/rest.lua".source = ./lua/plugins/rest.lua;
    ".config/nvim/lua/plugins/neominimap.lua".source = ./lua/plugins/neominimap.lua;
    ".config/nvim/lua/plugins/vim-tmux-navigator.lua".source = ./lua/plugins/vim-tmux-navigator.lua;
    # ".config/nvim/lua/plugins/workspaces.lua".source = ./lua/plugins/workspaces.lua;

    # ".config/nvim/lua/plugins/go.lua".source = ./lua/plugins/go.lua;
    # ".config/nvim/lua/plugins/typst.lua".source = ./lua/plugins/typst.lua;

   }
  ];
}
