summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2024-09-13 21:43:44 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-11-09 21:33:42 +0000
commit560c64a23b05503f8351eaf488f3d6d972c695a4 (patch)
treea1720c91d8bb6b8b847721dcc410e04a14811531 /gnu/packages
parentd580f6ae81bbb2b0dab347779cfcaf36069535e1 (diff)
downloadguix-560c64a23b05503f8351eaf488f3d6d972c695a4.tar.gz
gnu: go-github-com-prometheus-common: Fix build.
* gnu/packages/prometheus.scm (go-github-com-prometheus-common): Fix build.
[arguments]: <#:phases>: Add 'fix-embed-files.

Change-Id: Ia213327d15288315b54b623c4a15837d7d895a69
Diffstat (limited to 'gnu/packages')
-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 71b4646f6a..1959859b6c 100644
--- a/gnu/packages/prometheus.scm
+++ b/gnu/packages/prometheus.scm
@@ -239,6 +239,25 @@ Prometheus metrics.")
       #:import-path "github.com/prometheus/common"
       #: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-after '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)$")))))
           ;; XXX: Workaround for go-build-system's lack of Go modules support.
           (delete 'build)
           (replace 'check