From f66077b5a85046bb7ed0f938e3be0981e3d7e8a2 Mon Sep 17 00:00:00 2001 From: dish Date: Wed, 5 Nov 2025 16:28:31 -0500 Subject: [PATCH] coc-emmet: migrate from nodePackages --- .../editors/vim/plugins/cocPlugins.nix | 6 +++ .../vim/plugins/nodePackagePlugins.nix | 1 - pkgs/by-name/co/coc-emmet/package.nix | 45 +++++++++++++++++ pkgs/development/node-packages/aliases.nix | 1 + .../node-packages/node-packages.json | 1 - .../node-packages/node-packages.nix | 50 ------------------- 6 files changed, 52 insertions(+), 52 deletions(-) create mode 100644 pkgs/by-name/co/coc-emmet/package.nix diff --git a/pkgs/applications/editors/vim/plugins/cocPlugins.nix b/pkgs/applications/editors/vim/plugins/cocPlugins.nix index d9cc90058d09..8fdc7d5fbb32 100644 --- a/pkgs/applications/editors/vim/plugins/cocPlugins.nix +++ b/pkgs/applications/editors/vim/plugins/cocPlugins.nix @@ -6,6 +6,7 @@ coc-css, coc-diagnostic, coc-docker, + coc-emmet, coc-explorer, coc-git, coc-pyright, @@ -44,6 +45,11 @@ final: prev: { src = "${coc-docker}/lib/node_modules/coc-docker"; }; + coc-emmet = buildVimPlugin { + inherit (coc-emmet) pname version meta; + src = "${coc-emmet}/lib/node_modules/coc-emmet"; + }; + coc-explorer = buildVimPlugin { inherit (coc-explorer) pname version meta; src = "${coc-explorer}/lib/node_modules/coc-explorer"; diff --git a/pkgs/applications/editors/vim/plugins/nodePackagePlugins.nix b/pkgs/applications/editors/vim/plugins/nodePackagePlugins.nix index d13078156e7b..355e0a6d30f2 100644 --- a/pkgs/applications/editors/vim/plugins/nodePackagePlugins.nix +++ b/pkgs/applications/editors/vim/plugins/nodePackagePlugins.nix @@ -6,7 +6,6 @@ final: prev: let nodePackageNames = [ - "coc-emmet" "coc-eslint" "coc-flutter" "coc-go" diff --git a/pkgs/by-name/co/coc-emmet/package.nix b/pkgs/by-name/co/coc-emmet/package.nix new file mode 100644 index 000000000000..78b43c0d3196 --- /dev/null +++ b/pkgs/by-name/co/coc-emmet/package.nix @@ -0,0 +1,45 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, + fetchYarnDeps, + yarnConfigHook, + yarnBuildHook, + yarnInstallHook, + nodejs, + nix-update-script, +}: +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "coc-emmet"; + version = "1.1.6"; + + src = fetchFromGitHub { + owner = "neoclide"; + repo = "coc-emmet"; + tag = finalAttrs.version; + hash = "sha256-0f9wSn7W+8Pxce7hbdfNpL33oykuVGNifNnSPPdhKb8="; + }; + + yarnOfflineCache = fetchYarnDeps { + inherit (finalAttrs) src; + hash = "sha256-8oo/XG9WxgKIbhfBWiGry+SZJdQIFe/T5i9S0hgjmp0="; + }; + + nativeBuildInputs = [ + yarnConfigHook + yarnBuildHook + yarnInstallHook + nodejs + ]; + + NODE_OPTIONS = "--openssl-legacy-provider"; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Emmet extension for coc.nvim"; + homepage = "https://github.com/neoclide/coc-emmet"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ pyrox0 ]; + }; +}) diff --git a/pkgs/development/node-packages/aliases.nix b/pkgs/development/node-packages/aliases.nix index 713e3d8c64c5..a0bbb78b1c31 100644 --- a/pkgs/development/node-packages/aliases.nix +++ b/pkgs/development/node-packages/aliases.nix @@ -76,6 +76,7 @@ mapAliases { inherit (pkgs) coc-css; # added 2024-06-29 inherit (pkgs) coc-diagnostic; # added 2024-06-29 inherit (pkgs) coc-docker; # added 2025-10-01 + inherit (pkgs) coc-emmet; # Added 2025-11-05 inherit (pkgs) coc-explorer; # added 2025-10-01 inherit (pkgs) coc-git; # added 2025-10-01 coc-imselect = throw "coc-imselect was removed because it was broken"; # added 2023-08-21 diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json index 6ef2af231cc8..288f743b0067 100644 --- a/pkgs/development/node-packages/node-packages.json +++ b/pkgs/development/node-packages/node-packages.json @@ -21,7 +21,6 @@ , "browser-sync" , "cdk8s-cli" , "clipboard-cli" -, "coc-emmet" , "coc-eslint" , "coc-flutter" , "coc-go" diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix index 97c0d10608dc..cb4a041ab17e 100644 --- a/pkgs/development/node-packages/node-packages.nix +++ b/pkgs/development/node-packages/node-packages.nix @@ -914,15 +914,6 @@ let sha512 = "YfASnrhJ+ve6Q43ZiDwmpBgYgi2u0bYjeAVi2tDfN7YWAKO8X9EEOuPGtqbJpPLM6TfAHimghICjWe2eaJ8BAg=="; }; }; - "@emmetio/extract-abbreviation-0.1.6" = { - name = "_at_emmetio_slash_extract-abbreviation"; - packageName = "@emmetio/extract-abbreviation"; - version = "0.1.6"; - src = fetchurl { - url = "https://registry.npmjs.org/@emmetio/extract-abbreviation/-/extract-abbreviation-0.1.6.tgz"; - sha512 = "Ce3xE2JvTSEbASFbRbA1gAIcMcZWdS2yUYRaQbeM0nbOzaZrUYfa3ePtcriYRZOZmr+CkKA+zbjhvTpIOAYVcw=="; - }; - }; "@eslint-community/eslint-utils-4.5.1" = { name = "_at_eslint-community_slash_eslint-utils"; packageName = "@eslint-community/eslint-utils"; @@ -17943,15 +17934,6 @@ let sha512 = "XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="; }; }; - "jsonc-parser-1.0.3" = { - name = "jsonc-parser"; - packageName = "jsonc-parser"; - version = "1.0.3"; - src = fetchurl { - url = "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-1.0.3.tgz"; - sha512 = "hk/69oAeaIzchq/v3lS50PXuzn5O2ynldopMC+SWBql7J2WtdptfB9dy8Y7+Og5rPkTCpn83zTiO8FMcqlXJ/g=="; - }; - }; "jsonc-parser-2.2.1" = { name = "jsonc-parser"; packageName = "jsonc-parser"; @@ -32516,15 +32498,6 @@ let sha512 = "2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ=="; }; }; - "vscode-emmet-helper-1.2.17" = { - name = "vscode-emmet-helper"; - packageName = "vscode-emmet-helper"; - version = "1.2.17"; - src = fetchurl { - url = "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-1.2.17.tgz"; - sha512 = "X4pzcrJ8dE7M3ArFuySF5fgipKDd/EauXkiJwtjBIVRWpVNq0tF9+lNCyuC7iDUwP3Oq7ow/TGssD3GdG96Jow=="; - }; - }; "vscode-json-languageservice-4.2.1" = { name = "vscode-json-languageservice"; packageName = "vscode-json-languageservice"; @@ -37670,29 +37643,6 @@ in bypassCache = true; reconstructLock = true; }; - coc-emmet = nodeEnv.buildNodePackage { - name = "coc-emmet"; - packageName = "coc-emmet"; - version = "1.1.6"; - src = fetchurl { - url = "https://registry.npmjs.org/coc-emmet/-/coc-emmet-1.1.6.tgz"; - sha512 = "lvHA9iSgU/46Iw7E14tSP+Hh1e6STYUegqTBGDPQ/9L9JOicE2USqwuo2y5cbslc2RQqv3EdUIr9nQf0T725mQ=="; - }; - dependencies = [ - sources."@emmetio/extract-abbreviation-0.1.6" - sources."jsonc-parser-1.0.3" - sources."vscode-emmet-helper-1.2.17" - sources."vscode-languageserver-types-3.17.5" - ]; - buildInputs = globalBuildInputs; - meta = { - description = "emmet extension for coc"; - license = "MIT"; - }; - production = true; - bypassCache = true; - reconstructLock = true; - }; coc-eslint = nodeEnv.buildNodePackage { name = "coc-eslint"; packageName = "coc-eslint";