aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/prometheus.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/prometheus.scm')
-rw-r--r--gnu/packages/prometheus.scm22
1 files changed, 21 insertions, 1 deletions
diff --git a/gnu/packages/prometheus.scm b/gnu/packages/prometheus.scm
index 533a922d0b..fe2fa18e95 100644
--- a/gnu/packages/prometheus.scm
+++ b/gnu/packages/prometheus.scm
@@ -112,7 +112,27 @@ x/net/trace)} tracing wrappers @code{net.Conn}, both inbound
;; The project looks abandoned, tests failed with a new go-metrics, see
;; <https://github.com/nbrownus/go-metrics-prometheus/pull/2>.
#:tests? #f
- #:import-path "github.com/nbrownus/go-metrics-prometheus"))
+ #:import-path "github.com/nbrownus/go-metrics-prometheus"
+ #: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" ".*(editions_defaults.binpb)$")))))))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs