From f398d063993e22ac2730d4eb654b8384fc13d601 Mon Sep 17 00:00:00 2001 From: smayzy Date: Sun, 6 Jul 2025 18:55:01 +0200 Subject: [PATCH] nvf toogle --- hosts/common/common.nix | 2 ++ modules/nix/nvf.nix | 61 ++++++++++++++++++++++++----------------- 2 files changed, 38 insertions(+), 25 deletions(-) diff --git a/hosts/common/common.nix b/hosts/common/common.nix index 9d27342..21c8617 100644 --- a/hosts/common/common.nix +++ b/hosts/common/common.nix @@ -16,6 +16,8 @@ smayzy.nh.enable = true; smayzy.locales.enable = true; + + smayzy.nvf.enable = true; users.users.smayzy = { isNormalUser = true; diff --git a/modules/nix/nvf.nix b/modules/nix/nvf.nix index 5b6f16c..3d7edf7 100644 --- a/modules/nix/nvf.nix +++ b/modules/nix/nvf.nix @@ -1,32 +1,43 @@ { config, lib, pkgs, ... }: +let + inherit (lib) mkIf mkOption types; +in { -programs.nvf = { - enable = true; - settings = { - vim = { - viAlias = false; - vimAlias = true; - lsp = { - enable = true; - servers.nil.enable = true; + options.smayzy.nvf.enable = mkOption { + type = types.bool; + default = false; + description = "nvf config"; + }; + + config = mkIf config.smayzy.nvf.enable { + programs.nvf = { + enable = true; + settings = { + vim = { + viAlias = false; + vimAlias = true; + lsp = { + enable = true; + servers.nil.enable = true; + }; + languages = { + nix.enable = true; + clang.enable = true; + rust.enable = true; + }; + theme = { + enable = true; + name = lib.mkDefault "dracula"; + }; + treesitter.enable = true; + statusline.lualine.enable = true; + telescope.enable = true; + autocomplete.nvim-cmp.enable = true; }; - languages = { - nix.enable = true; - clang.enable = true; - rust.enable = true; - }; - theme = { - enable = true; - name = lib.mkDefault "dracula"; - }; - treesitter.enable = true; - statusline.lualine.enable = true; - telescope.enable = true; - autocomplete.nvim-cmp.enable = true; }; }; + environment.systemPackages = [ + pkgs.nil + ]; }; - environment.systemPackages = [ - pkgs.nil - ]; }