diff options
author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2022-01-25 22:07:13 -0500 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2022-01-25 22:07:13 -0500 |
commit | 1a5302435ff0d2822b823f5a6fe01faa7a85c629 (patch) | |
tree | ac7810c88b560532f22d2bab2e59609cd7305c21 /gnu/packages/golang.scm | |
parent | 3ff2ac4980dacf10087e4b42bd9fbc490591900c (diff) | |
parent | 070b8a893febd6e7d8b2b7c8c4dcebacf7845aa9 (diff) | |
download | guix-1a5302435ff0d2822b823f5a6fe01faa7a85c629.tar.gz |
Merge branch 'master' into staging.
With "conflicts" solved (all in favor of master except git) in: gnu/local.mk gnu/packages/databases.scm gnu/packages/glib.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/gnuzilla.scm gnu/packages/graphics.scm gnu/packages/gstreamer.scm gnu/packages/gtk.scm gnu/packages/linux.scm gnu/packages/machine-learning.scm gnu/packages/networking.scm gnu/packages/polkit.scm gnu/packages/pulseaudio.scm gnu/packages/rpc.scm gnu/packages/rust.scm gnu/packages/version-control.scm gnu/packages/w3m.scm
Diffstat (limited to 'gnu/packages/golang.scm')
-rw-r--r-- | gnu/packages/golang.scm | 1646 |
1 files changed, 1103 insertions, 543 deletions
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 3a088be095..f148c0d48a 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -1,8 +1,8 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com> ;;; Copyright © 2016 Andy Wingo <wingo@igalia.com> -;;; Copyright © 2016, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2019, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Sergei Trofimovich <slyfox@inbox.ru> @@ -30,6 +30,9 @@ ;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name> ;;; Copyright © 2021 jgart <jgart@dismail.de> ;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com> +;;; Copyright © 2021 Chadwain Holness <chadwainholness@gmail.com> +;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com> +;;; Copyright © 2021 Lu Hui <luhux76@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -60,10 +63,13 @@ #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module ((gnu packages bootstrap) #:select (glibc-dynamic-linker)) + #:use-module (gnu packages check) #:use-module (gnu packages gcc) #:use-module (gnu packages glib) + #:use-module (gnu packages gnupg) #:use-module (gnu packages lua) #:use-module (gnu packages mp3) + #:use-module (gnu packages password-utils) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -227,10 +233,7 @@ ("pcre" ,pcre) ("gcc:lib" ,(canonical-package gcc) "lib"))) (native-inputs - `(("pkg-config" ,pkg-config) - ("which" ,which) - ("net-base" ,net-base) - ("perl" ,perl))) + (list pkg-config which net-base perl)) (home-page "https://golang.org/") (synopsis "Compiler and libraries for Go, a statically-typed language") @@ -270,7 +273,8 @@ in the style of communicating sequential processes (@dfn{CSP}).") (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib")) (ld (string-append (assoc-ref inputs "libc") "/lib")) - (loader (car (find-files ld "^ld-linux.+"))) + (loader (car (append (find-files ld "^ld-linux.+") + (find-files ld "^ld(64)?\\.so.+")))) (net-base (assoc-ref inputs "net-base")) (tzdata-path (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")) @@ -308,6 +312,11 @@ in the style of communicating sequential processes (@dfn{CSP}).") (("/bin/pwd") (which "pwd")) (("/bin/sh") (which "sh"))) + ;; Backport fix for go-1.14 with GCC 9+ + ;; https://github.com/golang/go/issues/39157 + (substitute* "cmd/go/note_test.go" + (("cannot find 'ld'") "cannot find [‘']ld[’']")) + ;; Add libgcc to runpath (substitute* "cmd/link/internal/ld/lib.go" (("!rpath.set") "true")) @@ -402,6 +411,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (setenv "GOOS" "linux") (setenv "GOROOT" (dirname (getcwd))) (setenv "GOROOT_FINAL" output) + (setenv "GOCACHE" "/tmp/go-cache") (setenv "CGO_ENABLED" "1") (invoke "sh" "all.bash")))) (replace 'install @@ -440,7 +450,9 @@ in the style of communicating sequential processes (@dfn{CSP}).") (copy-recursively "../" output) #t))))))) (native-inputs - `(("go" ,go-1.4) + `(,@(if (member (%current-system) (package-supported-systems go-1.4)) + `(("go" ,go-1.4)) + `(("go" ,gccgo-10))) ("go-skip-gc-test.patch" ,(search-patch "go-skip-gc-test.patch")) ,@(match (%current-system) ((or "armhf-linux" "aarch64-linux") @@ -453,7 +465,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.14) (name "go") - (version "1.16.8") + (version "1.16.13") (source (origin (method git-fetch) @@ -463,7 +475,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (file-name (git-file-name name version)) (sha256 (base32 - "00zv65v09kr2cljxxqypk980r4b4aqjijhbw4ikppn8km68h831n")))) + "03f37dspn4h5kqf0nqwmnl858wx6hngnlvbnrjl1ll6ihc5j66jz")))) (arguments (substitute-keyword-arguments (package-arguments go-1.14) ((#:tests? _) #t) @@ -612,7 +624,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.16) (name "go") - (version "1.17.1") + (version "1.17.6") (source (origin (method git-fetch) @@ -622,12 +634,15 @@ in the style of communicating sequential processes (@dfn{CSP}).") (file-name (git-file-name name version)) (sha256 (base32 - "0wk99lwpzp4qwrksl932lm9vb70nyf4vgb5lxwh7gzjcbhlqj992")))) + "05k292i9qayfy5wh96z4kjmx1mfd5birnr25vb0blzaam72mcsgw")))) (outputs '("out" "tests")) ; 'tests' contains distribution tests. (arguments `(#:modules ((ice-9 match) (guix build gnu-build-system) (guix build utils)) + ;; TODO: Disable the test(s) in misc/cgo/test/cgo_test.go + ;; that cause segfaults in the test suite. + #:tests? ,(not (target-aarch64?)) #:phases (modify-phases %standard-phases (replace 'configure @@ -677,6 +692,29 @@ in the style of communicating sequential processes (@dfn{CSP}).") (string-append net-base "/etc/services"))) (substitute* "src/time/zoneinfo_unix.go" (("/usr/share/zoneinfo/") tzdata-path))))) + ;; Keep this synchronized with the package inputs. + ,@(if (target-arm?) + '((add-after 'unpack 'patch-gcc:lib + (lambda* (#:key inputs #:allow-other-keys) + (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))) + ;; Add libgcc to runpath + (substitute* "src/cmd/link/internal/ld/lib.go" + (("!rpath.set") "true")) + (substitute* "src/cmd/go/internal/work/gccgo.go" + (("cgoldflags := \\[\\]string\\{\\}") + (string-append "cgoldflags := []string{" + "\"-Wl,-rpath=" gcclib "\"" + "}")) + (("\"-lgcc_s\", ") + (string-append + "\"-Wl,-rpath=" gcclib "\", \"-lgcc_s\", "))) + (substitute* "src/cmd/go/internal/work/gc.go" + (("ldflags = setextld\\(ldflags, compiler\\)") + (string-append + "ldflags = setextld(ldflags, compiler)\n" + "ldflags = append(ldflags, \"-r\")\n" + "ldflags = append(ldflags, \"" gcclib "\")\n"))))))) + '()) (add-after 'patch-source 'disable-failing-tests (lambda _ ;; Disable failing tests: these tests attempt to access @@ -788,9 +826,47 @@ in the style of communicating sequential processes (@dfn{CSP}).") (install-file file (string-append out "/share/doc/go"))) '("AUTHORS" "CONTRIBUTORS" "CONTRIBUTING.md" "PATENTS" "README.md" "SECURITY.md")))))))) - (inputs (alist-delete "gcc:lib" (package-inputs go-1.16))))) + (inputs (if (not (target-arm?)) + (alist-delete "gcc:lib" (package-inputs go-1.16)) + (package-inputs go-1.16))) + (native-inputs + (if (not (member (%current-system) (package-supported-systems go-1.4))) + ;; gccgo-10.4, 11.3 and lower has a bug which causes bootstrapping + ;; to fail. Use go-1.16 until we have a newer version available. + (alist-replace "go" (list go-1.16) (package-native-inputs go-1.16)) + (package-native-inputs go-1.16))))) -(define-public go go-1.14) +(define-public go go-1.17) + +(define-public (make-go-std go) + "Return a package which builds the standard library for Go compiler GO." + (package + (name (string-append (package-name go) "-std")) + (version (package-version go)) + (source #f) + (build-system go-build-system) + (arguments + `(#:import-path "std" + #:build-flags `("-pkgdir" "pkg") ; "Install" to build directory. + #:allow-go-reference? #t + #:substitutable? #f ; Faster to build than download. + #:tests? #f ; Already tested in the main Go build. + #:go ,go + #:phases + (modify-phases %standard-phases + (delete 'unpack) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (out-cache (string-append out "/var/cache/go/build"))) + (copy-recursively (getenv "GOCACHE") out-cache) + (delete-file (string-append out-cache "/trim.txt")) + (delete-file (string-append out-cache "/README"))))) + (delete 'install-license-files)))) + (home-page (package-home-page go)) + (synopsis "Cached standard library build for Go") + (description (package-description go)) + (license (package-license go)))) (define-public go-0xacab-org-leap-shapeshifter (let ((commit "0aa6226582efb8e563540ec1d3c5cfcd19200474") @@ -812,11 +888,9 @@ in the style of communicating sequential processes (@dfn{CSP}).") (arguments `(#:import-path "0xacab.org/leap/shapeshifter")) (propagated-inputs - `(("go-github-com-operatorfoundation-obfs4" - ,go-github-com-operatorfoundation-obfs4) - ("go-github-com-operatorfoundation-shapeshifter-transports" - ,go-github-com-operatorfoundation-shapeshifter-transports) - ("go-golang-org-x-net" ,go-golang-org-x-net))) + (list go-github-com-operatorfoundation-obfs4 + go-github-com-operatorfoundation-shapeshifter-transports + go-golang-org-x-net)) (home-page "https://0xacab.org/leap/shapeshifter") (synopsis "Shapeshifter Dispatcher Library") (description "Shapeshifter provides network protocol shapeshifting @@ -923,33 +997,21 @@ filtering devices.") "github.com/OperatorFoundation/shapeshifter-transports/transports/shadow/v2" "github.com/OperatorFoundation/shapeshifter-transports/transports/shadow/v3"))))))) (native-inputs - `(("go-github-com-stretchr-testify" - ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (propagated-inputs - `(("go-github-com-aead-chacha20" - ,go-github-com-aead-chacha20) - ("go-github-com-blanu-dust" - ,go-github-com-blanu-dust) - ("go-github-com-deckarep-golang-set" - ,go-github-com-deckarep-golang-set) - ("go-github-com-kataras-golog" - ,go-github-com-kataras-golog) - ("go-github-com-mufti1-interconv" - ,go-github-com-mufti1-interconv) - ("go-github-com-opentracing-opentracing-go" - ,go-github-com-opentracing-opentracing-go) - ("go-github-com-operatorfoundation-monolith-go" - ,go-github-com-operatorfoundation-monolith-go) - ("go-github-com-operatorfoundation-obfs4" - ,go-github-com-operatorfoundation-obfs4) - ("go-github-com-operatorfoundation-shapeshifter-ipc" - ,go-github-com-operatorfoundation-shapeshifter-ipc) - ("go-github-com-shadowsocks-go-shadowsocks2" - ,go-github-com-shadowsocks-go-shadowsocks2) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-torproject-org-pluggable-transports-goptlib" - ,go-torproject-org-pluggable-transports-goptlib))) + (list go-github-com-aead-chacha20 + go-github-com-blanu-dust + go-github-com-deckarep-golang-set + go-github-com-kataras-golog + go-github-com-mufti1-interconv + go-github-com-opentracing-opentracing-go + go-github-com-operatorfoundation-monolith-go + go-github-com-operatorfoundation-obfs4 + go-github-com-operatorfoundation-shapeshifter-ipc + go-github-com-shadowsocks-go-shadowsocks2 + go-golang-org-x-crypto + go-golang-org-x-net + go-torproject-org-pluggable-transports-goptlib)) (home-page "https://github.com/OperatorFoundation/shapeshifter-transports") (synopsis "Go implementation of Pluggable Transports") (description "Shapeshifter-Transports is a set of Pluggable Transports @@ -978,8 +1040,7 @@ networks where it would otherwise be blocked or heavily throttled.") (arguments `(#:import-path "github.com/kataras/golog")) (propagated-inputs - `(("go-github-com-kataras-pio" - ,go-github-com-kataras-pio))) + (list go-github-com-kataras-pio)) (home-page "https://github.com/kataras/golog") (synopsis "Logging foundation for Go applications") (description "GoLog is a level-based logger written in Go.") @@ -1028,12 +1089,8 @@ terminals.") (arguments `(#:import-path "github.com/shadowsocks/go-shadowsocks2")) (propagated-inputs - `(("go-github-com-riobard-go-bloom" - ,go-github-com-riobard-go-bloom) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-golang-org-x-sys" ,go-golang-org-x-sys) - ("go-golang-org-x-text" ,go-golang-org-x-text))) + (list go-github-com-riobard-go-bloom go-golang-org-x-crypto + go-golang-org-x-net go-golang-org-x-sys go-golang-org-x-text)) (home-page "https://github.com/shadowsocks/go-shadowsocks2") (synopsis "Shadowsocks tunnel proxy") (description "Go-ShadowSocks is a Go implementation of the Shadowsocks tunnel @@ -1084,7 +1141,7 @@ proxy protocol.") (arguments `(#:import-path "github.com/aead/chacha20")) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-golang-org-x-sys)) (home-page "https://github.com/aead/chacha20") (synopsis "ChaCha20 and XChaCha20 stream ciphers") (description "ChaCha is a stream cipher family created by Daniel Bernstein. @@ -1135,8 +1192,7 @@ standardized in RFC 7539.") (arguments `(#:import-path "github.com/opentracing/opentracing-go")) (native-inputs - `(("go-github-com-stretchr-testify" - ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/opentracing/opentracing-go") (synopsis "OpenTracing API for Go") (description "OpenTracing-Go is a Go implementation of the OpenTracing API.") @@ -1162,8 +1218,7 @@ standardized in RFC 7539.") #:unpack-path "github.com/OperatorFoundation/monolith-go" #:import-path "github.com/OperatorFoundation/monolith-go/monolith")) (propagated-inputs - `(("go-github-com-deckarep-golang-set" - ,go-github-com-deckarep-golang-set))) + (list go-github-com-deckarep-golang-set)) (home-page "https://github.com/OperatorFoundation/monolith-go") (synopsis "Byte sequences library") (description "Monolith-Go is a Go library for working with byte sequences.") @@ -1209,10 +1264,8 @@ standardized in RFC 7539.") (build-system go-build-system) (arguments `(#:import-path "howett.net/plist")) (inputs - `(("go-github.com-jessevdk-go-flags" ,go-github.com-jessevdk-go-flags) - ("go-github-com-kr-pretty" ,go-github-com-kr-pretty) - ("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1) - ("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2))) + (list go-github.com-jessevdk-go-flags go-github-com-kr-pretty + go-gopkg-in-check-v1 go-gopkg-in-yaml-v2)) (home-page "https://github.com/DHowett/go-plist") (synopsis "Apple property list transcoder") (description "This list transcoder supports encoding/decoding property @@ -1301,11 +1354,8 @@ types.") "github.com/blanu/Dust/go/v2/interface" "github.com/blanu/Dust/go/v2/shaping"))))))) (propagated-inputs - `(("go-github-com-operatorfoundation-ed25519" - ,go-github-com-operatorfoundation-ed25519) - ("go-github-com-op-go-logging" - ,go-github-com-op-go-logging) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-operatorfoundation-ed25519 + go-github-com-op-go-logging go-golang-org-x-crypto)) (home-page "https://github.com/blanu/Dust") (synopsis "Censorship-resistant internet transport protocol") (description "Dust is an Internet protocol designed to resist a number of @@ -1502,16 +1552,12 @@ protocol from the Pluggable Transports 2.0 specification.") "github.com/OperatorFoundation/obfs4/proxy_dialers/proxy_socks4" "github.com/OperatorFoundation/obfs4/transports"))))))) (propagated-inputs - `(("go-github-com-dchest-siphash" - ,go-github-com-dchest-siphash) - ("go-github-com-operatorfoundation-ed25519" - ,go-github-com-operatorfoundation-ed25519) - ("go-github-com-willscott-goturn" - ,go-github-com-willscott-goturn) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-torproject-org-pluggable-transports-goptlib" - ,go-torproject-org-pluggable-transports-goptlib))) + (list go-github-com-dchest-siphash + go-github-com-operatorfoundation-ed25519 + go-github-com-willscott-goturn + go-golang-org-x-crypto + go-golang-org-x-net + go-torproject-org-pluggable-transports-goptlib)) (home-page "https://github.com/OperatorFoundation/obfs4") (synopsis "Network obfourscator to scramble network traffic") (description "Obfs4 is a look-like nothing obfuscation protocol that @@ -1599,7 +1645,7 @@ Go.") (arguments `(#:import-path "github.com/sevlyar/go-daemon")) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-golang-org-x-sys)) (home-page "https://github.com/sevlyar/go-daemon") (synopsis "Library for writing system daemons") (description "Go-Daemon is a library for writing system daemons in Go.") @@ -1636,9 +1682,7 @@ Go.") (substitute* "src/github.com/keybase/go-ps/process_openbsd.go" (("^// \\+build ignore") ""))))))) (native-inputs - `(("coreutils" ,coreutils) - ("go-github-com-stretchr-testify" - ,go-github-com-stretchr-testify))) + (list coreutils go-github-com-stretchr-testify)) (home-page "https://github.com/keybase/go-ps") (synopsis "Process list library for Go") (description "Go-Ps is a library for Go that implements OS-specific APIs @@ -1839,10 +1883,8 @@ jar struct to manage the cookies added to the cookie jar.") '(#:unpack-path "github.com/gizak/termui" #:import-path "github.com/gizak/termui/v3")) (propagated-inputs - `(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth) - ("go-github-com-mitchellh-go-wordwrap" - ,go-github-com-mitchellh-go-wordwrap) - ("go-github.com-nsf-termbox-go" ,go-github.com-nsf-termbox-go))) + (list go-github.com-mattn-go-runewidth + go-github-com-mitchellh-go-wordwrap go-github.com-nsf-termbox-go)) (home-page "https://github.com/gizak/termui") (synopsis "Terminal dashboard widget Go library") (description @@ -1893,7 +1935,7 @@ mouse, and terminal resizing events.") (arguments '(#:import-path "github.com/mitchellh/go-wordwrap")) (propagated-inputs - `(("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2))) + (list go-gopkg-in-yaml-v2)) (home-page "https://github.com/mitchellh/go-wordwrap") (synopsis "Go library for word-wrapping strings") (description @@ -1944,7 +1986,7 @@ generally useful thing to do.") (arguments '(#:import-path "github.com/daviddengcn/go-colortext")) (native-inputs - `(("go-github-com-golangplus-testing" ,go-github-com-golangplus-testing))) + (list go-github-com-golangplus-testing)) (synopsis "Change the color of console text and background") (description "This is a package to change the color of the text and background in the @@ -1971,7 +2013,7 @@ Under Windows, the console APIs are used. Otherwise, ANSI texts are output.") (arguments '(#:import-path "github.com/golangplus/testing")) (propagated-inputs - `(("go-github-com-golangplus-fmt" ,go-github-com-golangplus-fmt))) + (list go-github-com-golangplus-fmt)) (synopsis "Additions to Go's standard testing package") (description "This package provides additions to Go's stdlib testing.") (license license:bsd-3))) @@ -1994,7 +2036,7 @@ Under Windows, the console APIs are used. Otherwise, ANSI texts are output.") (arguments '(#:import-path "github.com/leodido/go-urn")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (synopsis "Parser for uniform resource names as seen on RFC 2141") (description "This package implements a parser for uniform resource names (URN) as @@ -2101,7 +2143,7 @@ implemented features include (arguments '(#:import-path "github.com/go-playground/universal-translator")) (propagated-inputs - `(("go-github-com-go-playground-locales" ,go-github-com-go-playground-locales))) + (list go-github-com-go-playground-locales)) (synopsis "Translator using Unicode CLDR data and pluralization rules") (description "This package offers an Internalization Translator for Go using @@ -2139,12 +2181,10 @@ professionally translated (arguments '(#:import-path "gopkg.in/go-playground/validator.v9")) (native-inputs - `(("go-gopkg-in-go-playground-assert-v1" - ,go-gopkg-in-go-playground-assert-v1))) + (list go-gopkg-in-go-playground-assert-v1)) (propagated-inputs - `(("go-github-com-go-playground-universal-translator" - ,go-github-com-go-playground-universal-translator) - ("go-github-com-leodido-go-urn" ,go-github-com-leodido-go-urn))) + (list go-github-com-go-playground-universal-translator + go-github-com-leodido-go-urn)) (synopsis "Validator for structs and individual fields based on tags") (description "This package implements value validations for structs and individual @@ -2189,10 +2229,9 @@ web framework '(#:import-path "github.com/aws/aws-sdk-go/aws" #:unpack-path "github.com/aws/aws-sdk-go")) (propagated-inputs - `(("go-github-com-go-sql-driver-mysql" ,go-github-com-go-sql-driver-mysql) - ("go-github-com-jmespath-go-jmespath" ,go-github-com-jmespath-go-jmespath) - ("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-golang-org-x-net" ,go-golang-org-x-net))) + (list go-github-com-go-sql-driver-mysql + go-github-com-jmespath-go-jmespath go-github-com-pkg-errors + go-golang-org-x-net)) (home-page "https://github.com/aws/aws-sdk-go") (synopsis "Library to access Amazon Web Services (AWS)") (description @@ -2299,7 +2338,7 @@ per-goroutine.") (arguments `(#:import-path "github.com/saracen/walker")) (inputs - `(("go-golang-org-x-sync" ,go-golang-org-x-sync))) + (list go-golang-org-x-sync)) (home-page "https://github.com/saracen/walker") (synopsis "Faster, parallel version of Go's filepath.Walk") (license license:expat) @@ -2331,31 +2370,31 @@ command-line parsers.") (license license:expat))) (define-public go-github-com-hashicorp-hcl - (let ((commit "23c074d0eceb2b8a5bfdbb271ab780cde70f05a8") - (revision "0")) - (package - (name "go-github-com-hashicorp-hcl") - (version (git-version "0.0.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/hashicorp/hcl") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0db4lpqb5m130rmfy3s3gjjf4dxllypmyrzxv6ggqhkmwmc7w4mc")))) - (build-system go-build-system) - (arguments - '(#:tests? #f - #:import-path "github.com/hashicorp/hcl")) - (synopsis "Go implementation of HashiCorp Configuration Language") - (description - "This package contains the main implementation of the @acronym{HCL, + (package + (name "go-github-com-hashicorp-hcl") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hashicorp/hcl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/hashicorp/hcl")) + (native-inputs + (list go-github-com-davecgh-go-spew)) + (synopsis "Go implementation of HashiCorp Configuration Language V1") + (description + "This package contains the main implementation of the @acronym{HCL, HashiCorp Configuration Language}. HCL is designed to be a language for expressing configuration which is easy for both humans and machines to read.") - (home-page "https://github.com/hashicorp/hcl") - (license license:mpl2.0)))) + (home-page "https://github.com/hashicorp/hcl") + (license license:mpl2.0))) (define-public go-golang-org-x-tools (let ((commit "8b927904ee0dec805c89aaf9172f4459296ed6e8") @@ -2412,18 +2451,9 @@ Go programming language.") #:phases (modify-phases %standard-phases ;; Source-only package - (delete 'build) - (add-before 'reset-gzip-timestamps 'make-gzip-archive-writable - (lambda* (#:key outputs #:allow-other-keys) - (map (lambda (file) - (make-file-writable file)) - (find-files - (string-append (assoc-ref outputs "out") - "/src/golang.org/x/crypto/ed25519/testdata") - ".*\\.gz$")) - #t))))) + (delete 'build)))) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-golang-org-x-sys)) (synopsis "Supplementary cryptographic libraries in Go") (description "This package provides supplementary cryptographic libraries for the Go language.") @@ -2638,7 +2668,7 @@ time.") (arguments `(#:import-path "golang.org/x/oauth2")) (propagated-inputs - `(("go-golang-org-x-net" ,go-golang-org-x-net))) + (list go-golang-org-x-net)) (home-page "https://go.googlesource.com/oauth2") (synopsis "Client implementation of the OAuth 2.0 spec") (description "This package contains a client implementation for OAuth 2.0 @@ -2669,6 +2699,41 @@ time.") (home-page "https://godoc.org/golang.org/x/xerrors") (license license:bsd-3)))) +(define-public go-golang-org-x-mod + (let ((commit "0f08993efd8a8ec67e75bcccf86b0e1569b0ab0a") + (revision "0")) + (package + (name "go-golang-org-x-mod") + (version (git-version "0.5.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/golang/mod") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0pl0jc5jvg7hxj4z66zg6kglnq5g7li09f3k9klwvyr4jx5dw88k")))) + (build-system go-build-system) + (arguments + '(#:import-path "golang.org/x/mod/" + #:tests? #f + #:phases + (modify-phases %standard-phases + ;; Source-only package + (delete 'build)))) + (home-page "https://golang.org/x/mod") + (synopsis "Tools to work directly with Go module mechanics") + (description + "This repository holds packages for writing tools that work directly +with Go module mechanics. That is, it is for direct manipulation of Go modules +themselves. + +The specific case of loading packages should still be done by invoking the +@command{go} command, which remains the single point of truth for package +loading algorithms.") + (license license:bsd-3)))) + (define-public go-github-com-burntsushi-toml (package (name "go-github-com-burntsushi-toml") @@ -2712,8 +2777,7 @@ is similar to Go's standard library @code{json} and @code{xml} package.") (arguments '(#:import-path "github.com/getsentry/raven-go")) (propagated-inputs - `(("go-github-com-certifi-gocertifi" ,go-github-com-certifi-gocertifi) - ("go-github-com-pkg-errors" ,go-github-com-pkg-errors))) + (list go-github-com-certifi-gocertifi go-github-com-pkg-errors)) (home-page "https://github.com/getsentry/raven-go") (synopsis "Sentry client in Go") (description "This package is a Go client API for the Sentry event/error @@ -2789,10 +2853,19 @@ Go.") (file-name (git-file-name name version)) (sha256 (base32 - "0pcdvakxgddaiwcdj73ra4da05a3q4cgwbpm2w75ycq4kzv8ij8k")))) + "0pcdvakxgddaiwcdj73ra4da05a3q4cgwbpm2w75ycq4kzv8ij8k")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "vendor"))))) (build-system go-build-system) (arguments '(#:import-path "github.com/stretchr/objx")) + (propagated-inputs + (list go-github-com-davecgh-go-spew + go-github-com-pmezard-go-difflib)) + (inputs + (list go-github-com-stretchr-testify-bootstrap)) (home-page "https://github.com/stretchr/objx") (synopsis "Go package for dealing with maps, slices, JSON and other data") (description "This package provides a Go library for dealing with maps, @@ -2802,7 +2875,7 @@ slices, JSON and other data.") (define-public go-github-com-stretchr-testify (package (name "go-github-com-stretchr-testify") - (version "1.5.1") + (version "1.7.0") (source (origin (method git-fetch) @@ -2812,7 +2885,7 @@ slices, JSON and other data.") (file-name (git-file-name name version)) (sha256 (base32 - "09r89m1wy4cjv2nps1ykp00qjpi0531r07q3s34hr7m6njk4srkl")))) + "0ixgjsvafr3513pz3r6pmgk074s2dxkll0dadvl25gkf30rkmh10")))) (build-system go-build-system) (arguments '(#:import-path "github.com/stretchr/testify")) @@ -2820,7 +2893,7 @@ slices, JSON and other data.") `(("github.com/davecgh/go-spew" ,go-github-com-davecgh-go-spew) ("github.com/pmezard/go-difflib" ,go-github-com-pmezard-go-difflib) ("github.com/stretchr/objx" ,go-github-com-stretchr-objx) - ("gopkg.in/yaml.v2" ,go-gopkg-in-yaml-v2))) + ("gopkg.in/yaml.v3" ,go-gopkg-in-yaml-v3))) (home-page "https://github.com/stretchr/testify") (synopsis "Go helper library for tests and invariant checking") (description "This package provide many tools for testifying that your @@ -2835,6 +2908,17 @@ Features include: @end itemize") (license license:expat))) +(define go-github-com-stretchr-testify-bootstrap + (package + (inherit go-github-com-stretchr-testify) + (arguments + '(#:import-path "github.com/stretchr/testify" + #:tests? #f + #:phases (modify-phases %standard-phases + (delete 'build)))) + (propagated-inputs + (list go-gopkg-in-yaml-v3)))) + (define-public go-github-com-tevino-abool (let ((commit "3c25f2fe7cd0ef3eabefce1d90efd69a65d35b12") @@ -3000,41 +3084,6 @@ with the HTTP protocol definition.") API service accounts for Go.") (license license:asl2.0))) -(define-public go-github-com-google-gmail-oauth2-tools-go-sendgmail - (let ((commit "e3229155a4037267ce40f1a3a681f53221aa4d8d") - (revision "0")) - (package - (name "go-github-com-google-gmail-oauth2-tools-go-sendgmail") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/google/gmail-oauth2-tools") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1cxpkiaajhq1gjsg47r2b5xgck0r63pvkyrkm7af8c8dw7fyn64f")))) - (propagated-inputs - `(("go-golang-org-x-oauth2" ,go-golang-org-x-oauth2) - ("go-cloud-google-com-go-compute-metadata" - ,go-cloud-google-com-go-compute-metadata))) - (build-system go-build-system) - (arguments - '(#:unpack-path "github.com/google/gmail-oauth2-tools" - #:import-path "github.com/google/gmail-oauth2-tools/go/sendgmail")) - (home-page - "https://github.com/google/gmail-oauth2-tools/tree/master/go/sendgmail") - (synopsis - "Sendmail-compatible tool for using Gmail with @code{git send-email}") - (description - "The @command{sendgmail} command provides a minimal sendmail-compatible -front-end that connects to Gmail using OAuth2. It is specifically designed -for use with @code{git send-email}. The command needs a Gmail API key to -function.") - (license license:asl2.0)))) - (define-public go-github-com-google-cadvisor (let ((commit "2ed7198f77395ee9a172878a0a7ab92ab59a2cfd") (revision "0")) @@ -3303,7 +3352,7 @@ middleware for Go web applications and services.") (arguments `(#:import-path "github.com/spf13/cast")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/spf13/cast") (synopsis "Safe and easy casting from one type to another in Go") (description "Safe and easy casting from one type to another in Go") @@ -3352,7 +3401,7 @@ applications as well as a program to generate applications and command files.") (arguments `(#:import-path "github.com/spf13/jwalterweatherman")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/spf13/jwalterweatherman") (synopsis "Go logging library") (description "Go logging library") @@ -3417,7 +3466,7 @@ GNU extensions} to the POSIX recommendations for command-line options.") ("gopkg.in/ini.v1" ,go-gopkg-in-ini-v1) ("gopkg.in/yaml.v2" ,go-gopkg-in-yaml-v2))) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/spf13/viper") (synopsis "Go configuration with fangs") (description @@ -3541,7 +3590,7 @@ application's http.Handlers.") (arguments `(#:import-path "github.com/subosito/gotenv")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/subosito/gotenv") (synopsis "Go library for loading environment variables from files") (description "Go library for loading environment variables from files") @@ -3563,11 +3612,9 @@ application's http.Handlers.") "0rvqzic2zz7fpxyizmqxwmhv1m52ii9bgxnqa6km8wsa0l08wh42")))) (build-system go-build-system) (propagated-inputs - `(("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew) - ("go-github-com-pmezard-go-difflib" ,go-github-com-pmezard-go-difflib) - ("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-github-com-davecgh-go-spew go-github-com-pmezard-go-difflib + go-github-com-stretchr-testify go-golang-org-x-crypto + go-golang-org-x-sys)) (arguments '(#:import-path "github.com/sirupsen/logrus")) (home-page "https://github.com/sirupsen/logrus") @@ -3593,7 +3640,7 @@ compatible with the standard library logger.") (arguments `(#:import-path "github.com/rifflock/lfshook")) (propagated-inputs - `(("go-github-com-sirupsen-logrus" ,go-github-com-sirupsen-logrus))) + (list go-github-com-sirupsen-logrus)) (home-page "https://github.com/rifflock/lfshook") (synopsis "Local File System hook for Logrus logger") (description "This package provides a hook for Logrus to write directly to @@ -3648,8 +3695,7 @@ finding resources located relative to the executable file.") "0x0cn7l5gda2khsfypix7adxd5yqighzn04mxjw6hc4ayrh7his5")))) (build-system go-build-system) (native-inputs - `(("go-github-com-kardianos-osext" - ,go-github-com-kardianos-osext))) + (list go-github-com-kardianos-osext)) (arguments '(#:tests? #f ;FIXME tests fail: Service is not running. #:import-path "github.com/ayufan/golang-kardianos-service")) @@ -3680,23 +3726,10 @@ SysVinit, and more.") "1yg2zrikn3vkvkx5mn51p6bfjk840qdkn7ahhhvvcsc8mpigrjc6")))) (build-system go-build-system) (native-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys) - ("go-github-com-sirupsen-logrus" - ,go-github-com-sirupsen-logrus) - ("go-golang-org-x-crypto" - ,go-golang-org-x-crypto))) + (list go-golang-org-x-sys go-github-com-sirupsen-logrus + go-golang-org-x-crypto)) (arguments - '(#:import-path "github.com/docker/distribution" - #:phases - (modify-phases %standard-phases - (add-before 'reset-gzip-timestamps 'make-gzip-archive-writable - (lambda* (#:key outputs #:allow-other-keys) - (map (lambda (file) - (make-file-writable file)) - (find-files - (assoc-ref outputs "out") - ".*\\.gz$")) - #t))))) + '(#:import-path "github.com/docker/distribution")) (home-page "https://github.com/docker/distribution") (synopsis "This package is a Docker toolset to pack, ship, store, and @@ -3806,7 +3839,7 @@ which satisfies the cron expression.") (arguments '(#:import-path "gopkg.in/check.v1")) (propagated-inputs - `(("go-github-com-kr-pretty" ,go-github-com-kr-pretty))) + (list go-github-com-kr-pretty)) (home-page "https://gopkg.in/check.v1") (synopsis "Test framework for the Go language") (description "This package provides a test library for the Go language.") @@ -3839,7 +3872,7 @@ which satisfies the cron expression.") (define-public go-gopkg-in-yaml-v2 (package (name "go-gopkg-in-yaml-v2") - (version "2.2.2") + (version "2.4.0") (source (origin (method git-fetch) @@ -3849,12 +3882,23 @@ which satisfies the cron expression.") (file-name (git-file-name name version)) (sha256 (base32 - "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa")))) + "1pbmrpj7gcws34g8vwna4i2nhm9p6235piww36436xhyaa10cldr")) + (modules '((guix build utils))) + (snippet + '(begin + ;; https://github.com/go-yaml/yaml/issues/441 and + ;; https://github.com/go-yaml/yaml/pull/442 + ;; Don't assume 64-bit wide integers + (substitute* "decode_test.go" + (("bin: (-0b1000000000000000000000000000000000000000000000000000000000000000)" all number) + (string-append "int64_min_base2: " number)) + (("map\\[string\\]interface\\{\\}\\{\"bin\": -9223372036854775808\\}") + "map[string]int64{\"int64_min_base2\": math.MinInt64}")))))) (build-system go-build-system) (arguments '(#:import-path "gopkg.in/yaml.v2")) (native-inputs - `(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1))) + (list go-gopkg-in-check-v1)) (home-page "https://gopkg.in/yaml.v2") (synopsis "YAML reader and writer for the Go language") (description @@ -3879,7 +3923,7 @@ values.") (arguments '(#:import-path "gopkg.in/yaml.v3")) (native-inputs - `(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1))) + (list go-gopkg-in-check-v1)) (home-page "https://gopkg.in/yaml.v3") (synopsis "YAML reader and writer for the Go language") (description @@ -3904,7 +3948,7 @@ The yaml package supports most of YAML 1.2, but preserves some behavior from "0h671sv7hfprja495kavazkalkx7xzaqksjh13brcnwq67ijrali")))) (build-system go-build-system) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-golang-org-x-sys)) (arguments '(#:import-path "github.com/mattn/go-isatty")) (home-page "https://github.com/mattn/go-isatty") @@ -3931,8 +3975,7 @@ terminal.") "0q34zqwbnls72md8q8mhj368s7p3i4xspvs3rk8fs76s0pn7dr2l")))) (build-system go-build-system) (native-inputs - `(("go-github-com-mattn-go-isatty" - ,go-github-com-mattn-go-isatty))) + (list go-github-com-mattn-go-isatty)) (arguments '(#:import-path "github.com/mattn/go-colorable")) (synopsis "Handle ANSI color escapes on Windows") @@ -3984,10 +4027,7 @@ makes it possible to handle ANSI color escapes on Windows.") "00bz22314j26736w1f0q4jy9d9dfaml17vn890n5zqy3cmvmww1j")))) (build-system go-build-system) (native-inputs - `(("go-github-com-mattn-go-isatty" - ,go-github-com-mattn-go-isatty) - ("go-github-com-mattn-go-colorable" - ,go-github-com-mattn-go-colorable))) + (list go-github-com-mattn-go-isatty go-github-com-mattn-go-colorable)) (arguments '(#:import-path "github.com/mgutz/ansi")) (home-page "https://github.com/mgutz/ansi") @@ -4019,7 +4059,7 @@ generate ANSI colored strings.") ;; be built again. Thus its CGO requirements must be made available in ;; the environment, that is, they must be propagated. (propagated-inputs - `(("lua" ,lua))) + (list lua)) (arguments `(#:unpack-path "github.com/aarzilli/golua" #:import-path "github.com/aarzilli/golua/lua" @@ -4061,8 +4101,7 @@ run a Lua virtual machine.") "1izcp7p8nagjwqd13shb0020w7xhppib1a3glw2d1468bflhksnm")))) (build-system go-build-system) (native-inputs - `(("lua" ,lua) - ("go-github-com-aarzilli-golua" ,go-github-com-aarzilli-golua))) + (list lua go-github-com-aarzilli-golua)) (arguments `(#:unpack-path "gitlab.com/ambrevar/golua" #:import-path "gitlab.com/ambrevar/golua/unicode" @@ -4154,7 +4193,7 @@ similar word.") "1acjgw9cz1l0l9mzkyk7irz6cfk31wnxgbwa805fvm1rqcjzin2c")))) (build-system go-build-system) (native-inputs - `(("go-github-com-aarzilli-golua" ,go-github-com-aarzilli-golua))) + (list go-github-com-aarzilli-golua)) (arguments `(#:tests? #f ; Upstream tests are broken. #:import-path "github.com/stevedonovan/luar")) @@ -4195,7 +4234,7 @@ be performed.") "0rjfms0csjqi91xnddzx3rcrcaikc7xc027617px3kdwdap80ir4")))) (build-system go-build-system) (native-inputs - `(("go-github-com-kr-text" ,go-github-com-kr-text))) + (list go-github-com-kr-text)) (arguments `(#:tests? #f ; Upstream tests seem to be broken. #:import-path "github.com/michiwend/golang-pretty")) @@ -4229,8 +4268,7 @@ functions in packages @code{fmt} and @code{log}.") "1li9daw0kghb80rdmxbh7g72qhxcvx3rvhwq5gs0jrr9hb8pjvcn")))) (build-system go-build-system) (native-inputs - `(("go-github-com-michiwend-golang-pretty" ,go-github-com-michiwend-golang-pretty) - ("go-github-com-kr-text" ,go-github-com-kr-text))) + (list go-github-com-michiwend-golang-pretty go-github-com-kr-text)) (arguments `(#:import-path "github.com/michiwend/gomusicbrainz")) (home-page "https://github.com/michiwend/gomusicbrainz") @@ -4262,8 +4300,7 @@ and lookup requests. Browse requests are not supported yet.") ;; be built again. Thus its CGO requirements must be made available in ;; the environment, that is, they must be propagated. (propagated-inputs - `(("pkg-config" ,pkg-config) - ("taglib" ,taglib))) + (list pkg-config taglib)) (arguments `(#:import-path "github.com/wtolson/go-taglib" ;; Tests don't pass "vet" on Go since 1.11. See @@ -4428,7 +4465,7 @@ implementing the same interface.") '(#:unpack-path "github.com/btcsuite/btcd" #:import-path "github.com/btcsuite/btcd/btcec")) (native-inputs - `(("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew))) + (list go-github-com-davecgh-go-spew)) (home-page "https://github.com/btcsuite/btcd") (synopsis "Elliptic curve cryptography to work with Bitcoin") (description "Package @command{btcec} implements elliptic curve @@ -4499,10 +4536,8 @@ Architecture Processors\" by J. Guilford et al.") (arguments '(#:import-path "github.com/libp2p/go-libp2p-crypto")) (native-inputs - `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) - ("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd))) + (list go-golang-org-x-crypto go-github-com-btcsuite-btcd-btcec + go-github-com-gogo-protobuf go-github-com-minio-sha256-simd)) (home-page "https://github.com/libp2p/go-libp2p-crypto") (synopsis "Various cryptographic utilities used by IPFS") @@ -4666,12 +4701,12 @@ required by Go's standard Hash interface.") (arguments '(#:import-path "github.com/multiformats/go-multihash")) (native-inputs - `(("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) - ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) - ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) - ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-mr-tron-base58 + go-github-com-gxed-hashland-keccakpg + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto)) (home-page "https://github.com/multiformats/go-multihash") (synopsis "Multihash implementation in Go") (description "Multihash implementation in Go.") @@ -4697,16 +4732,16 @@ required by Go's standard Hash interface.") (arguments '(#:import-path "github.com/libp2p/go-libp2p-peer")) (native-inputs - `(("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) - ("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) - ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) - ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) - ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) - ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) - ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) - ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-libp2p-go-libp2p-crypto + go-github-com-gogo-protobuf + go-github-com-minio-sha256-simd + go-github-com-minio-blake2b-simd + go-github-com-btcsuite-btcd-btcec + go-github-com-mr-tron-base58 + go-github-com-multiformats-go-multihash + go-github-com-gxed-hashland-keccakpg + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto)) (home-page "https://github.com/libp2p/go-libp2p-peer") (synopsis "PKI based identities for use in go-libp2p") (description "PKI based identities for use in @command{go-libp2p}.") @@ -4757,19 +4792,19 @@ required by Go's standard Hash interface.") (arguments '(#:import-path "github.com/libp2p/go-libp2p-metrics")) (native-inputs - `(("go-github-com-libp2p-go-flow-metrics" ,go-github-com-libp2p-go-flow-metrics) - ("go-github-com-libp2p-go-libp2p-peer" ,go-github-com-libp2p-go-libp2p-peer) - ("go-github-com-libp2p-go-libp2p-protocol" ,go-github-com-libp2p-go-libp2p-protocol) - ("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) - ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) - ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) - ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) - ("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf) - ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) - ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) - ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-libp2p-go-flow-metrics + go-github-com-libp2p-go-libp2p-peer + go-github-com-libp2p-go-libp2p-protocol + go-github-com-libp2p-go-libp2p-crypto + go-github-com-mr-tron-base58 + go-github-com-multiformats-go-multihash + go-github-com-btcsuite-btcd-btcec + go-github-com-gogo-protobuf + go-github-com-gxed-hashland-keccakpg + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto)) (home-page "https://github.com/libp2p/go-libp2p-metrics") (synopsis "Connection wrapper for go-libp2p that provides bandwidth metrics") (description "A connection wrapper for @command{go-libp2p} that provides bandwidth @@ -4879,7 +4914,7 @@ unknown structures such as those decoded from JSON.") (arguments `(#:import-path "github.com/mitchellh/copystructure")) (native-inputs - `(("go-github-com-mitchellh-reflectwalk" ,go-github-com-mitchellh-reflectwalk))) + (list go-github-com-mitchellh-reflectwalk)) (home-page "https://github.com/mitchellh/copystructure") (synopsis "Go library for decoding deep copying values") (description "@code{copystructure} is a Go library for deep copying values @@ -4911,13 +4946,13 @@ references.") '(#:import-path "github.com/multiformats/go-multiaddr")) (native-inputs - `(("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) - ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) - ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) - ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) - ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-multiformats-go-multihash + go-github-com-gxed-hashland-keccakpg + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-mr-tron-base58 + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto)) (home-page "https://github.com/multiformats/go-multiaddr") (synopsis "Composable and future-proof network addresses") (description "Multiaddr is a standard way to represent addresses that @@ -4954,14 +4989,14 @@ does the following: ;; TODO: Tests fail because they try to access the network. #:tests? #f))) (native-inputs - `(("go-github-com-multiformats-go-multiaddr" ,go-github-com-multiformats-go-multiaddr) - ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) - ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) - ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) - ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) - ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-multiformats-go-multiaddr + go-github-com-multiformats-go-multihash + go-github-com-gxed-hashland-keccakpg + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-mr-tron-base58 + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto)) (home-page "https://github.com/multiformats/go-multiaddr-net") (synopsis "Multiaddress net tools") (description "This package provides Multiaddr specific versions of @@ -5048,7 +5083,7 @@ as conversion to and from @command{net.Addr}.") '(#:import-path "github.com/sabhiram/go-gitignore")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/sabhiram/go-gitignore") (synopsis "Gitignore parser for Go") (description "A @command{.gitignore} parser for Go.") @@ -5073,7 +5108,7 @@ as conversion to and from @command{net.Addr}.") (arguments '(#:import-path "github.com/urfave/cli")) (propagated-inputs - `(("go-github-com-go-md2man" ,go-github-com-go-md2man))) + (list go-github-com-go-md2man)) (home-page "https://github.com/urfave/cli") (synopsis "Simple, fast, and fun package for building command line apps in Go") (description "@command{cli} is a simple, fast, and fun package for @@ -5123,7 +5158,7 @@ fast and distributable command line applications in an expressive way.") (arguments '(#:import-path "github.com/cpuguy83/go-md2man")) (propagated-inputs - `(("go-github-com-russross-blackfriday" ,go-github-com-russross-blackfriday))) + (list go-github-com-russross-blackfriday)) (home-page "https://github.com/cpuguy83/go-md2man") (synopsis "Convert markdown into roff") (description "Go-md2man is a Go program that converts markdown to roff for @@ -5148,10 +5183,9 @@ the purpose of building man pages.") (arguments '(#:import-path "github.com/russross/blackfriday")) (propagated-inputs - `(("go-github-com-shurcool-sanitized-anchor-name" - ,go-github-com-shurcool-sanitized-anchor-name))) + (list go-github-com-shurcool-sanitized-anchor-name)) (native-inputs - `(("go-github-com-pmezard-go-difflib" ,go-github-com-pmezard-go-difflib))) + (list go-github-com-pmezard-go-difflib)) (home-page "https://github.com/russross/blackfriday") (synopsis "Markdown processor in Go") (description "Blackfriday is a Markdown processor in Go.") @@ -5343,7 +5377,7 @@ format in Go.") "0vzfz06y9q8gs2nxx0kys0591vzp78k0fvpb8digi5n15h3b25hy")))) (build-system go-build-system) (propagated-inputs - `(("go-github-com-kr-text" ,go-github-com-kr-text))) + (list go-github-com-kr-text)) (arguments '(#:import-path "github.com/kr/pretty")) (synopsis "Pretty printer for Go values") @@ -5370,7 +5404,7 @@ format in Go.") '(#:import-path "github.com/kylelemons/godebug/diff" #:unpack-path "github.com/kylelemons/godebug")) (home-page "https://github.com/kylelemons/godebug") - (synopsis "Pretty printer for Go values.") + (synopsis "Pretty printer for Go values") (description "This package will pretty print a compact representation of a Go data structure. It can also produce a much more verbose, one-item-per-line @@ -5451,7 +5485,7 @@ golang's database/sql package.") (define-public go-golang-org-colorful (package (name "go-golang-org-colorful") - (version "1.0.2") + (version "1.2.0") (source (origin (method git-fetch) (uri (git-reference @@ -5460,12 +5494,12 @@ golang's database/sql package.") (file-name (git-file-name name version)) (sha256 (base32 - "0fig06880bvk1l92j4127v4x9sar4ds7ga8959gxxghb2w70b7l2")))) + "08c3fkf27r16izjjd4w94xd1z7w1r4mdalbl53ms2ka2j465s3qs")))) (build-system go-build-system) (arguments '(#:import-path "github.com/lucasb-eyer/go-colorful")) (native-inputs - `(("go-golang-org-sql-mock" ,go-golang-org-sql-mock))) + (list go-golang-org-sql-mock)) (synopsis "Convert between colorspaces and generate colors") (description "This package implements Go's @code{color.Color} interface and provides a means of converting colors stored as RGB to various @@ -5491,7 +5525,7 @@ colorspaces.") (arguments '(#:import-path "github.com/gdamore/encoding")) (inputs - `(("go-golang-org-x-text" ,go-golang-org-x-text))) + (list go-golang-org-x-text)) (home-page "https://github.com/gdamore/encoding") (synopsis "Provide encodings missing from Go") (description "This package provides useful encodings not included in the @@ -5518,22 +5552,10 @@ non-UTF-friendly sources.") "0il2nnxp2cqiy73m49215dnf9in3vd25ji8qxbmq87c5qy7i1q9d")))) (build-system go-build-system) (arguments - `(#:import-path "github.com/gdamore/tcell" - #:phases - (modify-phases %standard-phases - (add-before 'reset-gzip-timestamps 'make-files-writable - (lambda* (#:key outputs #:allow-other-keys) - ;; Make sure .gz files are writable so that the - ;; 'reset-gzip-timestamps' phase can do its work. - (let ((out (assoc-ref outputs "out"))) - (for-each make-file-writable - (find-files out "\\.gz$")) - #t)))))) + `(#:import-path "github.com/gdamore/tcell")) (inputs - `(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth) - ("go-golang-org-colorful" ,go-golang-org-colorful) - ("go-golang-org-x-text" ,go-golang-org-x-text) - ("go-github-com-gdamore-encoding" ,go-github-com-gdamore-encoding))) + (list go-github.com-mattn-go-runewidth go-golang-org-colorful + go-golang-org-x-text go-github-com-gdamore-encoding)) (home-page "https://github.com/gdamore/tcell") (synopsis "Provide a cell-based view for text terminals") (description "This package includes a full parser and expander for @@ -5569,9 +5591,8 @@ systems.") (for-each make-file-writable (find-files out "\\.gz$")))))))) (propagated-inputs - `(("go-golang-org-x-term" ,go-golang-org-x-term) - ("go-golang-org-x-sys" ,go-golang-org-x-sys) - ,@(package-inputs go-github-com-gdamore-tcell))))) + (modify-inputs (package-inputs go-github-com-gdamore-tcell) + (prepend go-golang-org-x-term go-golang-org-x-sys))))) (define-public go-github-com-mattn-go-shellwords (let ((commit "2444a32a19f450fabaa0bb3e96a703f15d9a97d2") @@ -5670,7 +5691,7 @@ mutex, simply ignore the RLock/RUnlock functions.") ;; The test suite requires networking. #:tests? #f)) (propagated-inputs - `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-golang-org-x-crypto)) (synopsis "TLS 1.3 with QUIC in Go") (description "This package provides @code{qtls}, a QUIC-capable variant of the Go standard library's TLS 1.3 implementation.") @@ -5716,7 +5737,7 @@ internal ChaCha20 package.") (arguments '(#:import-path "github.com/cheekybits/genny")) (propagated-inputs - `(("go-golang-org-x-tools" ,go-golang-org-x-tools))) + (list go-golang-org-x-tools)) (synopsis "Generics for Go") (description "This package provides @code{genny}, a Go language implementation of generics.") @@ -5742,11 +5763,10 @@ implementation of generics.") ;; XXX More packages required... #:tests? #f)) (propagated-inputs - `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-github-com-cheekybits-genny" ,go-github-com-cheekybits-genny) - ("go-github-com-marten-seemann-chacha20" ,go-github-com-marten-seemann-chacha20) - ("go-github-com-marten-seemann-qtls" ,go-github-com-marten-seemann-qtls) - ("go-github-com-golang-protobuf-proto" ,go-github-com-golang-protobuf-proto))) + (list go-golang-org-x-crypto go-github-com-cheekybits-genny + go-github-com-marten-seemann-chacha20 + go-github-com-marten-seemann-qtls + go-github-com-golang-protobuf-proto)) (synopsis "QUIC in Go") (description "This package provides a Go language implementation of the QUIC network protocol.") @@ -5770,7 +5790,7 @@ network protocol.") (arguments '(#:import-path "github.com/francoispqt/gojay")) (propagated-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (synopsis "JSON encoder/decoder with powerful stream API for Golang") (description "GoJay is a performant JSON encoder/decoder for Golang. It has a simple API and doesn't use reflection. It relies on small interfaces to @@ -5916,7 +5936,7 @@ fnmatch gist (https://gist.github.com/kballard/272720).") (arguments '(#:import-path "github.com/ddevault/go-libvterm")) (propagated-inputs - `(("go-github-com-mattn-go-pointer" ,go-github-com-mattn-go-pointer))) + (list go-github-com-mattn-go-pointer)) (home-page "https://github.com/ddevault/go-libvterm") (synopsis "Go binding to libvterm") (description @@ -5941,7 +5961,7 @@ fnmatch gist (https://gist.github.com/kballard/272720).") (arguments '(#:import-path "github.com/emersion/go-imap")) (native-inputs - `(("go-golang-org-x-text" ,go-golang-org-x-text))) + (list go-golang-org-x-text)) (home-page "https://github.com/emersion/go-imap") (synopsis "IMAP4rev1 library written in Go") (description "This package provides an IMAP4rev1 library written in Go. It @@ -5992,9 +6012,8 @@ can be used to build a client and/or a server.") (arguments '(#:import-path "github.com/emersion/go-imap-idle")) (native-inputs - `(("go-github-com-emersion-go-imap" ,go-github-com-emersion-go-imap) - ("go-github-com-emersion-go-sasl" ,go-github-com-emersion-go-sasl) - ("go-golang-org-x-text" ,go-golang-org-x-text))) + (list go-github-com-emersion-go-imap go-github-com-emersion-go-sasl + go-golang-org-x-text)) (home-page "https://github.com/emersion/go-imap-idle") (synopsis "IDLE extension for go-imap") (description "This package provides an IDLE extension for go-imap.") @@ -6012,10 +6031,17 @@ can be used to build a client and/or a server.") (file-name (git-file-name name version)) (sha256 (base32 - "1zc0zlilf03h121f9jqq3ar0hfm7706547zysxp2qxbm920pz7h0")))) + "1zc0zlilf03h121f9jqq3ar0hfm7706547zysxp2qxbm920pz7h0")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "vendor"))))) (build-system go-build-system) (arguments '(#:import-path "github.com/fatih/color")) + (propagated-inputs + (list go-github-com-mattn-go-colorable + go-github-com-mattn-go-isatty)) (synopsis "Print colored text in Go") (description "This package provides an ANSI color package to output colorized or SGR defined output to the standard output.") @@ -6040,7 +6066,7 @@ colorized or SGR defined output to the standard output.") '(#:import-path "github.com/google/go-cmp/cmp" #:unpack-path "github.com/google/go-cmp")) (propagated-inputs - `(("go-golang-org-x-xerrors" ,go-golang-org-x-xerrors))) + (list go-golang-org-x-xerrors)) (synopsis "Determine equality of values in Go") (description "This package provides a more powerful and safer alternative to @code{reflect.DeepEqual} for comparing whether two values @@ -6140,8 +6166,7 @@ into URL query parameters.") #:import-path "github.com/google/go-github/v26/github" #:unpack-path "github.com/google/go-github/v26")) (native-inputs - `(("go-github-com-google-go-querystring" ,go-github-com-google-go-querystring) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-github-com-google-go-querystring go-golang-org-x-crypto)) (home-page "https://github.com/google/go-github/") (synopsis "Client library for accessing the GitHub API v3") (description "@code{go-github} is a Go client library for accessing the @@ -6229,9 +6254,7 @@ common task.") (define-public go-gotest-tools-internal-format (package (inherit (go-gotest-tools-package "internal/format")) (native-inputs - `(("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-github-com-google-go-cmp-cmp" - ,go-github-com-google-go-cmp-cmp))) + (list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp)) (synopsis "Formats messages for use with gotest-tools") (description "This package provides a way to format messages for use with gotest-tools."))) @@ -6245,8 +6268,7 @@ with gotest-tools."))) (define-public go-gotest-tools-internal-source (package (inherit (go-gotest-tools-package "internal/source")) (native-inputs - `(("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-github-com-google-go-cmp-cmp" ,go-github-com-google-go-cmp-cmp))) + (list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp)) (synopsis "Source code AST formatters for gotest-tools") (description "This package provides source code AST formatters for gotest-tools."))) @@ -6261,9 +6283,7 @@ gotest-tools."))) ;(propagated-inputs ; `(("go-gotest-tools-internal-format" ,go-gotest-tools-internal-format))) (native-inputs - `(("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-github-com-google-go-cmp-cmp" - ,go-github-com-google-go-cmp-cmp))) + (list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp)) (synopsis "Compare values and fail a test when a comparison fails") (description "This package provides a way to compare values and fail a test when a comparison fails.") @@ -6287,29 +6307,22 @@ test when a comparison fails.") (arguments '(#:import-path "gotest.tools/gotestsum")) (native-inputs - `(("go-github-com-fatih-color" ,go-github-com-fatih-color) - ("go-golang.org-x-sync-errgroup" ,go-golang.org-x-sync-errgroup) - ("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-github-com-sirupsen-logrus" - ,go-github-com-sirupsen-logrus) - ("go-github-com-spf13-pflag" ,go-github-com-spf13-pflag) - ("go-github-com-jonboulle-clockwork" - ,go-github-com-jonboulle-clockwork) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-gotest-tools-assert" ,go-gotest-tools-assert) - ("go-github-com-google-go-cmp-cmp" - ,go-github-com-google-go-cmp-cmp) - ;; TODO: This would be better as a propagated-input of - ;; go-gotest-tools-assert, but that does not work for - ;; some reason. - ("go-gotest-tools-internal-format" - ,go-gotest-tools-internal-format) - ("go-gotest-tools-internal-difflib" - ,go-gotest-tools-internal-difflib) - ("go-gotest-tools-internal-source" - ,go-gotest-tools-internal-source) - ("go-github-com-google-go-cmp-cmp" - ,go-github-com-google-go-cmp-cmp))) + (list go-github-com-fatih-color + go-golang.org-x-sync-errgroup + go-github-com-pkg-errors + go-github-com-sirupsen-logrus + go-github-com-spf13-pflag + go-github-com-jonboulle-clockwork + go-golang-org-x-crypto + go-gotest-tools-assert + go-github-com-google-go-cmp-cmp + ;; TODO: This would be better as a propagated-input of + ;; go-gotest-tools-assert, but that does not work for + ;; some reason. + go-gotest-tools-internal-format + go-gotest-tools-internal-difflib + go-gotest-tools-internal-source + go-github-com-google-go-cmp-cmp)) (synopsis "Go test runner with output optimized for humans") (description "This package provides a @code{go test} runner with output optimized for humans, JUnit XML for CI integration, and a summary of the @@ -6361,7 +6374,7 @@ data serialization format.") (home-page "https://github.com/mattn/go-zglob") (synopsis "Glob library that descends into other directories") (description " A glob library that implements descending into other -directories. It is optimized for filewalking. ") +directories. It is optimized for filewalking.") (license license:expat))) (define-public go-github-com-mattn-go-sqlite3 @@ -6436,8 +6449,7 @@ efficient space usage.") (("spaolacci") "twmb")) #t))))) (propagated-inputs - `(("go-github-com-twmb-murmur3" ,go-github-com-twmb-murmur3) - ("go-github-com-willf-bitset" ,go-github-com-willf-bitset))) + (list go-github-com-twmb-murmur3 go-github-com-willf-bitset)) (synopsis "Bloom filters in Go") (description "This package provides a Go implementation of bloom filters, based on murmurhash.") @@ -6489,7 +6501,7 @@ characters with their ASCII approximations.") (arguments `(#:import-path "github.com/golang/freetype")) (propagated-inputs - `(("go-golang-org-x-image" ,go-golang-org-x-image))) + (list go-golang-org-x-image)) (home-page "https://github.com/golang/freetype") (synopsis "Freetype font rasterizer in the Go programming language") (description "The Freetype font rasterizer in the Go programming language.") @@ -6514,7 +6526,7 @@ characters with their ASCII approximations.") `(#:tests? #f ; Issue with test flags. #:import-path "github.com/fogleman/gg")) (propagated-inputs - `(("go-github-com-golang-freetype" ,go-github-com-golang-freetype))) + (list go-github-com-golang-freetype)) (home-page "https://github.com/fogleman/gg") (synopsis "2D rendering in Go") (description "@code{gg} is a library for rendering 2D graphics in pure Go.") @@ -6639,8 +6651,7 @@ used by other processes.") (arguments `(#:import-path "github.com/surgebase/porter2")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify) - ("go-github-com-surge-glog" ,go-github-com-surge-glog))) + (list go-github-com-stretchr-testify go-github-com-surge-glog)) (home-page "https://github.com/surgebase/porter2") (synopsis "Go library implementing english Porter2 stemmer") (description "Porter2 implements the @@ -6739,7 +6750,7 @@ which are widely used in other languages but absent in Go package strings.") (arguments `(#:import-path "github.com/imdario/mergo")) (native-inputs - `(("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2))) + (list go-gopkg-in-yaml-v2)) (home-page "https://github.com/imdario/mergo/") (synopsis "Helper to merge structs and maps in Golang") (description "Helper to merge structs and maps in Golang. Useful for @@ -6769,16 +6780,16 @@ maps (because they are not addressable using Go reflection).") `(#:tests? #f ;network tests only #:import-path "github.com/Masterminds/sprig")) (native-inputs - `(("go-github-com-masterminds-goutils" ,go-github-com-masterminds-goutils) - ("go-github-com-masterminds-semver" ,go-github-com-masterminds-semver) - ("go-github-com-google-uuid" ,go-github-com-google-uuid) - ("go-github-com-huandu-xstrings" ,go-github-com-huandu-xstrings) - ("go-github-com-imdario-mergo" ,go-github-com-imdario-mergo) - ("go-github-com-mitchellh-reflectwalk" ,go-github-com-mitchellh-reflectwalk) - ("go-github-com-mitchellh-copystructure" ,go-github-com-mitchellh-copystructure) - ("go-github-com-spf13-cast" ,go-github-com-spf13-cast) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-masterminds-goutils + go-github-com-masterminds-semver + go-github-com-google-uuid + go-github-com-huandu-xstrings + go-github-com-imdario-mergo + go-github-com-mitchellh-reflectwalk + go-github-com-mitchellh-copystructure + go-github-com-spf13-cast + go-golang-org-x-crypto + go-github-com-stretchr-testify)) (home-page "https://github.com/Masterminds/sprig/") (synopsis "Template functions for Go templates") (description "Sprig is a library that provides more than 100 commonly used @@ -6853,7 +6864,7 @@ matching and globbing with support for \"doublestar\" patterns.") (arguments `(#:import-path "github.com/alecthomas/colour")) (native-inputs - `(("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty))) + (list go-github-com-mattn-go-isatty)) (home-page "https://github.com/alecthomas/colour/") (synopsis "Colour terminal text for Go") (description "Package colour provides Quake-style colour formatting for @@ -6883,7 +6894,7 @@ stripped.") (arguments `(#:import-path "github.com/alecthomas/repr")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/alecthomas/repr/") (synopsis "Represent Go values in an almost direct form") (description "This package attempts to represent Go values in a form that @@ -6908,7 +6919,7 @@ can be used almost directly in Go source code.") `(#:import-path "github.com/sergi/go-diff/diffmatchpatch" #:unpack-path "github.com/sergi/go-diff")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (home-page "https://github.com/sergi/go-diff/") (synopsis "Algorithms to perform operations for synchronizing plain text") (description "@code{go-diff} offers algorithms to perform operations required for @@ -6939,10 +6950,8 @@ synchronizing plain text: (arguments `(#:import-path "github.com/alecthomas/assert")) (native-inputs - `(("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty) - ("go-github-com-alecthomas-colour" ,go-github-com-alecthomas-colour) - ("go-github-com-alecthomas-repr" ,go-github-com-alecthomas-repr) - ("go-github-com-sergi-go-diff" ,go-github-com-sergi-go-diff))) + (list go-github-com-mattn-go-isatty go-github-com-alecthomas-colour + go-github-com-alecthomas-repr go-github-com-sergi-go-diff)) (home-page "https://github.com/alecthomas/assert/") (synopsis "Go assertion library") (description "Assertion library that: @@ -6970,12 +6979,12 @@ synchronizing plain text: (arguments `(#:import-path "github.com/alecthomas/chroma")) (native-inputs - `(("go-github-com-dlclark-regexp2" ,go-github-com-dlclark-regexp2) - ("go-github-com-alecthomas-assert" ,go-github-com-alecthomas-assert) - ("go-github-com-alecthomas-colour" ,go-github-com-alecthomas-colour) - ("go-github-com-alecthomas-repr" ,go-github-com-alecthomas-repr) - ("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty) - ("go-github-com-sergi-go-diff" ,go-github-com-sergi-go-diff))) + (list go-github-com-dlclark-regexp2 + go-github-com-alecthomas-assert + go-github-com-alecthomas-colour + go-github-com-alecthomas-repr + go-github-com-mattn-go-isatty + go-github-com-sergi-go-diff)) (home-page "https://github.com/alecthomas/chroma/") (synopsis "General purpose syntax highlighter in pure Go") (description "Chroma takes source code and other structured text and @@ -6999,7 +7008,7 @@ converts it into syntax highlighted HTML, ANSI-coloured text, etc.") (arguments `(#:import-path "github.com/andybalholm/cascadia")) (native-inputs - `(("go-golang-org-x-net" ,go-golang-org-x-net))) + (list go-golang-org-x-net)) (home-page "https://github.com/andybalholm/cascadia/") (synopsis "CSS selectors for HTML") (description "The Cascadia package implements CSS selectors for use with @@ -7023,8 +7032,7 @@ the parse trees produced by the html package.") (arguments `(#:import-path "github.com/PuerkitoBio/goquery")) (propagated-inputs - `(("go-github-com-andybalholm-cascadia" ,go-github-com-andybalholm-cascadia) - ("go-golang-org-x-net" ,go-golang-org-x-net))) + (list go-github-com-andybalholm-cascadia go-golang-org-x-net)) (home-page "https://github.com/PuerkitoBio/goquery") (synopsis "Features similar to jQuery to the Go language") (description "@code{goquery} brings a syntax and a set of features similar @@ -7049,9 +7057,8 @@ to jQuery to the Go language.") (arguments '(#:import-path "github.com/jmespath/go-jmespath")) (native-inputs - `(("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew) - ("go-github-com-pmezard-go-difflib" ,go-github-com-pmezard-go-difflib) - ("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2))) + (list go-github-com-davecgh-go-spew go-github-com-pmezard-go-difflib + go-gopkg-in-yaml-v2)) (home-page "https://github.com/jmespath/go-jmespath") (synopsis "Golang implementation of JMESPath") (description @@ -7076,10 +7083,9 @@ transforms one JSON document into another through a JMESPath expression.") (arguments `(#:import-path "github.com/aymerick/douceur")) (native-inputs - `(("go-github-com-puerkitobio-goquery" ,go-github-com-puerkitobio-goquery) - ("go-github-com-andybalholm-cascadia" ,go-github-com-andybalholm-cascadia) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-github-com-gorilla-css" ,go-github-com-gorilla-css))) + (list go-github-com-puerkitobio-goquery + go-github-com-andybalholm-cascadia go-golang-org-x-net + go-github-com-gorilla-css)) (home-page "https://github.com/aymerick/douceur/") (synopsis "CSS parser and inliner") (description "This package provides a CSS parser and inliner.") @@ -7101,12 +7107,13 @@ transforms one JSON document into another through a JMESPath expression.") (build-system go-build-system) (arguments `(#:import-path "github.com/chris-ramon/douceur")) + (propagated-inputs + (list go-github-com-aymerick-douceur + go-github-com-gorilla-css)) (native-inputs - `(("go-github-com-aymerick-douceur" ,go-github-com-aymerick-douceur) - ("go-github-com-puerkitobio-goquery" ,go-github-com-puerkitobio-goquery) - ("go-github-com-andybalholm-cascadia" ,go-github-com-andybalholm-cascadia) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-github-com-gorilla-css" ,go-github-com-gorilla-css))) + (list go-github-com-puerkitobio-goquery + go-github-com-andybalholm-cascadia + go-golang-org-x-net)) (home-page "https://github.com/chris-ramon/douceur/") (synopsis "CSS parser and inliner") (description "This package provides a CSS parser and inliner.") @@ -7128,11 +7135,9 @@ transforms one JSON document into another through a JMESPath expression.") (build-system go-build-system) (arguments `(#:import-path "github.com/microcosm-cc/bluemonday")) - (native-inputs - `(("go-github-com-chris-ramon-douceur" ,go-github-com-chris-ramon-douceur) - ("go-github-com-aymerick-douceur" ,go-github-com-aymerick-douceur) - ("go-github-com-gorilla-css" ,go-github-com-gorilla-css) - ("go-golang-org-x-net" ,go-golang-org-x-net))) + (propagated-inputs + (list go-github-com-chris-ramon-douceur + go-golang-org-x-net)) (home-page "https://github.com/microcosm-cc/bluemonday/") (synopsis "HTML sanitizer") (description "@code{bluemonday} is a HTML sanitizer implemented in Go.") @@ -7141,7 +7146,7 @@ transforms one JSON document into another through a JMESPath expression.") (define-public go-github-com-muesli-reflow-wordwrap (package (name "go-github-com-muesli-reflow-wordwrap") - (version "0.1.0") + (version "0.3.0") (source (origin (method git-fetch) (uri (git-reference @@ -7150,13 +7155,13 @@ transforms one JSON document into another through a JMESPath expression.") (file-name (git-file-name "go-github-com-muesli-reflow" version)) (sha256 (base32 - "1vhynm2n1az13fn03lp0gi28p9mznq1mblglh8f2rb9y1vkd2dqr")))) + "09zcz2cqdwgj1ilya5pqwndryk6lansn87x63fcm8j1xn74vd2ry")))) (build-system go-build-system) (arguments `(#:import-path "github.com/muesli/reflow/wordwrap" #:unpack-path "github.com/muesli/reflow")) (native-inputs - `(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth))) + (list go-github.com-mattn-go-runewidth)) (home-page "https://github.com/muesli/reflow/") (synopsis "Collection of methods helping to transform blocks of text") (description "This package provides a collection of ANSI-aware methods and @@ -7187,10 +7192,18 @@ io.Writers helping you to transform blocks of text.") `(#:import-path "github.com/muesli/reflow/padding" #:unpack-path "github.com/muesli/reflow")))) +(define-public go-github-com-muesli-reflow-truncate + (package + (inherit go-github-com-muesli-reflow-wordwrap) + (name "go-github-com-muesli-reflow-truncate") + (arguments + `(#:import-path "github.com/muesli/reflow/truncate" + #:unpack-path "github.com/muesli/reflow")))) + (define-public go-github-com-muesli-termenv (package (name "go-github-com-muesli-termenv") - (version "0.7.0") + (version "0.8.1") (source (origin (method git-fetch) (uri (git-reference @@ -7199,15 +7212,13 @@ io.Writers helping you to transform blocks of text.") (file-name (git-file-name name version)) (sha256 (base32 - "09fwrdhy7c9qlf70h97f5inh6xvkfq1vi8fwx9q7bwmjjbiykk8m")))) + "0m24ljq1nq7z933fcvg99fw0fhxj9rb5ll4rlay7z2f2p59mrbdp")))) (build-system go-build-system) (arguments `(#:import-path "github.com/muesli/termenv")) (native-inputs - `(("go-github-com-google-goterm" ,go-github-com-google-goterm) - ("go-golang-org-colorful" ,go-golang-org-colorful) - ("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty) - ("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth))) + (list go-github-com-google-goterm go-golang-org-colorful + go-github-com-mattn-go-isatty go-github.com-mattn-go-runewidth)) (home-page "https://github.com/muesli/termenv/") (synopsis "Advanced styling options on the terminal") (description "termenv lets you safely use advanced styling options on the @@ -7236,7 +7247,7 @@ escape sequences and color conversions.") (arguments `(#:import-path "github.com/nwidger/jsoncolor")) (native-inputs - `(("go-github-com-fatih-color" ,go-github-com-fatih-color))) + (list go-github-com-fatih-color)) (synopsis "Colorized JSON marshalling and encoding") (description "@code{jsoncolor} is a drop-in replacement for @code{encoding/json}'s @@ -7260,8 +7271,8 @@ which produce colorized output using github.com/fatih/color.") (build-system go-build-system) (arguments `(#:import-path "github.com/olekukonko/tablewriter")) - (native-inputs - `(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth))) + (propagated-inputs + (list go-github.com-mattn-go-runewidth)) (home-page "https://github.com/olekukonko/tablewriter/") (synopsis "Generate ASCII table") (description "This package generates ASCII tables. Features: @@ -7322,25 +7333,25 @@ which produce colorized output using github.com/fatih/color.") (arguments `(#:import-path "github.com/charmbracelet/glamour")) (native-inputs - `(("go-github-com-alecthomas-chroma" ,go-github-com-alecthomas-chroma) - ("go-github-com-danwakefield-fnmatch" ,go-github-com-danwakefield-fnmatch) - ("go-github-com-dlclark-regexp2" ,go-github-com-dlclark-regexp2) - ("go-github-com-microcosm-cc-bluemonday" ,go-github-com-microcosm-cc-bluemonday) - ("go-github-com-chris-ramon-douceur" ,go-github-com-chris-ramon-douceur) - ("go-github-com-aymerick-douceur" ,go-github-com-aymerick-douceur) - ("go-github-com-gorilla-css" ,go-github-com-gorilla-css) - ("go-github-com-muesli-reflow-ansi" ,go-github-com-muesli-reflow-ansi) - ("go-github-com-muesli-reflow-wordwrap" ,go-github-com-muesli-reflow-wordwrap) - ("go-github-com-muesli-reflow-indent" ,go-github-com-muesli-reflow-indent) - ("go-github-com-muesli-reflow-padding" ,go-github-com-muesli-reflow-padding) - ("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth) - ("go-github-com-muesli-termenv" ,go-github-com-muesli-termenv) - ("go-github-com-google-goterm" ,go-github-com-google-goterm) - ("go-golang-org-colorful" ,go-golang-org-colorful) - ("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty) - ("go-github-com-olekukonko-tablewriter" ,go-github-com-olekukonko-tablewriter) - ("go-github-com-yuin-goldmark" ,go-github-com-yuin-goldmark) - ("go-golang-org-x-net" ,go-golang-org-x-net))) + (list go-github-com-alecthomas-chroma + go-github-com-danwakefield-fnmatch + go-github-com-dlclark-regexp2 + go-github-com-microcosm-cc-bluemonday + go-github-com-chris-ramon-douceur + go-github-com-aymerick-douceur + go-github-com-gorilla-css + go-github-com-muesli-reflow-ansi + go-github-com-muesli-reflow-wordwrap + go-github-com-muesli-reflow-indent + go-github-com-muesli-reflow-padding + go-github.com-mattn-go-runewidth + go-github-com-muesli-termenv + go-github-com-google-goterm + go-golang-org-colorful + go-github-com-mattn-go-isatty + go-github-com-olekukonko-tablewriter + go-github-com-yuin-goldmark + go-golang-org-x-net)) (home-page "https://github.com/charmbracelet/glamour/") (synopsis "Write handsome command-line tools with glamour") (description "@code{glamour} lets you render markdown documents and @@ -7435,8 +7446,7 @@ errors (warnings).") (arguments `(#:import-path "github.com/go-git/gcfg")) (native-inputs - `(("go-gopkg-in-warnings" ,go-gopkg-in-warnings) - ("go-github-com-pkg-errors" ,go-github-com-pkg-errors))) + (list go-gopkg-in-warnings go-github-com-pkg-errors)) (build-system go-build-system) (home-page "https://github.com/go-git/gcfg/") (synopsis "Gcfg reads INI-style configuration files into Go structs") @@ -7460,7 +7470,7 @@ errors (warnings).") (arguments `(#:import-path "github.com/go-git/go-billy/v5")) (native-inputs - `(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1))) + (list go-gopkg-in-check-v1)) (home-page "https://github.com/go-git/go-billy/") (synopsis "File system abstraction for Go") (description "Billy implements an interface based on the OS's standard @@ -7538,13 +7548,13 @@ can manipulate a @file{ssh_config} file from a program.") (arguments `(#:import-path "github.com/xanzy/ssh-agent")) (native-inputs - `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-golang-org-x-crypto)) (home-page "https://github.com/xanzy/ssh-agent/") (synopsis "Control ssh-agent from Go") (description "Package agent implements the ssh-agent protocol, and provides both a client and a server. The client can talk to a standard ssh-agent that uses UNIX sockets, and one could implement an alternative -ssh-agent process using the sample server. ") +ssh-agent process using the sample server.") (license license:asl2.0))) (define-public go-github-com-alcortesm-tgz @@ -7575,11 +7585,8 @@ ssh-agent process using the sample server. ") `(#:import-path "github.com/alcortesm/tgz" #:phases (modify-phases %standard-phases - (add-after 'unpack 'make-git-checkout-writable - (lambda* (#:key outputs #:allow-other-keys) - (for-each make-file-writable (find-files ".")) - (for-each make-file-writable (find-files (assoc-ref outputs "out"))) - #t))))) + ;; Files are test fixtures, not generated. + (delete 'reset-gzip-timestamps)))) (home-page "https://github.com/alcortesm/tgz/") (synopsis "Go library to extract tgz files to temporal directories") (description "This package provides a Go library to extract tgz files to @@ -7606,10 +7613,8 @@ temporal directories.") (modify-phases %standard-phases (delete 'reset-gzip-timestamps)))) (native-inputs - `(("go-github-com-alcortesm-tgz" ,go-github-com-alcortesm-tgz) - ("go-github-com-go-git-go-billy" ,go-github-com-go-git-go-billy) - ("go-golang-org-x-sys" ,go-golang-org-x-sys) - ("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1))) + (list go-github-com-alcortesm-tgz go-github-com-go-git-go-billy + go-golang-org-x-sys go-gopkg-in-check-v1)) (home-page "https://github.com/go-git/go-git-fixtures/") (synopsis "Fixtures used by @code{go-git}") (description "This package provides fixtures used by @code{go-git}.") @@ -7634,7 +7639,7 @@ temporal directories.") (arguments `(#:import-path "github.com/pkg/diff")) (native-inputs - `(("go-github-com-sergi-go-diff" ,go-github-com-sergi-go-diff))) + (list go-github-com-sergi-go-diff)) (home-page "https://github.com/pkg/diff/") (synopsis "Create and print diffs") (description @@ -7680,7 +7685,7 @@ temporal directories.") (arguments `(#:import-path "github.com/twpayne/go-vfs")) (native-inputs - `(("go-github-com-bmatcuk-doublestar" ,go-github-com-bmatcuk-doublestar))) + (list go-github-com-bmatcuk-doublestar)) (home-page "https://github.com/twpayne/go-vfs/") (synopsis "Abstraction of the @code{os} and @code{ioutil} Go packages") (description "Package @code{vfs} provides an abstraction of the @code{os} @@ -7704,8 +7709,7 @@ and @code{ioutil} packages that is easy to test.") (arguments `(#:import-path "github.com/twpayne/go-vfsafero")) (native-inputs - `(("go-github-com-twpayne-go-vfs" ,go-github-com-twpayne-go-vfs) - ("go-github-com-spf13-afero" ,go-github-com-spf13-afero))) + (list go-github-com-twpayne-go-vfs go-github-com-spf13-afero)) (home-page "https://github.com/twpayne/go-vfsafero/") (synopsis "Compatibility later between @code{go-vfs} and @code{afero}") (description @@ -7730,8 +7734,7 @@ and @code{ioutil} packages that is easy to test.") (arguments `(#:import-path "github.com/twpayne/go-xdg/v3")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify) - ("go-github-com-twpayne-go-vfs" ,go-github-com-twpayne-go-vfs))) + (list go-github-com-stretchr-testify go-github-com-twpayne-go-vfs)) (home-page "https://github.com/twpayne/go-xdg/") (synopsis "Functions related to freedesktop.org") (description "Package @code{xdg} provides functions related to @@ -7756,7 +7759,7 @@ and @code{ioutil} packages that is easy to test.") `(#:tests? #f ;no /var/run/dbus/system_bus_socket #:import-path "github.com/godbus/dbus")) (native-inputs - `(("dbus" ,dbus))) ;dbus-launch + (list dbus)) ;dbus-launch (home-page "https://github.com/godbus/dbus/") (synopsis "Native Go client bindings for the D-Bus") (description "@code{dbus} is a library that implements native Go client @@ -7781,8 +7784,7 @@ bindings for the D-Bus message bus system.") `(#:tests? #f ;XXX: Fix dbus tests #:import-path "github.com/zalando/go-keyring")) (native-inputs - `(("go-github-com-godbus-dbus" ,go-github-com-godbus-dbus) - ("dbus" ,dbus))) + (list go-github-com-godbus-dbus dbus)) (home-page "https://github.com/zalando/go-keyring/") (synopsis "Library for working with system keyring") (description "@code{go-keyring} is a library for setting, getting and @@ -7806,7 +7808,7 @@ deleting secrets from the system keyring.") (arguments `(#:import-path "go.etcd.io/bbolt")) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-golang-org-x-sys)) (home-page "https://pkg.go.dev/go.etcd.io/bbolt/") (synopsis "Low-level key/value store in Go") (description "This package implements a low-level key/value store in Go.") @@ -7909,36 +7911,42 @@ error messages.") 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") - (version "3.0.4") + (name "go-github-com-cheggaaa-pb-v3") + (version "3.0.8") (source - (origin + (origin (method git-fetch) (uri (git-reference (url "https://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/")) + '(#: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-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))) + (list go-golang-org-x-sys + go-github-com-rivo-uniseg + go-github-com-mattn-go-runewidth + go-github-com-mattn-go-isatty + go-github-com-mattn-go-colorable + go-github-com-fatih-color + 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 the terminal.") (license license:bsd-3))) +(define-public go-github-com-cheggaaa-pb + (deprecated-package "go-github-com-cheggaaa-pb" go-github-com-cheggaaa-pb-v3)) + (define-public go-github-com-gologme-log ;; this is the same as v1.2.0, only the LICENSE file changed (let ((commit "720ba0b3ccf0a91bc6018c9967a2479f93f56a55")) @@ -7985,8 +7993,7 @@ additions.") (arguments '(#:import-path "github.com/frankban/quicktest")) (propagated-inputs - `(("go-github-com-google-go-cmp-cmp" ,go-github-com-google-go-cmp-cmp) - ("go-github-com-kr-pretty" ,go-github-com-kr-pretty))) + (list go-github-com-google-go-cmp-cmp go-github-com-kr-pretty)) (home-page "https://github.com/frankban/quicktest") (synopsis "Quick helpers for testing Go applications") (description @@ -8042,7 +8049,7 @@ tests.") (invoke "go" "test" import-path "-tags" "dev")) #t))))) (propagated-inputs - `(("libsass" ,libsass))) + (list libsass)) (native-inputs `(("go-github-com-frankban-quicktest" ,go-github-com-frankban-quicktest) ("libsass-src" ,(package-source libsass)))) @@ -8110,7 +8117,7 @@ JSON data to the machine.") ;; source: golang.zx2c4.com/wireguard (uri (git-reference (url "https://git.zx2c4.com/wireguard-go/") - (commit (string-append "v" version)))) + (commit version))) (file-name (git-file-name name version)) (sha256 (base32 @@ -8119,10 +8126,8 @@ JSON data to the machine.") (arguments '(#:import-path "golang.zx2c4.com/wireguard")) (propagated-inputs - `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto) - ("go-golang-org-x-net" ,go-golang-org-x-net) - ("go-golang-org-x-sys" ,go-golang-org-x-sys) - ("go-golang-org-x-text" ,go-golang-org-x-text))) + (list go-golang-org-x-crypto go-golang-org-x-net go-golang-org-x-sys + go-golang-org-x-text)) (home-page "https://git.zx2c4.com/wireguard") (synopsis "Implementation of WireGuard in Go") (description "This package is a Go Implementation of WireGuard.") @@ -8172,11 +8177,9 @@ modifying them.") (arguments `(#:import-path "github.com/goccy/go-yaml")) (propagated-inputs - `(("go-github-com-fatih-color" ,go-github-com-fatih-color) - ("go-golang-org-x-xerrors" ,go-golang-org-x-xerrors))) + (list go-github-com-fatih-color go-golang-org-x-xerrors)) (native-inputs - `(("go-gopkg-in-go-playground-validator-v9" - ,go-gopkg-in-go-playground-validator-v9))) + (list go-gopkg-in-go-playground-validator-v9)) (synopsis "YAML support for the Go language") (description "This package provides features beyond the @@ -8259,7 +8262,7 @@ compressed streams in Go.") ;; and require network access. #:tests? #f)) (propagated-inputs - `(("go-github-com-goccy-yaml" ,go-github-com-goccy-yaml))) + (list go-github-com-goccy-yaml)) (synopsis "Go library to get configuration values from gitconfig") (description "@{gitconfig} is a package to get configuration values from gitconfig.") (license license:expat))) @@ -8312,7 +8315,7 @@ algorithm.") (base32 "16p77p3d1v26qd3knxn087jqlad2qm23q8m796cdr66hrdc0gahq")))) (build-system go-build-system) (inputs - `(("pulseaudio" ,pulseaudio))) + (list pulseaudio)) (arguments `(#:import-path "github.com/akosmarton/papipes" #:phases @@ -8350,8 +8353,7 @@ sinks and sources.") (base32 "1awwczsa9yy99p035ckajqfs8m6mab0lz82mzlj1c5cj9lnmwplj")))) (build-system go-build-system) (propagated-inputs - `(("pkg-config" ,pkg-config) - ("pulseaudio" ,pulseaudio))) + (list pkg-config pulseaudio)) (arguments '(#:import-path "github.com/mesilliac/pulse-simple")) (home-page "https://github.com/mesilliac/pulse-simple") @@ -8401,8 +8403,7 @@ programs that use traditional command lines.") (arguments '(#:import-path "go.uber.org/atomic")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify) - ("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew))) + (list go-github-com-stretchr-testify go-github-com-davecgh-go-spew)) (home-page "https://go.uber.org/atomic") (synopsis "Wrapper types for sync/atomic") (description @@ -8427,9 +8428,9 @@ atomic access.") (arguments '(#:import-path "go.uber.org/multierr")) (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (list go-github-com-stretchr-testify)) (propagated-inputs - `(("go-go-uber-org-atomic" ,go-go-uber-org-atomic))) + (list go-go-uber-org-atomic)) (home-page "https://go.uber.org/multierr") (synopsis "Error combination for Go") (description @@ -8456,7 +8457,7 @@ atomic access.") '(#:import-path "golang.org/x/lint" #:tests? #f)) ;; TODO: Fix tests (propagated-inputs - `(("go-golang-org-x-tools" ,go-golang-org-x-tools))) + (list go-golang-org-x-tools)) (home-page "https://golang.org/x/lint") (synopsis "Linter for Go source code") (description @@ -8510,9 +8511,8 @@ tools with similar semantics.") (modify-phases %standard-phases (delete 'build)))) (propagated-inputs - `(("go-golang-org-x-tools" ,go-golang-org-x-tools) - ("go-github-com-kisielk-gotool",go-github-com-kisielk-gotool) - ("go-github-com-burntsushi-toml" ,go-github-com-burntsushi-toml))) + (list go-golang-org-x-tools go-github-com-kisielk-gotool + go-github-com-burntsushi-toml)) (home-page "https://honnef.co/go/tools") (synopsis "Staticcheck advanced Go linter") (description @@ -8539,14 +8539,11 @@ simplifications, and enforces style rules.") '(#:import-path "go.uber.org/zap" #:tests? #f)) ; TODO: Fix tests (native-inputs - `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify) - ("go-golang-org-x-lint" ,go-golang-org-x-lint) - ("go-honnef-co-go-tools" ,go-honnef-co-go-tools))) + (list go-github-com-stretchr-testify go-golang-org-x-lint + go-honnef-co-go-tools)) (propagated-inputs - `(("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-go-uber-org-atomic" ,go-go-uber-org-atomic) - ("go-go-uber-org-multierr" ,go-go-uber-org-multierr) - ("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2))) + (list go-github-com-pkg-errors go-go-uber-org-atomic + go-go-uber-org-multierr go-gopkg-in-yaml-v2)) (home-page "https://go.uber.org/zap") (synopsis "Logging library for Go") (description @@ -8621,7 +8618,7 @@ back.") (arguments '(#:import-path "lukechampine.com/blake3")) (propagated-inputs - `(("go-github-com-klauspost-cpuid" ,go-github-com-klauspost-cpuid))) + (list go-github-com-klauspost-cpuid)) (home-page "https://pkg.go.dev/lukechampine.com/blake3") (synopsis "Implementation of the BLAKE3 cryptographic hash function") (description "@code{blake3} implements the BLAKE3 cryptographic hash @@ -8647,7 +8644,7 @@ performance for large inputs and outputs.") (build-system go-build-system) (arguments '(#:import-path "golang.org/x/term")) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (list go-golang-org-x-sys)) (home-page "https://pkg.go.dev/golang.org/x/term") (synopsis "Go terminal/console support") (description "@code{term} provides support functions for dealing with @@ -8672,8 +8669,7 @@ terminals, as commonly found on Unix systems.") (arguments '(#:import-path "github.com/flynn/noise")) (propagated-inputs - `(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1) - ("go-golang-org-x-crypto" ,go-golang-org-x-crypto))) + (list go-gopkg-in-check-v1 go-golang-org-x-crypto)) (home-page "https://github.com/flynn/noise") (synopsis "Go implementation of the Noise protocol framework") (description "@code{noise} implements the Noise protocol framework. Noise @@ -8708,7 +8704,7 @@ zero round-trip encryption, and other advanced features.") (for-each make-file-writable (find-files (assoc-ref outputs "out") ".gz$"))))))) (propagated-inputs - `(("go-github-com-golang-snappy" ,go-github-com-golang-snappy))) + (list go-github-com-golang-snappy)) (home-page "https://github.com/klauspost/compress") (synopsis "Go compression library") (description "@code{compress} provides various compression algorithms.") @@ -8738,46 +8734,610 @@ zero round-trip encryption, and other advanced features.") non-cryptographic hash algorithm, working at speeds close to RAM limits.") (license license:asl2.0))) -(define-public go-github-com-aswinkarthik-csvdiff +(define-public go-gopkg-in-djherbis-times-v1 (package - (name "go-github-com-aswinkarthik-csvdiff") - (version "1.4.0") + (name "go-gopkg-in-djherbis-times-v1") + (version "1.5.0") + (home-page "https://gopkg.in/djherbis/times.v1") (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/aswinkarthik/csvdiff") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0cd1ikxsypjqisfnmr7zix3g7x8p892w77086465chyd39gpk97b")))) + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1xvl3rgjif5yf62p16yk05kxrsmzhz1kkqisvw4k02svzq10qbfy")))) + (build-system go-build-system) + (arguments + '(#:import-path "gopkg.in/djherbis/times.v1")) + (synopsis "Go library for getting file times") + (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 "Exponentially Weighted Moving Average algorithms for Go") + (description + "This package implements algorithms for 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 + "This package implements Unicode Text Segmentation according to +@url{https://unicode.org/reports/tr29/, Unicode Standard Annex #29}.") + (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 + (list go-github-com-rivo-uniseg)) + (home-page "https://github.com/mattn/go-runewidth") + (synopsis "Rune width implementation for Go") + (description + "This package provides functions to get the fixed width of a character or +string.") + (license license:expat))) + + +(define-public go-github-com-charmbracelet-bubbletea + (package + (name "go-github-com-charmbracelet-bubbletea") + (version "0.13.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/charmbracelet/bubbletea") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1105cggi5fwqx69m0vrhgwx6kaw82w4ahn58sj0a81603c4yvrk0")))) (build-system go-build-system) (arguments - '(#:import-path "github.com/aswinkarthik/csvdiff")) + `(#:import-path "github.com/charmbracelet/bubbletea")) (propagated-inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys) - ("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify) - ("go-github-com-spf13-cobra" ,go-github-com-spf13-cobra) - ("go-github-com-spf13-afero" ,go-github-com-spf13-afero) - ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) - ("go-github-com-mattn-go-colorable" ,go-github-com-mattn-go-colorable) - ("go-github-com-fatih-color" ,go-github-com-fatih-color) - ("go-github-com-cespare-xxhash" ,go-github-com-cespare-xxhash) - ("go-github-com-oneofone-xxhash" ,go-github-com-oneofone-xxhash))) - (home-page "https://github.com/aswinkarthik/csvdiff") - (synopsis "Fast diff tool for comparing CSV files") - (description "@code{csvdiff} is a diff tool to compute changes between two -CSV files. It can compare CSV files with a million records in under 2 -seconds. It is specifically suited for comparing CSV files dumped from -database tables. GNU Diff is orders of magnitude faster for comparing line by -line. @code{csvdiff} supports + `(("github.com/mattn/go-isatty" ,go-github-com-mattn-go-isatty) + ("github.com/muesli/termenv" ,go-github-com-muesli-termenv) + ("github.com/mattn/go-runewidth" ,go-github.com-mattn-go-runewidth) + ("go-github-com-muesli-reflow-indent" ,go-github-com-muesli-reflow-indent) + ("go-github-com-muesli-reflow-ansi" ,go-github-com-muesli-reflow-ansi) + ("go-golang-org-colorful" ,go-golang-org-colorful) + ("github.com/containerd/console" ,go-github-com-containerd-console) + ("go-github-com-muesli-reflow-truncate" ,go-github-com-muesli-reflow-truncate) + ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) + ("go-golang-org-x-sys" ,go-golang-org-x-sys) + ("go-golang-org-x-term" ,go-golang-org-x-term) + ("github.com/mattn/go-isatty" ,go-github-com-mattn-go-isatty))) + (home-page "https://github.com/charmbracelet/bubbletea") + (synopsis "Powerful little TUI framework") + (description + "Bubble Tea is a Go framework based on The Elm Architecture. It is +well-suited for simple and complex terminal applications, either inline, +full-window, or a mix of both.") + (license license:asl2.0))) +(define-public go-github-com-containerd-console + (package + (name "go-github-com-containerd-console") + (version "1.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/containerd/console") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0pgx0y8x23jwc2f9jfk5hd5aslqk599nj6c7dj5846xvnkz2x7p2")))) + (build-system go-build-system) + (arguments + `(#:import-path "github.com/containerd/console")) + (propagated-inputs + `(("golang.org/x/sys" ,go-golang-org-x-sys))) + (home-page "https://github.com/containerd/console") + (synopsis "Console package for Go") + (description + "This is Golang package for dealing with consoles. It has few +dependencies and a simple API.") + (license license:asl2.0))) + +(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 + (list go-golang-org-x-crypto 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))) + +(define-public go-github-com-mtibben-percent + (package + (name "go-github-com-mtibben-percent") + (version "0.2.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mtibben/percent") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1iqivw8pigj259rj5yifibbvic70f9hb7k24a4sa967s4fj6agb6")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/mtibben/percent" + #:phases %standard-phases)) + (synopsis "Package percent escapes strings using percent-encoding") + (description + "Package percent escapes strings using percent-encoding.") + (home-page "https://github.com/mtibben/percent") + (license license:expat))) + +(define-public go-github-com-percent + (deprecated-package "go-github-com-percent" go-github-com-mtibben-percent)) + +(define-public go-github-com-dvsekhvalnov-jose2go + (package + (name "go-github-com-dvsekhvalnov-jose2go") + (version "1.5.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dvsekhvalnov/jose2go") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pzfmv2dxb3m455bi1ks4q3i0dcw1sazxk8k96wrgpkwgglyxj3n")))) + (build-system go-build-system) + (native-inputs + (list go-gopkg-in-check-v1)) + (arguments + '(#:import-path "github.com/dvsekhvalnov/jose2go" + #:phases %standard-phases)) + (synopsis "Go implementation of Javascript Object Signing and Encryption spec") + (description + "This package provides a Go library for generating, decoding, and +encrypting JSON Web Tokens (JWT). It relies only on the standard library.") + (home-page "https://github.com/dvsekhvalnov/jose2go") + (license license:expat))) + +(define-public aws-vault + (package + (name "aws-vault") + (version "6.3.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/99designs/aws-vault") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02zw0kl77yr56mw1fbvr51c4mz2265c9al2nzvnqqzdx5aha7nf8")))) + (build-system go-build-system) + (native-inputs + (list go-github-com-99designs-go-keyring + go-github-com-mtibben-androiddnsfix + go-github-com-mtibben-percent + go-github-com-jmespath-go-jmespath + go-github-com-aws-aws-sdk-go + go-github-com-dvsekhvalnov-jose2go + go-github-com-godbus-dbus + go-github-com-gsterjov-go-libsecret + go-github-com-mitchellh-go-homedir + go-golang-org-x-crypto + go-golang-org-x-sys + go-gopkg-in-ini + go-github-com-skratchdot-open-golang + go-github-com-alecthomas-kingpin + go-github-com-alecthomas-template + go-github-com-alecthomas-units)) + (arguments + `(#:import-path "github.com/99designs/aws-vault" + #:install-source? #f + #:phases + (modify-phases %standard-phases + (add-before 'build 'patch-version + (lambda _ + (substitute* "src/github.com/99designs/aws-vault/main.go" + (("var Version = \"dev\"") + (string-append "var Version = \"v" ,version "\""))))) + (add-after 'build 'contrib + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (zsh-site-dir (string-append out "/share/zsh/site-functions")) + (bash-completion-dir + (string-append out "/share/bash-completion/completions")) + (fish-completion-dir + (string-append out "/share/fish/completions"))) + (for-each mkdir-p + `(,zsh-site-dir ,bash-completion-dir ,fish-completion-dir)) + (with-directory-excursion + "src/github.com/99designs/aws-vault/contrib/completions" + (copy-file "zsh/aws-vault.zsh" + (string-append zsh-site-dir "/_aws-vault")) + (copy-file "bash/aws-vault.bash" + (string-append bash-completion-dir "/aws-vault")) + (copy-file "fish/aws-vault.fish" + (string-append fish-completion-dir "/aws-vault.fish"))))))))) + (synopsis + "Vault for securely storing and accessing AWS credentials") + (description + "AWS Vault is a tool to securely store and access @acronym{Amazon Web +Services,AWS} credentials. + +AWS Vault stores IAM credentials in your operating system's secure keystore and +then generates temporary credentials from those to expose to your shell and +applications. It's designed to be complementary to the AWS CLI tools, and is +aware of your profiles and configuration in ~/.aws/config.") + (home-page "https://github.com/99designs/aws-vault") + (license license:expat))) + +(define-public go-github-com-gsterjov-go-libsecret + (let ((commit "a6f4afe4910cad8688db3e0e9b9ac92ad22d54e1") + (revision "0")) + (package + (name "go-github-com-gsterjov-go-libsecret") + (version "5.0.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gsterjov/go-libsecret") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09zaiadnll83vs22ib89agg7anj0blw5fywvmckxllsgif6ak6v7")))) + (build-system go-build-system) + (native-inputs + (list go-github-com-godbus-dbus)) + (arguments + '(#:import-path "github.com/gsterjov/go-libsecret" + #:phases %standard-phases)) + (synopsis "Manage secrets via the \"Secret Service\" DBus API") + (description + "This native Go library manages secrets via the freedesktop.org +\"Secret Service\" DBus interface.") + (home-page "https://github.com/gsterjov/go-libsecret") + (license license:expat)))) + +(define-public go-github-com-go-libsecret + (deprecated-package "go-github-com-go-libsecret" go-github-com-gsterjov-go-libsecret)) + +(define-public go-github-com-99designs-go-keyring + (package + (name "go-github-com-99designs-go-keyring") + (version "1.1.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/99designs/keyring") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08rcdqpxaa9n348q10fw40q4gxpjajkyrighykk71i7mxzwkcgwn")))) + (build-system go-build-system) + (native-inputs + (list go-golang-org-x-crypto + go-golang-org-x-sys + go-github-com-mtibben-percent + go-github-com-mitchellh-go-homedir + go-github-com-dvsekhvalnov-jose2go + go-github-com-godbus-dbus + go-github-com-gsterjov-go-libsecret + password-store + gnupg)) + (arguments + '(#:import-path "github.com/99designs/keyring" + #:tests? #f)) ;XXX: tests require Vagrant + (synopsis "Go library providing a uniform interface for various secure +credential stores") + (description + "Keyring provides utility functions for and a common interface to a range +of secure credential storage services. Originally developed as part of AWS +Vault, a command line tool for securely managing AWS access from developer +workstations. + +Currently Keyring supports the following backends: macOS/OSX Keychain, Windows +pcredential store, Pass, Secret Service, KDE Wallet, Encrypted File.") + (home-page "https://github.com/99designs/keyring") + (license license:expat))) + +(define-public go-github-com-mtibben-androiddnsfix + (let ((commit "ff02804463540c36e3a148dcf4b009d003cf2a31") + (revision "0")) + (package + (name "go-github-com-mtibben-androiddnsfix") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mtibben/androiddnsfix") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pcbjs793kd0yg3dcp79agfxm7xm3sldx2r7v66ipzpcq0j2npi2")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/mtibben/androiddnsfix" + #:phases %standard-phases)) + (synopsis "Work around lack of @file{/etc/resolv.conf} on Android") + (description + "This package allows Go applications to work around lack of +@file{/etc/resolv.conf} on Android, as described in +@url{https://github.com/golang/go/issues/8877}.") + (home-page "https://github.com/mtibben/androiddnsfix") + (license license:expat)))) + +(define-public go-github-com-androiddnsfix + (deprecated-package "go-github-com-androiddnsfix" go-github-com-mtibben-androiddnsfix)) + +(define-public go-github-com-aws-aws-sdk-go + (package + (name "go-github-com-aws-aws-sdk-go") + (version "1.36.18") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/aws/aws-sdk-go") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "169mkkw1cff1px6326krwvfpfj07sb4y5rbn003gi4bk176h6ry9")))) + (build-system go-build-system) + (propagated-inputs + (list go-github-com-jmespath-go-jmespath)) + (arguments + '(#:import-path "github.com/aws/aws-sdk-go" + #:phases %standard-phases)) + (synopsis "The official AWS SDK for the Go programming language") + (description + "The official AWS SDK for the Go programming language.") + (home-page "https://github.com/aws/aws-sdk-go") + (license license:asl2.0))) + +(define-public go-gopkg-in-ini + (package + (name "go-gopkg-in-ini") + (version "1.62.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gopkg.in/ini.v1") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dm9ydqyflasp5li22kb0w73s6kp2swii8naqfhnz64v171gmm5v")))) + (build-system go-build-system) + (native-inputs + (list go-github.com-smartystreets-goconvey)) + (arguments + '(#:import-path "gopkg.in/ini.v1" + #:phases %standard-phases)) + (synopsis "INI file read and write functionality in Go") + (description + "This package provides INI file read and write functionality in Go.") + (home-page "https://gopkg.in/ini.v1") + (license license:asl2.0))) + +(define-public go-github-com-skratchdot-open-golang + (let ((commit "79abb63cd66e41cb1473e26d11ebdcd68b04c8e5") + (revision "0")) + (package + (name "go-github-com-skratchdot-open-golang") + (version "1.42.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/skratchdot/open-golang") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0jc13jn8cj7p14n79zhav2nwga6kf9rqs01ic5k7j7agwzzly3ww")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/skratchdot/open-golang" + #:phases (modify-phases %standard-phases + (delete 'build) + (delete 'check)))) + (synopsis "Open a file, directory, or URI using the default application") + (description + "Open a file, directory, or URI using the OS's default application for +that object type. Optionally, you can specify an application to use. On +GNU/Linux, this is a proxy for the @command{xdg-open} command.") + (home-page "https://github.com/skratchdot/open-golang") + (license license:expat)))) + +(define-public go-github-com-alecthomas-kingpin + (package + (name "go-github-com-alecthomas-kingpin") + (version "2.2.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alecthomas/kingpin") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r")))) + (build-system go-build-system) + (native-inputs + (list go-github-com-alecthomas-template go-github-com-alecthomas-units + go-github-com-stretchr-testify)) + (arguments + '(#:import-path "github.com/alecthomas/kingpin" + #:phases %standard-phases)) + (synopsis "Go library provides utilities for building command line interfaces") + (description + "Go library provides utilities for building command line interfaces.") + (home-page "https://github.com/alecthomas/kingpin") + (license license:expat))) + +(define-public go-github-com-kingpin + (deprecated-package "go-github-com-kingpin" go-github-com-alecthomas-kingpin)) + +(define-public go-github-com-alecthomas-template + (let ((commit "a0175ee3bccc567396460bf5acd36800cb10c49c") + (revision "0")) + (package + (name "go-github-com-alecthomas-template") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alecthomas/template") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/alecthomas/template" + #:phases %standard-phases)) + (synopsis "Fork of Go's text/template adding newline elision") + (description + "This is a fork of Go 1.4's text/template package with one addition: a +backslash immediately after a closing delimiter will delete all subsequent +newlines until a non-newline.") + (home-page "https://github.com/alecthomas/template") + (license license:bsd-3)))) + +(define-public go-github-com-alecthomas-units + (let ((commit "2efee857e7cfd4f3d0138cc3cbb1b4966962b93a") + (revision "0")) + (package + (name "go-github-com-alecthomas-units") + (version "0.0.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alecthomas/units") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl")))) + (build-system go-build-system) + (native-inputs + (list go-github-com-stretchr-testify)) + (arguments + '(#:import-path "github.com/alecthomas/units" + #:phases %standard-phases)) + (synopsis "Helpful unit multipliers and functions for Go") + (description + "This library provides unit multipliers and functions for Go.") + (home-page "https://github.com/alecthomas/units") + (license license:expat)))) + +(define-public go-github-com-dreamacro-go-shadowsocks2 + (package + (name "go-github-com-dreamacro-go-shadowsocks2") + (version "0.1.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Dreamacro/go-shadowsocks2") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0sjr3r77fav6q0ii6dnp4px9gaz7cq861a0yxppvb6a58420bx3h")))) + (build-system go-build-system) + (arguments '(#:import-path "github.com/Dreamacro/go-shadowsocks2")) + (propagated-inputs (list go-golang-org-x-crypto)) + (home-page "https://github.com/Dreamacro/go-shadowsocks2") + (synopsis "Shadowsocks implementation in Go") + (description + "This package is @code{shadowsocks} implementation in Go + +Features: @itemize -@item Selective comparison of fields in a row -@item Specifying group of columns as primary-key to uniquely identify a row -@item Ignoring columns -@item Several output formats including colored git style output or -JSON for post-processing +@item SOCKS5 proxy +@item Support for Netfilter TCP redirect (IPv6 should work but not tested) +@item UDP tunneling (e.g. relay DNS packets) +@item TCP tunneling (e.g. benchmark with iperf3) @end itemize") - (license license:expat))) + (license license:asl2.0))) |