buildGoModule: simplify go-module attribute structure without rebuild

This commit is contained in:
Yueh-Shun Li 2023-05-25 22:49:02 +08:00 committed by zowoq
parent 48c5962048
commit 1a89cfae1f

View File

@ -54,7 +54,8 @@ assert (args' ? vendorHash && args' ? vendorSha256) -> throw "both `vendorHash`
let
args = removeAttrs args' [ "overrideModAttrs" "vendorSha256" "vendorHash" ];
go-modules = if (vendorHash != null) then stdenv.mkDerivation (let modArgs = {
go-modules = if (vendorHash == null) then "" else
(stdenv.mkDerivation {
name = "${name}-go-modules";
@ -138,13 +139,11 @@ let
'';
dontFixup = true;
}; in modArgs // (
{
outputHashMode = "recursive";
outputHash = vendorHash;
outputHashAlgo = if args' ? vendorSha256 || vendorHash == "" then "sha256" else null;
}
) // overrideModAttrs modArgs) else "";
outputHashMode = "recursive";
outputHash = vendorHash;
outputHashAlgo = if args' ? vendorSha256 || vendorHash == "" then "sha256" else null;
}).overrideAttrs overrideModAttrs;
package = stdenv.mkDerivation (args // {
nativeBuildInputs = [ go ] ++ nativeBuildInputs;