plugins/barbar: iconsPackage -> icons provider options

This commit is contained in:
Austin Horstman 2024-09-20 10:18:39 -05:00
parent 23a903f13c
commit 2cf80fd66f
No known key found for this signature in database
3 changed files with 32 additions and 9 deletions

View file

@ -1,6 +1,7 @@
{
config,
lib,
pkgs,
options,
...
}:
with lib;
@ -172,6 +173,17 @@ lib.nixvim.neovim-plugin.mkNeovimPlugin {
]
)
)
# TODO: added 2024-09-20 remove after 24.11
(lib.mkRemovedOptionModule
[
"plugins"
"barbar"
"iconsPackage"
]
''
Please use `plugins.web-devicons` or `plugins.mini.modules.icons` with `plugins.mini.mockDevIcons` instead.
''
)
]
++ (map
(
@ -195,11 +207,6 @@ lib.nixvim.neovim-plugin.mkNeovimPlugin {
);
extraOptions = {
iconsPackage = lib.mkPackageOption pkgs [
"vimPlugins"
"nvim-web-devicons"
] { nullable = true; };
keymaps = mapAttrs (
optionName: funcName:
mkNullOrOption' {
@ -217,7 +224,18 @@ lib.nixvim.neovim-plugin.mkNeovimPlugin {
};
extraConfig = cfg: {
extraPlugins = mkIf (cfg.iconsPackage != null) [ cfg.iconsPackage ];
# TODO: added 2024-09-20 remove after 24.11
plugins.web-devicons = mkIf (
!(
config.plugins.mini.enable
&& config.plugins.mini.modules ? icons
&& config.plugins.mini.mockDevIcons
)
) { enable = mkOverride 1490 true; };
warnings = optional (options.plugins.web-devicons.enable.highestPrio == 1490) ''
Nixvim (plugins.barbar) `web-devicons` automatic installation is deprecated.
Please use `plugins.web-devicons` or `plugins.mini.modules.icons` with `plugins.mini.mockDevIcons` instead.
'';
keymaps = filter (keymap: keymap != null) (
# TODO: switch to `attrValues cfg.keymaps` when removing the deprecation warnings above: