diff mbox series

[bug#64145] gnu: yggdrasil: Update to 0.4.7.

Message ID 877cs1p7g9.fsf@gmail.com
State New
Headers show
Series [bug#64145] gnu: yggdrasil: Update to 0.4.7. | expand

Commit Message

Artyom V. Poptsov June 18, 2023, 7:15 a.m. UTC
Hello,

this patch series updates "yggdrasil" package to 0.4.7.
Thanks,

- avp

Comments

Ludovic Courtès June 25, 2023, 9:07 p.m. UTC | #1
Hi Artyom,

"Artyom V. Poptsov" <poptsov.artyom@gmail.com> skribis:

> Hello,
>
> this patch series updates "yggdrasil" package to 0.4.7.

This is failing to build according to
<https://qa.guix.gnu.org/issue/64145>.  Could you take a look?

Thanks,
Ludo’.
Artyom V. Poptsov June 26, 2023, 7:11 p.m. UTC | #2
Hello Ludovic,

it seems strange to me that the Yggdrasil 0.4.7 derivation that
bordeaux.guix.gnu.org tried to build has
"go-github-com-arceliar-ironwood" version "0.0.0-20210912013146"[1] in
the inputs.  I've updated the "ironwood" package along with the
Yggdrasil itself and sent the both patches.  I have
"go-github-com-arceliar-ironwood" version
"0.0.0-20221115123222-ec61cea2f439" in my Guix version and everything
builds fine on x86-64.

References:
1. https://data.qa.guix.gnu.org/gnu/store/yc9xpfnyjbsgmfm3iyf9gvv5bwdq2bcv-yggdrasil-0.4.7.drv
Efraim Flashner Sept. 7, 2023, 5:26 p.m. UTC | #3
On Mon, Jun 26, 2023 at 10:11:10PM +0300, Artyom V. Poptsov wrote:
> Hello Ludovic,
> 
> it seems strange to me that the Yggdrasil 0.4.7 derivation that
> bordeaux.guix.gnu.org tried to build has
> "go-github-com-arceliar-ironwood" version "0.0.0-20210912013146"[1] in
> the inputs.  I've updated the "ironwood" package along with the
> Yggdrasil itself and sent the both patches.  I have
> "go-github-com-arceliar-ironwood" version
> "0.0.0-20221115123222-ec61cea2f439" in my Guix version and everything
> builds fine on x86-64.
> 
> References:
> 1. https://data.qa.guix.gnu.org/gnu/store/yc9xpfnyjbsgmfm3iyf9gvv5bwdq2bcv-yggdrasil-0.4.7.drv

It built fine for me on my 64-bit systems. go-netlink, one of the
dependants, fails its test suite on 32-bit systems.

Patches pushed!
diff mbox series

Patch

From 42a23d45d574bb7babdba54b544ca21340bb891f Mon Sep 17 00:00:00 2001
Message-Id: <42a23d45d574bb7babdba54b544ca21340bb891f.1687072499.git.poptsov.artyom@gmail.com>
In-Reply-To: <18dce04a73f64ff3e495be13b7a15a659aa98432.1687072499.git.poptsov.artyom@gmail.com>
References: <18dce04a73f64ff3e495be13b7a15a659aa98432.1687072499.git.poptsov.artyom@gmail.com>
From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
Date: Sun, 18 Jun 2023 10:07:32 +0300
Subject: [PATCH 2/2] gnu: yggdrasil: Update to 0.4.7.

* gnu/packages/networking.scm (yggdrasil): Update to 0.4.7.
  [arguments]: Use G-expressions.  Set the package build name and version.
  Use go-1.20.
  [propagated-inputs]: Add "go-golang-org-x-tools",
  "go-github-com-olekukonko-tablewriter" and
  "go-github-com-mattn-go-colorable".
* gnu/packages/patches/yggdrasil-extra-config.patch: Don't use deprecated
  "ioutil".
---
 gnu/packages/networking.scm                   | 49 +++++++++++--------
 .../patches/yggdrasil-extra-config.patch      |  2 +-
 2 files changed, 30 insertions(+), 21 deletions(-)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index b0cdcdf6a3..c3d041f109 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -4392,7 +4392,7 @@  (define-public nbd
 (define-public yggdrasil
   (package
     (name "yggdrasil")
-    (version "0.4.3")
+    (version "0.4.7")
     (source
      (origin
        (method git-fetch)
@@ -4403,27 +4403,33 @@  (define-public yggdrasil
          (recursive? #t)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "0jp6998a45xi8pbi8p84chvpm1mhhcvcxm1avi1c1gjjp4jqm3vl"))
+        (base32 "01mllfrsr55lnfivxwa57cfrjas6w4shsvx9k81pw8jixc124myk"))
        (patches (search-patches "yggdrasil-extra-config.patch"))))
     (build-system go-build-system)
     (arguments
-     '(#:import-path "github.com/yggdrasil-network/yggdrasil-go"
-       ;; TODO: figure out how tests are run
-       #:tests? #f
-       #:install-source? #f
-       #:phases
-       (modify-phases %standard-phases
-         (replace 'build
-           (lambda* (#:key import-path build-flags #:allow-other-keys)
-             (for-each
-               (lambda (directory)
-                 ((assoc-ref %standard-phases 'build)
-                  #:build-flags build-flags
-                  #:import-path directory))
-               (list "github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasil"
-                     "github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasilctl"
-                     "github.com/yggdrasil-network/yggdrasil-go/cmd/genkeys"))
-             #t)))))
+     (list #:import-path "github.com/yggdrasil-network/yggdrasil-go"
+           ;; TODO: figure out how tests are run
+           #:tests? #f
+           #:install-source? #f
+           #:go go-1.20
+           #:phases
+           #~(modify-phases %standard-phases
+               (replace 'build
+                 (lambda* (#:key import-path build-flags #:allow-other-keys)
+                   (let* ((pkgsrc "github.com/yggdrasil-network/yggdrasil-go/src/version")
+                          (ldflags (format #f
+                                           "-X ~a.buildName=yggdrasil -X ~a.buildVersion=~a"
+                                           pkgsrc
+                                           pkgsrc
+                                           #$version)))
+                     (for-each
+                      (lambda (directory)
+                        ((assoc-ref %standard-phases 'build)
+                         #:build-flags `("-ldflags" ,ldflags)
+                         #:import-path directory))
+                      (list "github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasil"
+                            "github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasilctl"
+                            "github.com/yggdrasil-network/yggdrasil-go/cmd/genkeys"))))))))
     ;; https://github.com/kardianos/minwinsvc is windows only
     (propagated-inputs
      (list ;;("go-golang-zx2c4-com-wireguard-windows"
@@ -4433,8 +4439,10 @@  (define-public yggdrasil
            go-golang-org-x-sys
            go-golang-org-x-net
            go-golang-org-x-crypto
+           go-golang-org-x-tools
            go-netns
            go-netlink
+           go-github-com-olekukonko-tablewriter
            go-github-com-mitchellh-mapstructure
            go-github-com-mattn-go-runewidth
            go-github-com-mattn-go-isatty
@@ -4446,7 +4454,8 @@  (define-public yggdrasil
            go-github-com-cheggaaa-pb-v3
            go-github-com-vividcortex-ewma
            go-github-com-arceliar-phony
-           go-github-com-arceliar-ironwood))
+           go-github-com-arceliar-ironwood
+           go-github-com-mattn-go-colorable))
     (home-page "https://yggdrasil-network.github.io/blog.html")
     (synopsis
      "Experiment in scalable routing as an encrypted IPv6 overlay network")
diff --git a/gnu/packages/patches/yggdrasil-extra-config.patch b/gnu/packages/patches/yggdrasil-extra-config.patch
index bd4bea7b9f..7934e2b50f 100644
--- a/gnu/packages/patches/yggdrasil-extra-config.patch
+++ b/gnu/packages/patches/yggdrasil-extra-config.patch
@@ -33,7 +33,7 @@  index 58b8230..b9df98a 100644
  		panic(err)
  	}
 +	if extraconffile != "" {
-+		extraconf, err = ioutil.ReadFile(extraconffile);
++		extraconf, err = os.ReadFile(extraconffile);
 +	}
 +	if err != nil {
 +		panic(err)
-- 
2.34.1