about summary refs log tree commit diff stats
path: root/pkgs/by-name/vi/vimExtraPlugins/check.nix
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-24 14:06:50 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-24 14:06:50 +0200
commitf07dd1dde090c231aa3cb4539d0c8695b93ee653 (patch)
treef7908fca18b0ee72d224507ea45d9c454653c274 /pkgs/by-name/vi/vimExtraPlugins/check.nix
parentfeat(pkgs): Pull yambar-{cpu,memory} in tree (diff)
downloadnixos-config-f07dd1dde090c231aa3cb4539d0c8695b93ee653.zip
refactor(pkgs/by-name/vi/vim-plugins): Give nixpkgs compatible name
Nixpkgs already provides `vimPlugins` so having a `vim-plugins` set is
rather confusing. Calling it `vimExtraPlugins` resolves this confusion.
Diffstat (limited to 'pkgs/by-name/vi/vimExtraPlugins/check.nix')
-rw-r--r--pkgs/by-name/vi/vimExtraPlugins/check.nix37
1 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/by-name/vi/vimExtraPlugins/check.nix b/pkgs/by-name/vi/vimExtraPlugins/check.nix
new file mode 100644
index 00000000..ad23e2c7
--- /dev/null
+++ b/pkgs/by-name/vi/vimExtraPlugins/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;
+    };
+}