sharlatan pushed a commit to branch go-team
in repository guix.

commit 5aacec3dea69de90dea6325dd103481d6c5b1347
Author: Sharlatan Hellseher <[email protected]>
AuthorDate: Fri Sep 13 21:47:00 2024 +0100

    gnu: go-github-com-prometheus-client-golang: Fix build.
    
    * gnu/packages/prometheus.scm (go-github-com-prometheus-client-golang): Fix 
build.
    [arguments]: <#:phases>: Add 'fix-embed-files.
    
    Change-Id: Ifdd422e4574291d7a101b28862bc129262b48196
---
 gnu/packages/prometheus.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/prometheus.scm b/gnu/packages/prometheus.scm
index 1959859b6c..6204eba5df 100644
--- a/gnu/packages/prometheus.scm
+++ b/gnu/packages/prometheus.scm
@@ -149,6 +149,25 @@ registry.")
       #:import-path "github.com/prometheus/client_golang"
       #:phases
       #~(modify-phases %standard-phases
+          ;; TODO: Implement it in go-build-system.
+          ;;
+          ;; This happens due to Golang can't determine the valid directory of
+          ;; the module of embed file which is symlinked during setup
+          ;; environment phase, but easy resolved after coping file from the
+          ;; store to the build directory of the current package, see details
+          ;; in Golang source:
+          ;;
+          ;; - URL: <https://github.com/golang/go/blob/>
+          ;; - commit: 82c14346d89ec0eeca114f9ca0e88516b2cda454
+          ;; - file: src/cmd/go/internal/load/pkg.go#L2059
+          (add-before 'unpack 'fix-embed-files
+            (lambda _
+              (for-each (lambda (file)
+                          (let ((file-store-path (readlink file)))
+                            (delete-file file)
+                            (copy-recursively file-store-path file)))
+                        (find-files "src" (string-append
+                                           ".*(editions_defaults.binpb)$")))))
           (add-after 'unpack 'remove-examples-and-tutorials
             (lambda* (#:key import-path #:allow-other-keys)
               (with-directory-excursion (string-append "src/" import-path)

Reply via email to