about summary refs log tree commit diff stats
path: root/sys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-12-09 18:20:18 +0100
committerSoispha <soispha@vhack.eu>2023-12-09 18:20:18 +0100
commitb6302ae731f9d438f4e59f62d04903df79d4c942 (patch)
tree1b49245fe4e755d2fa4708de5e02b04ee1064605 /sys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins
parentbuild(treewide): Update (diff)
downloadnixos-config-b6302ae731f9d438f4e59f62d04903df79d4c942.tar.gz
nixos-config-b6302ae731f9d438f4e59f62d04903df79d4c942.zip
feat(treewide): Specify nvim plugins in my flake
Diffstat (limited to 'sys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins')
-rwxr-xr-xsys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins26
1 files changed, 26 insertions, 0 deletions
diff --git a/sys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins b/sys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins
new file mode 100755
index 00000000..ea71c6fa
--- /dev/null
+++ b/sys/nixpkgs/pkgs/plgs-pkgs/update_neovim_plugins
@@ -0,0 +1,26 @@
+#!/usr/bin/env sh
+
+BASE_DIR="$(readlink -f "$(dirname "$0")/plugins")"
+
+# Fetch plugins
+cd "$BASE_DIR" || (echo "BUG: No '$BASE_DIR'" && exit 1)
+
+# Cleanup manifest
+sort -o "$BASE_DIR/manifest.txt" "$BASE_DIR/manifest.txt"
+sort -o "$BASE_DIR/blacklist.txt" "$BASE_DIR/blacklist.txt"
+## Remove all plugins, which are on the blacklist
+echo "$(comm -23 "$BASE_DIR/manifest.txt" "$BASE_DIR/blacklist.txt")" > "$BASE_DIR/manifest.txt"
+
+# Backup vim-plugins.nix
+mv "$BASE_DIR/default.nix" "$BASE_DIR/default.nix.bak"
+echo "{...} : {}" > "$BASE_DIR/default.nix"
+
+# Generate derivations for new plugins (this binary is provided by the dev-environment)
+update-vim-plugins cleanup "$BASE_DIR"
+
+# Restore vim-plugins.nix
+mv "$BASE_DIR/default.nix.bak" "$BASE_DIR/default.nix"
+
+
+# Update new plugins
+update-vim-plugins update "$BASE_DIR" --all