From f52e868a2efa822f943113badb06dad709ade9c1 Mon Sep 17 00:00:00 2001 From: Ross Smyth <18294397+RossSmyth@users.noreply.github.com> Date: Wed, 13 May 2026 16:05:47 -0400 Subject: [PATCH] buildGoModule: supported structuredAttrs with subPackages --- pkgs/build-support/go/module.nix | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/go/module.nix b/pkgs/build-support/go/module.nix index ea266422c6d8..a98f89f5e730 100644 --- a/pkgs/build-support/go/module.nix +++ b/pkgs/build-support/go/module.nix @@ -320,10 +320,15 @@ lib.extendMkDerivation { } getGoDirs() { - local type; - type="$1" - if [ -n "$subPackages" ]; then - echo "$subPackages" | sed "s,\(^\| \),\1./,g" + local -r type="$1" + + # Support strucuredAttrs, they are not space seperated + local -a subPackagesArray + concatTo subPackagesArray subPackages + + # Outputs each element prefixed with './' if the array is not empty + if [[ ''${#subPackagesArray[@]} -gt 0 ]]; then + echo "''${subPackagesArray[*]/#/./}" else find . -type f -name \*$type.go -exec dirname {} \; | grep -v "/vendor/" | sort --unique | grep -v "$exclude" fi