[Backport release-26.05] pgrok: 1.5.0 -> 1.7.0, use pnpm 11 (#536615)

This commit is contained in:
Gergő Gutyina 2026-06-30 22:25:12 +00:00 committed by GitHub
commit b7349175b7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -4,24 +4,21 @@
fetchFromGitHub,
nix-update-script,
nodejs,
pnpm_9,
pnpm_11,
fetchPnpmDeps,
pnpmConfigHook,
}:
let
buildGoModule (finalAttrs: {
pname = "pgrok";
version = "1.5.0";
version = "1.7.0";
src = fetchFromGitHub {
owner = "pgrok";
repo = "pgrok";
tag = "v${version}";
hash = "sha256-arPFccclBie3XOBt0q6UC96fPaPc7NmgQDMsd2H2bhI=";
tag = "v${finalAttrs.version}";
hash = "sha256-uMHeVxAGmAEIOfCK9SEFsL7GZZIUNMYdoV8XeHjXmWc=";
};
in
buildGoModule {
inherit pname version src;
outputs = [
"out"
@ -31,26 +28,38 @@ buildGoModule {
nativeBuildInputs = [
nodejs
pnpmConfigHook
pnpm_9
pnpm_11
];
postPatch = ''
# Rename directories to avoid binary naming conflicts (both would be named "cli")
mv pgrok/cli pgrok/pgrok
mv pgrokd/cli pgrokd/pgrokd
# Update references in Go code and web app package.json to match renamed directory
substituteInPlace pgrokd/pgrokd/main.go \
--replace-fail "github.com/pgrok/pgrok/pgrokd/cli/internal/web" "github.com/pgrok/pgrok/pgrokd/pgrokd/internal/web"
substituteInPlace pgrokd/web/package.json \
--replace-fail "../cli/internal/web/dist" "../pgrokd/internal/web/dist"
'';
env.pnpmDeps = fetchPnpmDeps {
inherit
inherit (finalAttrs)
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 3;
hash = "sha256-D8UZoN0ZnjB8CXQiHmBZwBEt57XGb5SDLg61xxSqNus=";
pnpm = pnpm_11;
fetcherVersion = 4;
hash = "sha256-8CLAtxqNgcVIUw4RKAy6jKlErmkgZYyVYFdrD+jyfAA=";
};
vendorHash = "sha256-ob8s1jYL2+JGaqjCsM10jgirPiEyTY4U3IVVlHVdoGQ=";
vendorHash = "sha256-fhyyyXHUJsIWiCZbqtLZZRuIG9hb0LAkSo7lKW0i8Sk";
ldflags = [
"-s"
"-w"
"-X main.version=${version}"
"-X main.version=${finalAttrs.version}"
"-X main.commit=unknown"
"-X main.date=unknown"
];
@ -66,10 +75,6 @@ buildGoModule {
pnpm run build
popd
# rename packages due to naming conflict
mv pgrok/cli/ pgrok/pgrok/
mv pgrokd/cli/ pgrokd/pgrokd/
'';
postInstall = ''
@ -85,4 +90,4 @@ buildGoModule {
maintainers = with lib.maintainers; [ marie ];
mainProgram = "pgrok";
};
}
})