diff --git a/modules/dependencies.nix b/modules/dependencies.nix index 31798981..bb140182 100644 --- a/modules/dependencies.nix +++ b/modules/dependencies.nix @@ -10,6 +10,7 @@ let packages = { ctags.default = "ctags"; curl.default = "curl"; + direnv.default = "direnv"; gcc.default = "gcc"; git = { default = "git"; diff --git a/plugins/by-name/direnv/default.nix b/plugins/by-name/direnv/default.nix index 40cfe09c..b55022c6 100644 --- a/plugins/by-name/direnv/default.nix +++ b/plugins/by-name/direnv/default.nix @@ -1,5 +1,4 @@ { - pkgs, lib, ... }: @@ -14,6 +13,14 @@ lib.nixvim.plugins.mkVimPlugin { maintainers = [ lib.maintainers.alisonjenkins ]; + imports = [ + # TODO: added 2025-04-07, remove after 25.05 + (lib.nixvim.mkRemovedPackageOptionModule { + plugin = "direnv"; + packageName = "direnv"; + }) + ]; + settingsOptions = { direnv_auto = defaultNullOpts.mkFlagInt 1 '' It will not execute `:DirenvExport` automatically if the value is `0`. @@ -37,13 +44,7 @@ lib.nixvim.plugins.mkVimPlugin { ''; }; - extraOptions = { - direnvPackage = lib.mkPackageOption pkgs "direnv" { - nullable = true; - }; - }; - - extraConfig = cfg: { - extraPackages = [ cfg.direnvPackage ]; + extraConfig = { + dependencies.direnv.enable = lib.mkDefault true; }; } diff --git a/tests/test-sources/plugins/by-name/direnv/default.nix b/tests/test-sources/plugins/by-name/direnv/default.nix index 8b58818a..84498195 100644 --- a/tests/test-sources/plugins/by-name/direnv/default.nix +++ b/tests/test-sources/plugins/by-name/direnv/default.nix @@ -16,9 +16,8 @@ }; no-packages = { - plugins.direnv = { - enable = true; - direnvPackage = null; - }; + plugins.direnv.enable = true; + + dependencies.direnv.enable = false; }; }