diff --git a/pkgs/by-name/pg/pgrok/package.nix b/pkgs/by-name/pg/pgrok/package.nix index f651f430a818..96c89aaf93bd 100644 --- a/pkgs/by-name/pg/pgrok/package.nix +++ b/pkgs/by-name/pg/pgrok/package.nix @@ -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"; }; -} +})