From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id eM2xOqJ/nWFzhgAAgWs5BA (envelope-from ) for ; Wed, 24 Nov 2021 00:56:18 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id +PQ7NqJ/nWH1BwAAbx9fmQ (envelope-from ) for ; Tue, 23 Nov 2021 23:56:18 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 3725F2BF74 for ; Wed, 24 Nov 2021 00:56:18 +0100 (CET) Received: from localhost ([::1]:52958 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mpfe5-0003sR-ED for larch@yhetil.org; Tue, 23 Nov 2021 18:56:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:44922) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mpfe0-0003s2-1b for guix-patches@gnu.org; Tue, 23 Nov 2021 18:56:12 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:40945) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mpfdq-0003Ee-Hs for guix-patches@gnu.org; Tue, 23 Nov 2021 18:56:11 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mpfdq-0002Lm-Ed for guix-patches@gnu.org; Tue, 23 Nov 2021 18:56:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51594] [PATCH] gnu: yggdrasil: Update to 0.4.1. Resent-From: raingloom Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 23 Nov 2021 23:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51594 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 51594@debbugs.gnu.org Received: via spool by 51594-submit@debbugs.gnu.org id=B51594.16377117218977 (code B ref 51594); Tue, 23 Nov 2021 23:56:02 +0000 Received: (at 51594) by debbugs.gnu.org; 23 Nov 2021 23:55:21 +0000 Received: from localhost ([127.0.0.1]:52491 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpfd7-0002Kf-T0 for submit@debbugs.gnu.org; Tue, 23 Nov 2021 18:55:21 -0500 Received: from mx1.riseup.net ([198.252.153.129]:39786) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpfd3-0002KK-Bg for 51594@debbugs.gnu.org; Tue, 23 Nov 2021 18:55:16 -0500 Received: from fews2.riseup.net (fews2-pn.riseup.net [10.0.1.84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mail.riseup.net", Issuer "R3" (not verified)) by mx1.riseup.net (Postfix) with ESMTPS id 4HzLbv3b6szF3LT; Tue, 23 Nov 2021 15:55:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1637711707; bh=jUSqppnP19cHuqCRVHmS8+lZ6qiBii7SpmoKG38UT4g=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=bckwPzCnSf46+Wf8D8Vxajz2eMkzOTvCb90ZqB9fHsJN4wgAOuAFwtW88ZLbgHEra 9MnfumMjtPEqcdyam6gtR6rhSyHJDnQQhpkbIKTy6tL94F50ELfgcm7YCZ7QwwaSOJ IYSlQTXrVogFDNp35cWms0tMvr8Km9WKOyPbHFHE= X-Riseup-User-ID: 8FD8FAD438A019EA72A293E25BBA64563F6E1DEA7561AA88E9F1B8C04CAA4A45 Received: from [127.0.0.1] (localhost [127.0.0.1]) by fews2.riseup.net (Postfix) with ESMTPSA id 4HzLbt3lrjz1yT1; Tue, 23 Nov 2021 15:55:06 -0800 (PST) Date: Wed, 24 Nov 2021 00:54:56 +0100 From: raingloom Message-ID: <20211124005456.2d35d502@riseup.net> In-Reply-To: <878rxmu281.fsf@gnu.org> References: <20211103214245.367ec719@riseup.net> <878rxmu281.fsf@gnu.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/k5YhIxFcrN.oXNHluHU04tB" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1637711778; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=y/FM9tl91nhgT/zV448CLpar21h1LXtwv4icjULxETc=; b=PEJAo/nw3HRE4PQWw2RRRq2GU+b1ss/0raGSzRhGZUi3evdWh5JndMEGL3vHCxlpqACIf2 oF3wAStg/KXcbEZNjXUr/4Y6W0mqjp/Fr/8CmYQf+ISyCpKsCew770FGKXtRUEdML28XFt kbg8o+8Ls8D3cTeL9Z8WQ3WvoJ4q1AwmazD+FyrIaRyISryYtzeTWbaK8gPc8AtUwlLKUB Sb6+ndLFwGDogjvgNkvhzK7uv9DI9Gz7Aj+7RywIxi7tzN47vOi4zoHEhKSLiqCyUEFBBn 4cwRBV7C9Az5CKGCEkv1hsPhY9BM1SdtVxQd0uYzPn+GYNA4XEEzjBEAXft8Zw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1637711778; a=rsa-sha256; cv=none; b=i5RPdaz3a33bIuv5hAlVRcWCfTJuKb8S1ozYLJQIToNcaBFSwQab571lwYReDzNhsNrMQm Ro4u/Oii8Y8ce4wHalmOGfzJkWfNEH3/xR0h8iUcPWYQuiXwNYFr0sPF/ke9eRtriQ37dl 2Asi4HXJsGmu6gqAO6kNbvUdwJdu5Y8Pay1/mNyNcLELfEvUaeBJRs8kOMChfkolesqqvx V7cGVYk64L+h2qhBmlo5+TglIMEM92p/BS8hYkrvkaK+p1XgKHVGJo7FYhUGQncmPLti0I dk5oagGwZItBgb2XfFplxh6hNs2Yx0++RhoMf2ByEAfvRtG9C0+Njqd0NSufGQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=riseup.net header.s=squak header.b=bckwPzCn; dmarc=fail reason="SPF not aligned (relaxed)" header.from=riseup.net (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -1.89 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=riseup.net header.s=squak header.b=bckwPzCn; dmarc=fail reason="SPF not aligned (relaxed)" header.from=riseup.net (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 3725F2BF74 X-Spam-Score: -1.89 X-Migadu-Scanner: scn0.migadu.com X-TUID: xrGCn49vGMtI --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Wed, 17 Nov 2021 18:22:06 +0100 Ludovic Court=C3=A8s wrote: > Hi, >=20 > raingloom skribis: >=20 > > * gnu/packages/networking.scm (yggdrasil): Update to 0.4.1. > > * gnu/packages/patches/yggdrasil-extra-config.patch: Update for new > > version. --- > > gnu/packages/networking.scm | 4 +- > > .../patches/yggdrasil-extra-config.patch | 47 > > ++++++++++++------- 2 files changed, 33 insertions(+), 18 > > deletions(-) =20 >=20 > This patch got mangled on its way. Could you resend it as an > attachment? >=20 > Thanks, > Ludo=E2=80=99. Heck, I'm pretty sure I sent it as an attachment? Maybe I forgot to re-add them to the email when I modified the patches? Well, here is attempt 3. --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0001-gnu-Add-go-github-com-vividcortex-ewma.patch >From c11a2cf43ddd6108b57c24ef9669655b677ce276 Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:36:37 +0000 Subject: [PATCH 1/8] gnu: Add go-github-com-vividcortex-ewma. * gnu/packages/golang.scm (go-github-com-vividcortex-ewma): New variable. --- gnu/packages/golang.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index cc2a4ebc16..84e7387408 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8839,3 +8839,24 @@ (define-public go-gopkg-in-djherbis-times-v1 (description "Provides a platform-independent way to get atime, mtime, ctime and btime for files.") (license license:expat))) + +(define-public go-github-com-vividcortex-ewma + (package + (name "go-github-com-vividcortex-ewma") + (version "1.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/VividCortex/ewma") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0whx516l9nm4n41spagb605ry7kfnz1qha96mcshnfjlahhnnylq")))) + (build-system go-build-system) + (arguments '(#:import-path "github.com/VividCortex/ewma")) + (home-page "https://github.com/VividCortex/ewma") + (synopsis "EWMA") + (description + "Package ewma implements exponentially weighted moving averages.") + (license license:expat))) -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0002-gnu-Add-go-github-com-rivo-uniseg.patch >From 4732bee7bdbea38292afe9f6b1149986dbfabcb7 Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:37:11 +0000 Subject: [PATCH 2/8] gnu: Add go-github-com-rivo-uniseg. * gnu/packages/golang.scm (go-github-com-rivo-uniseg): New variable. --- gnu/packages/golang.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 84e7387408..e2fee47b91 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8860,3 +8860,27 @@ (define-public go-github-com-vividcortex-ewma (description "Package ewma implements exponentially weighted moving averages.") (license license:expat))) + +(define-public go-github-com-rivo-uniseg + (package + (name "go-github-com-rivo-uniseg") + (version "0.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rivo/uniseg") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0j7h22vfmjj562vr8gpsyrkrwp1pq9ayh5fylv24skxb467g9f0q")))) + (build-system go-build-system) + (arguments '(#:import-path "github.com/rivo/uniseg")) + (home-page "https://github.com/rivo/uniseg") + (synopsis "Unicode Text Segmentation for Go") + (description + "Package uniseg implements Unicode Text Segmentation according to Unicode +Standard Annex #29 +(@url{http://unicode.org/reports/tr29/,http://unicode.org/reports/tr29/}). +") + (license license:expat))) -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0003-gnu-Add-go-github-com-mattn-go-runewidth.patch >From a234dd530900d0914a9972ad5a22a1fe303c1bc5 Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:37:17 +0000 Subject: [PATCH 3/8] gnu: Add go-github-com-mattn-go-runewidth. * gnu/packages/golang.scm (go-github-com-mattn-go-runewidth): New variable. --- gnu/packages/golang.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index e2fee47b91..63300c265f 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8884,3 +8884,26 @@ (define-public go-github-com-rivo-uniseg (@url{http://unicode.org/reports/tr29/,http://unicode.org/reports/tr29/}). ") (license license:expat))) + +(define-public go-github-com-mattn-go-runewidth + (package + (name "go-github-com-mattn-go-runewidth") + (version "0.0.13") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mattn/go-runewidth") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1yir0f3wc5z5hnkwhvx5qb6nmpfb05zp2gvfjvna63s8kmla1rrn")))) + (build-system go-build-system) + (arguments '(#:import-path "github.com/mattn/go-runewidth")) + (propagated-inputs + `(("go-github-com-rivo-uniseg" ,go-github-com-rivo-uniseg))) + (home-page "https://github.com/mattn/go-runewidth") + (synopsis "Rune width implementation for Go") + (description + "Provides functions to get fixed width of the character or string.") + (license license:expat))) -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0004-gnu-go-github-com-cheggaaa-pb-Update-to-3.0.8.patch >From 6a4220dbb3cbb56cc818bd2f2714484e5f8682e4 Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:45:47 +0000 Subject: [PATCH 4/8] gnu: go-github-com-cheggaaa-pb: Update to 3.0.8. * gnu/packages/golang.scm (go-github-com-cheggaaa-pb): Update to 3.0.8. --- gnu/packages/golang.scm | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 63300c265f..4033806c7f 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -7948,7 +7948,7 @@ (define-public go-github-com-arceliar-phony (define-public go-github-com-cheggaaa-pb (package (name "go-github-com-cheggaaa-pb") - (version "3.0.4") + (version "3.0.8") (source (origin (method git-fetch) @@ -7957,18 +7957,20 @@ (define-public go-github-com-cheggaaa-pb (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "0xhsv9yf3fz918ay6w0d87jnb3hk9vxvi16jk172kqq26x7jixd0")))) + (base32 "0d701s2niy39r650d1phjw19h4l27b1yfc2ih6s31f56b3zzqspx")))) (build-system go-build-system) - (arguments - '(#:import-path "github.com/cheggaaa/pb/")) + (arguments '(#:import-path "github.com/cheggaaa/pb/v3" + ;; XXX: it does have tests but I'm not sure how to run them. + ;; go-build-system is looking in the wrong directory. + #:tests? #f)) (propagated-inputs - `(("go-github-com-fatih-color" ,go-github-com-fatih-color) + `(("go-golang-org-x-sys" ,go-golang-org-x-sys) + ("go-github-com-rivo-uniseg" ,go-github-com-rivo-uniseg) + ("go-github-com-mattn-go-runewidth" ,go-github-com-mattn-go-runewidth) + ("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty) ("go-github-com-mattn-go-colorable" ,go-github-com-mattn-go-colorable) - ("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth) - ("go-golang-org-x-sys" ,go-golang-org-x-sys))) - (native-inputs - `(("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty))) + ("go-github-com-fatih-color" ,go-github-com-fatih-color) + ("go-github-com-vividcortex-ewma" ,go-github-com-vividcortex-ewma))) (home-page "https://github.com/cheggaaa/pb/") (synopsis "Console progress bar for Go") (description "This package is a Go library that draws progress bars on -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0005-gnu-Rename-go-github-com-cheggaaa-pb-to-go-github-co.patch >From 1b4bfd5a947902f453e47a510ab058ff459412f5 Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:46:57 +0000 Subject: [PATCH 5/8] gnu: Rename go-github-com-cheggaaa-pb to go-github-com-cheggaaa-pb-v3. * gnu/packages/golang.scm: (go-github-com-cheggaaa-pb): Rename variable. (go-github-com-cheggaaa-pb-v3): New variable. --- gnu/packages/golang.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 4033806c7f..d0435b5469 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -7945,9 +7945,9 @@ (define-public go-github-com-arceliar-phony inspired by the causal messaging system in the Pony programming language.") (license license:expat)))) -(define-public go-github-com-cheggaaa-pb +(define-public go-github-com-cheggaaa-pb-v3 (package - (name "go-github-com-cheggaaa-pb") + (name "go-github-com-cheggaaa-pb-v3") (version "3.0.8") (source (origin -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0006-gnu-Add-go-github-com-arceliar-ironwood.patch >From ce6e34a490816fd9c093fec3b9124bff26620e1f Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:50:36 +0000 Subject: [PATCH 6/8] gnu: Add go-github-com-arceliar-ironwood. * gnu/packages/golang.scm (go-github-com-arceliar-ironwood): New variable. --- gnu/packages/golang.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index d0435b5469..d8456c8f05 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8909,3 +8909,43 @@ (define-public go-github-com-mattn-go-runewidth (description "Provides functions to get fixed width of the character or string.") (license license:expat))) + +(define-public go-github-com-arceliar-ironwood + (package + (name "go-github-com-arceliar-ironwood") + (version "0.0.0-20210912013146-c2bc55bb349c") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Arceliar/ironwood") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dfkqnkfxwlwcsk8g9r1pv84lfzgn8r1vam13zlmk81cgan2r6fx")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/Arceliar/ironwood" + #:tests? #f + #:phases + (modify-phases %standard-phases + ;; Source-only package + (delete 'build)))) + (propagated-inputs + `(("go-golang-org-x-crypto" + ,go-golang-org-x-crypto) + ("go-github-com-arceliar-phony" + ,go-github-com-arceliar-phony))) + (home-page + "https://github.com/Arceliar/ironwood") + (synopsis "Experimental network routing library") + (description + "Ironwood is a routing library with a @code{net.PacketConn}-compatible +interface using @code{ed25519.PublicKey}s as addresses. Basically, you use it +when you want to communicate with some other nodes in a network, but you can't +guarantee that you can directly connect to every node in that network. It was +written to test improvements to / replace the routing logic in +@url{https://github.com/yggdrasil-network/yggdrasil-go,Yggdrasil}, but it may +be useful for other network applications.") + (license license:mpl2.0))) -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0007-gnu-yggdrasil-Update-to-0.4.0.patch >From 230ce36ac9e9afb962fd875124cafa6a97dcf256 Mon Sep 17 00:00:00 2001 From: raingloom Date: Tue, 2 Nov 2021 06:51:10 +0000 Subject: [PATCH 7/8] gnu: yggdrasil: Update to 0.4.0. * gnu/packages/patches/yggdrasil-extra-config.patch: Update patch. * gnu/packages/networking.scm (yggdrasil): Update to 0.4.0. [propagated-inputs]: Remove go-github-com-cheggaaa-pb; add go-golang-org-x-sys, go-github-com-mattn-go-runewidth, go-github-com-mattn-go-isatty, go-github-com-fatih-color, go-github-com-cheggaaa-pb-v3, go-github-com-vividcortex-ewma, and go-github-com-arceliar-ironwood. --- gnu/packages/networking.scm | 55 +++++++++++++------ .../patches/yggdrasil-extra-config.patch | 53 ++++++++++-------- 2 files changed, 69 insertions(+), 39 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 02041924f6..62bb3ef07e 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -4088,7 +4088,7 @@ (define-public nbd (define-public yggdrasil (package (name "yggdrasil") - (version "0.3.16") + (version "0.4.0") (source (origin (method git-fetch) @@ -4099,7 +4099,7 @@ (define-public yggdrasil (recursive? #t))) (file-name (git-file-name name version)) (sha256 - (base32 "0vyd7a333hwn6j1lv1g9sicw74a4qk982bsi3cfdhjlv6hsjwmil")) + (base32 "0mmqw6w5a6ph49xd1yzb7i70xg466k9pi5sdvplhb66x68wipixh")) (patches (search-patches "yggdrasil-extra-config.patch")))) (build-system go-build-system) (arguments @@ -4116,7 +4116,7 @@ (define-public yggdrasil "go" "build" "-v" "-ldflags=-s -w" (string-append "github.com/yggdrasil-network/yggdrasil-go/cmd/" c))) - (list "yggdrasil" "yggdrasilctl")) + (list "yggdrasil" "yggdrasilctl" "genkeys")) #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) @@ -4127,7 +4127,7 @@ (define-public yggdrasil (for-each (lambda (f) (install-file f bin)) - (list "yggdrasil" "yggdrasilctl")) + (list "yggdrasil" "yggdrasilctl" "genkeys")) (mkdir-p doc) (copy-recursively (string-append @@ -4137,20 +4137,43 @@ (define-public yggdrasil #t))))) ;; https://github.com/kardianos/minwinsvc is windows only (propagated-inputs - `(("go-github-com-arceliar-phony" ,go-github-com-arceliar-phony) - ("go-github-com-cheggaaa-pb" ,go-github-com-cheggaaa-pb) - ("go-github-com-gologme-log" ,go-github-com-gologme-log) - ("go-github-com-hashicorp-go-syslog" ,go-github-com-hashicorp-go-syslog) - ("go-github-com-hjson-hjson-go" ,go-github-com-hjson-hjson-go) - ("go-github-com-kardianos-minwinsvc" ,go-github-com-kardianos-minwinsvc) + `(;;("go-golang-zx2c4-com-wireguard-windows" + ;; ,go-golang-zx2c4-com-wireguard-windows) + ("go-golang-zx2c4-com-wireguard" + ,go-golang-zx2c4-com-wireguard) + ("go-golang-org-x-text" ,go-golang-org-x-text) + ("go-golang-org-x-sys" ,go-golang-org-x-sys) + ("go-golang-org-x-net" ,go-golang-org-x-net) + ("go-golang-org-x-crypto" + ,go-golang-org-x-crypto) + ("go-netns" + ,go-netns) + ("go-netlink" + ,go-netlink) ("go-github-com-mitchellh-mapstructure" ,go-github-com-mitchellh-mapstructure) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-golang-org-x-text" ,go-golang-org-x-text) - ("go-golang-zx2c4-com-wireguard" ,go-golang-zx2c4-com-wireguard) - ("go-netlink" ,go-netlink) - ("go-netns" ,go-netns))) + ("go-github-com-mattn-go-runewidth" + ,go-github-com-mattn-go-runewidth) + ("go-github-com-mattn-go-isatty" + ,go-github-com-mattn-go-isatty) + ("go-github-com-kardianos-minwinsvc" + ,go-github-com-kardianos-minwinsvc) + ("go-github-com-hjson-hjson-go" + ,go-github-com-hjson-hjson-go) + ("go-github-com-hashicorp-go-syslog" + ,go-github-com-hashicorp-go-syslog) + ("go-github-com-gologme-log" + ,go-github-com-gologme-log) + ("go-github-com-fatih-color" + ,go-github-com-fatih-color) + ("go-github-com-cheggaaa-pb-v3" + ,go-github-com-cheggaaa-pb-v3) + ("go-github-com-vividcortex-ewma" + ,go-github-com-vividcortex-ewma) + ("go-github-com-arceliar-phony" + ,go-github-com-arceliar-phony) + ("go-github-com-arceliar-ironwood" + ,go-github-com-arceliar-ironwood))) (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 c21ca29a84..46fd3f15fc 100644 --- a/gnu/packages/patches/yggdrasil-extra-config.patch +++ b/gnu/packages/patches/yggdrasil-extra-config.patch @@ -3,25 +3,25 @@ index 813e950..08d35cc 100644 --- a/cmd/yggdrasil/main.go +++ b/cmd/yggdrasil/main.go @@ -40,11 +40,12 @@ type node struct { - admin module.Module // admin.AdminSocket + admin *admin.AdminSocket } --func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config.NodeConfig { -+func readConfig(useconf *bool, useconffile *string, extraconffile *string, normaliseconf *bool) *config.NodeConfig { +-func readConfig(log *log.Logger, useconf bool, useconffile string, normaliseconf bool) *config.NodeConfig { ++func readConfig(log *log.Logger, useconf bool, useconffile string, extraconffile string, normaliseconf bool) *config.NodeConfig { // Use a configuration file. If -useconf, the configuration will be read // from stdin. If -useconffile, the configuration will be read from the // filesystem. var conf []byte + var extraconf []byte var err error - if *useconffile != "" { + if useconffile != "" { // Read the file from the filesystem @@ -56,6 +57,21 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config if err != nil { panic(err) } -+ if *extraconffile != "" { -+ extraconf, err = ioutil.ReadFile(*extraconffile); ++ if extraconffile != "" { ++ extraconf, err = ioutil.ReadFile(extraconffile); + } + if err != nil { + panic(err) @@ -30,7 +30,7 @@ index 813e950..08d35cc 100644 + // then parse the configuration we loaded above on top of it. The effect + // of this is that any configuration item that is missing from the provided + // configuration will use a sane default. -+ cfg := config.GenerateConfig() ++ cfg := defaults.GenerateConfig() + var confs [2][]byte + confs[0]=conf + confs[1]=extraconf @@ -38,7 +38,7 @@ index 813e950..08d35cc 100644 // If there's a byte order mark - which Windows 10 is now incredibly fond of // throwing everywhere when it's converting things into UTF-16 for the hell // of it - remove it and decode back down into UTF-8. This is necessary -@@ -69,11 +85,6 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config +@@ -69,11 +85,6 @@ func readConfig(log *log.Logger, useconf bool, useconffile string, normaliseconf bool) *config panic(err) } } @@ -46,11 +46,11 @@ index 813e950..08d35cc 100644 - // then parse the configuration we loaded above on top of it. The effect - // of this is that any configuration item that is missing from the provided - // configuration will use a sane default. -- cfg := config.GenerateConfig() +- cfg := defaults.GenerateConfig() var dat map[string]interface{} if err := hjson.Unmarshal(conf, &dat); err != nil { panic(err) -@@ -112,6 +123,7 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config +@@ -112,6 +123,7 @@ func readConfig(log *log.Logger, useconf *bool, useconffile *string, normaliseconf *bool) *config if err = mapstructure.Decode(dat, &cfg); err != nil { panic(err) } @@ -58,6 +58,14 @@ index 813e950..08d35cc 100644 return cfg } +@@ -185,6 +197,7 @@ func main() { + genconf bool + useconf bool + useconffile string ++ extraconffile string + normaliseconf bool + confjson bool + autoconf bool @@ -164,6 +176,7 @@ func main() { genconf := flag.Bool("genconf", false, "print a new config to stdout") useconf := flag.Bool("useconf", false, "read HJSON/JSON config from stdin") @@ -66,21 +74,20 @@ index 813e950..08d35cc 100644 normaliseconf := flag.Bool("normaliseconf", false, "use in combination with either -useconf or -useconffile, outputs your configuration normalised") confjson := flag.Bool("json", false, "print configuration from -genconf or -normaliseconf as JSON instead of HJSON") autoconf := flag.Bool("autoconf", false, "automatic mode (dynamic IP, peer with IPv6 neighbors)") +@@ -212,6 +225,7 @@ func main() { + genconf: *genconf, + useconf: *useconf, + useconffile: *useconffile, ++ extraconffile: *extraconffile, + normaliseconf: *normaliseconf, + confjson: *confjson, + autoconf: *autoconf, @@ -187,7 +200,7 @@ func main() { - cfg = config.GenerateConfig() - case *useconffile != "" || *useconf: + cfg = defaults.GenerateConfig() + case args.useconffile != "" || args.useconf: // Read the configuration from either stdin or from the filesystem -- cfg = readConfig(useconf, useconffile, normaliseconf) -+ cfg = readConfig(useconf, useconffile, extraconffile, normaliseconf) +- cfg = readConfig(logger, args.useconf, args.useconffile, args.normaliseconf) ++ cfg = readConfig(logger, args.useconf, args.useconffile, args.extraconffile, args.normaliseconf) // If the -normaliseconf option was specified then remarshal the above // configuration and print it back to stdout. This lets the user update // their configuration file with newly mapped names (like above) or to -@@ -332,7 +345,7 @@ func main() { - goto exit - case _ = <-r: - if *useconffile != "" { -- cfg = readConfig(useconf, useconffile, normaliseconf) -+ cfg = readConfig(useconf, useconffile, extraconffile, normaliseconf) - logger.Infoln("Reloading configuration from", *useconffile) - n.core.UpdateConfig(cfg) - n.tuntap.UpdateConfig(cfg) -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0008-gnu-yggdrasil-Update-to-0.4.1.patch >From 776202eb2d0610e51f5168d108ce80a4096b10d4 Mon Sep 17 00:00:00 2001 From: raingloom Date: Wed, 3 Nov 2021 21:40:37 +0100 Subject: [PATCH 8/8] gnu: yggdrasil: Update to 0.4.1. * gnu/packages/networking.scm (yggdrasil): Update to 0.4.1. * gnu/packages/patches/yggdrasil-extra-config.patch: Update for new version. --- gnu/packages/networking.scm | 4 +- .../patches/yggdrasil-extra-config.patch | 47 ++++++++++++------- 2 files changed, 33 insertions(+), 18 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 62bb3ef07e..22d38fb4fd 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -4088,7 +4088,7 @@ (define-public nbd (define-public yggdrasil (package (name "yggdrasil") - (version "0.4.0") + (version "0.4.1") (source (origin (method git-fetch) @@ -4099,7 +4099,7 @@ (define-public yggdrasil (recursive? #t))) (file-name (git-file-name name version)) (sha256 - (base32 "0mmqw6w5a6ph49xd1yzb7i70xg466k9pi5sdvplhb66x68wipixh")) + (base32 "1ajhn0z58ap9jldip7mqj78drmgg4645zfsxsy004cfkm60fasnx")) (patches (search-patches "yggdrasil-extra-config.patch")))) (build-system go-build-system) (arguments diff --git a/gnu/packages/patches/yggdrasil-extra-config.patch b/gnu/packages/patches/yggdrasil-extra-config.patch index 46fd3f15fc..bd4bea7b9f 100644 --- a/gnu/packages/patches/yggdrasil-extra-config.patch +++ b/gnu/packages/patches/yggdrasil-extra-config.patch @@ -1,8 +1,20 @@ +From 779f980451d20079b34812f7006f2d7230738ad0 Mon Sep 17 00:00:00 2001 +From: csepp +Date: Wed, 3 Nov 2021 21:14:54 +0100 +Subject: [PATCH] add extra config file option to yggdrasil command + +This is useful in Guix and Nix, because one config file can come +from the world-readable store and another can be placed directly +into /etc with much stricter permissions. +--- + cmd/yggdrasil/main.go | 29 ++++++++++++++++++++++------- + 1 file changed, 22 insertions(+), 7 deletions(-) + diff --git a/cmd/yggdrasil/main.go b/cmd/yggdrasil/main.go -index 813e950..08d35cc 100644 +index 58b8230..b9df98a 100644 --- a/cmd/yggdrasil/main.go +++ b/cmd/yggdrasil/main.go -@@ -40,11 +40,12 @@ type node struct { +@@ -43,11 +43,12 @@ type node struct { admin *admin.AdminSocket } @@ -16,7 +28,7 @@ index 813e950..08d35cc 100644 var err error if useconffile != "" { // Read the file from the filesystem -@@ -56,6 +57,21 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config +@@ -59,6 +60,21 @@ func readConfig(log *log.Logger, useconf bool, useconffile string, normaliseconf if err != nil { panic(err) } @@ -38,7 +50,7 @@ index 813e950..08d35cc 100644 // If there's a byte order mark - which Windows 10 is now incredibly fond of // throwing everywhere when it's converting things into UTF-16 for the hell // of it - remove it and decode back down into UTF-8. This is necessary -@@ -69,11 +85,6 @@ func readConfig(log *log.Logger, useconf bool, useconffile string, normaliseconf bool) *config +@@ -72,11 +88,6 @@ func readConfig(log *log.Logger, useconf bool, useconffile string, normaliseconf panic(err) } } @@ -50,7 +62,7 @@ index 813e950..08d35cc 100644 var dat map[string]interface{} if err := hjson.Unmarshal(conf, &dat); err != nil { panic(err) -@@ -112,6 +123,7 @@ func readConfig(log *log.Logger, useconf *bool, useconffile *string, normaliseconf *bool) *config +@@ -136,6 +147,7 @@ func readConfig(log *log.Logger, useconf bool, useconffile string, normaliseconf if err = mapstructure.Decode(dat, &cfg); err != nil { panic(err) } @@ -58,15 +70,15 @@ index 813e950..08d35cc 100644 return cfg } -@@ -185,6 +197,7 @@ func main() { - genconf bool - useconf bool +@@ -192,6 +204,7 @@ type yggArgs struct { + getaddr bool + getsnet bool useconffile string -+ extraconffile string - normaliseconf bool - confjson bool - autoconf bool -@@ -164,6 +176,7 @@ func main() { ++ extraconffile string + logto string + loglevel string + } +@@ -200,6 +213,7 @@ func getArgs() yggArgs { genconf := flag.Bool("genconf", false, "print a new config to stdout") useconf := flag.Bool("useconf", false, "read HJSON/JSON config from stdin") useconffile := flag.String("useconffile", "", "read HJSON/JSON config from specified file path") @@ -74,15 +86,15 @@ index 813e950..08d35cc 100644 normaliseconf := flag.Bool("normaliseconf", false, "use in combination with either -useconf or -useconffile, outputs your configuration normalised") confjson := flag.Bool("json", false, "print configuration from -genconf or -normaliseconf as JSON instead of HJSON") autoconf := flag.Bool("autoconf", false, "automatic mode (dynamic IP, peer with IPv6 neighbors)") -@@ -212,6 +225,7 @@ func main() { +@@ -213,6 +227,7 @@ func getArgs() yggArgs { genconf: *genconf, useconf: *useconf, useconffile: *useconffile, -+ extraconffile: *extraconffile, ++ extraconffile: *extraconffile, normaliseconf: *normaliseconf, confjson: *confjson, autoconf: *autoconf, -@@ -187,7 +200,7 @@ func main() { +@@ -265,7 +280,7 @@ func run(args yggArgs, ctx context.Context, done chan struct{}) { cfg = defaults.GenerateConfig() case args.useconffile != "" || args.useconf: // Read the configuration from either stdin or from the filesystem @@ -91,3 +103,6 @@ index 813e950..08d35cc 100644 // If the -normaliseconf option was specified then remarshal the above // configuration and print it back to stdout. This lets the user update // their configuration file with newly mapped names (like above) or to +-- +2.33.1 + -- 2.33.1 --MP_/k5YhIxFcrN.oXNHluHU04tB--