sharlatan pushed a commit to branch go-team
in repository guix.
commit 410f561e1359f466c01428026a8fc8a618456691
Author: Sharlatan Hellseher <[email protected]>
AuthorDate: Mon Sep 16 12:04:25 2024 +0100
gnu: go-github-com-matttproud-golang-protobuf-extensions-v2: Fix build.
* gnu/packages/golang-xyz.scm
(go-github-com-matttproud-golang-protobuf-extensions-v2):
Fix build.
[arguments]: <#:phases>: Add 'fix-embed-files.
Change-Id: Id19ae90a13788a454ac11089dabf71ce399b20db
---
gnu/packages/golang-xyz.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index 82002ba665..3cb3d08f1c 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -5087,6 +5087,24 @@ other directories. It is optimized for filewalking.")
#:import-path "github.com/matttproud/golang_protobuf_extensions/v2"
#: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)$"))))
;; XXX: Activate when go-build-system supports submodules.
(delete 'build)
;; XXX: Replace when go-build-system supports nested path.