aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2024-09-13 21:47:00 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-11-09 21:33:42 +0000
commitf40fde0e85da80c6801f5affbd52e6cb84625eec (patch)
treeae32bd2d3046a748b7bcb3c67bb91516e9db5770
parent560c64a23b05503f8351eaf488f3d6d972c695a4 (diff)
downloadguix-f40fde0e85da80c6801f5affbd52e6cb84625eec.tar.gz
guix-f40fde0e85da80c6801f5affbd52e6cb84625eec.zip
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
-rw-r--r--gnu/packages/prometheus.scm19
1 files changed, 19 insertions, 0 deletions
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)