diff --git a/plugins/by-name/direnv/default.nix b/plugins/by-name/direnv/default.nix index 2a305e3b..7fa9539a 100644 --- a/plugins/by-name/direnv/default.nix +++ b/plugins/by-name/direnv/default.nix @@ -10,7 +10,6 @@ helpers.vim-plugin.mkVimPlugin { originalName = "direnv.vim"; package = "direnv-vim"; globalPrefix = "direnv_"; - extraPackages = [ pkgs.direnv ]; maintainers = [ helpers.maintainers.alisonjenkins ]; @@ -36,4 +35,14 @@ helpers.vim-plugin.mkVimPlugin { Stop echoing output from Direnv command. ''; }; + + extraOptions = { + direnvPackage = lib.mkPackageOption pkgs "direnv" { + nullable = true; + }; + }; + + extraConfig = cfg: { + extraPackages = [ cfg.direnvPackage ]; + }; } diff --git a/tests/test-sources/plugins/by-name/direnv/default.nix b/tests/test-sources/plugins/by-name/direnv/default.nix index 43b21442..8b58818a 100644 --- a/tests/test-sources/plugins/by-name/direnv/default.nix +++ b/tests/test-sources/plugins/by-name/direnv/default.nix @@ -14,4 +14,11 @@ }; }; }; + + no-packages = { + plugins.direnv = { + enable = true; + direnvPackage = null; + }; + }; }