From 7a3423ae18a3ec653fae5c5f6e430ccb9ac52ab0 Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Fri, 20 Sep 2024 13:02:23 -0500 Subject: [PATCH] plugins/diffview: iconsPackage -> icons provider options --- plugins/by-name/diffview/default.nix | 36 ++++++++++++++----- .../plugins/by-name/diffview/default.nix | 6 ++-- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/plugins/by-name/diffview/default.nix b/plugins/by-name/diffview/default.nix index c72fdaed..860ec98c 100644 --- a/plugins/by-name/diffview/default.nix +++ b/plugins/by-name/diffview/default.nix @@ -3,6 +3,7 @@ helpers, config, pkgs, + options, ... }: with lib; @@ -80,6 +81,19 @@ let }; in { + # TODO: added 2024-09-20 remove after 24.11 + imports = [ + (lib.mkRemovedOptionModule + [ + "plugins" + "diffview" + "iconsPackage" + ] + '' + Please use `plugins.web-devicons` or `plugins.mini.modules.icons` with `plugins.mini.mockDevIcons` instead. + '' + ) + ]; options.plugins.diffview = with helpers.defaultNullOpts; helpers.neovim-plugin.extraOptionsOptions @@ -93,11 +107,6 @@ in ]; }; - iconsPackage = lib.mkPackageOption pkgs [ - "vimPlugins" - "nvim-web-devicons" - ] { nullable = true; }; - diffBinaries = mkBool false '' Show diffs for binaries ''; @@ -827,9 +836,20 @@ in }; in mkIf cfg.enable { - extraPlugins = [ - cfg.package - ] ++ (optional (cfg.iconsPackage != null && cfg.useIcons) 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.diffview) `web-devicons` automatic installation is deprecated. + Please use `plugins.web-devicons` or `plugins.mini.modules.icons` with `plugins.mini.mockDevIcons` instead. + ''; + + extraPlugins = [ cfg.package ]; extraConfigLua = '' require("diffview").setup(${helpers.toLuaObject setupOptions}) diff --git a/tests/test-sources/plugins/by-name/diffview/default.nix b/tests/test-sources/plugins/by-name/diffview/default.nix index 9b182a4a..ed2c187f 100644 --- a/tests/test-sources/plugins/by-name/diffview/default.nix +++ b/tests/test-sources/plugins/by-name/diffview/default.nix @@ -1,9 +1,11 @@ { empty = { + plugins.web-devicons.enable = true; plugins.diffview.enable = true; }; example = { + plugins.web-devicons.enable = true; plugins.diffview = { enable = true; @@ -162,10 +164,10 @@ }; }; - no-packages = { + no-icons = { + plugins.web-devicons.enable = false; plugins.diffview = { enable = true; - iconsPackage = null; }; }; }