aboutsummaryrefslogtreecommitdiffstats
path: root/pkgs/by-name/vi/vim-plugins/check.nix
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-23 13:26:22 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-23 13:26:22 +0200
commit204731c0a69136c9cebcb54f1afecf5145e26bbe (patch)
treefc9132e5dc74e4a8e1327cdd411839a90f9410aa /pkgs/by-name/vi/vim-plugins/check.nix
parentrefactor(sys): Modularize and move to `modules/system` or `pkgs` (diff)
downloadnixos-config-204731c0a69136c9cebcb54f1afecf5145e26bbe.zip
refactor(pkgs): Categorize into `by-name` shards
This might not be the perfect way to organize a package set -- especially if the set is not nearly the size of nixpkgs -- but it is _at_ least a way of organization.
Diffstat (limited to 'pkgs/by-name/vi/vim-plugins/check.nix')
-rw-r--r--pkgs/by-name/vi/vim-plugins/check.nix37
1 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/by-name/vi/vim-plugins/check.nix b/pkgs/by-name/vi/vim-plugins/check.nix
new file mode 100644
index 00000000..ad23e2c7
--- /dev/null
+++ b/pkgs/by-name/vi/vim-plugins/check.nix
@@ -0,0 +1,37 @@
+{
+ pkgs,
+ lib,
+ ...
+}: let
+ # checks if a plugin has a license
+ hasLicense = _: pkg: let
+ warn = x: lib.warn x x;
+
+ msg =
+ if builtins.hasAttr "license" pkg.meta
+ then "${pkg.name} has license"
+ else warn "${pkg.name} has no license";
+
+ msg' = lib.replaceStrings [" "] ["-"] msg;
+ in
+ pkgs.runCommandNoCC msg' {} "echo : > $out ";
+
+ # function to check License for all packages
+ check-missing-licenses = let
+ buildInputs =
+ lib.mapAttrsToList
+ hasLicense
+ pkgs.vimExtraPlugins;
+ in
+ pkgs.runCommandNoCC
+ "check-missing-licenses"
+ {inherit buildInputs;}
+ "echo : > $out";
+in {
+ checks =
+ pkgs.vimExtraPlugins
+ // {
+ inherit check-missing-licenses;
+ inherit (pkgs) update-vim-plugins;
+ };
+}