From 16592e54f76e93ba1c16eff4b474bea8fdcc9ee7 Mon Sep 17 00:00:00 2001 From: Jake Waksbaum Date: Wed, 2 Sep 2020 21:47:21 -0400 Subject: vimPlugins: Refactor coc-* plugins and fix coc-go There are 32 vim plugins, all related to the coc.nvim LSP plugin, that are actually node packages and are included in nodePackages. In #82578, those vim plugins were made to point at the corresponding node packages, which fixed issues where the sources weren't being compiled properly with Javascript build systems. The way each of those vim plugins wraps its corresponding node package is identical, so I factored that out into a function and eliminated the duplication. In addition, for some reason coc-go got missed, which led to it not working correctly for me. I included it in my list of packages to wrap, so that fixes that issue. --- pkgs/misc/vim-plugins/overrides.nix | 241 +++++++----------------------------- 1 file changed, 44 insertions(+), 197 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix index db1fd71d2f4..525fb34cefb 100644 --- a/pkgs/misc/vim-plugins/overrides.nix +++ b/pkgs/misc/vim-plugins/overrides.nix @@ -14,9 +14,6 @@ , nodePackages , dasht -# coc-go dependency -, go - # deoplete-khard dependency , khard @@ -125,199 +122,6 @@ self: super: { ''; }); - coc-go = super.coc-go.overrideAttrs(old: { - preFixup = '' - substituteInPlace "$out"/share/vim-plugins/coc-go/src/utils/tools.ts \ - --replace 'const cmd = `GOPATH=''${gopath}; go ''${args}`' 'const cmd = `GOPATH=''${gopath}; ${go}/bin/go ''${args}`' - ''; - }); - - coc-css = buildVimPluginFrom2Nix { - pname = "coc-css"; - version = nodePackages.coc-css.version; - src = "${nodePackages.coc-css}/lib/node_modules/coc-css"; - }; - - coc-emmet = buildVimPluginFrom2Nix { - pname = "coc-emmet"; - version = nodePackages.coc-emmet.version; - src = "${nodePackages.coc-emmet}/lib/node_modules/coc-emmet"; - }; - - coc-eslint = buildVimPluginFrom2Nix { - pname = "coc-eslint"; - version = nodePackages.coc-eslint.version; - src = "${nodePackages.coc-eslint}/lib/node_modules/coc-eslint"; - }; - - coc-git = buildVimPluginFrom2Nix { - pname = "coc-git"; - version = nodePackages.coc-git.version; - src = "${nodePackages.coc-git}/lib/node_modules/coc-git"; - }; - - coc-highlight = buildVimPluginFrom2Nix { - pname = "coc-highlight"; - version = nodePackages.coc-highlight.version; - src = "${nodePackages.coc-highlight}/lib/node_modules/coc-highlight"; - }; - - coc-html = buildVimPluginFrom2Nix { - pname = "coc-html"; - version = nodePackages.coc-html.version; - src = "${nodePackages.coc-html}/lib/node_modules/coc-html"; - }; - - coc-imselect = buildVimPluginFrom2Nix { - pname = "coc-imselect"; - version = nodePackages.coc-imselect.version; - src = "${nodePackages.coc-imselect}/lib/node_modules/coc-imselect"; - }; - - coc-java = buildVimPluginFrom2Nix { - pname = "coc-java"; - version = nodePackages.coc-java.version; - src = "${nodePackages.coc-java}/lib/node_modules/coc-java"; - }; - - coc-jest = buildVimPluginFrom2Nix { - pname = "coc-jest"; - version = nodePackages.coc-jest.version; - src = "${nodePackages.coc-jest}/lib/node_modules/coc-jest"; - }; - - coc-json = buildVimPluginFrom2Nix { - pname = "coc-json"; - version = nodePackages.coc-json.version; - src = "${nodePackages.coc-json}/lib/node_modules/coc-json"; - }; - - coc-lists = buildVimPluginFrom2Nix { - pname = "coc-lists"; - version = nodePackages.coc-lists.version; - src = "${nodePackages.coc-lists}/lib/node_modules/coc-lists"; - }; - - coc-metals = buildVimPluginFrom2Nix { - pname = "coc-metals"; - version = nodePackages.coc-metals.version; - src = "${nodePackages.coc-metals}/lib/node_modules/coc-metals"; - }; - - coc-pairs = buildVimPluginFrom2Nix { - pname = "coc-pairs"; - version = nodePackages.coc-pairs.version; - src = "${nodePackages.coc-pairs}/lib/node_modules/coc-pairs"; - }; - - coc-prettier = buildVimPluginFrom2Nix { - pname = "coc-prettier"; - version = nodePackages.coc-prettier.version; - src = "${nodePackages.coc-prettier}/lib/node_modules/coc-prettier"; - }; - - coc-python = buildVimPluginFrom2Nix { - pname = "coc-python"; - version = nodePackages.coc-python.version; - src = "${nodePackages.coc-python}/lib/node_modules/coc-python"; - }; - - coc-r-lsp = buildVimPluginFrom2Nix { - pname = "coc-r-lsp"; - version = nodePackages.coc-r-lsp.version; - src = "${nodePackages.coc-r-lsp}/lib/node_modules/coc-r-lsp"; - }; - - coc-rls = buildVimPluginFrom2Nix { - pname = "coc-rls"; - version = nodePackages.coc-rls.version; - src = "${nodePackages.coc-rls}/lib/node_modules/coc-rls"; - }; - - coc-rust-analyzer = buildVimPluginFrom2Nix { - pname = "coc-rust-analyzer"; - version = nodePackages.coc-rust-analyzer.version; - src = "${nodePackages.coc-rust-analyzer}/lib/node_modules/coc-rust-analyzer"; - }; - - coc-smartf = buildVimPluginFrom2Nix { - pname = "coc-smartf"; - version = nodePackages.coc-smartf.version; - src = "${nodePackages.coc-smartf}/lib/node_modules/coc-smartf"; - }; - - coc-snippets = buildVimPluginFrom2Nix { - pname = "coc-snippets"; - version = nodePackages.coc-snippets.version; - src = "${nodePackages.coc-snippets}/lib/node_modules/coc-snippets"; - }; - - coc-solargraph = buildVimPluginFrom2Nix { - pname = "coc-solargraph"; - version = nodePackages.coc-solargraph.version; - src = "${nodePackages.coc-solargraph}/lib/node_modules/coc-solargraph"; - }; - - coc-stylelint = buildVimPluginFrom2Nix { - pname = "coc-stylelint"; - version = nodePackages.coc-stylelint.version; - src = "${nodePackages.coc-stylelint}/lib/node_modules/coc-stylelint"; - }; - - coc-tabnine = buildVimPluginFrom2Nix { - pname = "coc-tabnine"; - version = nodePackages.coc-tabnine.version; - src = "${nodePackages.coc-tabnine}/lib/node_modules/coc-tabnine"; - }; - - coc-tslint = buildVimPluginFrom2Nix { - pname = "coc-tslint"; - version = nodePackages.coc-tslint.version; - src = "${nodePackages.coc-tslint}/lib/node_modules/coc-tslint"; - }; - - coc-tslint-plugin = buildVimPluginFrom2Nix { - pname = "coc-tslint-plugin"; - version = nodePackages.coc-tslint-plugin.version; - src = "${nodePackages.coc-tslint-plugin}/lib/node_modules/coc-tslint-plugin"; - }; - - coc-tsserver = buildVimPluginFrom2Nix { - pname = "coc-tsserver"; - version = nodePackages.coc-tsserver.version; - src = "${nodePackages.coc-tsserver}/lib/node_modules/coc-tsserver"; - }; - - coc-vetur = buildVimPluginFrom2Nix { - pname = "coc-vetur"; - version = nodePackages.coc-vetur.version; - src = "${nodePackages.coc-vetur}/lib/node_modules/coc-vetur"; - }; - - coc-vimtex = buildVimPluginFrom2Nix { - pname = "coc-vimtex"; - version = nodePackages.coc-vimtex.version; - src = "${nodePackages.coc-vimtex}/lib/node_modules/coc-vimtex"; - }; - - coc-wxml = buildVimPluginFrom2Nix { - pname = "coc-wxml"; - version = nodePackages.coc-wxml.version; - src = "${nodePackages.coc-wxml}/lib/node_modules/coc-wxml"; - }; - - coc-yaml = buildVimPluginFrom2Nix { - pname = "coc-yaml"; - version = nodePackages.coc-yaml.version; - src = "${nodePackages.coc-yaml}/lib/node_modules/coc-yaml"; - }; - - coc-yank = buildVimPluginFrom2Nix { - pname = "coc-yank"; - version = nodePackages.coc-yank.version; - src = "${nodePackages.coc-yank}/lib/node_modules/coc-yank"; - }; - command-t = super.command-t.overrideAttrs(old: { buildInputs = [ ruby rake ]; buildPhase = '' @@ -791,4 +595,47 @@ self: super: { ln -s ${maple-bin}/bin/maple $target/bin/maple ''; }); -} +} // ( + let + nodePackageNames = [ + "coc-go" + "coc-css" + "coc-emmet" + "coc-eslint" + "coc-git" + "coc-highlight" + "coc-html" + "coc-imselect" + "coc-java" + "coc-jest" + "coc-json" + "coc-lists" + "coc-metals" + "coc-pairs" + "coc-prettier" + "coc-python" + "coc-r-lsp" + "coc-rls" + "coc-rust-analyzer" + "coc-smartf" + "coc-snippets" + "coc-solargraph" + "coc-stylelint" + "coc-tabnine" + "coc-tslint" + "coc-tslint-plugin" + "coc-tsserver" + "coc-vetur" + "coc-vimtex" + "coc-wxml" + "coc-yaml" + "coc-yank" + ]; + nodePackage2VimPackage = name: buildVimPluginFrom2Nix { + pname = name; + inherit (nodePackages.${name}) version; + src = "${nodePackages.${name}}/lib/node_modules/${name}"; + }; + in + lib.genAttrs nodePackageNames nodePackage2VimPackage +) -- cgit 1.4.1