plugins: use mk{Neovim,Vim}Plugin's dependencies parameter

This commit is contained in:
Gaetan Lepage 2025-04-27 09:53:12 +02:00
parent b66559d8ef
commit 1a64636839
49 changed files with 147 additions and 207 deletions

View file

@ -11,6 +11,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ maintainers.GaetanLepage ];
dependencies = [ "curl" ];
# TODO: added 2025-04-06, remove after 25.05
imports = [
(lib.nixvim.mkRemovedPackageOptionModule {
@ -19,8 +21,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = cfg: { dependencies.curl.enable = lib.mkDefault true; };
settingsOptions = {
api_key_cmd = helpers.defaultNullOpts.mkStr null ''
The path and arguments to an executable that returns the API key via stdout.

View file

@ -13,6 +13,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.alisonjenkins ];
dependencies = [ "git" ];
imports = [
# TODO: added 2025-04-06, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -55,8 +57,4 @@ lib.nixvim.plugins.mkVimPlugin {
Minimum height of a status window.
'';
};
extraConfig = cfg: {
dependencies.git.enable = lib.mkDefault true;
};
}

View file

@ -8,6 +8,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "cornelis" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -16,10 +18,6 @@ lib.nixvim.plugins.mkVimPlugin {
})
];
extraConfig = {
dependencies.cornelis.enable = lib.mkDefault true;
};
settingsOptions = {
use_global_binary = defaultNullOpts.mkFlagInt 0 ''
Whether to use global binary instead of stack.

View file

@ -13,6 +13,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.alisonjenkins ];
dependencies = [ "direnv" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -43,8 +45,4 @@ lib.nixvim.plugins.mkVimPlugin {
Stop echoing output from Direnv command.
'';
};
extraConfig = {
dependencies.direnv.enable = lib.mkDefault true;
};
}

View file

@ -17,6 +17,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
setup = ":setup";
dependencies = [ "distant" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -25,10 +27,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = {
dependencies.distant.enable = lib.mkDefault true;
};
settingsOptions = {
buffer = {
watch = {

View file

@ -10,6 +10,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.khaneliman ];
dependencies = [ "flutter" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -19,8 +21,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
];
extraConfig = cfg: {
dependencies.flutter.enable = lib.mkDefault true;
warnings = lib.nixvim.mkWarnings "plugins.flutter-tools" {
when =
(cfg.settings ? debugger.enable)

View file

@ -9,6 +9,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "git" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -18,8 +20,4 @@ lib.nixvim.plugins.mkVimPlugin {
];
# In typical tpope fashion, this plugin has no config options
extraConfig = {
dependencies.git.enable = lib.mkDefault true;
};
}

View file

@ -36,6 +36,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
inherit settingsOptions settingsExample;
dependencies = [ "fzf" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -130,8 +132,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
enable = lib.mkOverride 1490 true;
};
dependencies.fzf.enable = lib.mkDefault true;
plugins.fzf-lua.settings.__unkeyed_profile = cfg.profile;
keymaps = mapAttrsToList (

View file

@ -10,6 +10,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ maintainers.GaetanLepage ];
dependencies = [ "git" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -18,10 +20,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = {
dependencies.git.enable = lib.mkDefault true;
};
settingsOptions = {
default_mappings =
helpers.defaultNullOpts.mkNullable (with types; either bool (attrsOf str)) true

View file

@ -13,6 +13,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.khaneliman ];
dependencies = [ "git" ];
# TODO: added 2025-04-06, remove after 25.05
imports = [
(lib.nixvim.mkRemovedPackageOptionModule {
@ -70,8 +72,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
'';
};
dependencies.git.enable = lib.mkDefault true;
plugins.telescope.enabledExtensions = lib.mkIf cfg.enableTelescope [ "git_worktree" ];
globals.git_worktree = cfg.settings;

View file

@ -33,6 +33,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
dependencies = [ "git" ];
settingsOptions = {
enabled = defaultNullOpts.mkBool true ''
Enables the plugin on Neovim startup.
@ -132,8 +134,4 @@ lib.nixvim.plugins.mkNeovimPlugin {
virtual_text_column = 80;
use_blame_commit_file_urls = true;
};
extraConfig = {
dependencies.git.enable = lib.mkDefault true;
};
}

View file

@ -43,6 +43,8 @@ lib.nixvim.plugins.mkVimPlugin {
})
];
dependencies = [ "git" ];
extraOptions = {
recommendedSettings = lib.mkOption {
type = types.bool;
@ -63,8 +65,6 @@ lib.nixvim.plugins.mkVimPlugin {
foldtext = "gitgutter#fold#foldtext";
};
dependencies.git.enable = lib.mkDefault true;
extraPackages = [
cfg.grepPackage
];

View file

@ -13,6 +13,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "nodejs" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -22,10 +24,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = {
dependencies.nodejs.enable = lib.mkDefault true;
};
settingsOptions = {
gitlab_url = defaultNullOpts.mkStr "https://gitlab.com" ''
The GitLab instance url to use if not `https://gitlab.com`.

View file

@ -14,9 +14,7 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
extraConfig = {
dependencies.git.enable = lib.mkDefault true;
};
dependencies = [ "git" ];
# TODO: Added 2024-12-16; remove after 25.05
optionsRenamedToSettings = [

View file

@ -1,7 +1,6 @@
{
lib,
config,
pkgs,
...
}:
let
@ -82,6 +81,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
dependencies = [ "git" ];
settingsOptions = import ./settings-options.nix lib;
settingsExample = {
@ -111,7 +112,5 @@ lib.nixvim.plugins.mkNeovimPlugin {
You should maybe enable the `trouble` plugin.
'';
};
dependencies.git.enable = lib.mkDefault true;
};
}

View file

@ -12,6 +12,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.getchoo ];
dependencies = [ "glow" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -82,8 +84,4 @@ lib.nixvim.plugins.mkNeovimPlugin {
width_ratio = 0.7;
height_ratio = 0.7;
};
extraConfig = {
dependencies.glow.enable = lib.mkDefault true;
};
}

View file

@ -12,6 +12,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ maintainers.GaetanLepage ];
dependencies = [ "godot" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -29,8 +31,4 @@ lib.nixvim.plugins.mkVimPlugin {
settingsExample = {
executable = "godot";
};
extraConfig = {
dependencies.godot.enable = lib.mkDefault true;
};
}

View file

@ -1,5 +1,6 @@
{
lib,
config,
...
}:
let
@ -124,12 +125,13 @@ lib.nixvim.plugins.mkNeovimPlugin {
];
};
extraConfig = cfg: {
# In theory, we could remove that if the user explicitly disables `downloadRemoteImages` for
# all integrations but shipping `curl` is not too heavy.
dependencies = {
curl.enable = lib.mkDefault true;
ueberzug.enable = lib.mkIf (cfg.settings.backend == "ueberzug") (lib.mkDefault true);
};
};
# In theory, we could remove that if the user explicitly disables `downloadRemoteImages` for
# all integrations but shipping `curl` is not too heavy.
dependencies = [
"curl"
{
name = "ueberzug";
enable = config.plugins.image.settings.backend == "ueberzug";
}
];
}

View file

@ -14,6 +14,11 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.AndresBermeoMarinelli ];
dependencies = [
"git"
"lazygit"
];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -80,12 +85,4 @@ lib.nixvim.plugins.mkVimPlugin {
use_custom_config_file_path = 0;
config_file_path = [ ];
};
extraConfig = cfg: {
dependencies = {
git.enable = lib.mkDefault true;
lazygit.enable = lib.mkDefault true;
};
};
}

View file

@ -13,6 +13,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.khaneliman ];
dependencies = [ "lean" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -184,10 +186,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
};
};
extraConfig = {
dependencies.lean.enable = lib.mkDefault true;
};
# TODO: Deprecated in 2025-01-31
inherit (import ./deprecations.nix) deprecateExtraOptions optionsRenamedToSettings;
}

View file

@ -35,9 +35,7 @@ mkVimPlugin {
})
];
extraConfig = {
dependencies.ledger.enable = lib.mkDefault true;
};
dependencies = [ "ledger" ];
settingsOptions = {
bin = helpers.mkNullOrStr ''

View file

@ -10,6 +10,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "llm-ls" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -19,18 +21,14 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig =
let
llm-ls-dep = config.dependencies.llm-ls;
in
{
dependencies.llm-ls.enable = lib.mkDefault true;
# If not setting this option, llm.nvim will try to download the llm-ls binary from the internet.
plugins.llm.settings.lsp.bin_path = lib.mkIf llm-ls-dep.enable (
lib.mkDefault (lib.getExe llm-ls-dep.package)
);
};
extraConfig = {
# If not setting this option, llm.nvim will try to download the llm-ls binary from the internet.
plugins.llm.settings.lsp.bin_path =
let
llm-ls-dep = config.dependencies.llm-ls;
in
lib.mkIf llm-ls-dep.enable (lib.mkDefault (lib.getExe llm-ls-dep.package));
};
settingsOptions = import ./settings-options.nix lib;

View file

@ -52,6 +52,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
dependencies = [ "git" ];
settingsOptions =
let
mkSeparatorsOption =
@ -406,8 +408,4 @@ lib.nixvim.plugins.mkNeovimPlugin {
];
};
};
extraConfig = {
dependencies.git.enable = lib.mkDefault true;
};
}

View file

@ -84,6 +84,14 @@ lib.nixvim.plugins.mkNeovimPlugin {
"mappings"
];
dependencies = [
"git"
{
name = "which";
enable = hasInfix "which" (config.plugins.neogit.settings.commit_view.verify_commit.__raw or "");
}
];
settingsOptions = import ./settings-options.nix { inherit lib helpers; };
settingsExample = {
@ -132,15 +140,5 @@ lib.nixvim.plugins.mkNeovimPlugin {
"fzf-lua"
]
);
dependencies = {
git.enable = lib.mkDefault true;
which.enable =
let
autoInstallWhich = hasInfix "which" (cfg.settings.commit_view.verify_commit.__raw or "");
in
lib.mkIf autoInstallWhich (lib.mkDefault true);
};
};
}

View file

@ -3,7 +3,6 @@
helpers,
pkgs,
config,
options,
...
}:
with lib;

View file

@ -13,6 +13,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.svl ];
dependencies = [ "gh" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -178,7 +180,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
extraConfig =
cfg:
lib.mkMerge [
{ dependencies.gh.enable = lib.mkDefault true; }
(lib.mkIf (cfg.settings.picker == null || cfg.settings.picker == "telescope") {
plugins.telescope.enable = lib.mkDefault true;
})

View file

@ -17,9 +17,7 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = {
dependencies.yq.enable = lib.mkDefault true;
};
dependencies = [ "yq" ];
settingsOptions = import ./settings-options.nix lib;

View file

@ -6,9 +6,7 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
extraConfig = {
dependencies.ripgrep.enable = lib.mkDefault true;
};
dependencies = [ "ripgrep" ];
settingsExample = lib.literalExpression ''
{

View file

@ -12,6 +12,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "git" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -78,8 +80,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
};
extraConfig = cfg: {
dependencies.git.enable = lib.mkDefault true;
plugins.pckr.luaConfig = {
# Otherwise pckr can't find itself
pre = ''

View file

@ -25,9 +25,7 @@ lib.nixvim.plugins.mkVimPlugin {
})
];
extraConfig = {
dependencies.plantuml.enable = lib.mkDefault true;
};
dependencies = [ "plantuml" ];
settingsOptions = {
set_makeprg = defaultNullOpts.mkFlagInt 1 ''

View file

@ -61,6 +61,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
"searchBack"
];
dependencies = [ "curl" ];
settingsOptions = {
custom_dynamic_variables = lib.mkOption {
type = with types; nullOr (maybeRaw (attrsOf strLuaFn));
@ -302,8 +304,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
globals.rest_nvim = cfg.settings;
dependencies.curl.enable = lib.mkDefault true;
filetype = lib.mkIf cfg.enableHttpFiletypeAssociation {
extension.http = "http";
};

View file

@ -15,6 +15,7 @@ lib.nixvim.plugins.mkNeovimPlugin {
deprecateExtraOptions = true;
optionsRenamedToSettings = import ./renamed-options.nix;
dependencies = [ "rust-analyzer" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -56,8 +57,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
cfg:
mkMerge [
{
dependencies.rust-analyzer.enable = lib.mkDefault true;
globals.rustaceanvim = cfg.settings;
assertions = lib.nixvim.mkAssertions "plugins.rustaceanvim" {

View file

@ -14,6 +14,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "nodejs" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -24,8 +26,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
];
extraConfig = {
dependencies.nodejs.enable = lib.mkDefault true;
plugins.sg.settings.node_executable = lib.mkIf config.dependencies.nodejs.enable (
lib.mkDefault (lib.getExe config.dependencies.nodejs.package)
);

View file

@ -1,5 +1,6 @@
{
lib,
config,
helpers,
...
}:
@ -26,6 +27,25 @@ lib.nixvim.plugins.mkNeovimPlugin {
'')
];
dependencies =
let
defaults = config.plugins.spectre.settings.default;
in
[
{
name = "ripgrep";
enable = defaults.find.cmd == "rg";
}
{
name = "sed";
enable = defaults.replace.cmd == "sed";
}
{
name = "sd";
enable = defaults.replace.cmd == "sd";
}
];
settingsOptions =
let
mkEngineOption =
@ -230,16 +250,4 @@ lib.nixvim.plugins.mkNeovimPlugin {
};
};
};
extraConfig = cfg: {
dependencies =
let
defaults = cfg.settings.default;
in
{
ripgrep.enable = lib.mkIf (defaults.find.cmd == "rg") (lib.mkDefault true);
sed.enable = lib.mkIf (defaults.replace.cmd == "sed") (lib.mkDefault true);
sd.enable = lib.mkIf (defaults.replace.cmd == "sd") (lib.mkDefault true);
};
};
}

View file

@ -7,15 +7,13 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.PoCo ];
dependencies = [ "curl" ];
# Register nvim-cmp association
imports = [
{ cmpSourcePlugins.supermaven = "supermaven"; }
];
extraConfig = {
dependencies.curl.enable = lib.mkDefault true;
};
settingsExample = lib.literalExpression ''
{
keymaps = {

View file

@ -19,6 +19,8 @@ lib.nixvim.plugins.mkVimPlugin {
})
];
dependencies = [ "ctags" ];
settingsExample = {
position = "right";
autoclose = false;
@ -35,8 +37,4 @@ lib.nixvim.plugins.mkVimPlugin {
private = "󰛑 ";
};
};
extraConfig = {
dependencies.ctags.enable = lib.mkDefault true;
};
}

View file

@ -1,8 +1,6 @@
{
lib,
config,
pkgs,
options,
...
}:
with lib;
@ -45,6 +43,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
dependencies = [ "bat" ];
extraOptions = {
keymaps = mkOption {
type =
@ -111,8 +111,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
let $BAT_THEME = '${cfg.highlightTheme}'
'';
dependencies.bat.enable = lib.mkDefault true;
keymaps = mapAttrsToList (
key: mapping:
let

View file

@ -12,6 +12,8 @@ mkExtension {
extensionName = "live_grep_args";
package = "telescope-live-grep-args-nvim";
dependencies = [ "ripgrep" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -67,8 +69,4 @@ mkExtension {
};
theme = "dropdown";
};
extraConfig = {
dependencies.ripgrep.enable = lib.mkDefault true;
};
}

View file

@ -12,6 +12,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ maintainers.nickhu ];
dependencies = [ "texpresso" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -19,8 +21,4 @@ lib.nixvim.plugins.mkVimPlugin {
packageName = "texpresso";
})
];
extraConfig = {
dependencies.texpresso.enable = lib.mkDefault true;
};
}

View file

@ -9,12 +9,10 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
extraConfig = cfg: {
dependencies = {
curl.enable = lib.mkDefault true;
git.enable = lib.mkDefault true;
};
};
dependencies = [
"curl"
"git"
];
settingsExample = {
stage.moveToNextHunkOnStagingToggle = true;

View file

@ -21,6 +21,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
maintainers = [ lib.maintainers.khaneliman ];
dependencies = [ "ripgrep" ];
imports = [
# TODO: Added 2023-11-06, remove after 24.11
(mkRemovedOptionModule [
@ -432,8 +434,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
}
];
dependencies.ripgrep.enable = lib.mkDefault true;
keymaps = lib.pipe cfg.keymaps [
(filterAttrs (n: keymap: keymap != null && keymap.key != null))
(mapAttrsToList (

View file

@ -253,6 +253,11 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
dependencies = lib.map (name: {
inherit name;
enable = !config.plugins.treesitter.nixGrammars;
}) buildGrammarDeps;
settingsOptions = {
auto_install = helpers.defaultNullOpts.mkBool false ''
Whether to automatically install missing parsers when entering a buffer.
@ -456,13 +461,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
pkg: pkg.withPlugins (_: cfg.grammarPackages)
);
# These deps are required to build grammars when not using `nixGrammars`:
dependencies = lib.mkIf (!cfg.nixGrammars) (
lib.genAttrs buildGrammarDeps (_: {
enable = lib.mkDefault true;
})
);
warnings = lib.nixvim.mkWarnings "plugins.treesitter" (
lib.map (packageName: {
when = !cfg.nixGrammars && !config.dependencies.${packageName}.enable;

View file

@ -22,12 +22,12 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = cfg: {
dependencies = {
tinymist.enable = lib.mkDefault true;
websocat.enable = lib.mkDefault true;
};
dependencies = [
"tinymist"
"websocat"
];
extraConfig = cfg: {
plugins.typst-preview.settings = {
# Disable automatic downloading of binary dependencies
dependencies_bin = {

View file

@ -27,6 +27,8 @@ lib.nixvim.plugins.mkVimPlugin {
})
];
dependencies = [ "typst" ];
extraOptions = {
keymaps = {
silent = mkOption {
@ -40,8 +42,6 @@ lib.nixvim.plugins.mkVimPlugin {
};
extraConfig = cfg: {
dependencies.typst.enable = lib.mkDefault true;
keymaps =
with cfg.keymaps;
helpers.keymaps.mkKeymaps

View file

@ -5,6 +5,8 @@ lib.nixvim.plugins.mkVimPlugin {
maintainers = [ lib.maintainers.GaetanLepage ];
dependencies = [ "tmux" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -13,10 +15,6 @@ lib.nixvim.plugins.mkVimPlugin {
})
];
extraConfig = {
dependencies.tmux.enable = lib.mkDefault true;
};
settingsOptions = import ./settings-options.nix lib;
settingsExample = {

View file

@ -12,6 +12,8 @@ lib.nixvim.plugins.neovim.mkNeovimPlugin {
maintainers = [ lib.maintainers.khaneliman ];
dependencies = [ "wezterm" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -29,8 +31,4 @@ lib.nixvim.plugins.neovim.mkNeovimPlugin {
settingsExample = {
create_commands = false;
};
extraConfig = {
dependencies.wezterm.enable = lib.mkDefault true;
};
}

View file

@ -18,6 +18,14 @@ lib.nixvim.plugins.mkNeovimPlugin {
You are free to configure `dependencies.*.enable` and `dependencies.*.package` to disable or customize this behavior, respectively.
'';
dependencies = [
"curl"
"gzip"
"coreutils"
"util-linux"
"codeium"
];
imports = [
# Register nvim-cmp association
{ cmpSourcePlugins.codeium = "windsurf-nvim"; }
@ -26,19 +34,4 @@ lib.nixvim.plugins.mkNeovimPlugin {
settingsExample = {
enable_chat = true;
};
extraConfig = {
dependencies =
lib.genAttrs
[
"curl"
"gzip"
"coreutils"
"util-linux"
"codeium"
]
(_: {
enable = lib.mkDefault true;
});
};
}

View file

@ -21,6 +21,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
See the [upstream docs](https://github.com/mikavilpas/yazi.nvim?tab=readme-ov-file#%EF%B8%8F-keybindings) for details.
'';
dependencies = [ "yazi" ];
imports = [
# TODO: added 2025-04-07, remove after 25.05
(lib.nixvim.mkRemovedPackageOptionModule {
@ -29,10 +31,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
extraConfig = {
dependencies.yazi.enable = lib.mkDefault true;
};
settingsOptions = {
log_level = defaultNullOpts.mkLogLevel' {
pluginDefault = "off";

View file

@ -38,6 +38,8 @@ lib.nixvim.plugins.mkNeovimPlugin {
})
];
dependencies = [ "zk" ];
settingsOptions = {
picker =
helpers.defaultNullOpts.mkEnumFirstDefault
@ -115,8 +117,6 @@ lib.nixvim.plugins.mkNeovimPlugin {
};
extraConfig = cfg: {
dependencies.zk.enable = lib.mkDefault true;
warnings = lib.nixvim.mkWarnings "plugins.zk" (
mapAttrsToList
(picker: pluginName: {