From b34aac7490bbe7eaf73dee67e4585f0163a6ba64 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 16 Sep 2024 11:01:46 +0100 Subject: gnu: restic-rest-server: Fix build. Fix the build as senn in . * gnu/packages/backup.scm (restic-rest-server): Fix build. [arguments]: <#:phases>: Add 'fix-embed-files. Change-Id: I84454cddcd39c32f7b87d13d6ea9433c86426c8c --- gnu/packages/backup.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 0973c5ddca..025398888f 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -1058,6 +1058,24 @@ precious backup space. #:unpack-path "github.com/restic/rest-server" #: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: + ;; - 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)$")))) ;; Unit tests seems to break with Guix' non-standard TMPDIR. (add-before 'check 'set-tmpdir (lambda _ -- cgit v1.2.3