diff --git a/modules/dependencies.nix b/modules/dependencies.nix index 98efae27..ce5d2369 100644 --- a/modules/dependencies.nix +++ b/modules/dependencies.nix @@ -12,6 +12,7 @@ let curl.default = "curl"; direnv.default = "direnv"; gcc.default = "gcc"; + gh.default = "gh"; git = { default = "git"; example = [ "gitMinimal" ]; diff --git a/plugins/by-name/octo/default.nix b/plugins/by-name/octo/default.nix index e49f8d0f..3e25b43d 100644 --- a/plugins/by-name/octo/default.nix +++ b/plugins/by-name/octo/default.nix @@ -1,6 +1,5 @@ { lib, - pkgs, ... }: let @@ -14,6 +13,14 @@ lib.nixvim.plugins.mkNeovimPlugin { maintainers = [ lib.maintainers.svl ]; + imports = [ + # TODO: added 2025-04-07, remove after 25.05 + (lib.nixvim.mkRemovedPackageOptionModule { + plugin = "octo"; + packageName = "gh"; + }) + ]; + settingsOptions = { use_local_fs = defaultNullOpts.mkBool false '' Use local files on right side of reviews. @@ -168,17 +175,10 @@ lib.nixvim.plugins.mkNeovimPlugin { }; }; - extraOptions = { - ghPackage = lib.mkPackageOption pkgs "GitHub CLI" { - default = "gh"; - nullable = true; - }; - }; - extraConfig = cfg: lib.mkMerge [ - { extraPackages = [ cfg.ghPackage ]; } + { dependencies.gh.enable = lib.mkDefault true; } (lib.mkIf (cfg.settings.picker == null || cfg.settings.picker == "telescope") { plugins.telescope.enable = lib.mkDefault true; }) diff --git a/tests/test-sources/plugins/by-name/octo/default.nix b/tests/test-sources/plugins/by-name/octo/default.nix index 0a8ebd0f..dec99d5d 100644 --- a/tests/test-sources/plugins/by-name/octo/default.nix +++ b/tests/test-sources/plugins/by-name/octo/default.nix @@ -103,10 +103,11 @@ no-packages = { # Need to add gh executable to runtime path for plugin test.runNvim = false; - plugins.web-devicons.enable = false; - plugins.octo = { - enable = true; - ghPackage = null; + + plugins = { + web-devicons.enable = false; + octo.enable = true; }; + dependencies.gh.enable = false; }; }