Subject: [bug#50227] [PATCH 2/3] gnu: hyperledger-fabric: Do not assume GOPATH contains a single entry.

From: Marius Bakke <[email-masked]>
Date: Fri, 27 Aug 2021 17:13:29 +0200

* gnu/packages/hyperledger.scm (hyperledger-fabric)[arguments]: Adjust for
multiple GOPATH entries.
---
 gnu/packages/hyperledger.scm | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/hyperledger.scm b/gnu/packages/hyperledger.scm
index 82680cd5e4..5c36a81f44 100644
--- a/gnu/packages/hyperledger.scm
+++ b/gnu/packages/hyperledger.scm
@@ -77,11 +77,15 @@
        #:phases
        (modify-phases %standard-phases
          (replace 'build
-           (lambda _
+           (lambda* (#:key outputs #:allow-other-keys)
              ;; Only linux-amd64 and linux-ppc64le seem to be supported at the moment.
              (invoke "make"
                      "-j" (number->string (parallel-job-count))
                      "-C" "src/github.com/hyperledger/fabric"
+                     ;; The build system expects GOPATH to contain a single entry
+                     ;; and uses it to determine the installation directory.
+                     ;; Work around that.
+                     (string-append "GOTOOLS_BINDIR=" (assoc-ref outputs "out") "/bin")
                      "release/linux-amd64")))
          (add-after 'install 'install-commands
            (lambda* (#:key outputs #:allow-other-keys)
-- 
2.31.1