From fd419db8f863f934d9746cc2975f033d30cbb15e Mon Sep 17 00:00:00 2001 From: lelgenio Date: Sat, 14 Feb 2026 13:45:15 -0300 Subject: [PATCH] lessc: 4.2.2 -> 4.6.3 --- pkgs/by-name/le/lessc/package.nix | 63 ++++++++++++++++++++++++------- 1 file changed, 50 insertions(+), 13 deletions(-) diff --git a/pkgs/by-name/le/lessc/package.nix b/pkgs/by-name/le/lessc/package.nix index ae8dd4d91fc1..494657523c3d 100644 --- a/pkgs/by-name/le/lessc/package.nix +++ b/pkgs/by-name/le/lessc/package.nix @@ -1,7 +1,11 @@ { lib, - buildNpmPackage, + stdenv, fetchFromGitHub, + fetchPnpmDeps, + nodejs, + pnpm_9, + pnpmConfigHook, callPackage, testers, runCommand, @@ -10,27 +14,59 @@ lessc, }: -buildNpmPackage rec { +stdenv.mkDerivation (finalAttrs: { pname = "lessc"; - version = "4.2.2"; + version = "4.6.3"; src = fetchFromGitHub { owner = "less"; repo = "less.js"; - rev = "v${version}"; - hash = "sha256-vO/1laFb1yC+OESXTx9KuGdwSNC9Iv49F3V7kfXnyJU="; + tag = "v${finalAttrs.version}"; + hash = "sha256-udfqfjdIhQ6UGAeXCT5FbI+iXNqfkbQMqZnnIDUrQaQ="; }; - sourceRoot = "${src.name}/packages/less"; - npmDepsHash = "sha256-3GlngmaxcUGXSv+ZwN2aovwEqcek6FJ1ZaL5KpjwNn4="; + pnpmDeps = fetchPnpmDeps { + inherit (finalAttrs) + pname + version + src + pnpmWorkspaces + ; + pnpm = pnpm_9; + fetcherVersion = 3; + hash = "sha256-ZdADm6WKPP48DK+ezk/jdzXVEBX161SqgYgU5fsCW2k="; + }; - postPatch = '' - sed -i ./package.json \ - -e '/@less\/test-data/d' \ - -e '/@less\/test-import-module/d' + strictDeps = true; + + nativeBuildInputs = [ + pnpmConfigHook + pnpm_9 + nodejs + ]; + + buildInputs = [ nodejs ]; + + pnpmWorkspaces = [ "less..." ]; + + buildPhase = '' + runHook preBuild + + pnpm --filter "less" run build + + runHook postBuild ''; - env.PUPPETEER_SKIP_DOWNLOAD = 1; + installPhase = '' + runHook preInstall + + mkdir -p $out/{bin,lib/lessc} + cp -r {packages,node_modules} $out/lib/lessc + chmod +x $out/lib/lessc/packages/less/bin/lessc + ln -s $out/lib/lessc/packages/less/bin/lessc $out/bin/lessc + + runHook postInstall + ''; passthru = { updateScript = nix-update-script { }; @@ -69,9 +105,10 @@ buildNpmPackage rec { meta = { homepage = "https://github.com/less/less.js"; + changelog = "https://github.com/less/less.js/blob/${finalAttrs.src.tag}/CHANGELOG.md"; description = "Dynamic stylesheet language"; mainProgram = "lessc"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ lelgenio ]; }; -} +})