From d1f7267a1127d1d231545366089473844b2ef022 Mon Sep 17 00:00:00 2001 From: ZHAO Jin-Xiang Date: Mon, 8 Dec 2025 00:22:08 +0800 Subject: [PATCH] vscode-extensions.rooveterinaryinc.roo-cline: build from source at 3.36.2 --- .../rooveterinaryinc.roo-cline/default.nix | 78 ++++++++++++++++--- 1 file changed, 66 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/rooveterinaryinc.roo-cline/default.nix b/pkgs/applications/editors/vscode/extensions/rooveterinaryinc.roo-cline/default.nix index b575daa60738..2dfc0bcd53ca 100644 --- a/pkgs/applications/editors/vscode/extensions/rooveterinaryinc.roo-cline/default.nix +++ b/pkgs/applications/editors/vscode/extensions/rooveterinaryinc.roo-cline/default.nix @@ -1,24 +1,78 @@ { lib, + stdenvNoCC, + fetchFromGitHub, + pnpm, + nodejs, vscode-utils, - vscode-extension-update-script, + nix-update-script, }: -vscode-utils.buildVscodeMarketplaceExtension { - mktplcRef = { - publisher = "RooVeterinaryInc"; - name = "roo-cline"; - version = "3.28.16"; - hash = "sha256-Ot7Rrb9tbnXEsVGpJXULq+8o3UhPA2rwtawSbop7wHg="; - }; +let + vsix = stdenvNoCC.mkDerivation (finalAttrs: { + name = "roo-code-${finalAttrs.version}.zip"; + pname = "roo-code-vsix"; + version = "3.36.2"; - passthru.updateScript = vscode-extension-update-script { }; + src = fetchFromGitHub { + owner = "RooCodeInc"; + repo = "Roo-Code"; + tag = "v${finalAttrs.version}"; + hash = "sha256-YO3TxKcCDoIJeBoMGFFrHUp6lne1e84Tf1I2vHF6w1c="; + }; + + pnpmDeps = pnpm.fetchDeps { + inherit (finalAttrs) pname version src; + fetcherVersion = 2; + hash = "sha256-k6Bw6MlFDNPNPdaKJ7tW8wje2j9LJvREtlAWyySnOC0="; + }; + + nativeBuildInputs = [ + nodejs + pnpm.configHook + pnpm + ]; + + buildPhase = '' + runHook preBuild + + node --run vsix + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + + cp ./bin/roo-cline-$version.vsix $out + + runHook postInstall + ''; + }); +in +vscode-utils.buildVscodeExtension (finalAttrs: { + pname = "roo-code"; + inherit (finalAttrs.src) version; + + vscodeExtPublisher = "RooVeterinaryInc"; + vscodeExtName = "roo-cline"; + vscodeExtUniqueId = "${finalAttrs.vscodeExtPublisher}.${finalAttrs.vscodeExtName}"; + + src = vsix; + + passthru = { + vsix = finalAttrs.src; + updateScript = nix-update-script { + attrPath = "vscode-extensions.rooveterinaryinc.roo-cline.vsix"; + }; + }; meta = { description = "AI-powered autonomous coding agent that lives in your editor"; downloadPage = "https://marketplace.visualstudio.com/items?itemName=RooVeterinaryInc.roo-cline"; - homepage = "https://github.com/RooVetGit/Roo-Code"; + homepage = "https://github.com/RooCodeInc/Roo-Code"; license = lib.licenses.asl20; - maintainers = [ ]; + sourceProvenance = with lib.sourceTypes; [ fromSource ]; + maintainers = with lib.maintainers; [ xiaoxiangmoe ]; }; -} +})