aboutsummaryrefslogtreecommitdiff
path: root/modules/programs/neovim/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/programs/neovim/default.nix')
-rw-r--r--modules/programs/neovim/default.nix42
1 files changed, 42 insertions, 0 deletions
diff --git a/modules/programs/neovim/default.nix b/modules/programs/neovim/default.nix
new file mode 100644
index 0000000..9f6b963
--- /dev/null
+++ b/modules/programs/neovim/default.nix
@@ -0,0 +1,42 @@
+{
+ config,
+ username,
+ lib,
+ pkgs,
+ ...
+}:
+
+{
+ options.nx.programs.neovim.enable = lib.mkEnableOption "Setup neovim";
+ config = lib.mkIf config.nx.programs.neovim.enable {
+ home-manager.users.${username} = {
+ programs.neovim = {
+ enable = true;
+ package = pkgs.neovim;
+ extraConfig = ''
+ luafile ${./init.lua}
+ '';
+ };
+ home.packages = with pkgs; [
+ ripgrep
+
+ # github pilot
+ nodejs
+
+ # language servers
+ lua-language-server
+ nixd
+ pyright
+ gopls
+ java-language-server
+ typescript-language-server
+ rust-analyzer
+ tailwindcss-language-server
+
+ # formatter
+ nixfmt-rfc-style
+ luaformatter
+ ];
+ };
+ };
+} \ No newline at end of file