From c0ac87829fad6751473b57db4162b865e710fc13 Mon Sep 17 00:00:00 2001 From: awwpotato Date: Wed, 4 Jun 2025 14:58:06 -0700 Subject: [PATCH 1/2] az-pim-cli: fix version command --- pkgs/by-name/az/az-pim-cli/package.nix | 18 +++++++++++--- .../az/az-pim-cli/version-build-info.patch | 24 +++++++++++++++++++ 2 files changed, 39 insertions(+), 3 deletions(-) create mode 100644 pkgs/by-name/az/az-pim-cli/version-build-info.patch diff --git a/pkgs/by-name/az/az-pim-cli/package.nix b/pkgs/by-name/az/az-pim-cli/package.nix index 28862d6ee308..5d5586a7da90 100644 --- a/pkgs/by-name/az/az-pim-cli/package.nix +++ b/pkgs/by-name/az/az-pim-cli/package.nix @@ -7,7 +7,6 @@ buildPackages, nix-update-script, testers, - az-pim-cli, }: buildGoModule (finalAttrs: { pname = "az-pim-cli"; @@ -20,12 +19,24 @@ buildGoModule (finalAttrs: { hash = "sha256-gf4VscHaUr3JtsJO5PAq1nyPeJxIwGPaiH/QdXKpvQ0="; }; + patches = [ + # removes info we don't have from version command + ./version-build-info.patch + ]; + vendorHash = "sha256-PHrpUlAG/PBe3NKUGBQ1U7dCcqkSlErWX2dp9ZPB3+8="; nativeBuildInputs = [ installShellFiles ]; + env.CGO_ENABLED = 0; + + ldflags = [ + "-s" + "-X github.com/netr0m/az-pim-cli/cmd.version=v${finalAttrs.version}" + ]; + postInstall = lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ( let emulator = stdenv.hostPlatform.emulator buildPackages; @@ -41,8 +52,9 @@ buildGoModule (finalAttrs: { passthru = { updateScript = nix-update-script { }; tests.version = testers.testVersion { - command = "HOME=$TMPDIR az-pim-cli --version"; - package = az-pim-cli; + command = "HOME=$TMPDIR az-pim-cli version"; + package = finalAttrs.finalPackage; + version = "v${finalAttrs.version}"; }; }; diff --git a/pkgs/by-name/az/az-pim-cli/version-build-info.patch b/pkgs/by-name/az/az-pim-cli/version-build-info.patch new file mode 100644 index 000000000000..7135b261bc96 --- /dev/null +++ b/pkgs/by-name/az/az-pim-cli/version-build-info.patch @@ -0,0 +1,24 @@ +diff --git a/cmd/version.go b/cmd/version.go +index 816f044..ef107be 100644 +--- a/cmd/version.go ++++ b/cmd/version.go +@@ -31,8 +31,7 @@ type BuildInfo struct { + } + + func (b BuildInfo) String() string { +- return fmt.Sprintf("az-pim-cli version %s (built with %s from %s on %s)", +- b.Version, b.GoVersion, b.Commit, b.Date) ++ return fmt.Sprintf("az-pim-cli version %s", b.Version) + } + + func printVersion(w io.Writer, info BuildInfo) { +@@ -47,8 +46,8 @@ func createBuildInfo() BuildInfo { + Date: date, + } + +- buildInfo, available := debug.ReadBuildInfo() +- if !available { ++ buildInfo, _ := debug.ReadBuildInfo() ++ if true { + return info + } From a0b8a9def87d8196ca45320b6974d65ce0f40ad8 Mon Sep 17 00:00:00 2001 From: awwpotato Date: Wed, 4 Jun 2025 14:59:26 -0700 Subject: [PATCH 2/2] az-pim-cli: don't use emulator for shell completions --- pkgs/by-name/az/az-pim-cli/package.nix | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/az/az-pim-cli/package.nix b/pkgs/by-name/az/az-pim-cli/package.nix index 5d5586a7da90..e2c04b636524 100644 --- a/pkgs/by-name/az/az-pim-cli/package.nix +++ b/pkgs/by-name/az/az-pim-cli/package.nix @@ -4,7 +4,6 @@ fetchFromGitHub, installShellFiles, stdenv, - buildPackages, nix-update-script, testers, }: @@ -37,17 +36,12 @@ buildGoModule (finalAttrs: { "-X github.com/netr0m/az-pim-cli/cmd.version=v${finalAttrs.version}" ]; - postInstall = lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ( - let - emulator = stdenv.hostPlatform.emulator buildPackages; - in - '' - installShellCompletion --cmd az-pim-cli \ - --bash <(${emulator} $out/bin/az-pim-cli completion bash) \ - --fish <(${emulator} $out/bin/az-pim-cli completion fish) \ - --zsh <(${emulator} $out/bin/az-pim-cli completion zsh) - '' - ); + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd az-pim-cli \ + --bash <($out/bin/az-pim-cli completion bash) \ + --fish <($out/bin/az-pim-cli completion fish) \ + --zsh <($out/bin/az-pim-cli completion zsh) + ''; passthru = { updateScript = nix-update-script { };