about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rwxr-xr-xpkgs/applications/editors/kakoune/plugins/update.py5
-rw-r--r--pkgs/applications/editors/vim/plugins/get-plugins.nix19
-rwxr-xr-xpkgs/applications/editors/vim/plugins/update.py63
3 files changed, 47 insertions, 40 deletions
diff --git a/pkgs/applications/editors/kakoune/plugins/update.py b/pkgs/applications/editors/kakoune/plugins/update.py
index 49662a0e8e2e2..ab5aa9242839c 100755
--- a/pkgs/applications/editors/kakoune/plugins/update.py
+++ b/pkgs/applications/editors/kakoune/plugins/update.py
@@ -81,10 +81,7 @@ in lib.fix' (lib.extends overrides packages)
 
 def main():
     editor = KakouneEditor("kakoune", ROOT, GET_PLUGINS)
-    parser = editor.create_parser()
-    args = parser.parse_args()
-
-    pluginupdate.update_plugins(editor, args)
+    editor.run()
 
 
 if __name__ == "__main__":
diff --git a/pkgs/applications/editors/vim/plugins/get-plugins.nix b/pkgs/applications/editors/vim/plugins/get-plugins.nix
new file mode 100644
index 0000000000000..0aaec333c2d76
--- /dev/null
+++ b/pkgs/applications/editors/vim/plugins/get-plugins.nix
@@ -0,0 +1,19 @@
+with import <localpkgs> {};
+let
+  inherit (vimUtils.override {inherit vim;}) buildVimPluginFrom2Nix;
+  inherit (neovimUtils) buildNeovimPluginFrom2Nix;
+
+  generated = callPackage <localpkgs/pkgs/applications/editors/vim/plugins/generated.nix> {
+    inherit buildNeovimPluginFrom2Nix buildVimPluginFrom2Nix;
+  } {} {};
+  hasChecksum = value:
+    lib.isAttrs value && lib.hasAttrByPath ["src" "outputHash"] value;
+  getChecksum = name: value:
+    if hasChecksum value then {
+      submodules = value.src.fetchSubmodules or false;
+      sha256 = value.src.outputHash;
+      rev = value.src.rev;
+    } else null;
+  checksums = lib.mapAttrs getChecksum generated;
+in
+  lib.filterAttrs (n: v: v != null) checksums
diff --git a/pkgs/applications/editors/vim/plugins/update.py b/pkgs/applications/editors/vim/plugins/update.py
index 20336c66ed6ec..09606634f9e53 100755
--- a/pkgs/applications/editors/vim/plugins/update.py
+++ b/pkgs/applications/editors/vim/plugins/update.py
@@ -42,28 +42,14 @@ sys.path.insert(0, os.path.join(ROOT.parent.parent.parent.parent.parent, "mainta
 import pluginupdate
 from pluginupdate import run_nix_expr, PluginDesc
 
-GET_PLUGINS = f"""(with import <localpkgs> {{}};
-let
-  inherit (vimUtils.override {{inherit vim;}}) buildNeovimPluginFrom2Nix buildVimPluginFrom2Nix;
-  generated = callPackage {ROOT}/generated.nix {{
-    inherit buildNeovimPluginFrom2Nix buildVimPluginFrom2Nix;
-  }};
-  hasChecksum = value: lib.isAttrs value && lib.hasAttrByPath ["src" "outputHash"] value;
-  getChecksum = name: value:
-    if hasChecksum value then {{
-      submodules = value.src.fetchSubmodules or false;
-      sha256 = value.src.outputHash;
-      rev = value.src.rev;
-    }} else null;
-  checksums = lib.mapAttrs getChecksum generated;
-in lib.filterAttrs (n: v: v != null) checksums)"""
+
 
 GET_PLUGINS_LUA = """
 with import <localpkgs> {};
 lib.attrNames lua51Packages"""
 
 HEADER = (
-    "# This file has been generated by ./pkgs/applications/editors/vim/plugins/update.py. Do not edit!"
+    "# GENERATED by ./pkgs/applications/editors/vim/plugins/update.py. Do not edit!"
 )
 
 def isNeovimPlugin(plug: pluginupdate.Plugin) -> bool:
@@ -118,34 +104,39 @@ class VimEditor(pluginupdate.Editor):
 
 """.format(
         buildFn="buildNeovimPluginFrom2Nix" if isNeovim else "buildVimPluginFrom2Nix", plugin=plugin, src_nix=src_nix, repo=repo)
-        print(content)
+        log.debug(content)
         return content
 
+
+    def update(self, args):
+        pluginupdate.update_plugins(self, args)
+
+        if self.nvim_treesitter_updated:
+            print("updating nvim-treesitter grammars")
+            nvim_treesitter_dir = ROOT.joinpath("nvim-treesitter")
+            subprocess.check_call([nvim_treesitter_dir.joinpath("update.py")])
+
+            if self.nixpkgs_repo:
+                index = self.nixpkgs_repo.index
+                for diff in index.diff(None):
+                    if diff.a_path == "pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix":
+                        msg = "vimPlugins.nvim-treesitter: update grammars"
+                        print(f"committing to nixpkgs: {msg}")
+                        index.add([str(nvim_treesitter_dir.joinpath("generated.nix"))])
+                        index.commit(msg)
+                        return
+                print("no updates to nvim-treesitter grammars")
+
+
 def main():
 
     global luaPlugins
     luaPlugins = run_nix_expr(GET_PLUGINS_LUA)
 
+    with open(f"{ROOT}/get-plugins.nix") as f:
+        GET_PLUGINS = f.read()
     editor = VimEditor("vim", ROOT, GET_PLUGINS)
-    parser = editor.create_parser()
-    args = parser.parse_args()
-    pluginupdate.update_plugins(editor, args)
-
-    if editor.nvim_treesitter_updated:
-        print("updating nvim-treesitter grammars")
-        nvim_treesitter_dir = ROOT.joinpath("nvim-treesitter")
-        subprocess.check_call([nvim_treesitter_dir.joinpath("update.py")])
-
-        if editor.nixpkgs_repo:
-            index = editor.nixpkgs_repo.index
-            for diff in index.diff(None):
-                if diff.a_path == "pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix":
-                    msg = "vimPlugins.nvim-treesitter: update grammars"
-                    print(f"committing to nixpkgs: {msg}")
-                    index.add([str(nvim_treesitter_dir.joinpath("generated.nix"))])
-                    index.commit(msg)
-                    return
-            print("no updates to nvim-treesitter grammars")
+    editor.run()
 
 
 if __name__ == "__main__":