go-licenses: fix returning empty output when GOROOT differs from built environment

see https://github.com/google/go-licenses/issues/149
This commit is contained in:
Sandro Jäckel 2024-01-08 16:29:13 +01:00
parent 47ac9564f2
commit ea633d632d
No known key found for this signature in database
GPG Key ID: 3AF5A43A3EECC2E5

View File

@ -1,7 +1,9 @@
{ lib
, buildGoModule
, fetchFromGitHub
, go
, installShellFiles
, makeWrapper
}:
buildGoModule rec {
@ -26,13 +28,23 @@ buildGoModule rec {
nativeBuildInputs = [
installShellFiles
makeWrapper
];
subPackages = [ "." ];
allowGoReference = true;
postInstall = ''
installShellCompletion --cmd go-licenses \
--bash <("$out/bin/go-licenses" completion bash) \
--fish <("$out/bin/go-licenses" completion fish) \
--zsh <("$out/bin/go-licenses" completion zsh)
# workaround empty output when GOROOT differs from built environment
# see https://github.com/google/go-licenses/issues/149
wrapProgram "$out/bin/go-licenses" \
--set GOROOT '${go}/share/go'
'';
# Tests require internet connection