From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 22 16:13:33 2021 Received: (at submit) by debbugs.gnu.org; 22 Nov 2021 21:13:33 +0000 Received: from localhost ([127.0.0.1]:49266 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpGcz-0002d2-5G for submit@debbugs.gnu.org; Mon, 22 Nov 2021 16:13:33 -0500 Received: from lists.gnu.org ([209.51.188.17]:57690) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mpGcw-0002cr-Kh for submit@debbugs.gnu.org; Mon, 22 Nov 2021 16:13:28 -0500 Received: from eggs.gnu.org ([209.51.188.92]:58784) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mpGcw-0006rn-Gz for guix-patches@gnu.org; Mon, 22 Nov 2021 16:13:26 -0500 Received: from mx1.riseup.net ([198.252.153.129]:51628) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mpGcs-0003PT-50 for guix-patches@gnu.org; Mon, 22 Nov 2021 16:13:26 -0500 Received: from fews1.riseup.net (fews1-pn.riseup.net [10.0.1.83]) (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 4Hyg3g3ZjgzDrkv; Mon, 22 Nov 2021 13:13:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1637615599; bh=/+1z+i7hOqouIHnCUyTYmWvwZy0qlayVRKPK3zofnVM=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=XbWT87AojnlY64wTa7UUimrUNV+ge7/7paDrV6GtcISYPlyTpKo+QWhqN6jLJpqXV x8t1SwCJ8d3Prgd5TrHzl0HwbtRUBaHlE2Ag87MjJrHjrw+Bf+aKW/XKKXy3bvAPT+ fWE7TheeTHHamDpXIgNkxrZ5pVYKF+m1inJH7P38= X-Riseup-User-ID: 24970C08E44C81826FBB300124FCD8AEB352670681D9CF6863447A1F5D0081B1 Received: from [127.0.0.1] (localhost [127.0.0.1]) by fews1.riseup.net (Postfix) with ESMTPSA id 4Hyg3f2S4Fz5vkM; Mon, 22 Nov 2021 13:13:18 -0800 (PST) Date: Mon, 22 Nov 2021 22:13:08 +0100 From: raingloom To: pukkamustard Subject: Re: [bug#51565] PATCH: Update Yggdrasil to new protocol (important breaking changes) Message-ID: <20211122221308.685c9f11@riseup.net> In-Reply-To: <86wnl9lcj3.fsf@posteo.net> References: <20211102065917.082a2e55@riseup.net> <86wnl9lcj3.fsf@posteo.net> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/WI60ugRtXo8tq+uZqIWfQpS" Received-SPF: pass client-ip=198.252.153.129; envelope-from=raingloom@riseup.net; helo=mx1.riseup.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit Cc: 51565@debbugs.gnu.org, guix-patches@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --MP_/WI60ugRtXo8tq+uZqIWfQpS Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Mon, 15 Nov 2021 14:10:46 +0000 pukkamustard wrote: > Thanks for this! > > Some minor changes may be needed to make the linter happy: > > raingloom writes: > > [..] > > > [3. text/x-patch; 0002-gnu-Add-go-github-com-rivo-uniseg.patch]... > > Linter complains that a line is too long: > > gnu/packages/golang.scm:8885:0: go-github-com-rivo-uniseg@0.2.0: line > 8885 is way too long (93 characters) > > > > > [4. text/x-patch; > > 0003-gnu-Add-go-github-com-mattn-go-runewidth.patch]... > > Linter complains about the synopsis. Maybe: "Go functions for getting > fixed width of characters or strings"? > > Does seem like a bit of a duplication of the description... > > > [5. text/x-patch; > > 0004-gnu-go-github-com-cheggaaa-pb-Update-to-3.0.8.patch]... > > > > [6. text/x-patch; > > 0005-gnu-Rename-go-github-com-cheggaaa-pb-to-go-github-co.patch]... > > > > [7. text/x-patch; > > 0006-gnu-Add-go-github-com-arceliar-ironwood.patch]... > > Lines in descriptions are too long and should be wrapped. > > A synopsis is required. Maybe: "Ironwood is a Go network routing > library using cryptographic keys as addresses"? Heck, I think I meant to run the linter but it was getting late and I just wanted to be done with the patch. Well, here is an updated patch list. --MP_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS 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_/WI60ugRtXo8tq+uZqIWfQpS--