aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2024-08-08 13:05:56 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-08-08 13:05:56 +0100
commitd7d779a3eff9d7875d491e4180da665f6d2a1b86 (patch)
tree5dacbdb41a26fd52e1d8e3d92425f8917ff8a3cc /gnu
parent7bf1d7aeaffba15c4f680f93ae88fbef25427252 (diff)
parent9a4cd495a428ddf90eeafcaea883af80350574d5 (diff)
downloadguix-d7d779a3eff9d7875d491e4180da665f6d2a1b86.tar.gz
guix-d7d779a3eff9d7875d491e4180da665f6d2a1b86.zip
Merge remote-tracking branch 'origin/go-team'
Change-Id: Ib66e48c4cb84e9e97ebcec334ab0b9f3dbfb1457
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/backup.scm1
-rw-r--r--gnu/packages/check.scm2
-rw-r--r--gnu/packages/code.scm4
-rw-r--r--gnu/packages/databases.scm2
-rw-r--r--gnu/packages/docker.scm31
-rw-r--r--gnu/packages/golang-build.scm191
-rw-r--r--gnu/packages/golang-check.scm131
-rw-r--r--gnu/packages/golang-crypto.scm190
-rw-r--r--gnu/packages/golang-web.scm595
-rw-r--r--gnu/packages/golang-xyz.scm625
-rw-r--r--gnu/packages/golang.scm915
-rw-r--r--gnu/packages/ipfs.scm6
-rw-r--r--gnu/packages/irc.scm1
-rw-r--r--gnu/packages/linux.scm54
-rw-r--r--gnu/packages/mail.scm151
-rw-r--r--gnu/packages/networking.scm117
-rw-r--r--gnu/packages/prometheus.scm374
-rw-r--r--gnu/packages/uucp.scm2
-rw-r--r--gnu/packages/web.scm3
20 files changed, 2138 insertions, 1258 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 815231b0d7..4d7b17e4b4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -542,6 +542,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/printers.scm \
%D%/packages/profiling.scm \
%D%/packages/prolog.scm \
+ %D%/packages/prometheus.scm \
%D%/packages/pth.scm \
%D%/packages/pulseaudio.scm \
%D%/packages/pumpio.scm \
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index c5bee744dd..1d484b3f51 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -88,6 +88,7 @@
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages prometheus)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 21a975f340..d76e6f8c95 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1167,7 +1167,7 @@ but it works for any C/C++ project.")
go-golang-org-x-sync
go-golang-org-x-sync
go-gopkg-in-yaml-v3))
- (native-inputs (list go-github-com-google-go-cmp-cmp))
+ (native-inputs (list go-github-com-google-go-cmp))
(home-page "https://rhysd.github.io/actionlint/")
(synopsis "Static checker for GitHub Actions workflow files")
(description
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 80070b3065..cfd62e2402 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -390,7 +390,7 @@ cloc can handle a greater variety of programming languages.")
(define-public scc
(package
(name "scc")
- (version "3.1.0")
+ (version "3.3.5")
(source
(origin
(method git-fetch)
@@ -399,7 +399,7 @@ cloc can handle a greater variety of programming languages.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1rkkfg6jimlc2rkajk6ypd5v0m3zai25ga5idz2pmkmzakv82n21"))))
+ (base32 "0fvp9ab65vwn3dn0wm8l63rrp5fz1gpymcxs8yr0h4s5zmrsg9zf"))))
(build-system go-build-system)
(arguments
(list
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 96a59e8024..2532586bc5 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -5506,7 +5506,7 @@ compatible with SQLite using a graphical user interface.")
#:install-source? #f
#:import-path "github.com/lighttiger2505/sqls"))
(native-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-go-sql-driver-mysql
go-github-com-k0kubun-pp
go-github-com-lib-pq
diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm
index c033486c6a..c6d56a06b1 100644
--- a/gnu/packages/docker.scm
+++ b/gnu/packages/docker.scm
@@ -300,24 +300,23 @@ the required network abstractions for applications.")
(inherit docker-libnetwork)
(name "docker-libnetwork-cmd-proxy")
(arguments
- ;; The tests are unsupported on all architectures except x86_64-linux.
- `(#:tests? ,(and (not (%current-target-system))
- (target-x86-64?))
- #:import-path "github.com/docker/libnetwork/cmd/proxy"
- #:unpack-path "github.com/docker/libnetwork"
- #:install-source? #f))
+ (list
+ ;; The tests are unsupported on all architectures except x86_64-linux.
+ #:tests? (and (not (%current-target-system)) (target-x86-64?))
+ #:install-source? #f
+ #:import-path "github.com/docker/libnetwork/cmd/proxy"
+ #:unpack-path "github.com/docker/libnetwork"))
(native-inputs
- `(("go-sctp" ,go-sctp)
- ;; For tests.
- ("logrus" ,go-github-com-sirupsen-logrus)
- ("go-netlink" ,go-netlink)
- ("go-netns" ,go-netns)
- ("go-golang-org-x-crypto"
- ,go-golang-org-x-crypto)
- ("go-golang-org-x-sys" ,go-golang-org-x-sys)))
+ (list go-github-com-sirupsen-logrus ; for tests.
+ go-github-com-vishvananda-netlink
+ go-github-com-vishvananda-netns
+ go-golang-org-x-crypto
+ go-golang-org-x-sys
+ go-sctp))
(synopsis "Docker user-space proxy")
- (description "A proxy running in the user space. It is used by the
-built-in registry server of Docker.")
+ (description
+ "This package provides a proxy running in the user space. It is used by
+the built-in registry server of Docker.")
(license license:asl2.0)))
;; TODO: Patch out modprobes for ip_vs, nf_conntrack,
diff --git a/gnu/packages/golang-build.scm b/gnu/packages/golang-build.scm
index d2ee54f021..bc3625c399 100644
--- a/gnu/packages/golang-build.scm
+++ b/gnu/packages/golang-build.scm
@@ -1,21 +1,23 @@
;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018, 2019, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
-;;; Copyright © 2019, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
-;;; Copyright © 2020, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 HiPhish <hiphish@posteo.de>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2020 Vagrant Cascadian <vagrant@debian.org>
+;;; Copyright © 2020, 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 hackeryarn <artemchernyak@gmail.com>
+;;; Copyright © 2022 (unmatched-parenthesis <paren@disroot.org>
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023 Felix Lechner <felix.lechner@lease-up.com>
;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
+;;; Copyright © 2024 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
;;;
;;; This file is part of GNU Guix.
@@ -56,6 +58,82 @@
;;;
;;; Code:
+(define-public go-github-com-golang-protobuf
+ (package
+ (name "go-github-com-golang-protobuf")
+ (version "1.5.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/golang/protobuf")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "03f1w2cd4s8a3xhl61x7yjx81kbzlrjpvnnwmbhqnz814yi7h43i"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/golang/protobuf"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Workaround for go-build-system's lack of Go modules
+ ;; support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (propagated-inputs
+ (list go-google-golang-org-protobuf))
+ (home-page "https://github.com/golang/protobuf")
+ (synopsis "Go support for Protocol Buffers")
+ (description
+ "This package provides Go support for the Protocol Buffers data
+serialization format.")
+ (license license:bsd-3)))
+
+(define-public go-github-com-google-go-cmp
+ (package
+ (name "go-github-com-google-go-cmp")
+ (version "0.6.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/google/go-cmp")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1n1j4hi50bl05pyys4i7y417k9g6k1blslj27z327qny7kkdl2ma"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/google/go-cmp/cmp"
+ #:unpack-path "github.com/google/go-cmp"
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? import-path inputs #:allow-other-keys)
+ (when tests?
+ ;; The tests fail when run with gccgo.
+ (let ((gccgo? (false-if-exception
+ (search-input-file inputs "/bin/gccgo"))))
+ (if gccgo?
+ (format #t "skipping tests with gccgo compiler~%")
+ ;; XXX: Workaround for go-build-system's lack of Go
+ ;; modules support.
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))))
+ (synopsis "Determine equality of values in Go")
+ (home-page "https://github.com/google/go-cmp")
+ (description
+ "This package is intended to be a more powerful and safer
+alternative to @code{reflect.DeepEqual} for comparing whether two values are
+semantically equal.")
+ (license license:bsd-3)))
+
(define-public go-github-com-yuin-goldmark
(package
(name "go-github-com-yuin-goldmark")
@@ -222,28 +300,52 @@ language.")
(base32 "0ccjgv19w5p9sbcq12czmfnkjwv3b7hfljifwax6r9wk4dx0fcn7"))
(modules '((guix build utils)))
(snippet
- '(begin
- ;; Submodules with their own go.mod files and packed as separated
- ;; packages:
- ;;
- ;; - golang.org/x/exp/event
- ;; - golang.org/x/exp/jsonrpc2
- ;; - golang.org/x/exp/shiny
- ;; - golang.org/x/exp/sumbdb
- ;; - golang.org/x/exp/typeparams
- (for-each delete-file-recursively
- (list "event" "jsonrpc2" "shiny" "sumdb" "typeparams"))))))
+ #~(begin
+ ;; Submodules with their own go.mod files and packed as separated
+ ;; packages:
+ ;;
+ ;; - golang.org/x/exp/event
+ ;; - golang.org/x/exp/jsonrpc2
+ ;; - golang.org/x/exp/shiny
+ ;; - golang.org/x/exp/sumbdb
+ ;; - golang.org/x/exp/typeparams
+ (for-each delete-file-recursively
+ (list "event" "jsonrpc2" "shiny" "sumdb" "typeparams"))))))
(build-system go-build-system)
(arguments
- '(#:import-path "golang.org/x/exp"
- ;; Source-only package
- #:tests? #f
- #:phases (modify-phases %standard-phases
- (delete 'build))))
+ (list
+ #:import-path "golang.org/x/exp"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-failing-tests
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ ;; Benchmark requires other modules to pass tests, delete them.
+ (delete-file-recursively "slog/benchmarks")
+ (substitute* (find-files "." "\\_test.go$")
+ ;; Disable failing tests: error running `go mod init`: go:
+ ;; modules disabled by GO111MODULE=off; see 'go help modules'
+ ;; , exit status 1
+ (("TestFailure") "OffTestFailure")
+ (("TestRelease_gitRepo_uncommittedChanges")
+ "OffTestRelease_gitRepo_uncommittedChanges")))))
+ ;; XXX: Workaround for go-build-system's lack of Go modules
+ ;; support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (propagated-inputs
+ (list go-github-com-google-go-cmp
+ go-golang-org-x-mod
+ go-golang-org-x-tools))
(home-page "https://golang.org/x/exp")
(synopsis "Experimental and deprecated Go packages")
- (description "This subrepository holds experimental and deprecated (in the
-@code{old} directory) packages.")
+ (description
+ "This subrepository holds experimental and deprecated (in the @code{old}
+directory) packages.")
(license license:bsd-3)))
(define-public go-golang-org-x-exp-typeparams
@@ -701,6 +803,55 @@ Go programming language.")
1.13 error values.")
(license license:bsd-3))))
+(define-public go-google-golang-org-protobuf
+ (package
+ (name "go-google-golang-org-protobuf")
+ (version "1.31.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://go.googlesource.com/protobuf")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1xf18kzz96hgfy1vlbnydrizzpxkqj2iamfdbj3dx5a1zz5mi8n0"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "google.golang.org/protobuf"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? unpack-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" unpack-path)
+ (substitute* (find-files "." "\\_test.go$")
+ ;; XXX Failing on i686-linux:
+ ;; panic: unaligned 64-bit atomic operation
+ (("TestDynamicTypesExtensionNotFound")
+ "OffTestDynamicTypesExtensionNotFound")
+ (("TestDynamicTypesFilesChangeAfterCreation")
+ "OffTestDynamicTypesFilesChangeAfterCreation")
+ (("TestDynamicTypesFindExtensionByNameOrNumber")
+ "OffTestDynamicTypesFindExtensionByNameOrNumber")))))
+ ;; XXX: Workaround for go-build-system's lack of Go modules
+ ;; support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (propagated-inputs (list go-github-com-google-go-cmp))
+ (home-page "https://google.golang.org/protobuf")
+ (synopsis "Go library for Protocol Buffers")
+ (description
+ "The protobuf package provides a Go implementation of Protocol Buffers, a
+language and platform neutral, extensible mechanism for serializing structured
+data. It is a successor to @code{go-github-com-golang-protobuf} with an
+improved and cleaner API.")
+ (license license:bsd-3)))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm
index 0822338943..287a514ace 100644
--- a/gnu/packages/golang-check.scm
+++ b/gnu/packages/golang-check.scm
@@ -286,7 +286,7 @@ workloads. This kind of profiling is also known as wall-clock profiling.")
(define-public go-github-com-frankban-quicktest
(package
(name "go-github-com-frankban-quicktest")
- (version "1.11.1")
+ (version "1.14.6")
(source
(origin
(method git-fetch)
@@ -295,13 +295,13 @@ workloads. This kind of profiling is also known as wall-clock profiling.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "0b1b44b2hli2p969gqz30z8v9z6ahlklpqzi17nwk1lsjz9yv938"))))
+ (base32 "0gnh9v4cg39pw8y356299zhh5jmq2p4cf9945lfiqsjsk7h6ld70"))))
(build-system go-build-system)
(arguments
- '(#:import-path "github.com/frankban/quicktest"))
+ (list
+ #:import-path "github.com/frankban/quicktest"))
(propagated-inputs
- (list go-github-com-google-go-cmp-cmp go-github-com-kr-pretty))
+ (list go-github-com-google-go-cmp go-github-com-kr-pretty))
(home-page "https://github.com/frankban/quicktest")
(synopsis "Quick helpers for testing Go applications")
(description
@@ -312,7 +312,7 @@ tests.")
(define-public go-github-com-go-test-deep
(package
(name "go-github-com-go-test-deep")
- (version "1.0.8")
+ (version "1.1.1")
(source
(origin
(method git-fetch)
@@ -321,7 +321,7 @@ tests.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1mmw2w3by7y24jjpjwmf2gfl08c65jihn3si9m0sswmagmdsk8q0"))))
+ (base32 "1vjzmd4gc3zr9hlpzhhq4g1d0k6rbhply10vdl49gvir4dzmzzrl"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/go-test/deep"))
@@ -376,7 +376,7 @@ when comparing complex types like structures and maps.")
(arguments
'(#:import-path "github.com/google/go-cmdtest"))
(propagated-inputs
- (list go-github-com-google-renameio go-github-com-google-go-cmp-cmp))
+ (list go-github-com-google-renameio go-github-com-google-go-cmp))
(home-page "https://github.com/google/go-cmdtest")
(synopsis "Testing for your CLI")
(description
@@ -682,7 +682,7 @@ Gomega matcher library.")
(package
(inherit go-github-com-onsi-ginkgo)
(name "go-github-com-onsi-ginkgo-v2")
- (version "2.18.0")
+ (version "2.19.0")
(source
(origin
(method git-fetch)
@@ -691,7 +691,7 @@ Gomega matcher library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1w5dldjjcz2kpyxml4zd9yah7galfpmhcpc2l4zc5pr3skpwpibv"))))
+ (base32 "0dwnkcysb5d9dyg8p84hhx5a3sj85g3bwgki1pgay4i8glz7xa7q"))))
(arguments
(list
#:import-path "github.com/onsi/ginkgo/v2"))
@@ -878,7 +878,7 @@ current goroutine's ID.")
(define-public go-github-com-stretchr-testify
(package
(name "go-github-com-stretchr-testify")
- (version "1.7.0")
+ (version "1.9.0")
(source
(origin
(method git-fetch)
@@ -888,7 +888,7 @@ current goroutine's ID.")
(file-name (git-file-name name version))
(sha256
(base32
- "0ixgjsvafr3513pz3r6pmgk074s2dxkll0dadvl25gkf30rkmh10"))))
+ "12cnhk96h8b3ddlb7jfvwwavzc0j1c2iva92pszl9rv6r571ckzg"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/stretchr/testify"))
@@ -923,25 +923,10 @@ Features include:
(propagated-inputs
(list go-gopkg-in-yaml-v3)))))
-(define-public go-github-com-stretchr-testify-next
- (package
- (inherit go-github-com-stretchr-testify)
- (name "go-github-com-stretchr-testify")
- (version "1.9.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/stretchr/testify")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "12cnhk96h8b3ddlb7jfvwwavzc0j1c2iva92pszl9rv6r571ckzg"))))))
-
(define-public go-github-com-tdewolff-test
(package
(name "go-github-com-tdewolff-test")
- (version "1.0.9")
+ (version "1.0.10")
(source
(origin
(method git-fetch)
@@ -950,11 +935,11 @@ Features include:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "10myz3zdkqmx37cvj507h7l2ncb0rq9shqvz9ggq1swijbsvazff"))))
+ (base32 "1ihlcnygwdgxq068b29d3n9n1gdbb2j03sc0al1qk5i5dkvgziyx"))))
(build-system go-build-system)
(arguments
- (list #:import-path "github.com/tdewolff/test"))
+ (list
+ #:import-path "github.com/tdewolff/test"))
(home-page "https://github.com/tdewolff/test")
(synopsis "Go test helper functions")
(description
@@ -1011,7 +996,7 @@ functions for writing tests in Go.")
(arguments
'(#:import-path "github.com/smartystreets/goconvey"))
(propagated-inputs
- (list go-github.com-jtolds-gls go-github.com-smartystreets-assertions))
+ (list go-github-com-jtolds-gls go-github.com-smartystreets-assertions))
(home-page "https://github.com/smartystreets/goconvey")
(synopsis "Go testing tool with both a web and terminal user interface")
(description "GoConvey is a testing tool for Go. It integrates with go
@@ -1051,7 +1036,7 @@ under test) much simpler.")
(define-public go-go-etcd-io-gofail
(package
(name "go-go-etcd-io-gofail")
- (version "0.1.0")
+ (version "0.2.0")
(source
(origin
(method git-fetch)
@@ -1060,7 +1045,7 @@ under test) much simpler.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0jh0qjgfb2irshwj7an3lj0w9bv6c5gbnkdhisgpdr7x7hk682m1"))))
+ (base32 "0wxjaq1v5w0wjyv84af5cazrmv369i1416ar0dx8r9ag1szcfvpc"))))
(build-system go-build-system)
(arguments
(list
@@ -1080,32 +1065,34 @@ under test) much simpler.")
(license license:asl2.0)))
(define-public go-golang-org-sql-mock
- (let ((commit "e98392b8111b45f8126e00af035a0dd95dc12e8b")
- (version "1.3.3")
- (revision "1"))
- (package
- (name "go-golang-org-sql-mock")
- (version (git-version version revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/DATA-DOG/go-sqlmock")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "033vv29g2wf6fd757ajfmha30bqin3b07377037zkl051mk6mghs"))
- (modules '((guix build utils)))
- (snippet '(delete-file-recursively "examples"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/DATA-DOG/go-sqlmock"))
- (synopsis "Mock library implementing @code{sql/driver}")
- (description "This library simulates SQL-driver behavior in tests
-without requiring a real database connection.")
- (home-page "https://github.com/DATA-DOG/go-sqlmock")
- (license license:expat))))
+ (package
+ (name "go-golang-org-sql-mock")
+ (version "1.5.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/DATA-DOG/go-sqlmock")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1vpvdx9hwmx9gm27aq5r5219xpaxz0gy4q1iqskk4saz05bspn0f"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/DATA-DOG/go-sqlmock"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-examples
+ (lambda* (#:key import-path #:allow-other-keys)
+ (delete-file-recursively
+ (string-append "src/" import-path "/examples")))))))
+ (home-page "https://github.com/DATA-DOG/go-sqlmock")
+ (synopsis "Mock library implementing @code{sql/driver}")
+ (description
+ "This library simulates SQL-driver behavior in tests without requiring a
+real database connection.")
+ (license license:expat)))
(define-public go-golang-org-x-lint
(let ((commit "83fdc39ff7b56453e3793356bcff3070b9b96445")
@@ -1264,7 +1251,7 @@ gracefully enhance standard library testing package and behaviors of the
(define-public go-go-uber-org-goleak
(package
(name "go-go-uber-org-goleak")
- (version "1.2.0")
+ (version "1.3.0")
(source
(origin
(method git-fetch)
@@ -1273,14 +1260,13 @@ gracefully enhance standard library testing package and behaviors of the
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "1lpqw7ygffak8qki9i4vw8b99l25l8jrw8iwcplqsclk6fzkl24p"))))
+ (base32 "14rvkxh3znp9jzbdjqdkrly3zfg3rmhgg5845biqqrq17w8jvv5s"))))
(build-system go-build-system)
(arguments
(list
#:import-path "go.uber.org/goleak"))
(native-inputs
- (list go-github-com-stretchr-testify-next))
+ (list go-github-com-stretchr-testify))
(home-page "https://pkg.go.dev/go.uber.org/goleak")
(synopsis "Goroutine leak detector")
(description
@@ -1375,16 +1361,23 @@ advanced Go linter.")
(build-system go-build-system)
(arguments
(list
- #:go go-1.18
- #:import-path "pgregory.net/rapid"))
+ #:import-path "pgregory.net/rapid"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-failing-tests
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ ;; Remove test file failing on go-1.21, see
+ ;; <https://github.com/flyingmutant/rapid/issues/68>.
+ (delete-file "strings_example_test.go")))))))
(home-page "https://pgregory.net/rapid/")
(synopsis "Go property-based testing library")
(description
"@code{Rapid} is a Go library for property-based testing.
-Rapid checks that properties you define hold for a large number of automatically
-generated test cases. If a failure is found, rapid automatically minimizes the
-failing test case before presenting it.
+Rapid checks that properties you define hold for a large number of
+automatically generated test cases. If a failure is found, rapid
+automatically minimizes the failing test case before presenting it.
Features:
@itemize
diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm
index 3fbeac703b..43b1356d3f 100644
--- a/gnu/packages/golang-crypto.scm
+++ b/gnu/packages/golang-crypto.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2021 BonfaceKilz <me@bonfacemunyoki.com>
;;; Copyright © 2021 Collin J. Doering <collin@rekahsoft.ca>
;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
@@ -21,6 +22,7 @@
;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024 Jesse Eisses <jesse@eisses.email>
;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
+;;; Copyright © 2024 Jean Simard <woshilapin@tuziwo.info>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,12 +47,14 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-compression)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
+ #:use-module (gnu packages password-utils)
#:use-module (gnu packages specifications))
;;; Commentary:
@@ -199,9 +203,9 @@ Go, exposing the necessary APIs to build a wide array of higher-level
primitives.")
(license license:bsd-3)))
-(define-public go-github-com-99designs-go-keyring
+(define-public go-github-com-99designs-keyring
(package
- (name "go-github-com-99designs-go-keyring")
+ (name "go-github-com-99designs-keyring")
(version "1.2.2")
(source
(origin
@@ -213,6 +217,30 @@ primitives.")
(sha256
(base32 "0mkvy7scyq07rkqhabfmkd8imcm4h9y7zj9palj04znpihpixa5m"))))
(build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/99designs/keyring"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? unpack-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" unpack-path)
+ (substitute* (find-files "." "\\_test.go$")
+ ;; Disable test requring running DBus.
+ (("TestLibSecretKeysWhenEmpty")
+ "OffTestLibSecretKeysWhenEmpty")
+ (("TestLibSecretKeysWhenNotEmpty")
+ "OffTestLibSecretKeysWhenNotEmpty")
+ (("TestLibSecretGetWhenEmpty")
+ "OffTestLibSecretGetWhenEmpty")
+ (("TestLibSecretGetWhenNotEmpty")
+ "OffTestLibSecretGetWhenNotEmpty")
+ (("TestLibSecretRemoveWhenEmpty")
+ "OffTestLibSecretRemoveWhenEmpty")
+ (("TestLibSecretRemoveWhenNotEmpty")
+ "OffTestLibSecretRemoveWhenNotEmpty"))))))))
+ (native-inputs
+ (list gnupg go-github-com-stretchr-testify password-store))
(propagated-inputs
(list go-github-com-dvsekhvalnov-jose2go
go-github-com-godbus-dbus
@@ -221,9 +249,7 @@ primitives.")
go-github-com-mtibben-percent
go-golang-org-x-sys
go-golang-org-x-term))
- (arguments
- '(#:import-path "github.com/99designs/keyring"
- #:tests? #f)) ;XXX: tests require Vagrant
+ (home-page "https://github.com/99designs/keyring")
(synopsis "Go library providing a uniform interface for various secure
credential stores")
(description
@@ -234,7 +260,6 @@ 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-aead-chacha20
@@ -357,6 +382,34 @@ the Ristretto prime-order group built from Edwards25519.")
(define-public go-github-com-cespare-xxhash
(package
(name "go-github-com-cespare-xxhash")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/cespare/xxhash")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1qyzlcdcayavfazvi03izx83fvip8h36kis44zr2sg7xf6sx6l4x"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/cespare/xxhash"))
+ (propagated-inputs
+ (list go-github-com-spaolacci-murmur3
+ go-github-com-oneofone-xxhash))
+ (home-page "https://github.com/cespare/xxhash")
+ (synopsis "Go implementation of xxHash")
+ (description
+ "Package xxhash implements the 64-bit variant of @code{xxHash} (XXH64) as
+described at @url{https://xxhash.com/}.")
+ (license license:expat)))
+
+(define-public go-github-com-cespare-xxhash-v2
+ (package
+ (inherit go-github-com-cespare-xxhash)
+ (name "go-github-com-cespare-xxhash-v2")
(version "2.1.2")
(source
(origin
@@ -369,10 +422,9 @@ the Ristretto prime-order group built from Edwards25519.")
(base32 "1f3wyr9msnnz94szrkmnfps9wm40s5sp9i4ak0kl92zcrkmpy29a"))
(modules '((guix build utils)))
(snippet '(delete-file-recursively "xxhashbench"))))
- (build-system go-build-system)
(arguments
(list
- #:import-path "github.com/cespare/xxhash"
+ #:import-path "github.com/cespare/xxhash/v2"
#:phases
#~(modify-phases %standard-phases
(replace 'check
@@ -381,11 +433,7 @@ the Ristretto prime-order group built from Edwards25519.")
;; The tests fail when run with gccgo.
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args)))))))
- (home-page "https://github.com/cespare/xxhash/")
- (synopsis "Go implementation of xxHash")
- (description "This package provides of Go implementation of the 64-bit
-xxHash algorithm (XXH64).")
- (license license:expat)))
+ (propagated-inputs '())))
(define-public go-github-com-chmduquesne-rollinghash
(let ((commit "9a5199be7309f50c496efc87d29bd08788605ae7")
@@ -477,10 +525,36 @@ and encrypting JSON Web Tokens (JWT). It relies only on the standard
library.")
(license license:expat)))
+(define-public go-github-com-emersion-go-bcrypt
+ (package
+ (name "go-github-com-emersion-go-bcrypt")
+ (version "0.0.0-20170822072041-6e724a1baa63")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-bcrypt")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1pchrgs05w30iqbh4d6iys4wvlyajsdwchp5mkf59amgsbyjaqgm"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-bcrypt"))
+ (propagated-inputs
+ (list go-golang-org-x-crypto))
+ (home-page "https://github.com/emersion/go-bcrypt")
+ (synopsis "Extract of bcrypt from golang.org/x/crypto/bcrypt")
+ (description
+ "This package provides an extract @code{bcrypt} from
+@code{golang.org/x/crypto/bcrypt}.")
+ (license license:bsd-3)))
+
(define-public go-github-com-emersion-go-pgpmail
(package
(name "go-github-com-emersion-go-pgpmail")
- (version "0.2.0")
+ (version "0.2.1")
(source
(origin
(method git-fetch)
@@ -489,17 +563,14 @@ library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0ar26b0apw5bxn58qfn1a79cxigbmrqm1irh1rb7x57fydihc7wm"))))
+ (base32 "1fiqpdwxnfba2cgij7j83dfqc0zz4mq95x15wicgm5f3vjr1xg5h"))))
(build-system go-build-system)
(arguments
- (list ;; tests don't support our version of protonmail/go-crypto; see
- ;; <https://github.com/emersion/go-pgpmail/issues/12>
- #:tests? #f
+ (list
#:import-path "github.com/emersion/go-pgpmail"))
(propagated-inputs
(list go-github-com-emersion-go-message
go-github-com-protonmail-go-crypto
- go-golang-org-x-crypto
go-golang-org-x-text))
(home-page "https://github.com/emersion/go-pgpmail")
(synopsis "PGP mail encryption for Go")
@@ -1068,6 +1139,37 @@ Architecture Processors\" by J. Guilford et al.")
(description "Multihash implementation in Go.")
(license license:expat)))
+(define-public go-github-com-oneofone-xxhash
+ (package
+ (name "go-github-com-oneofone-xxhash")
+ (version "1.2.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/OneOfOne/xxhash")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0f98qk83l2fhpclvrgyxsa9b8m4pipf11fah85bnjl01wy4lvybw"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/OneOfOne/xxhash"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-benchmarks
+ (lambda* (#:key import-path #:allow-other-keys)
+ (delete-file-recursively
+ (string-append "src/" import-path "/benchmarks")))))))
+ (home-page "https://github.com/OneOfOne/xxhash")
+ (synopsis "Go implementation of xxHash")
+ (description
+ "This is a native Go implementation of the
+@url{https://github.com/Cyan4973/xxHash, xxHash} algorithm, an extremely fast
+non-cryptographic hash algorithm, working at speeds close to RAM limits.")
+ (license license:asl2.0)))
+
(define-public go-github-com-operatorfoundation-ed25519
(let ((commit "b22b4bd3ddef042eec45f3ee135cd40281fde2b4")
(revision "0"))
@@ -1127,32 +1229,40 @@ algorithm.")
(define-public go-github-com-protonmail-go-crypto
(package
(name "go-github-com-protonmail-go-crypto")
- (version "0.0.0-20220623141421-5afb4c282135")
+ (version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ProtonMail/go-crypto")
- (commit (go-version->git-ref version))))
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "05qxdbn8wdk901z5kw2r3jdrag58nxlcsy0p8xd6rq0d71sw94wy"))))
+ (base32 "11q94983r6zjrdvflpikms4773a9s5vb9gg4qw1rj5800yhhah0n"))))
(build-system go-build-system)
(arguments
- (list #:import-path "github.com/ProtonMail/go-crypto"
- #:tests? #f ; Source-only package.
- #:phases
- #~(modify-phases %standard-phases
- ;; Source-only package.
- (delete 'build))))
+ (list
+ #:import-path "github.com/ProtonMail/go-crypto"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Workaround for go-build-system's lack of Go modules
+ ;; support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
(propagated-inputs
- (list go-golang-org-x-crypto))
+ (list go-github-com-cloudflare-circl
+ go-golang-org-x-crypto))
(home-page "https://github.com/ProtonMail/go-crypto")
(synopsis "Fork of x/crypto with up-to-date OpenPGP implementation")
- (description "This package provides cryptography for Go. This version of
-the package is a fork that adds a more up-to-date OpenPGP implementation. It
-is completely backwards compatible with @code{golang.org/x/crypto}, the
-official package.")
+ (description
+ "This package provides cryptography for Go. This version of the package
+is a fork that adds a more up-to-date OpenPGP implementation. It is
+completely backwards compatible with @code{golang.org/x/crypto}, the official
+package.")
(license license:bsd-3)))
(define-public go-github-com-quic-go-qtls-go1-20
@@ -1469,6 +1579,20 @@ Go.")
#:unpack-path "filippo.io/age"
#:install-source? #f))))
+(define-public go-keyring
+ (package
+ (inherit go-github-com-99designs-keyring)
+ (name "go-keyring")
+ (arguments
+ (list
+ #:install-source? #f
+ #:import-path "github.com/99designs/keyring/cmd/keyring"
+ #:unpack-path "github.com/99designs/keyring"))
+ (description
+ (string-append (package-description go-github-com-99designs-keyring)
+ " This package provides an command line interface (CLI)
+tool."))))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm
index a9658cfbac..5c1ece7389 100644
--- a/gnu/packages/golang-web.scm
+++ b/gnu/packages/golang-web.scm
@@ -3,18 +3,19 @@
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
+;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
-;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2020 raingloom <raingloom@riseup.net>
-;;; Copyright © 2020-2022 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2020-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Collin J. Doering <collin@rekahsoft.ca>
;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
+;;; Copyright © 2022 (unmatched-parenthesis <paren@disroot.org>
;;; Copyright © 2022 Adam Kandur <kefironpremise@gmail.com>
;;; Copyright © 2022 Dhruvin Gandhi <contact@dhruvin.dev>
;;; Copyright © 2022 Giacomo Leidi <goodoldpaul@autistici.org>
@@ -66,8 +67,10 @@
;;; Commentary:
;;;
-;;; Golang modules (libraries) related to HTML, CSS, SCSS, JavaScript, JSON,
-;;; Web-framework, REST-API or similar functionality. They may provide
+;;; Golang modules (libraries) for Web related projects: HTML, CSS, SCSS,
+;;; JavaScript, JSON, Web-framework, REST-API or similar functionality; for
+;;; Network related projects: OSI layers implementation algorithms, MIME,
+;;; Email protocols implementations, and similar. They may provide
;;; executables and libraries, for which there are marked sections.
;;;
@@ -127,6 +130,44 @@ API service accounts for Go.")
"This package provides a GraphQL client and code generator for Go.")
(license license:expat)))
+(define-public go-git-sr-ht-rockorager-go-jmap
+ (package
+ (name "go-git-sr-ht-rockorager-go-jmap")
+ (version "0.5.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~rockorager/go-jmap")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1r8bmdlmvpk08i7xrqwgv0aaz05564wgcyji73nszdh2s32m4kzl"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "git.sr.ht/~rockorager/go-jmap"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Workaround for go-build-system's lack of Go modules support.
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (native-inputs
+ (list
+ go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-golang-org-x-oauth2))
+ (home-page "https://git.sr.ht/~rockorager/go-jmap")
+ (synopsis "JSON meta application protocol in Golang")
+ (description
+ "Package jmap implements JMAP Core protocol as defined in
+@@url{https://rfc-editor.org/rfc/rfc8620.html,RFC 8620} published on July
+2019.")
+ (license license:expat)))
+
(define-public go-github-com-alexliesenfeld-health
(package
(name "go-github-com-alexliesenfeld-health")
@@ -227,40 +268,10 @@ the parse trees produced by the html package.")
connections from a single physical connection.")
(license license:expat)))
-(define-public go-github-com-aws-sdk
- (package
- (name "go-github-com-aws-sdk")
- (version "1.35.2")
- (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 "1ky5lw2s2zpslnnqcs6hgsrwvwbxwgflb5jwf16dd4aga3vrg10c"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/aws/aws-sdk-go/aws"
- #:unpack-path "github.com/aws/aws-sdk-go"))
- (propagated-inputs
- (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
- "This is the official AWS SDK for the Go programming language.")
- (license license:asl2.0)))
-
-;; XXX: This package might be a duplicate of go-github-com-aws-sdk, it's not
-;; in use anywhere. Keep it here for the farther review.
(define-public go-github-com-aws-aws-sdk-go
(package
(name "go-github-com-aws-aws-sdk-go")
- (version "1.36.18")
+ (version "1.55.2")
(source
(origin
(method git-fetch)
@@ -269,17 +280,32 @@ connections from a single physical connection.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "169mkkw1cff1px6326krwvfpfj07sb4y5rbn003gi4bk176h6ry9"))))
+ (base32 "0wsl1vcig3j9z6v2hppfr1bvrvbisck026fwq2a7yzmx36pwnj6a"))))
(build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/aws/aws-sdk-go"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* (find-files "." "\\_test.go$")
+ (("TestProcessProviderTimeout")
+ "OffTestProcessProviderTimeout")))))
+ ;; XXX: Workaround for go-build-system's lack of Go modules
+ ;; support.
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
(propagated-inputs
(list go-github-com-jmespath-go-jmespath))
- (arguments
- '(#:import-path "github.com/aws/aws-sdk-go"
- #:phases %standard-phases))
+ (home-page "https://github.com/aws/aws-sdk-go")
(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-github-com-aws-aws-sdk-go-v2
@@ -300,7 +326,7 @@ connections from a single physical connection.")
'(#:import-path "github.com/aws/aws-sdk-go-v2"))
(propagated-inputs
(list go-github-com-aws-smithy-go
- go-github-com-google-go-cmp-cmp
+ go-github-com-google-go-cmp
go-github-com-jmespath-go-jmespath))
(home-page "https://github.com/aws/aws-sdk-go-v2")
(synopsis "AWS SDK for Go v2")
@@ -317,9 +343,37 @@ connections from a single physical connection.")
'(#:import-path "github.com/aws/aws-sdk-go-v2/config"
#:unpack-path "github.com/aws/aws-sdk-go-v2"))
(propagated-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-aws-smithy-go))))
+(define-public go-github-com-aws-aws-sdk-go-v2-credentials
+ (package
+ (name "go-github-com-aws-aws-sdk-go-v2-credentials")
+ (version "1.17.27")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/aws/aws-sdk-go-v2")
+ (commit (string-append "credentials/v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0jdj7wim98g80hjbw3av7ffrr3dqxzbygprmhjs0cxc16cw62wj7"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/aws/aws-sdk-go-v2/credentials"
+ #:unpack-path "github.com/aws/aws-sdk-go-v2"))
+ (propagated-inputs
+ (list go-github-com-google-go-cmp
+ go-github-com-aws-smithy-go))
+ (home-page "https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/credentials")
+ (synopsis "AWS SDK for Go v2 - credentials module")
+ (description
+ "Package credentials provides types for retrieving credentials from
+credentials sources.")
+ (license license:asl2.0)))
+
(define-public go-github-com-aws-aws-sdk-go-v2-feature-s3-manager
(package
(inherit go-github-com-aws-aws-sdk-go-v2)
@@ -402,7 +456,7 @@ connections from a single physical connection.")
(arguments
'(#:import-path "github.com/aws/smithy-go"))
(propagated-inputs
- (list go-github-com-jmespath-go-jmespath go-github-com-google-go-cmp-cmp))
+ (list go-github-com-jmespath-go-jmespath go-github-com-google-go-cmp))
(home-page "https://github.com/aws/smithy-go")
(synopsis "@url{https://smithy.io/2.0/index.html,Smithy} code generators
for Go")
@@ -633,7 +687,7 @@ and stop increasing when a certain threshold is met.")
(package
(inherit go-github-com-coreos-go-oidc)
(name "go-github-com-coreos-go-oidc-v3")
- (version "3.6.0")
+ (version "3.11.0")
(source
(origin
(method git-fetch)
@@ -642,15 +696,295 @@ and stop increasing when a certain threshold is met.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1sbm6n3lp48lymn0g921afhq2j6inb38w3wy5rhyx9h8gpzhnxx9"))))
+ (base32 "00nbv15pjfcfxdy0i4k366ricdm2cylhpwak3hmjlgh6lrzxypl9"))))
(arguments
- (list ;; no Go files in [...]/src/github.com/coreos/go-oidc/v3.
- #:import-path "github.com/coreos/go-oidc/v3/oidc"
- #:unpack-path "github.com/coreos/go-oidc/v3"))
+ (list
+ #:import-path "github.com/coreos/go-oidc/v3"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Workaround for go-build-system's lack of Go modules
+ ;; support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
(propagated-inputs
- (list go-github-com-go-jose-go-jose-v3
+ (list go-github-com-go-jose-go-jose-v4
+ go-golang-org-x-net
go-golang-org-x-oauth2))))
+(define-public go-github-com-emersion-go-imap
+ (package
+ (name "go-github-com-emersion-go-imap")
+ (version "1.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-imap")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ak2ysvfcc9w0g1070msis8x9sh6gzvf0nd65ks594siwbmqddw8"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-imap"))
+ (propagated-inputs
+ (list go-golang-org-x-text
+ go-github-com-emersion-go-sasl
+ go-github-com-emersion-go-message))
+ (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 can be
+used to build IMAP clients and servers.")
+ (license license:expat)))
+
+;; XXX: This repository has been archived by the owner on Sep 8, 2021. It is
+;; now read-only.
+(define-public go-github-com-emersion-go-imap-idle
+ (let ((commit "2704abd7050ed7f2143753554ee23affdf847bd9")
+ (revision "0"))
+ (package
+ (name "go-github-com-emersion-go-imap-idle")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-imap-idle")
+ (commit commit)))
+ (sha256
+ (base32
+ "0blwcadmxgqsdwgr9m4jqfbpfa2viw5ah19xbybpa1z1z4aj5cbc"))
+ (file-name (git-file-name name version))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-imap-idle"))
+ (propagated-inputs
+ (list go-github-com-emersion-go-imap))
+ (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.")
+ (license license:expat))))
+
+(define-public go-github-com-emersion-go-imap-sortthread
+ (package
+ (name "go-github-com-emersion-go-imap-sortthread")
+ (version "1.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-imap-sortthread")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1cfbgz1l5angnj52v9pxwggai2shx0h78ffcp7j4r4lr7lzflnwz"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-imap-sortthread"))
+ (propagated-inputs
+ (list
+ go-github-com-emersion-go-imap))
+ (home-page "https://github.com/emersion/go-imap-sortthread")
+ (synopsis "Sorting and threading of messages for the imap package")
+ (description
+ "The sortthread package implements message sorting and threading for
+@code{go-github-com-emersion-go-imap}.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-maildir
+ (package
+ (name "go-github-com-emersion-go-maildir")
+ (version "0.5.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-maildir")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0wa7spn3qa7ipmg29vrimw7phyybyaagdalrjklcazjb6rplvwpl"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-maildir"))
+ (home-page "https://github.com/emersion/go-maildir")
+ (synopsis "Maildir interface for Go")
+ (description
+ "This package provides an interface to mailboxes in the Maildir format.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-mbox
+ (package
+ (name "go-github-com-emersion-go-mbox")
+ (version "1.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-mbox")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0vnadh2khx7sxn0irrd8gz8ra02x7ij0q8zglq3rqffqil06nliv"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-mbox"))
+ (home-page "https://github.com/emersion/go-mbox")
+ (synopsis "Go library for handling @code{mbox} files")
+ (description
+ "This package provides a library for parsing and formatting @code{mbox}
+files.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-message
+ (package
+ (name "go-github-com-emersion-go-message")
+ (version "0.18.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-message")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0gzcgrs5sava8fpybp5cw6f3zqnbz096wf93hcgkrg94wl1g7kqb"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:import-path "github.com/emersion/go-message"))
+ (propagated-inputs
+ (list go-golang-org-x-text))
+ (home-page "https://github.com/emersion/go-message")
+ (synopsis "Internet messages and MIME for Go")
+ (description
+ "The message package implements the Internet Message Format and
+Multipurpose Internet Mail Extensions in Go.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-milter
+ (package
+ (name "go-github-com-emersion-go-milter")
+ (version "0.4.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-milter")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "11qjwjz6ippsx9da81gylx46p1a96mk39j54ayw925m40skqhh3c"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-milter"))
+ (propagated-inputs
+ (list go-github-com-emersion-go-message))
+ (home-page "https://github.com/emersion/go-milter")
+ (synopsis "Milter mail filters in Go")
+ (description
+ "This package provides an interface for implementing milter mail filters
+for Go.")
+ (license license:bsd-2)))
+
+(define-public go-github-com-emersion-go-msgauth
+ (package
+ (name "go-github-com-emersion-go-msgauth")
+ (version "0.6.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-msgauth")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0az83i6jmk3bjglgdqw5zsvhh8698rav0mcg4dy8kr0cgq0lj5zs"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-msgauth"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Run all tests, workaround for go-build-system's lack of Go
+ ;; modules support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (propagated-inputs
+ (list go-golang-org-x-crypto
+ go-github-com-emersion-go-milter
+ go-github-com-emersion-go-message))
+ (home-page "https://github.com/emersion/go-msgauth")
+ (synopsis "Email authentication for Go")
+ (description
+ "This package provides a Go library for authenticating emails.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-sasl
+ (let ((commit "0b9dcfb154ac3d7515b08bc2691a0332800edfe9")
+ (revision "1"))
+ (package
+ (name "go-github-com-emersion-go-sasl")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-sasl")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1cbf86wkqrdinfydndgdlnayg4a5mg3d4vqra377j2sfkg7wj0hs"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-sasl"))
+ (home-page "https://github.com/emersion/go-sasl")
+ (synopsis "SASL library written in Go")
+ (description
+ "This package provides a SASL library written in Go.")
+ (license license:expat))))
+
+(define-public go-github-com-emersion-go-smtp
+ (package
+ (name "go-github-com-emersion-go-smtp")
+ (version "0.21.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-smtp")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0drvmvrkmhqhnv4m3my1hbkyyva2vi35b36j0pdi57xc9rflziq3"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-smtp"))
+ (propagated-inputs
+ (list go-github-com-emersion-go-sasl))
+ (home-page "https://github.com/emersion/go-smtp")
+ (synopsis "SMTP implementation for Go")
+ (description
+ "This package implements the Simple Mail Transfer Protocol as defined by
+RFC 5321.")
+ (license license:expat)))
+
(define-public go-github-com-emicklei-go-restful
(package
(name "go-github-com-emicklei-go-restful")
@@ -731,6 +1065,35 @@ API and doesn't use reflection. It relies on small interfaces to
decode/encode structures and slices.")
(license license:expat)))
+(define-public go-github-com-gatherstars-com-jwz
+ (package
+ (name "go-github-com-gatherstars-com-jwz")
+ (version "1.4.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/gatherstars-com/jwz")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1d66axc3504wqpb4axlm8m9jq8rmwndxb4asbqwryymj3yh60cla"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:import-path "github.com/gatherstars-com/jwz"))
+ (propagated-inputs
+ (list go-github-com-rivo-tview
+ go-github-com-jhillyerd-enmime
+ go-github-com-gdamore-tcell-v2))
+ (home-page "https://github.com/gatherstars-com/jwz")
+ (synopsis "Email threading algorithm in Golang")
+ (description
+ "The jwz package provides an implementation of the email threading
+algorithm originally designed for use in
+@url{https://www.jwz.org/doc/threading.html,Netscape Mail 2.0 and 3.0} for
+Golang.")
+ (license license:asl2.0)))
+
;; TODO: This repository has been archived by the owner on Aug 30, 2023. It is
;; now read-only. The raven-go SDK is no longer maintained and was superseded
;; by the sentry-go
@@ -802,7 +1165,7 @@ decompose request handling into many smaller layers.")
(propagated-inputs
(list go-golang-org-x-crypto))
(native-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-stretchr-testify))
(home-page "https://github.com/go-jose/go-jose")
(synopsis "Implementation of JOSE standards (JWE, JWS, JWT) in Go")
@@ -868,31 +1231,6 @@ Encryption, JSON Web Signature, and JSON Web Token standards.")
language.")
(license license:expat)))
-(define-public go-github-com-go-telegram-bot-api-telegram-bot-api
- (package
- (name "go-github-com-go-telegram-bot-api-telegram-bot-api")
- (version "4.6.4")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/go-telegram-bot-api/telegram-bot-api")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1x6j0k3aiicsr8l53na99ci10zm3qpn2syz4f60fzh164w5k1l7w"))))
- (build-system go-build-system)
- (home-page "https://go-telegram-bot-api.dev/")
- (arguments
- (list #:tests? #f ; Upstream tests are broken.
- #:import-path "github.com/go-telegram-bot-api/telegram-bot-api"))
- (propagated-inputs
- (list go-github-com-technoweenie-multipartstreamer))
- (synopsis "Golang bindings for the Telegram Bot API")
- (description
- "This package provides Golang bindings for the Telegram Bot API.")
- (license license:expat)))
-
(define-public go-github-com-go-webauthn-webauthn
(package
(name "go-github-com-go-webauthn-webauthn")
@@ -1384,10 +1722,10 @@ the Go standard library, but returns a client that does not share any state
with other clients.")
(license license:mpl2.0)))
-(define-public go-github-com-hjson-hjson-go
+(define-public go-github-com-hjson-hjson-go-v4
(package
- (name "go-github-com-hjson-hjson-go")
- (version "4.3.1")
+ (name "go-github-com-hjson-hjson-go-v4")
+ (version "4.4.0")
(source
(origin
(method git-fetch)
@@ -1396,15 +1734,17 @@ with other clients.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "138vmbnrwzxf64cia27k407clrydvs2jx927dlv6ziydiqyvy7m3"))))
+ (base32 "1d4b2hpqsnzbmfhgxq15hd19rjr5hydjmpblrh5yzfgx9z3cz2by"))))
(build-system go-build-system)
(arguments
- '(#:import-path "github.com/hjson/hjson-go"))
+ (list
+ #:import-path "github.com/hjson/hjson-go/v4"))
(home-page "https://hjson.org/")
(synopsis "Human JSON implementation for Go")
- (description "Hjson is a syntax extension to JSON. It is intended to be
-used like a user interface for humans, to read and edit before passing the
-JSON data to the machine.")
+ (description
+ "Hjson is a syntax extension to JSON. It is intended to be used like a
+user interface for humans, to read and edit before passing the JSON data to
+the machine.")
(license license:expat)))
(define-public go-github-com-jackpal-gateway
@@ -1563,6 +1903,38 @@ SPNEGO Kerberos authentication, as well as a HTTP handler wrapper decodes
Microsoft AD PAC authorization data.")
(license license:asl2.0)))
+(define-public go-github-com-jhillyerd-enmime
+ (package
+ (name "go-github-com-jhillyerd-enmime")
+ (version "1.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jhillyerd/enmime")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "03pir9wq9ha2i2ifj819yv5i0lvrgdn904ksbzgc3k8bqc497ydn"))))
+ (build-system go-build-system)
+ (arguments
+ (list #:import-path "github.com/jhillyerd/enmime"))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-cention-sany-utf7
+ go-github-com-go-test-deep
+ go-github-com-gogs-chardet
+ go-github-com-jaytaylor-html2text
+ go-github-com-pkg-errors
+ go-golang-org-x-text))
+ (home-page "https://github.com/jhillyerd/enmime")
+ (synopsis "MIME encoder and decoder for Go")
+ (description
+ "The enmime package implements a MIME encoding and decoding library
+geared towards parsing MIME encoded emails.")
+ (license license:expat)))
+
(define-public go-github-com-jmespath-go-jmespath
(package
(name "go-github-com-jmespath-go-jmespath")
@@ -1663,7 +2035,7 @@ router.")
(base32 "196rxfg7w8s3zn87gra1mxh1l8iav6kdmg909gkbnc9cxip65zc0"))))
(build-system go-build-system)
(propagated-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-golang-org-x-net
go-golang-org-x-text))
(arguments
@@ -1902,6 +2274,30 @@ multistream-select protocol. The protocol is defined at
@url{https://github.com/multiformats/multistream-select}")
(license license:expat)))
+(define-public go-github-com-munnerz-goautoneg
+ (package
+ (name "go-github-com-munnerz-goautoneg")
+ (version "0.0.0-20191010083416-a7dc8b61c822")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/munnerz/goautoneg")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1m4v6bw6yf1g0kvpc46isjp0qfhx2y8gnvlnyjf637jy64613mgg"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/munnerz/goautoneg"))
+ (home-page "https://github.com/munnerz/goautoneg")
+ (synopsis "HTTP Content-Type Autonegotiation")
+ (description
+ "This package implements @url{https://rfc-editor.org/rfc/rfc2616.html,RFC
+2616} HTTP/1.1 standard.")
+ (license license:bsd-3)))
+
(define-public go-github-com-nwidger-jsoncolor
(package
(name "go-github-com-nwidger-jsoncolor")
@@ -2776,7 +3172,7 @@ protocol.")
#:import-path "github.com/quic-go/webtransport-go"))
(native-inputs
(list go-go-uber-org-mock
- go-github-com-stretchr-testify-next))
+ go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-quic-go-quic-go
go-golang-org-x-exp))
@@ -3224,6 +3620,33 @@ programming language.")
programming language, which supports draft-04, draft-06 and draft-07.")
(license license:asl2.0))))
+(define-public go-golang-org-x-oauth2
+ (package
+ (name "go-golang-org-x-oauth2")
+ (version "0.21.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://go.googlesource.com/oauth2")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0pzpa9jqrfxxhxi1w7n5ljnvr9qfw42hzavz62fc9i6z9vk2466k"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "golang.org/x/oauth2"))
+ (propagated-inputs
+ (list go-cloud-google-com-go-compute-metadata
+ go-github-com-google-go-cmp))
+ (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
+ spec in Go.")
+ (license license:bsd-3)))
+
;; XXX: This repository has been archived by the owner on Feb 27, 2023. It is
;; now read-only and it is DEPRECATED.
(define-public go-gopkg-in-square-go-jose-v2
@@ -3250,7 +3673,7 @@ programming language, which supports draft-04, draft-06 and draft-07.")
(propagated-inputs
(list go-golang-org-x-crypto))
(native-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-stretchr-testify))
(home-page "https://gopkg.in/square/go-jose.v2")
(synopsis "Implementation of JOSE standards (JWE, JWS, JWT) in Go")
diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index b7eccae55a..32b904c59c 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -9,6 +9,7 @@
;;; Copyright © 2019-2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
+;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020, 2021 raingloom <raingloom@riseup.net>
@@ -34,9 +35,10 @@
;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
+;;; Copyright © 2024 Jean Simard <woshilapin@tuziwo.info>
;;; Copyright © 2024 Jesse Eisses <jesse@eisses.email>
-;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
;;; Copyright © 2024 Luis Higino <luishenriquegh2701@gmail.com>
+;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -292,6 +294,70 @@ a human-readable byte format.")
search functionality to database applications.")
(license license:expat)))
+(define-public go-git-sr-ht-rjarry-go-opt
+ (package
+ (name "go-git-sr-ht-rjarry-go-opt")
+ (version "1.4.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~rjarry/go-opt")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0jcs3bn43g3wv4d5w59zazy139qfkn0903lnvndfn06s81gzqpch"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "git.sr.ht/~rjarry/go-opt"))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (home-page "https://git.sr.ht/~rjarry/go-opt")
+ (synopsis "Argument parsing and completion based on struct tags")
+ (description
+ "@code{go-opt} is a library to parse command line arguments based on tag
+annotations on struct fields. It came as a spin-off from
+@url{https://git.sr.ht/~rjarry/aerc,aerc} to deal with its internal
+commands.")
+ (license license:expat)))
+
+(define-public go-git-sr-ht-rockorager-vaxis
+ (package
+ (name "go-git-sr-ht-rockorager-vaxis")
+ (version "0.9.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~rockorager/vaxis")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0pmi4bigqgrfdlk9d6ia3jxgcr4iadiyynf6bny9fdc3yyppcxic"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "git.sr.ht/~rockorager/vaxis"))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-containerd-console
+ go-github-com-creack-pty
+ go-github-com-mattn-go-runewidth
+ go-github-com-mattn-go-sixel
+ go-github-com-rivo-uniseg
+ go-golang-org-x-exp
+ go-golang-org-x-image
+ go-golang-org-x-sys))
+ (home-page "https://git.sr.ht/~rockorager/vaxis")
+ (synopsis "TUI library for Golang")
+ (description
+ "Package vaxis is a terminal user interface for modern terminals. It
+supports supports modern terminal features, such as styled underlines and
+graphics. A widgets package is provided with some useful widgets.")
+ (license license:asl2.0)))
+
(define-public go-git-sr-ht-sircmpwn-getopt
(package
(name "go-git-sr-ht-sircmpwn-getopt")
@@ -795,6 +861,33 @@ optimized for sparse nodes of
@url{http://en.wikipedia.org/wiki/Radix_tree,radix tree}.")
(license license:expat)))
+(define-public go-github-com-arran4-golang-ical
+ (package
+ (name "go-github-com-arran4-golang-ical")
+ (version "0.3.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/arran4/golang-ical")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0gcn5afds1dnq3wrl4ndi4wqqwmrnvh9pdqhyv77d3cqakn82vj3"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/arran4/golang-ical"))
+ (native-inputs
+ (list go-github-com-google-go-cmp
+ go-github-com-stretchr-testify))
+ (home-page "https://github.com/arran4/golang-ical")
+ (synopsis "Handle iCalenders in Go")
+ (description
+ "The @code{ical} package provides an ICS/iCalender parser and serialiser
+for Go.")
+ (license license:asl2.0)))
+
(define-public go-github-com-audriusbutkevicius-recli
(package
(name "go-github-com-audriusbutkevicius-recli")
@@ -824,6 +917,96 @@ for generating command line clients for your application configuration that is
stored in a Go struct.")
(license license:mpl2.0)))
+(define-public go-github-com-avast-retry-go
+ (package
+ (name "go-github-com-avast-retry-go")
+ (version "2.7.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avast/retry-go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0zkn8c2gyz8j90bf0aj6avfl3sf7j4rk5g4ak4yhglnsx72jdhbz"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/avast/retry-go"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* (find-files "." "\\_test.go$")
+ (("TestMaxDelay") "OffTestMaxDelay")))))
+ (add-after 'unpack 'remove-examples
+ (lambda* (#:key import-path #:allow-other-keys)
+ (delete-file-recursively
+ (string-append "src/" import-path "/examples")))))))
+ (propagated-inputs (list go-github-com-stretchr-testify))
+ (home-page "https://github.com/avast/retry-go")
+ (synopsis "Simple golang library for retry mechanism")
+ (description
+ "This package is a simple Go library that provides retry functionality
+for functions that may fail. It includes various customizable retry
+strategies, such as fixed delay, backoff delay, and random delay.")
+ (license license:expat)))
+
+(define-public go-github-com-avast-retry-go-v3
+ (package
+ (inherit go-github-com-avast-retry-go)
+ (name "go-github-com-avast-retry-go-v3")
+ (version "3.1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avast/retry-go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01mwrzjh2y3xignkivx8kaghjs3gwb3z89zqgxjfaslslazc863b"))))
+ (arguments
+ (list
+ #:import-path "github.com/avast/retry-go/v3"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* (find-files "." "\\_test.go$")
+ (("TestMaxDelay") "OffTestMaxDelay")))))
+ (add-after 'unpack 'remove-examples
+ (lambda* (#:key import-path #:allow-other-keys)
+ (delete-file-recursively
+ (string-append "src/" import-path "/examples")))))))))
+
+(define-public go-github-com-avast-retry-go-v4
+ (package
+ (inherit go-github-com-avast-retry-go)
+ (name "go-github-com-avast-retry-go-v4")
+ (version "4.6.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avast/retry-go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09gs4wmkq7ragyf2xd0h6j8f9xqq66cwa95kwp5qdwz3wwv9xq1b"))))
+ (arguments
+ (list
+ #:import-path "github.com/avast/retry-go/v4"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-examples
+ (lambda* (#:key import-path #:allow-other-keys)
+ (delete-file-recursively
+ (string-append "src/" import-path "/examples")))))))))
+
(define-public go-github-com-aymanbagabas-go-osc52-v2
(package
(name "go-github-com-aymanbagabas-go-osc52-v2")
@@ -872,9 +1055,9 @@ interface around the standard library's @code{time} package so that the applicat
can use the realtime clock while tests can use the mock clock.")
(license license:expat)))
-(define-public go-github-com-beorn7-perks-quantile
+(define-public go-github-com-beorn7-perks
(package
- (name "go-github-com-beorn7-perks-quantile")
+ (name "go-github-com-beorn7-perks")
(version "1.0.1")
(source
(origin
@@ -887,8 +1070,17 @@ can use the realtime clock while tests can use the mock clock.")
(base32 "17n4yygjxa6p499dj3yaqzfww2g7528165cl13haj97hlx94dgl7"))))
(build-system go-build-system)
(arguments
- (list #:import-path "github.com/beorn7/perks/quantile"
- #:unpack-path "github.com/beorn7/perks"))
+ (list
+ #:import-path "github.com/beorn7/perks"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Workaround for go-build-system's lack of Go modules support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
(home-page "https://github.com/beorn7/perks")
(synopsis "Compute approximate quantiles over an unbounded data stream")
(description
@@ -1015,6 +1207,35 @@ information and periodically output metrics")
quantiles over an unbounded data stream within low memory and CPU bounds.")
(license license:bsd-2)))
+;; XXX: This repository has been archived by the owner on Mar 9, 2019. It is
+;; now read-only.
+(define-public go-github-com-boltdb-bolt
+ (package
+ (name "go-github-com-boltdb-bolt")
+ (version "1.3.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/boltdb/bolt")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0z7j06lijfi4y30ggf2znak2zf2srv2m6c68ar712wd2ys44qb3r"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:tests? #f ;tests are broken in upstream
+ #:import-path "github.com/boltdb/bolt"))
+ (home-page "https://github.com/boltdb/bolt")
+ (synopsis "Embedded key/value database for Golang")
+ (description
+ "Bolt is a pure Go key/value store inspired by
+@url{http://symas.com/mdb/, Howard Chu's LMDB project}. The goal of the
+project is to provide a simple, fast, and reliable database for projects that
+don't require a full database server such as Postgres or MySQL.")
+ (license license:expat)))
+
(define-public go-github-com-briandowns-spinner
(package
(name "go-github-com-briandowns-spinner")
@@ -1050,7 +1271,7 @@ indicator to any terminal application.")
(define-public go-github-com-burntsushi-toml
(package
(name "go-github-com-burntsushi-toml")
- (version "1.2.1")
+ (version "1.4.0")
(source
(origin
(method git-fetch)
@@ -1059,10 +1280,19 @@ indicator to any terminal application.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1v9czq4hsyvdz7yx70y6sgq77wmrgfmn09r9cj4w85z38jqnamv7"))))
+ (base32 "1vk0s7pcn80hkx0lcyws509gqs42c8y1rppv05zxiqj0yn2zrjnx"))))
(build-system go-build-system)
(arguments
- '(#:import-path "github.com/BurntSushi/toml"))
+ (list
+ #:import-path "github.com/BurntSushi/toml"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Replace when go-build-system supports nested path.
+ (replace 'check
+ (lambda* (#:key import-path tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
(home-page "https://github.com/BurntSushi/toml")
(synopsis "Toml parser and encoder for Go")
(description
@@ -1219,7 +1449,7 @@ levels that works by wrapping the standard @code{log} library.")
(arguments
(list
#:import-path "github.com/coocood/freecache"))
- (propagated-inputs (list go-github-com-cespare-xxhash))
+ (propagated-inputs (list go-github-com-cespare-xxhash-v2))
(home-page "https://github.com/coocood/freecache")
(synopsis "Caching library for Go")
(description
@@ -1727,6 +1957,91 @@ scanner API made public.")
for @code{Set}, @code{Get}, @code{Delete} and @code{Len}.")
(license license:expat)))
+(define-public go-github-com-emersion-go-ical
+ (package
+ (name "go-github-com-emersion-go-ical")
+ (version "0.0.0-20240127095438-fc1c9d8fb2b6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-ical")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01cn9kggkdalb6xp2nrka01gs40zs8v6h5bq8d2m8wrdcsy5b36v"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-ical"))
+ (propagated-inputs (list go-github-com-teambition-rrule-go))
+ (home-page "https://github.com/emersion/go-ical")
+ (synopsis "iCalendar library for Golang")
+ (description
+ "This package implements @url{https://tools.ietf.org/html/rfc5545, RFC
+5545} iCalendar specification.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-vcard
+ (package
+ (name "go-github-com-emersion-go-vcard")
+ (version "0.0.0-20230815062825-8fda7d206ec9")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-vcard")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "12n5jinj5xzdfl9jhqvjbzxvj32bw310mdw4q5rjv35pk566zixl"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-vcard"))
+ (home-page "https://github.com/emersion/go-vcard")
+ (synopsis "Parse and format vCard in Golang")
+ (description
+ "This package implements functionality to parse and format vCard as
+specified in @url{https://datatracker.ietf.org/doc/html/rfc6350, RFC 6350}.")
+ (license license:expat)))
+
+(define-public go-github-com-emersion-go-webdav
+ (package
+ (name "go-github-com-emersion-go-webdav")
+ (version "0.5.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/go-webdav")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ay0x3c1frkj4z3j17s42yvf1hgmg8223qmsyr41yxwz88zsvjlj"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/emersion/go-webdav"
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (propagated-inputs
+ (list go-github-com-emersion-go-ical
+ go-github-com-emersion-go-vcard))
+ (home-page "https://github.com/emersion/go-webdav")
+ (synopsis "WebDAV, CalDAV and CardDAV implementations in Golang")
+ (description
+ "This package provides Golang modules implementing WebDAV
+@url{https://tools.ietf.org/html/rfc4918, RFC 4918}, CalDAV
+@url{https://tools.ietf.org/html/rfc4791, RFC 4791} and CardDAV
+@url{https://tools.ietf.org/html/rfc6352, RFC 6352} specifications.")
+ (license license:expat)))
+
(define-public go-github-com-errata-ai-ini
(package
(name "go-github-com-errata-ai-ini")
@@ -2008,6 +2323,61 @@ Differentiation between text and binary files}.
@end itemize")
(license license:expat)))
+(define-public go-github-com-go-kit-log
+ (package
+ (name "go-github-com-go-kit-log")
+ (version "0.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/go-kit/log")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1xjv2g1cd1iaghhm1c1zw0lcz89a9zq5xradyjipvrbqxbxckqm6"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/go-kit/log"))
+ (propagated-inputs
+ (list go-github-com-go-logfmt-logfmt))
+ (home-page "https://github.com/go-kit/log")
+ (synopsis "Minimal and extensible structured logger")
+ (description
+ "This package provides a minimal interface for structured logging in
+services. It may be wrapped to encode conventions, enforce type-safety,
+provide leveled logging, and so on. It can be used for both typical
+application log events, and log-structured data streams.")
+ (license license:expat)))
+
+(define-public go-github-com-go-logfmt-logfmt
+ (package
+ (name "go-github-com-go-logfmt-logfmt")
+ (version "0.6.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/go-logfmt/logfmt")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0s3dz7z5a8p5ia5czihy5y2hkij7rdfyr425sw9rnxqil3d0dlj6"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/go-logfmt/logfmt"))
+ (home-page "https://github.com/go-logfmt/logfmt")
+ (synopsis "Marshal and unmarshal logfmt messages")
+ (description
+ "Package logfmt implements utilities to marshal and unmarshal data in the
+logfmt format. The logfmt format records key/value pairs in a way that
+balances readability for humans and simplicity of computer parsing. It is
+most commonly used as a more human friendly alternative to JSON for structured
+logging.")
+ (license license:expat)))
+
(define-public go-github-com-go-logr-logr
(package
(name "go-github-com-go-logr-logr")
@@ -2154,7 +2524,7 @@ the library more lightweight.")
(invoke "go" "test" "-v" "./..."))))))))
(native-inputs
(list go-github-com-go-playground-validator-v10
- go-github-com-google-go-cmp-cmp))
+ go-github-com-google-go-cmp))
(propagated-inputs
(list go-github-com-fatih-color
go-golang-org-x-xerrors))
@@ -2756,6 +3126,31 @@ storing only one copy of each unique string in memory. All functions may be
called concurrently with themselves and each other.")
(license license:expat)))
+(define-public go-github-com-jpillora-backoff
+ (let ((commit "fab01a9d9810a410d2d95a0a697f0afb604658f9")
+ (revision "1"))
+ (package
+ (name "go-github-com-jpillora-backoff")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jpillora/backoff")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0irpxdjvwmfd1njvws5x466ar8faiwjnnna26jnly9sw1b0h1b89"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/jpillora/backoff"))
+ (home-page "https://github.com/jpillora/backoff")
+ (synopsis "Simple exponential backoff counter in Go")
+ (description
+ "This package is a simple exponential backoff counter in Go.")
+ (license license:expat))))
+
(define-public go-github-com-k0kubun-go-ansi
(package
(name "go-github-com-k0kubun-go-ansi")
@@ -3111,7 +3506,7 @@ implementing features like:
(list
#:import-path "github.com/Masterminds/semver/v3"))
(native-inputs
- (list go-github-com-stretchr-testify-next))
+ (list go-github-com-stretchr-testify))
(home-page "https://github.com/Masterminds/semver/")
(synopsis "@code{semver} helps to work with semantic versions")
(description
@@ -3335,6 +3730,32 @@ string.")
the @code{cpan} module @code{Parse::CommandLine}.")
(license license:expat)))
+(define-public go-github-com-mattn-go-sixel
+ (package
+ (name "go-github-com-mattn-go-sixel")
+ (version "0.0.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mattn/go-sixel")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0icv1mcavdw867s47kwvd16q19h2a4znph850lyq18d5z00kpjjs"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/mattn/go-sixel"))
+ (propagated-inputs
+ (list go-github-com-soniakeys-quant))
+ (home-page "https://github.com/mattn/go-sixel")
+ (synopsis "DRCS/Sixel Encoder/Decoder")
+ (description
+ "This package implements functionality to encode and decode
+@acronym{DRCS,Dynamically Redefinable Character Sets} Sixel.")
+ (license license:expat)))
+
(define-public go-github-com-mattn-go-sqlite3
(package
(name "go-github-com-mattn-go-sqlite3")
@@ -3359,6 +3780,35 @@ the @code{cpan} module @code{Parse::CommandLine}.")
@code{database/sql}.")
(license license:expat)))
+(define-public go-github-com-mattn-go-tty
+ (package
+ (name "go-github-com-mattn-go-tty")
+ (version "0.0.7")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mattn/go-tty")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09ndgwrx99jqaakmhk4v2pnai9h2mvryapc3qg6i33v2x809y6z6"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/mattn/go-tty"))
+ (propagated-inputs
+ (list go-github-com-mattn-go-colorable
+ go-github-com-mattn-go-isatty
+ go-github-com-mattn-go-runewidth
+ go-golang-org-x-sys))
+ (home-page "https://github.com/mattn/go-tty")
+ (synopsis "Simple TTY utility for Golang")
+ (description
+ "This package provides a TTY utilities implementation for verity of
+operation systems.")
+ (license license:expat)))
+
(define-public go-github-com-mattn-go-zglob
(package
(name "go-github-com-mattn-go-zglob")
@@ -3847,38 +4297,6 @@ varints.")
very fast, and tries to be entropy pool friendly.")
(license license:asl2.0)))
-(define-public go-github-com-nbrownus-go-metrics-prometheus
- (package
- (name "go-github-com-nbrownus-go-metrics-prometheus")
- (version "0.0.0-20210712211119-974a6260965f")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/nbrownus/go-metrics-prometheus")
- (commit (go-version->git-ref version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1kl9l08aas544627zmhkgp843qx94sxs4inxm20nw1hx7gp79dz0"))))
- (build-system go-build-system)
- (arguments
- (list
- ;; The project looks abandoned, tests failed with a new go-metrics.
- #:tests? #f
- #:import-path "github.com/nbrownus/go-metrics-prometheus"))
- (native-inputs
- (list go-github-com-stretchr-testify))
- (propagated-inputs
- (list go-github-com-prometheus-client-golang
- go-github-com-rcrowley-go-metrics))
- (home-page "https://github.com/nbrownus/go-metrics-prometheus")
- (synopsis "Prometheus support for go-metrics")
- (description
- "This package provides a reporter for the @code{go-metrics} library which
-posts the metrics to the Prometheus client registry and just updates the
-registry.")
- (license license:asl2.0)))
-
(define-public go-github-com-neurosnap-sentences
(package
(name "go-github-com-neurosnap-sentences")
@@ -4223,34 +4641,6 @@ Pion}.")
"@code{refmt} is a serialization and object-mapping library.")
(license license:expat)))
-(define-public go-github-com-prometheus-client-model
- (package
- (name "go-github-com-prometheus-client-model")
- (version "0.5.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/prometheus/client_model")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1pl9i969jx5vkhm8vd5vb8yrifv37aw6h8mjg04820pw0ygfbigy"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/prometheus/client_model"
- #:tests? #f
- #:phases
- (modify-phases %standard-phases
- ;; Source-only package
- (delete 'build))))
- (propagated-inputs
- (list go-github-com-golang-protobuf))
- (synopsis "Data model artifacts for Prometheus")
- (description "This package provides data model artifacts for Prometheus.")
- (home-page "https://github.com/prometheus/client_model")
- (license license:asl2.0)))
-
(define-public go-github-com-pterm-pterm
(package
(name "go-github-com-pterm-pterm")
@@ -4563,6 +4953,29 @@ Use waterutil with it to work with TUN/TAP packets/frames.")
"@{gitconfig} is a package to get configuration values from gitconfig.")
(license license:expat)))
+(define-public go-github-com-soniakeys-quant
+ (package
+ (name "go-github-com-soniakeys-quant")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/soniakeys/quant")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0y50h4d9l4v1dxhf99ys6fha5c7viflwdnlfxn7glf2jr49x5z78"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/soniakeys/quant"))
+ (home-page "https://github.com/soniakeys/quant")
+ (synopsis "Interface for image color quantizers")
+ (description
+ "Quant provides an interface for image color quantizers.")
+ (license license:expat)))
+
(define-public go-github-com-spf13-cobra
(package
(name "go-github-com-spf13-cobra")
@@ -4656,6 +5069,31 @@ well as a program to generate applications and command files.")
storage system.")
(license license:bsd-2)))
+(define-public go-github-com-teambition-rrule-go
+ (package
+ (name "go-github-com-teambition-rrule-go")
+ (version "1.8.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/teambition/rrule-go")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1fnbava35w9z60carny5b7whd4nkv6hrf9g43wwg8d88gfij9zj2"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/teambition/rrule-go"))
+ (home-page "https://github.com/teambition/rrule-go")
+ (synopsis "Recurrence rules for calendar dates for Golang")
+ (description
+ "This package provides a functionality to work with recurrence rules for
+calendar dates. It offers a complete implementation of the
+@url{https://www.ietf.org/rfc/rfc2445.txt,RFC 2445} specification.")
+ (license license:expat)))
+
(define-public go-github-com-thejerf-suture
(package
(name "go-github-com-thejerf-suture")
@@ -5158,7 +5596,7 @@ CPU quota.")
(list
#:import-path "go.uber.org/dig"))
(native-inputs
- (list go-github-com-stretchr-testify-next))
+ (list go-github-com-stretchr-testify))
(home-page "https://pkg.go.dev/go.uber.org/dig")
(synopsis "Reflection based dependency injection toolkit for Golang")
(description
@@ -5184,7 +5622,7 @@ object dependencies graph during the process startup.")
(list
#:import-path "go.uber.org/fx"))
(native-inputs
- (list go-github-com-stretchr-testify-next))
+ (list go-github-com-stretchr-testify))
(propagated-inputs
(list go-go-uber-org-dig
go-go-uber-org-goleak
@@ -5252,7 +5690,7 @@ applications out of reusable, composable modules.")
(string-append "src/" import-path
"/stacktrace_ext_test.go")))))))
(native-inputs
- (list go-github-com-stretchr-testify-next
+ (list go-github-com-stretchr-testify
go-go-uber-org-goleak
go-golang-org-x-lint
go-honnef-co-go-tools))
@@ -5277,6 +5715,30 @@ Go.")
(list
#:import-path "gopkg.in/alecthomas/kingpin.v2"))))
+(define-public go-gopkg-in-ini-v1
+ (package
+ (name "go-gopkg-in-ini-v1")
+ (version "1.67.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/go-ini/ini")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1vpzkjmrwp7bqqsijp61293kk2vn6lcck56j8m5y6ks6cf21lpap"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "gopkg.in/ini.v1"))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (home-page "https://gopkg.in/ini.v1")
+ (synopsis "Go library for ini files")
+ (description "Go library for ini files")
+ (license license:asl2.0)))
+
(define-public go-gopkg-in-natefinch-lumberjack.v2
(package
(name "go-gopkg-in-natefinch-lumberjack.v2")
@@ -5458,6 +5920,21 @@ tool."))))
"\nThis package provides an command line interface (CLI)
tool."))))
+(define-public go-tomlv
+ (package
+ (inherit go-github-com-burntsushi-toml)
+ (name "go-tomlv")
+ (arguments
+ (list
+ #:install-source? #f
+ #:tests? #f ; no tests.
+ #:import-path "github.com/BurntSushi/toml/cmd/tomlv"
+ #:unpack-path "github.com/BurntSushi/toml"))
+ (description
+ (string-append (package-description go-github-com-burntsushi-toml)
+ " This package provides an command line interface (CLI)
+tool."))))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 1298a8c58b..50ac5328c6 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -951,7 +951,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.21)
(name "go")
- (version "1.22.2")
+ (version "1.22.5")
(source
(origin
(method git-fetch)
@@ -960,7 +960,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0p6v5dl4mzlrma6v1a26d8zr4csq5mm10d9sdhl3kn9d22vphql1"))))
+ (base32 "1ahcxhyfr4wa4yahpl1jzdr1pizp5xpa6cy96jz649zsp21640d9"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.21)
((#:phases phases)
@@ -1123,39 +1123,6 @@ cluster segmentation algorithm.")
'(#:unpack-path "github.com/apparentlymart/go-textseg/autoversion"
#:import-path "github.com/apparentlymart/go-textseg/autoversion/textseg"))))
-(define-public go-github-com-avast-retry-go
- (let ((commit "a322e24d96313ab405dec28ad5711f036c6d25a3")
- (revision "0"))
- (package
- (name "go-github-com-avast-retry-go")
- (version (git-version "2.4.2" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/avast/retry-go")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0hb4b1668516a4gv8avmflr565b6c1h93phdb068hcjxxj8767ba"))))
- (build-system go-build-system)
- (arguments
- (list
- #:import-path "github.com/avast/retry-go"
- #:phases #~(modify-phases %standard-phases
- (add-after 'unpack 'remove-examples
- (lambda* (#:key import-path #:allow-other-keys)
- (delete-file-recursively
- (string-append "src/" import-path "/examples")))))))
- (propagated-inputs (list go-github-com-stretchr-testify))
- (home-page "https://github.com/avast/retry-go")
- (synopsis "Simple golang library for retry mechanism")
- (description "This package is a simple Go library that provides retry
-functionality for functions that may fail. It includes various customizable
-retry strategies, such as fixed delay, backoff delay, and random delay.")
- (license license:expat))))
-
(define-public go-github-com-operatorfoundation-shapeshifter-transports
(package
(name "go-github-com-operatorfoundation-shapeshifter-transports")
@@ -3048,9 +3015,9 @@ termination.")
"t.Fatalf(`Killf(\"BO%%s")))))))
(home-page "https://gopkg.in/tomb.v1")))
-(define-public go-github.com-jtolds-gls
+(define-public go-github-com-jtolds-gls
(package
- (name "go-github.com-jtolds-gls")
+ (name "go-github-com-jtolds-gls")
(version "4.20")
(source (origin
(method git-fetch)
@@ -3188,7 +3155,7 @@ command-line parsers.")
"./scan/..."))))))))
(propagated-inputs
(list go-github-com-google-go-cmdtest
- go-github-com-google-go-cmp-cmp
+ go-github-com-google-go-cmp
go-golang-org-x-exp
go-golang-org-x-mod
go-golang-org-x-sync
@@ -3240,7 +3207,7 @@ the @url{https://vuln.go.dev,Go Vulnerability Database}.")
(lambda _
(delete-file-recursively "src/golang.org/x/tools"))))))
(native-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-jba-printsrc
go-github-com-jba-templatecheck
go-github-com-sergi-go-diff
@@ -3262,60 +3229,6 @@ developed by the Go team. It provides IDE features to any LSP-compatible
editor.")
(license license:bsd-3)))
-(define-public go-golang-org-x-oauth2
- (let ((commit "0f29369cfe4552d0e4bcddc57cc75f4d7e672a33")
- (revision "1"))
- (package
- (name "go-golang-org-x-oauth2")
- (version (git-version "0.0.0" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://go.googlesource.com/oauth2")
- (commit commit)))
- (file-name (string-append "go.googlesource.com-oauth2-"
- version "-checkout"))
- (sha256
- (base32
- "06jwpvx0x2gjn2y959drbcir5kd7vg87k0r1216abk6rrdzzrzi2"))))
- (build-system go-build-system)
- (arguments
- `(#:import-path "golang.org/x/oauth2"))
- (propagated-inputs
- (list go-cloud-google-com-go-compute-metadata
- 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
- spec in Go.")
- (license license:bsd-3))))
-
-(define-public go-github-com-jpillora-backoff
- (let ((commit
- "06c7a16c845dc8e0bf575fafeeca0f5462f5eb4d")
- (revision "0"))
- (package
- (name "go-github-com-jpillora-backoff")
- (version (git-version "0.0.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/jpillora/backoff")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0xhvxr7bm47czdc5hy3kl508z3y4j91i2jm7vg774i52zych6k4l"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/jpillora/backoff"))
- (home-page "https://github.com/jpillora/backoff")
- (synopsis "Simple exponential backoff counter in Go")
- (description "This package is a simple exponential backoff counter in
-Go.")
- (license license:expat))))
-
(define-public go-github-com-stretchr-objx
(package
(name "go-github-com-stretchr-objx")
@@ -3357,30 +3270,6 @@ Go.")
slices, JSON and other data.")
(license license:expat)))
-(define-public go-github-com-technoweenie-multipartstreamer
- (package
- (name "go-github-com-technoweenie-multipartstreamer")
- (version "1.0.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/technoweenie/multipartstreamer")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "159jhcabdkds8m5777zfs8p5z3snpjhzz7q9aq9wjpcvh6xlljqa"))))
- (build-system go-build-system)
- (arguments
- (list #:tests? #f ; Upstream tests are broken.
- #:import-path "github.com/technoweenie/multipartstreamer"))
- (home-page "https://github.com/technoweenie/multipartstreamer")
- (synopsis "MIME multipart format streamer")
- (description
- "This package helps you encode large files in MIME multipart format
-without reading the entire content into memory.")
- (license license:expat)))
-
(define-public go-github-com-tevino-abool
(let ((commit
"3c25f2fe7cd0ef3eabefce1d90efd69a65d35b12")
@@ -3653,7 +3542,7 @@ all types of configuration needs and formats.")
(define-public go-github-com-fsnotify-fsnotify
(package
(name "go-github-com-fsnotify-fsnotify")
- (version "1.4.9")
+ (version "1.7.0")
(source
(origin
(method git-fetch)
@@ -3663,7 +3552,7 @@ all types of configuration needs and formats.")
(file-name (git-file-name name version))
(sha256
(base32
- "1i1r72knpbfwwql9frn9bqc3nhfc2ai5m6qllcyr6wban62lr40x"))))
+ "1h7vs21lkj4bqbw5a6mqykaf56y181r0nja7c8pzajkvbsc39y8m"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/fsnotify/fsnotify"))
@@ -3793,7 +3682,7 @@ updating files, like @command{tail -f}.")
(define-public go-github-com-sirupsen-logrus
(package
(name "go-github-com-sirupsen-logrus")
- (version "1.9.0")
+ (version "1.9.3")
(source
(origin
(method git-fetch)
@@ -3803,7 +3692,7 @@ updating files, like @command{tail -f}.")
(file-name (git-file-name name version))
(sha256
(base32
- "12i402dxq5js4npnncg043vx874h6nk4ffn4gswcccxrp6h10ivz"))))
+ "1jz7nyq88i9fwfpp7krl046q62kjn6lb9j4r932bxnpypl1hwc49"))))
(build-system go-build-system)
(arguments
(list
@@ -4091,30 +3980,6 @@ which satisfies the cron expression.")
(license (list license:gpl3+
license:asl2.0)))))
-(define-public go-gopkg-in-ini-v1
- (package
- (name "go-gopkg-in-ini-v1")
- (version "1.56.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/go-ini/ini")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0j5z0cngg6mq2f9id083jcdi7k6r2h35714pashv6sdv2q7bmfc5"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "gopkg.in/ini.v1"
- ;; Requires large unpackaged test framework
- #:tests? #f))
- (home-page "https://gopkg.in/ini.v1")
- (synopsis "Go library for ini files")
- (description "Go library for ini files")
- (license license:asl2.0)))
-
(define-public go-gopkg-in-yaml-v3
(package
(name "go-gopkg-in-yaml-v3")
@@ -5730,266 +5595,6 @@ a cron spec parser and job runner.")
"This is a fork of another go-libvterm library for use with aerc.")
(license license:expat))))
-(define-public go-github-com-emersion-go-imap
- (package
- (name "go-github-com-emersion-go-imap")
- (version "1.2.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-imap")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0ak2ysvfcc9w0g1070msis8x9sh6gzvf0nd65ks594siwbmqddw8"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-imap"))
- (propagated-inputs (list go-golang-org-x-text
- go-github-com-emersion-go-sasl
- go-github-com-emersion-go-message))
- (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
-can be used to build IMAP clients and servers.")
- (license license:expat)))
-
-(define-public go-github-com-emersion-go-imap-sortthread
- (package
- (name "go-github-com-emersion-go-imap-sortthread")
- (version "1.2.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-imap-sortthread")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1cfbgz1l5angnj52v9pxwggai2shx0h78ffcp7j4r4lr7lzflnwz"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-imap-sortthread"))
- (propagated-inputs (list go-golang-org-x-text
- go-github-com-emersion-go-sasl
- go-github-com-emersion-go-imap))
- (home-page "https://github.com/emersion/go-imap-sortthread")
- (synopsis "Sorting and threading of messages for the imap package")
- (description
- "The sortthread package implements message sorting and threading for
-@code{go-github-com-emersion-go-imap}.")
- (license license:expat)))
-
-(define-public go-github-com-emersion-go-smtp
- (package
- (name "go-github-com-emersion-go-smtp")
- (version "0.15.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-smtp")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1vhc0vpjd4yhxk6wrh01sdpi7nprjn98s46yy82xwlkm0cskl0h7"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-smtp"))
- (propagated-inputs (list go-github-com-emersion-go-sasl))
- (home-page "https://github.com/emersion/go-smtp")
- (synopsis "SMTP implementation for Go")
- (description
- "This package implements the Simple Mail Transfer Protocol as
-defined by RFC 5321.")
- (license license:expat)))
-
-(define-public go-github-com-emersion-go-sasl
- (let ((commit "0b9dcfb154ac3d7515b08bc2691a0332800edfe9")
- (revision "1"))
- (package
- (name "go-github-com-emersion-go-sasl")
- (version (git-version "0.0.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-sasl")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1cbf86wkqrdinfydndgdlnayg4a5mg3d4vqra377j2sfkg7wj0hs"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-sasl"))
- (home-page "https://github.com/emersion/go-sasl")
- (synopsis "SASL library written in Go")
- (description "This package provides a SASL library written in Go.")
- (license license:expat))))
-
-(define-public go-github-com-emersion-go-imap-idle
- (let ((commit "2704abd7050ed7f2143753554ee23affdf847bd9")
- (revision "0"))
- (package
- (name "go-github-com-emersion-go-imap-idle")
- (version (git-version "0.0.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-imap-idle")
- (commit commit)))
- (sha256
- (base32
- "0blwcadmxgqsdwgr9m4jqfbpfa2viw5ah19xbybpa1z1z4aj5cbc"))
- (file-name (git-file-name name version))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/emersion/go-imap-idle"))
- (native-inputs
- (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.")
- (license license:expat))))
-
-(define-public go-github-com-emersion-go-maildir
- (package
- (name "go-github-com-emersion-go-maildir")
- (version "0.3.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-maildir")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1rs9kbacjpcza25pmdkbm7sdm7r6gq4g44nihi9asyrvspx96zf2"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-maildir"))
- (home-page "https://github.com/emersion/go-maildir")
- (synopsis "Maildir interface for Go")
- (description
- "This package provides an interface to mailboxes in the Maildir
-format.")
- (license license:expat)))
-
-(define-public go-github-com-emersion-go-milter
- (package
- (name "go-github-com-emersion-go-milter")
- (version "0.3.3")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-milter")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "10vpry5gjz2bh9qchcx4p59zm7cc6cb6bfkii2n6vsn4svb950sa"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-milter"))
- (propagated-inputs (list go-github-com-emersion-go-message))
- (home-page "https://github.com/emersion/go-milter")
- (synopsis "Milter mail filters in Go")
- (description
- "This package provides an interface for implementing milter mail
-filters for Go.")
- (license license:bsd-2)))
-
-(define-public go-github-com-emersion-go-msgauth
- (package
- (name "go-github-com-emersion-go-msgauth")
- (version "0.6.6")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-msgauth")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0ds8yr4cm9wigcxg1sxc2m0wmy4z9n6gws3mj50dmf2ayij69z9j"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-msgauth"
- #:tests? #f ; Source-only package.
- #:phases
- #~(modify-phases %standard-phases
- ;; Source-only package.
- (delete 'build))))
- (propagated-inputs (list go-golang-org-x-crypto
- go-github-com-emersion-go-milter
- go-github-com-emersion-go-message))
- (home-page "https://github.com/emersion/go-msgauth")
- (synopsis "Email authentication for Go")
- (description
- "This package provides a Go library for authenticating emails.")
- (license license:expat)))
-
-(define-public go-github-com-emersion-go-mbox
- (package
- (name "go-github-com-emersion-go-mbox")
- (version "1.0.3")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-mbox")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0vnadh2khx7sxn0irrd8gz8ra02x7ij0q8zglq3rqffqil06nliv"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-mbox"))
- (home-page "https://github.com/emersion/go-mbox")
- (synopsis "Go library for handling @code{mbox} files")
- (description
- "This package provides a library for parsing and formatting
-@code{mbox} files.")
- (license license:expat)))
-
-(define-public go-github-com-google-go-cmp-cmp
- (package
- (name "go-github-com-google-go-cmp-cmp")
- (version "0.5.9")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/google/go-cmp")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0a13m7l1jrysa7mrlmra8y7n83zcnb23yjyg3a609p8i9lxkh1wm"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/google/go-cmp/cmp"
- #:unpack-path "github.com/google/go-cmp"
- #:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key inputs #:allow-other-keys #:rest args)
- (unless
- ;; The tests fail when run with gccgo.
- (false-if-exception (search-input-file inputs "/bin/gccgo"))
- (apply (assoc-ref %standard-phases 'check) args)))))))
- (synopsis "Determine equality of values in Go")
- (description
- "This package is intended to be a more powerful and safer
-alternative to @@code{reflect.DeepEqual} for comparing whether two values are
-semantically equal.")
- (home-page "https://github.com/google/go-cmp")
- (license license:bsd-3)))
-
(define-public go-github-com-google-uuid
(package
(name "go-github-com-google-uuid")
@@ -6139,7 +5744,7 @@ create or replace a file or symbolic link.")
(define-public go-gotest-tools-internal-format
(package (inherit (go-gotest-tools-package "internal/format"))
(native-inputs
- (list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp))
+ (list go-github-com-pkg-errors go-github-com-google-go-cmp))
(synopsis "Formats messages for use with gotest-tools")
(description "This package provides a way to format messages for use
with gotest-tools.")))
@@ -6164,7 +5769,7 @@ with gotest-tools.")))
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args))))))))
(native-inputs
- (list go-github-com-pkg-errors go-github-com-google-go-cmp-cmp))
+ (list go-github-com-pkg-errors go-github-com-google-go-cmp))
(synopsis "Source code AST formatters for gotest-tools")
(description "This package provides source code AST formatters for
gotest-tools.")))
@@ -6177,7 +5782,7 @@ gotest-tools.")))
#:import-path "gotest.tools/assert"
#:unpack-path "gotest.tools"))
(propagated-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-pkg-errors
go-github-com-spf13-pflag
go-golang-org-x-tools))
@@ -6212,14 +5817,14 @@ test when a comparison fails.")
go-github-com-jonboulle-clockwork
go-golang-org-x-crypto
go-gotest-tools-assert
- go-github-com-google-go-cmp-cmp
+ go-github-com-google-go-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))
+ go-github-com-google-go-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
@@ -6227,90 +5832,6 @@ test results.")
(home-page "https://github.com/gotestyourself/gotestsum")
(license license:asl2.0)))
-(define-public go-github-com-golang-protobuf
- (package
- (name "go-github-com-golang-protobuf")
- (version "1.5.3")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/golang/protobuf")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "03f1w2cd4s8a3xhl61x7yjx81kbzlrjpvnnwmbhqnz814yi7h43i"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/golang/protobuf"
- #:phases
- #~(modify-phases %standard-phases
- ;; XXX: Workaround for go-build-system's lack of Go modules
- ;; support.
- (delete 'build)
- (replace 'check
- (lambda* (#:key tests? import-path #:allow-other-keys)
- (when tests?
- (with-directory-excursion (string-append "src/" import-path)
- (invoke "go" "test" "-v" "./..."))))))))
- (propagated-inputs
- (list go-google-golang-org-protobuf))
- (synopsis "Go support for Protocol Buffers")
- (description "This package provides Go support for the Protocol Buffers
-data serialization format.")
- (home-page "https://github.com/golang/protobuf")
- (license license:bsd-3)))
-
-(define-public go-google-golang-org-protobuf
- (package
- (name "go-google-golang-org-protobuf")
- (version "1.31.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://go.googlesource.com/protobuf")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1xf18kzz96hgfy1vlbnydrizzpxkqj2iamfdbj3dx5a1zz5mi8n0"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "google.golang.org/protobuf"
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'disable-failing-tests
- (lambda* (#:key tests? unpack-path #:allow-other-keys)
- (with-directory-excursion (string-append "src/" unpack-path)
- (substitute* (find-files "." "\\_test.go$")
- ;; XXX Failing on i686-linux:
- ;; panic: unaligned 64-bit atomic operation
- (("TestDynamicTypesExtensionNotFound")
- "OffTestDynamicTypesExtensionNotFound")
- (("TestDynamicTypesFilesChangeAfterCreation")
- "OffTestDynamicTypesFilesChangeAfterCreation")
- (("TestDynamicTypesFindExtensionByNameOrNumber")
- "OffTestDynamicTypesFindExtensionByNameOrNumber")))))
- ;; XXX: Workaround for go-build-system's lack of Go modules
- ;; support.
- (delete 'build)
- (replace 'check
- (lambda* (#:key tests? import-path #:allow-other-keys)
- (when tests?
- (with-directory-excursion (string-append "src/" import-path)
- (invoke "go" "test" "-v" "./..."))))))))
- (propagated-inputs (list go-github-com-google-go-cmp-cmp))
- (home-page "https://google.golang.org/protobuf")
- (synopsis "Go library for Protocol Buffers")
- (description
- "The protobuf package provides a Go implementation of Protocol Buffers, a
-language and platform neutral, extensible mechanism for serializing structured
-data.
-
-This package is a successor to @code{go-github-com-golang-protobuf} with an
-improved and cleaner API.")
- (license license:bsd-3)))
-
(define-public go-github-com-macronut-go-tproxy
(package
(name "go-github-com-macronut-go-tproxy")
@@ -6359,10 +5880,10 @@ efficient space usage.")
(home-page "https://github.com/bits-and-blooms/bitset")
(license license:bsd-3)))
-(define-public go-github-com-bits-and-blooms-bloom
+(define-public go-github-com-bits-and-blooms-bloom-v3
(package
- (name "go-github-com-bits-and-blooms-bloom")
- (version "3.6.0")
+ (name "go-github-com-bits-and-blooms-bloom-v3")
+ (version "3.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -6371,20 +5892,10 @@ efficient space usage.")
(file-name (git-file-name name version))
(sha256
(base32
- "02rpjlgl7k3755qnlsk519xazgqlk73b8wvkpqlvccywms5w77bq"))))
+ "022pyzjp862ysl30aj105i2xmapn400ambjh8h1dcyjy9c0f8agn"))))
(build-system go-build-system)
(arguments
- '(#:import-path "github.com/bits-and-blooms/bloom"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-import-path
- (lambda _
- ;; See 'go.mod' in the source distribution of Syncthing 1.5.0 for
- ;; more information.
- ;; <https://github.com/spaolacci/murmur3/issues/29>
- (substitute* "src/github.com/bits-and-blooms/bloom/bloom.go"
- (("spaolacci") "twmb"))
- #t)))))
+ (list #:import-path "github.com/bits-and-blooms/bloom"))
(propagated-inputs
(list go-github-com-twmb-murmur3 go-github-com-bits-and-blooms-bitset))
(synopsis "Bloom filters in Go")
@@ -7519,97 +7030,6 @@ system.")
formatting information, rather than the current locale name.")
(license license:expat))))
-(define-public go-github-com-prometheus-common
- (package
- (name "go-github-com-prometheus-common")
- (version "0.45.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/prometheus/common")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "006y6mlxglr2xzmdqxl5bwh899whfx1prcgjai7qhhs5ys5dspy5"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/prometheus/common"
- #:tests? #f
- #:phases
- (modify-phases %standard-phases
- ;; Source-only package
- (delete 'build))))
- (propagated-inputs
- (list go-github-com-golang-protobuf
- go-github-com-matttproud-golang-protobuf-extensions-v2
- go-github-com-prometheus-client-model))
- (synopsis "Prometheus metrics")
- (description "This package provides tools for reading and writing
-Prometheus metrics.")
- (home-page "https://github.com/prometheus/common")
- (license license:asl2.0)))
-
-(define-public go-github-com-prometheus-procfs
- (package
- (name "go-github-com-prometheus-procfs")
- (version "0.0.4")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/prometheus/procfs")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1z5jq5rjala0a0di4nwk1rai0z9f73qwqj6mgcbpjbg2qknlb544"))))
- (build-system go-build-system)
- (arguments
- '(#:import-path "github.com/prometheus/procfs"
- ;; The tests require Go modules, which are not yet supported in Guix's
- ;; Go build system.
- #:tests? #f))
- (propagated-inputs (list go-golang-org-x-sync))
- (synopsis "Go library for reading @file{/proc}")
- (description "The @code{procfs} Go package provides functions to retrieve
-system, kernel, and process metrics from the @file{/proc} pseudo file system.")
- (home-page "https://github.com/prometheus/procfs")
- (license license:asl2.0)))
-
-(define-public go-github-com-prometheus-client-golang
- (package
- (name "go-github-com-prometheus-client-golang")
- (version "1.17.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/prometheus/client_golang")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1v8vdvi9wlpf18nxi62diysfnh9gc3c3cqq6hvx378snsvvl6n82"))))
- (build-system go-build-system)
- (arguments
- '(#:tests? #f
- #:import-path "github.com/prometheus/client_golang"
- #:phases
- (modify-phases %standard-phases
- ;; Source-only package
- (delete 'build))))
- (propagated-inputs
- (list go-github-com-beorn7-perks-quantile
- go-github-com-golang-protobuf
- go-github-com-prometheus-client-model
- go-github-com-prometheus-common
- go-github-com-prometheus-procfs
- go-github-com-cespare-xxhash))
- (synopsis "HTTP server and client tools for Prometheus")
- (description "This package @code{promhttp} provides HTTP client and
-server tools for Prometheus metrics.")
- (home-page "https://github.com/prometheus/client_golang")
- (license license:asl2.0)))
-
(define-public go-github-com-zalando-go-keyring
(package
(name "go-github-com-zalando-go-keyring")
@@ -7653,7 +7073,7 @@ deleting secrets from the system keyring.")
'(#:unpack-path "github.com/zclconf/go-cty"
#:import-path "github.com/zclconf/go-cty/cty"))
(native-inputs
- (list go-github-com-google-go-cmp-cmp))
+ (list go-github-com-google-go-cmp))
(propagated-inputs
(list go-golang-org-x-text
go-github-com-vmihailenco-msgpack-v4
@@ -8053,7 +7473,7 @@ Gemini clients and servers.")
go-golang-org-x-sync
go-golang-org-x-mod
go-github-com-rogpeppe-go-internal
- go-github-com-google-go-cmp-cmp
+ go-github-com-google-go-cmp
go-github-com-frankban-quicktest))
(home-page "https://mvdan.cc/gofumpt/")
(synopsis "Formats Go files with a stricter ruleset than gofmt")
@@ -8214,36 +7634,6 @@ friendly sizes. It converts boring ugly numbers to human-friendly strings and
back.")
(license license:expat)))
-(define-public go-github-com-oneofone-xxhash
- (package
- (name "go-github-com-oneofone-xxhash")
- (version "1.2.8")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/OneOfOne/xxhash")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0f98qk83l2fhpclvrgyxsa9b8m4pipf11fah85bnjl01wy4lvybw"))))
- (build-system go-build-system)
- (arguments
- (list
- #:import-path "github.com/OneOfOne/xxhash"
- #:phases #~(modify-phases %standard-phases
- (add-after 'unpack 'remove-benchmarks
- (lambda* (#:key import-path #:allow-other-keys)
- (delete-file-recursively
- (string-append "src/" import-path "/benchmarks")))))))
- (home-page "https://github.com/OneOfOne/xxhash")
- (synopsis "Go implementation of xxHash")
- (description "This is a native Go implementation of the
-@url{https://github.com/Cyan4973/xxHash, xxHash} algorithm, an extremely fast
-non-cryptographic hash algorithm, working at speeds close to RAM limits.")
- (license license:asl2.0)))
-
(define-public go-gopkg-in-djherbis-times-v1
(package
(name "go-gopkg-in-djherbis-times-v1")
@@ -8374,7 +7764,7 @@ parser.")
(define-public go-github-com-rivo-uniseg
(package
(name "go-github-com-rivo-uniseg")
- (version "0.2.0")
+ (version "0.4.7")
(source
(origin
(method git-fetch)
@@ -8383,7 +7773,7 @@ parser.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0j7h22vfmjj562vr8gpsyrkrwp1pq9ayh5fylv24skxb467g9f0q"))))
+ (base32 "0nlcqyvq4vhq3hqhk84h6fp0jbqkjj88kcpcl853yr7sh4sisdxc"))))
(build-system go-build-system)
(arguments '(#:import-path "github.com/rivo/uniseg"))
(home-page "https://github.com/rivo/uniseg")
@@ -8478,14 +7868,26 @@ dependencies and a simple API.")
"06ay82gqm3k649m7x0r3a3crnqv9x0yxhyqfabrf1b7inki35mfs"))))
(build-system go-build-system)
(arguments
- (list #:import-path "github.com/Arceliar/ironwood"
- #:tests? #f
- #:phases
- #~(modify-phases %standard-phases
- ;; Source-only package
- (delete 'build))))
+ (list
+ #:import-path "github.com/Arceliar/ironwood"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-examples
+ (lambda* (#:key import-path #:allow-other-keys)
+ (delete-file-recursively
+ (string-append "src/" import-path "/cmd/ironwood-example"))))
+ ;; XXX: Replace when go-build-system supports nested path.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key import-path tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
(propagated-inputs
- (list go-golang-org-x-crypto go-github-com-arceliar-phony))
+ (list go-github-com-arceliar-phony
+ go-github-com-bits-and-blooms-bitset
+ go-github-com-bits-and-blooms-bloom-v3
+ go-golang-org-x-crypto))
(home-page "https://github.com/Arceliar/ironwood")
(synopsis "Experimental network routing library")
(description
@@ -8524,70 +7926,65 @@ be useful for other network applications.")
(define-public aws-vault
(package
(name "aws-vault")
- (version "6.6.2")
- (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
- "0fjdslg7nhlm9hl7bg69j1izrjx6sspbhwk973d0m8ig9nkdja06"))))
+ (version "7.2.0")
+ (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 "1dqg6d2k8r80ww70afghf823z0pijha1i0a0c0c6918yb322zkj2"))))
(build-system go-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:import-path "github.com/99designs/aws-vault"
+ #: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 import-path #:allow-other-keys)
+ (let* ((zsh-site-dir
+ (string-append #$output "/share/zsh/site-functions"))
+ (bash-completion-dir
+ (string-append #$output "/share/bash-completion/completions"))
+ (fish-completion-dir
+ (string-append #$output "/share/fish/completions")))
+ (for-each mkdir-p (list bash-completion-dir
+ fish-completion-dir
+ zsh-site-dir))
+ (with-directory-excursion
+ (string-append "src/" import-path "/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")))))))))
(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-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-golang-org-x-term
- 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
+ (list go-github-com-99designs-keyring
+ go-github-com-alecthomas-kingpin-v2
go-github-com-aws-aws-sdk-go-v2
go-github-com-aws-aws-sdk-go-v2-config
+ go-github-com-aws-aws-sdk-go-v2-credentials
go-github-com-aws-aws-sdk-go-v2-service-iam
go-github-com-aws-aws-sdk-go-v2-service-sso
go-github-com-aws-aws-sdk-go-v2-service-ssooidc
- go-github-com-aws-aws-sdk-go-v2-service-sts))
- (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")
+ go-github-com-aws-aws-sdk-go-v2-service-sts
+ go-github-com-google-go-cmp
+ go-github-com-mattn-go-isatty
+ go-github-com-mattn-go-tty
+ go-github-com-skratchdot-open-golang
+ go-golang-org-x-term
+ go-gopkg-in-ini-v1))
+ (home-page "https://github.com/99designs/aws-vault")
+ (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.
@@ -8596,7 +7993,6 @@ 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
@@ -8689,7 +8085,7 @@ aware of your profiles and configuration in ~/.aws/config.")
(package
(inherit go-gopkg-in-ini)
(name "go-github-com-go-ini-ini")
- (version "1.66.6")
+ (version "1.67.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8698,7 +8094,7 @@ aware of your profiles and configuration in ~/.aws/config.")
(file-name (git-file-name name version))
(sha256
(base32
- "0kqg13606hnw8f75cb59fsy1m85kiqf3csi2g7q2512avdmaphc9"))))
+ "1vpzkjmrwp7bqqsijp61293kk2vn6lcck56j8m5y6ks6cf21lpap"))))
(arguments
(list #:import-path "github.com/go-ini/ini"))
(propagated-inputs (list go-github-com-stretchr-testify))))
@@ -8969,31 +8365,6 @@ result is a conceptually simple, but highly performant, disk-backed storage syst
email library.")
(license license:gpl3+)))
-(define-public go-github-com-emersion-go-message
- (package
- (name "go-github-com-emersion-go-message")
- (version "0.16.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emersion/go-message")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1j5qdhsna28xcs843zsiccw700rld5hin466dl0n3a0ax1w13ay0"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/emersion/go-message"))
- (propagated-inputs (list go-golang-org-x-text
- go-github-com-emersion-go-textwrapper))
- (home-page "https://github.com/emersion/go-message")
- (synopsis "Internet messages and MIME for Go")
- (description
- "The message package implements the Internet Message Format and Multipurpose
-Internet Mail Extensions in Go.")
- (license license:expat)))
-
(define-public go-github-com-jaytaylor-html2text
(package
(name "go-github-com-jaytaylor-html2text")
@@ -9022,65 +8393,6 @@ Internet Mail Extensions in Go.")
text-only mail clients to display them.")
(license license:expat)))
-(define-public go-github-com-jhillyerd-enmime
- (package
- (name "go-github-com-jhillyerd-enmime")
- (version "1.2.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/jhillyerd/enmime")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "03pir9wq9ha2i2ifj819yv5i0lvrgdn904ksbzgc3k8bqc497ydn"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/jhillyerd/enmime"))
- (native-inputs
- (list go-github-com-stretchr-testify))
- (propagated-inputs (list
- go-github-com-cention-sany-utf7
- go-github-com-go-test-deep
- go-github-com-gogs-chardet
- go-github-com-jaytaylor-html2text
- go-github-com-pkg-errors
- go-golang-org-x-text))
- (home-page "https://github.com/jhillyerd/enmime")
- (synopsis "MIME encoder and decoder for Go")
- (description
- "The enmime package implements a MIME encoding and decoding
-library geared towards parsing MIME encoded emails.")
- (license license:expat)))
-
-(define-public go-github-com-gatherstars-com-jwz
- (package
- (name "go-github-com-gatherstars-com-jwz")
- (version "1.3.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/gatherstars-com/jwz")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1zxg2vmka80m1vnlb1v1gdlrwnkpakcmwi1hxpl8jjjiyd4z2j2i"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/gatherstars-com/jwz"))
- (propagated-inputs (list go-github-com-rivo-tview
- go-github-com-jhillyerd-enmime
- go-github-com-gdamore-tcell-v2))
- (home-page "https://github.com/gatherstars-com/jwz")
- (synopsis "Implementation in Go of the email threading algorithm
-originally invented for Netscape Mail")
- (description
- "The jwz package provides an implementation of the email threading
-algorithm originally designed for use in Netscape Mail 2.0 for Go.")
- (license license:asl2.0)))
-
(define-public go-github-com-creack-pty
(package
(name "go-github-com-creack-pty")
@@ -9317,39 +8629,10 @@ useful during debugging, to avoid wrapping long output lines in the
terminal.")
(license license:expat)))
-(define-public go-github-com-arran4-golang-ical
- (package
- (name "go-github-com-arran4-golang-ical")
- (version "0.0.0-20220517104411-fd89fefb0182")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/arran4/golang-ical")
- (commit (go-version->git-ref version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0bxs0b5yg26liiifc0cc41l307r0wc93hp8iygv8dgpc60yzncaw"))))
- (build-system go-build-system)
- (arguments
- (list #:import-path "github.com/arran4/golang-ical"))
- (propagated-inputs (list go-gopkg-in-yaml-v3
- go-gopkg-in-check-v1
- go-github-com-stretchr-testify
- go-github-com-niemeyer-pretty
- go-github-com-kr-text
- go-github-com-davecgh-go-spew))
- (home-page "https://github.com/arran4/golang-ical")
- (synopsis "Handle iCalenders in Go")
- (description
- "The @code{ical} package provides an ICS/iCalender parser and
-serialiser for Go.")
- (license license:asl2.0)))
-
(define-public go-github-com-lithammer-fuzzysearch
(package
(name "go-github-com-lithammer-fuzzysearch")
- (version "1.1.5")
+ (version "1.1.8")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -9358,7 +8641,7 @@ serialiser for Go.")
(file-name (git-file-name name version))
(sha256
(base32
- "1b036sm42cf64diwlqhx24vxy6g5afrmfbdfyqhpg8zrii3lpwns"))))
+ "0fp00gzbrr5fnz01lmkjqcs5z24zjrsp4r13ia0x0wslp5r13hv8"))))
(build-system go-build-system)
(propagated-inputs (list go-golang-org-x-text))
(arguments
diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 55c10724c4..ccf5728e4f 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -37,6 +37,7 @@
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
+ #:use-module (gnu packages prometheus)
#:use-module (gnu packages python)
#:use-module (gnu packages shells)
#:use-module (gnu packages specifications))
@@ -606,7 +607,7 @@ and @code{go-ipld-format} legacy interface.")
go-github-com-warpfork-go-testmark
specification-ipld))
(propagated-inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-ipfs-go-block-format
go-github-com-ipfs-go-cid
go-github-com-multiformats-go-multicodec
@@ -799,7 +800,7 @@ daemon as described in
#:import-path "github.com/whyrusleeping/cbor-gen"))
(propagated-inputs
(list go-github-com-ipfs-go-cid
- go-github-com-google-go-cmp-cmp
+ go-github-com-google-go-cmp
go-golang-org-x-xerrors))
(home-page "https://github.com/whyrusleeping/cbor-gen")
(synopsis "Codegen for CBOR codecs on the specified types")
@@ -1135,6 +1136,7 @@ written in Go.")
;; available.
;;
go-github-com-alecthomas-units ; github.com/ipfs/boxo
+ go-github-com-cespare-xxhash
go-github-com-docker-go-units ; github.com/containerd/cgroups
go-github-com-felixge-httpsnoop ; go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
go-github-com-flynn-noise ; github.com/libp2p/go-libp2p
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index 89be2e2b66..fd0271c5d6 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -90,6 +90,7 @@
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages prometheus)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-xyz)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 675a9121d4..128722841a 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -9324,31 +9324,45 @@ nfnetlink_queue, nfnetlink_conntrack) and their respective users and/or
management tools in userspace.")
(license license:gpl2)))
-(define-public go-netlink
+(define-public go-github-com-vishvananda-netlink
(package
- (name "go-netlink")
- (version "1.0.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/vishvananda/netlink")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0hpzghf1a4cwawzhkiwdzin80h6hd09fskl77d5ppgc084yvj8x0"))))
+ (name "go-github-com-vishvananda-netlink")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/vishvananda/netlink")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1vhl30p1gx636a088ls4h6a0l8jjyfvz79fr5w0qzdrg4qg9h08h"))))
(build-system go-build-system)
(arguments
- `(#:tests? #f ; Tests depend on specific kernel modules.
- #:import-path "github.com/vishvananda/netlink"))
- (native-inputs
- (list go-golang-org-x-sys go-netns))
+ (list
+ ;; The tests are unsupported on all architectures except x86_64-linux:
+ ;; cannot use 0xabcdef99 (untyped int constant 2882400153) as int value
+ ;; in struct literal (overflows)
+ #:tests? (and (not (%current-target-system)) (target-x86-64?))
+ #:import-path "github.com/vishvananda/netlink"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? unpack-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" unpack-path)
+ (substitute* (find-files "." "\\_test.go$")
+ ;; Disable tests requiring root access.
+ (("TestNetNsIdByFd") "OffTestNetNsIdByFd")
+ (("TestNetNsIdByPid") "OffTestNetNsIdByPid"))))))))
+ (propagated-inputs
+ (list go-golang-org-x-sys go-github-com-vishvananda-netns))
(home-page "https://github.com/vishvananda/netlink")
(synopsis "Simple netlink library for Go")
- (description "The netlink package provides a simple netlink library for
-Go. Netlink is the interface a user-space program in Linux uses to
-communicate with the kernel. It can be used to add and remove interfaces, set
-IP addresses and routes, and configure IPsec.")
+ (description
+ "The netlink package provides a simple netlink library for Go. Netlink
+is the interface a user-space program in Linux uses to communicate with the
+kernel. It can be used to add and remove interfaces, set IP addresses and
+routes, and configure IPsec.")
(license license:asl2.0)))
(define-public libinih
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index d4f7924747..ea7ae8c150 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -56,6 +56,7 @@
;;; Copyright © 2023 Arjan Adriaanse <arjan@adriaan.se>
;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2024 Benjamin Slade <slade@lambda-y.net>
+;;; Copyright © 2024 Jean Simard <woshilapin@tuziwo.info>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -5034,7 +5035,7 @@ remote SMTP server.")
(define-public aerc
(package
(name "aerc")
- (version "0.15.2")
+ (version "0.18.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -5043,7 +5044,7 @@ remote SMTP server.")
(file-name (git-file-name name version))
(sha256
(base32
- "1gbprx0i8d13q974n5hsys6lllav5cpll3cwrr1hfw6307hc001r"))))
+ "1gj8m8xvqaf0lsnk4h1n9d0qhwi8d3mm0w9zhw16v888n7rll9fb"))))
(build-system go-build-system)
(arguments
(list #:import-path "git.sr.ht/~rjarry/aerc"
@@ -5052,23 +5053,19 @@ remote SMTP server.")
#:build-flags
#~(list "-tags=notmuch"
(string-append
- "-ldflags=-X main.Version=" #$version
- " -X git.sr.ht/~rjarry/aerc/config.libexecDir="
- #$output "/libexec/aerc"
- " -X git.sr.ht/~rjarry/aerc/config.shareDir="
- #$output "/share/aerc"))
+ "-ldflags=-X main.Version=" #$version
+ " -X git.sr.ht/~rjarry/aerc/config.libexecDir="
+ #$output "/libexec/aerc"
+ " -X git.sr.ht/~rjarry/aerc/config.shareDir="
+ #$output "/share/aerc"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key import-path inputs #:allow-other-keys)
- (with-directory-excursion
- (string-append "src/" import-path)
- (substitute* (list "config/config.go"
- "lib/templates/template.go"
- "widgets/compose.go"
- "widgets/msgviewer.go"
- "worker/maildir/worker.go"
- "worker/notmuch/worker.go")
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* (find-files "." "\\.go$")
+ ;; Patch all occurrences to "sh" with absolute path to
+ ;; the shell available in Guix.
(("\"sh\"")
(string-append
"\"" (search-input-file inputs "bin/sh")
@@ -5077,8 +5074,8 @@ remote SMTP server.")
(substitute* "commands/z.go"
(("\"zoxide\"")
(string-append
- "\"" (search-input-file inputs "bin/zoxide")
- "\""))))
+ "\"" (search-input-file inputs "bin/zoxide")
+ "\""))))
(substitute* (list "lib/crypto/gpg/gpg.go"
"lib/crypto/gpg/gpg_test.go"
"lib/crypto/gpg/gpgbin/keys.go"
@@ -5100,51 +5097,47 @@ remote SMTP server.")
(string-append "PREFIX=" #$output)))))))
(inputs
(append
- (list gnupg
- go-github-com-zenhack-go-notmuch
- go-golang-org-x-oauth2
- go-github-com-xo-terminfo
- go-github-com-stretchr-testify
- go-github-com-riywo-loginshell
- go-github-com-pkg-errors
- go-github-com-mitchellh-go-homedir
- go-github-com-miolini-datacounter
- go-github-com-mattn-go-runewidth
- go-github-com-mattn-go-isatty
- go-github-com-lithammer-fuzzysearch
- go-github-com-kyoh86-xdg
- go-github-com-imdario-mergo
- go-github-com-google-shlex
- go-github-com-go-ini-ini
- go-github-com-gdamore-tcell-v2
- go-github-com-gatherstars-com-jwz
- go-github-com-fsnotify-fsnotify
- go-github-com-emersion-go-smtp
- go-github-com-emersion-go-sasl
- go-github-com-emersion-go-pgpmail
- go-github-com-emersion-go-message
- go-github-com-emersion-go-maildir
- go-github-com-emersion-go-imap-sortthread
- go-github-com-emersion-go-imap
- go-github-com-emersion-go-msgauth
- go-github-com-emersion-go-mbox
- go-github-com-ddevault-go-libvterm
- go-github-com-danwakefield-fnmatch
- go-github-com-creack-pty
- go-github-com-arran4-golang-ical
- go-github-com-protonmail-go-crypto
- go-github-com-syndtr-goleveldb
- go-git-sr-ht-sircmpwn-getopt
- go-git-sr-ht-rockorager-tcell-term
- python
- python-vobject)
- (if (supported-package? zoxide)
- (list zoxide)
- '())))
- (native-inputs (list scdoc))
+ (list gnupg
+ notmuch ; Failing to build without it.
+ python
+ python-vobject)
+ (if (supported-package? zoxide)
+ (list zoxide)
+ '())))
+ (native-inputs
+ (list go-git-sr-ht-rjarry-go-opt
+ go-git-sr-ht-rockorager-go-jmap
+ go-git-sr-ht-rockorager-vaxis
+ go-github-com-protonmail-go-crypto
+ go-github-com-arran4-golang-ical
+ go-github-com-danwakefield-fnmatch
+ go-github-com-emersion-go-imap
+ go-github-com-emersion-go-imap-sortthread
+ go-github-com-emersion-go-maildir
+ go-github-com-emersion-go-mbox
+ go-github-com-emersion-go-message
+ go-github-com-emersion-go-msgauth
+ go-github-com-emersion-go-pgpmail
+ go-github-com-emersion-go-sasl
+ go-github-com-emersion-go-smtp
+ go-github-com-fsnotify-fsnotify
+ go-github-com-gatherstars-com-jwz
+ go-github-com-go-ini-ini
+ go-github-com-lithammer-fuzzysearch
+ go-github-com-mattn-go-isatty
+ go-github-com-mattn-go-runewidth
+ go-github-com-pkg-errors
+ go-github-com-riywo-loginshell
+ go-github-com-stretchr-testify
+ go-github-com-syndtr-goleveldb
+ go-golang-org-x-image
+ go-golang-org-x-oauth2
+ go-golang-org-x-sys
+ go-golang-org-x-tools
+ scdoc))
(home-page "https://git.sr.ht/~rjarry/aerc")
(synopsis "Email client for the terminal")
- (description "@code{aerc} is a textual email client for terminals. It
+ (description "@code{aerc} is a textual email client for terminals. It
features:
@enumerate
@item First-class support for using patches and @code{git send-email}
@@ -5157,3 +5150,41 @@ features:
;; <https://lists.sr.ht/~rjarry/aerc-devel/%3Cb5cb213a7d0c699a886971658c2476
;; 1073eb2391%40disroot.org%3E>
(license license:gpl3+)))
+
+(define-public hydroxide
+ (package
+ (name "hydroxide")
+ (version "0.2.29")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/hydroxide")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "11gbikrgm7nf0zjav64202wsnr9pvrmslm2rzg9d9rbvwdqcq1jl"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:import-path "github.com/emersion/hydroxide/cmd/hydroxide"
+ #:unpack-path "github.com/emersion/hydroxide"))
+ (native-inputs
+ (list go-github-com-protonmail-go-crypto
+ go-github-com-boltdb-bolt
+ go-github-com-emersion-go-bcrypt
+ go-github-com-emersion-go-imap
+ go-github-com-emersion-go-mbox
+ go-github-com-emersion-go-message
+ go-github-com-emersion-go-smtp
+ go-github-com-emersion-go-vcard
+ go-github-com-emersion-go-webdav
+ go-golang-org-x-crypto
+ go-golang-org-x-term))
+ (home-page "https://github.com/emersion/hydroxide")
+ (synopsis "ProtonMail CardDAV, IMAP and SMTP bridge")
+ (description
+ "This package implements a functionality to translate standard
+protocols (SMTP, IMAP, CardDAV) into ProtonMail API requests.")
+ (license license:expat)))
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 91aaccf06d..b22a755396 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -161,6 +161,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages prometheus)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
@@ -1916,30 +1917,40 @@ manage, and delete Internet resources from Gandi.net such as domain names,
virtual machines, and certificates.")
(license license:gpl3+)))
-(define-public go-netns
- (let ((commit "13995c7128ccc8e51e9a6bd2b551020a27180abd")
- (revision "1"))
- (package
- (name "go-netns")
- (version (git-version "0.0.0" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/vishvananda/netns")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1zk6w8158qi4niva5rijchbv9ixgmijsgqshh54wdaav4xrhjshn"))))
- (build-system go-build-system)
- (arguments
- `(#:import-path "github.com/vishvananda/netns"
- #:tests? #f)) ;tests require root privileges
- (home-page "https://github.com/vishvananda/netns")
- (synopsis "Simple network namespace handling for Go")
- (description "The netns package provides a simple interface for
-handling network namespaces in Go.")
- (license license:asl2.0))))
+(define-public go-github-com-vishvananda-netns
+ (package
+ (name "go-github-com-vishvananda-netns")
+ (version "0.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/vishvananda/netns")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0rci8c211m57nya9il81fz6459pia3dj5i4b16fp34vjrkcxliml"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/vishvananda/netns"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda* (#:key tests? unpack-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" unpack-path)
+ (substitute* (find-files "." "\\_test.go$")
+ ;; Disable tests requiring root access.
+ (("TestGetNewSetDelete") "OffTestGetNewSetDelete")
+ (("TestThreaded") "OffTestThreaded"))))))))
+ (propagated-inputs
+ (list go-golang-org-x-sys))
+ (home-page "https://github.com/vishvananda/netns")
+ (synopsis "Simple network namespace handling for Go")
+ (description
+ "The netns package provides a simple interface for handling network
+namespaces in Go.")
+ (license license:asl2.0)))
(define-public go-sctp
;; docker-libnetwork-cmd-proxy requires this exact commit.
@@ -4624,8 +4635,6 @@ QUIC protocol.")
(build-system go-build-system)
(arguments
(list #:import-path "github.com/yggdrasil-network/yggdrasil-go"
- ;; TODO: figure out how tests are run
- #:tests? #f
#:install-source? #f
#:phases
#~(modify-phases %standard-phases
@@ -4644,34 +4653,30 @@ QUIC protocol.")
#:import-path directory))
(list "github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasil"
"github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasilctl"
- "github.com/yggdrasil-network/yggdrasil-go/cmd/genkeys"))))))))
+ "github.com/yggdrasil-network/yggdrasil-go/cmd/genkeys")))))
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./cmd/..." "./src/..."))))))))
(propagated-inputs
- (list go-golang-zx2c4-com-wireguard
- go-golang-org-x-text
- go-golang-org-x-net
+ (list ;; go-golang-org-x-mobile ; Not packed yet, for contrib.
+ ;; go-golang-zx2c4-com-wireguard-windows ; Not packed yet, for tun.
+ go-github-com-arceliar-ironwood
+ go-github-com-arceliar-phony
+ go-github-com-cheggaaa-pb-v3
+ go-github-com-gologme-log
+ go-github-com-hashicorp-go-syslog
+ go-github-com-hjson-hjson-go-v4
+ go-github-com-kardianos-minwinsvc
+ go-github-com-olekukonko-tablewriter
+ go-github-com-quic-go-quic-go
+ go-github-com-vishvananda-netlink
go-golang-org-x-crypto
- go-golang-org-x-tools
+ go-golang-org-x-net
go-golang-org-x-sys
- go-netns
- go-netlink
- go-github-com-bits-and-blooms-bitset
- go-github-com-bits-and-blooms-bloom
- go-github-com-quic-go-quic-go
- go-github-com-hjson-hjson-go
- go-github-com-olekukonko-tablewriter
- go-github-com-mitchellh-mapstructure
- go-github-com-mattn-go-runewidth
- go-github-com-mattn-go-isatty
- go-github-com-mattn-go-colorable
- go-github-com-kardianos-minwinsvc
- go-github-com-hjson-hjson-go
- go-github-com-hashicorp-go-syslog
- go-github-com-gologme-log
- go-github-com-fatih-color
- go-github-com-cheggaaa-pb-v3
- go-github-com-vividcortex-ewma
- go-github-com-arceliar-phony
- go-github-com-arceliar-ironwood))
+ go-golang-org-x-text
+ go-golang-zx2c4-com-wireguard))
(home-page "https://yggdrasil-network.github.io/blog.html")
(synopsis
"Experiment in scalable routing as an encrypted IPv6 overlay network")
@@ -4702,7 +4707,7 @@ IPv6 Internet connectivity - it also works over IPv4.")
(define-public nebula
(package
(name "nebula")
- (version "1.8.2")
+ (version "1.9.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4711,7 +4716,7 @@ IPv6 Internet connectivity - it also works over IPv4.")
(file-name (git-file-name name version))
(sha256
(base32
- "0ly1axgmskrkmxhzymqis6gxf2wd7rvhycm94wfb8k0hirndvg5m"))
+ "08zzbx2v713zd9p7i4kd1bvcw47xb0092p5apba1x5wg6fpxw5zr"))
;; Remove windows-related binary blobs and files
(snippet
#~(begin
@@ -4749,7 +4754,7 @@ IPv6 Internet connectivity - it also works over IPv4.")
(list go-dario-cat-mergo
go-github-com-anmitsu-go-shlex
go-github-com-armon-go-radix
- go-github-com-cespare-xxhash
+ go-github-com-cespare-xxhash-v2
go-github-com-cyberdelia-go-metrics-graphite
go-github-com-flynn-noise
go-github-com-gogo-protobuf
@@ -4770,8 +4775,8 @@ IPv6 Internet connectivity - it also works over IPv4.")
go-golang-org-x-term
go-google-golang-org-protobuf
go-gopkg-in-yaml-v2
- go-netlink
- go-netns))
+ go-github-com-vishvananda-netlink
+ go-github-com-vishvananda-netns))
(home-page "https://github.com/slackhq/nebula")
(synopsis "Scalable, peer-to-peer overlay networking tool")
(description
diff --git a/gnu/packages/prometheus.scm b/gnu/packages/prometheus.scm
new file mode 100644
index 0000000000..5ed3acaeb3
--- /dev/null
+++ b/gnu/packages/prometheus.scm
@@ -0,0 +1,374 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
+;;; Copyright © 2024 Dominic Martinez <dom@dominicm.dev>
+;;; Copyright © 2024 Jesse Eisses <jesse@eisses.email>
+;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages prometheus)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix build-system go)
+ #:use-module (guix gexp)
+ #:use-module (guix git-download)
+ #:use-module (guix packages)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages golang-build)
+ #:use-module (gnu packages golang-check)
+ #:use-module (gnu packages golang-crypto)
+ #:use-module (gnu packages golang-web)
+ #:use-module (gnu packages golang-xyz))
+
+;;; Commentary:
+;;;
+;;; Libraries and commands related to, or provided by Prometheus project
+;;; <https://prometheus.io>.
+;;;
+;;; Please: Try to add new module packages in alphabetic order.
+;;;
+;;; Code:
+
+;;;
+;;; Libraries:
+;;;
+
+(define-public go-github-com-mwitkow-go-conntrack
+ (package
+ (name "go-github-com-mwitkow-go-conntrack")
+ (version "0.0.0-20190716064945-2f068394615f")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mwitkow/go-conntrack")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ymjmy12ks7smgwmrwsa5kf07d9w5kpk1dn650azlzr61b561aw7"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:tests? #f
+ #:import-path "github.com/mwitkow/go-conntrack"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; Breaking cycle:
+ ;; go-github-com-prometheus-common ->
+ ;; go-github-com-prometheus-client-golang ->
+ ;; go-github-com-mwitkow-go-conntrack ->
+ ;; go-github-com-prometheus-common
+ (delete 'build))))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-jpillora-backoff
+ go-github-com-munnerz-goautoneg
+ ;; go-github-com-prometheus-client-golang
+ go-golang-org-x-net))
+ (home-page "https://github.com/mwitkow/go-conntrack")
+ (synopsis "Go middleware for @code{net.Conn} tracking")
+ (description
+ "@url{https://prometheus.io/,Prometheus} monitoring and
+@url{https://godoc.org/golang.org/x/net/trace#@code{EventLog,(code}
+x/net/trace)} tracing wrappers @code{net.Conn}, both inbound
+(@@code{net.Listener}) and outbound (@@code{net.Dialer}).")
+ (license license:asl2.0)))
+
+(define-public go-github-com-nbrownus-go-metrics-prometheus
+ (package
+ (name "go-github-com-nbrownus-go-metrics-prometheus")
+ (version "0.0.0-20210712211119-974a6260965f")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nbrownus/go-metrics-prometheus")
+ (commit (go-version->git-ref version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1kl9l08aas544627zmhkgp843qx94sxs4inxm20nw1hx7gp79dz0"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ ;; The project looks abandoned, tests failed with a new go-metrics, see
+ ;; <https://github.com/nbrownus/go-metrics-prometheus/pull/2>.
+ #:tests? #f
+ #:import-path "github.com/nbrownus/go-metrics-prometheus"))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-prometheus-client-golang
+ go-github-com-rcrowley-go-metrics))
+ (home-page "https://github.com/nbrownus/go-metrics-prometheus")
+ (synopsis "Prometheus support for go-metrics")
+ (description
+ "This package provides a reporter for the @code{go-metrics} library which
+posts the metrics to the Prometheus client registry and just updates the
+registry.")
+ (license license:asl2.0)))
+
+(define-public go-github-com-prometheus-client-golang
+ (package
+ (name "go-github-com-prometheus-client-golang")
+ (version "1.19.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prometheus/client_golang")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0mx5q221pbkx081ycf1lp8sxz513220ya8qczkkvab943cwlcarv"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/prometheus/client_golang"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-examples-and-tutorials
+ (lambda* (#:key import-path #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (for-each delete-file-recursively
+ (list "api/prometheus/v1/example_test.go"
+ "examples"
+ "tutorial")))))
+ ;; XXX: Workaround for go-build-system's lack of Go modules support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v" "./..."))))))))
+ (propagated-inputs
+ (list go-github-com-beorn7-perks
+ go-github-com-cespare-xxhash-v2
+ go-github-com-davecgh-go-spew
+ go-github-com-json-iterator-go
+ go-github-com-prometheus-client-model
+ go-github-com-prometheus-common
+ go-github-com-prometheus-procfs
+ go-golang-org-x-sys
+ go-google-golang-org-protobuf))
+ (home-page "https://github.com/prometheus/client_golang")
+ (synopsis "HTTP server and client tools for Prometheus")
+ (description
+ "This package @code{promhttp} provides HTTP client and server tools for
+Prometheus metrics.")
+ (license license:asl2.0)))
+
+(define-public go-github-com-prometheus-client-model
+ (package
+ (name "go-github-com-prometheus-client-model")
+ (version "0.6.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prometheus/client_model")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0g1q2szzwp4rwkvayi2mnq2nwj6hj4ja7j43vwyi1iaz6d9z505c"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/prometheus/client_model"
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; Source-only package
+ (delete 'build))))
+ (propagated-inputs
+ (list go-github-com-golang-protobuf))
+ (home-page "https://github.com/prometheus/client_model")
+ (synopsis "Data model artifacts for Prometheus")
+ (description
+ "This package provides data model artifacts for Prometheus.")
+ (license license:asl2.0)))
+
+(define-public go-github-com-prometheus-common
+ (package
+ (name "go-github-com-prometheus-common")
+ (version "0.55.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prometheus/common")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0bsbxil7qz8rhckhv0844nmn38g7i7347cjv5m6na47hbdpi0rqh"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Submodules with their own go.mod files and packed as
+ ;; separated packages:
+ ;;
+ ;; - github.com/prometheus/common/assets
+ ;; - github.com/prometheus/common/sigv4
+ (for-each delete-file-recursively
+ (list "assets" "sigv4"))))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/prometheus/common"
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Workaround for go-build-system's lack of Go modules support.
+ (delete 'build)
+ (replace 'check
+ (lambda* (#:key tests? import-path #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion (string-append "src/" import-path)
+ (invoke "go" "test" "-v"
+ ;; "./config/..." requries
+ ;; <github.com/prometheus/client_golang/prometheus>,
+ ;; which introduce cycle.
+ "./expfmt/..."
+ "./helpers/..."
+ "./model/..."
+ "./promlog/..."
+ "./route/..."
+ "./server/..."))))))))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-alecthomas-kingpin-v2
+ go-github-com-go-kit-log
+ go-github-com-google-go-cmp
+ go-github-com-julienschmidt-httprouter
+ go-github-com-munnerz-goautoneg
+ go-github-com-mwitkow-go-conntrack
+ go-github-com-prometheus-client-model
+ go-golang-org-x-net
+ go-golang-org-x-oauth2
+ go-google-golang-org-protobuf
+ go-gopkg-in-yaml-v2))
+ (home-page "https://github.com/prometheus/common")
+ (synopsis "Prometheus metrics")
+ (description
+ "This package provides tools for reading and writing Prometheus
+metrics.")
+ (license license:asl2.0)))
+
+(define-public go-github-com-prometheus-common-assets
+ (package
+ (name "go-github-com-prometheus-common-assets")
+ (version "0.55.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prometheus/common")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0bsbxil7qz8rhckhv0844nmn38g7i7347cjv5m6na47hbdpi0rqh"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/prometheus/common/assets"
+ #:unpack-path "github.com/prometheus/common"))
+ (home-page "https://github.com/prometheus/common")
+ (synopsis "Prometheus assets")
+ (description
+ "This package provides Prometheus assets.")
+ (license license:asl2.0)))
+
+(define-public go-github-com-prometheus-common-sigv4
+ (package
+ (name "go-github-com-prometheus-common-sigv4")
+ (version "0.55.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prometheus/common")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0bsbxil7qz8rhckhv0844nmn38g7i7347cjv5m6na47hbdpi0rqh"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/prometheus/common/sigv4"
+ #:unpack-path "github.com/prometheus/common"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'unpack 'override-prometheus-common
+ (lambda _
+ (delete-file-recursively "src/github.com/prometheus/common"))))))
+ (native-inputs
+ (list go-github-com-stretchr-testify))
+ (propagated-inputs
+ (list go-github-com-aws-aws-sdk-go
+ go-github-com-prometheus-client-golang
+ go-github-com-prometheus-common
+ go-gopkg-in-yaml-v2))
+ (home-page "https://github.com/prometheus/common")
+ (synopsis "HTTP signed requests with Amazon's Signature Verification V4")
+ (description
+ "This package provides a @code{http.RoundTripper} that will sign requests
+using Amazon's Signature Verification V4 signing procedure, using credentials
+from the default AWS credential chain.")
+ (license license:asl2.0)))
+
+(define-public go-github-com-prometheus-procfs
+ (package
+ (name "go-github-com-prometheus-procfs")
+ (version "0.15.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/prometheus/procfs")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "116ns8k1yjdj9a2vq5czlpmafrhy0yw5y0bcm1qqbqnn57agg68m"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:import-path "github.com/prometheus/procfs"
+ ;; The tests require Go modules, which are not yet supported in Guix's
+ ;; Go build system.
+ #:tests? #f))
+ (propagated-inputs
+ (list go-github-com-google-go-cmp
+ go-golang-org-x-sync
+ go-golang-org-x-sys))
+ (synopsis "Go library for reading @file{/proc}")
+ (home-page "https://github.com/prometheus/procfs")
+ (description
+ "The @code{procfs} Go package provides functions to retrieve system,
+kernel, and process metrics from the @file{/proc} pseudo file system.")
+ (license license:asl2.0)))
+
+;;;
+;;; Executables:
+;;;
+
+;;;
+;;; Avoid adding new packages to the end of this file. To reduce the chances
+;;; of a merge conflict, place them above in alphabetic order.
+;;;
diff --git a/gnu/packages/uucp.scm b/gnu/packages/uucp.scm
index d8eb17111d..34de6bdec9 100644
--- a/gnu/packages/uucp.scm
+++ b/gnu/packages/uucp.scm
@@ -149,7 +149,7 @@ between computers.")
go-github-com-dustin-go-humanize
go-github-com-flynn-noise
go-github-com-gorhill-cronexpr
- go-github-com-hjson-hjson-go
+ go-github-com-hjson-hjson-go-v4
go-github-com-klauspost-compress
go-golang-org-x-crypto
go-golang-org-x-net
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 41c8a5583e..a29af519fa 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -186,6 +186,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages perl-compression)
+ #:use-module (gnu packages prometheus)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
@@ -5531,7 +5532,7 @@ time strings.")
(base32 "1dqmnxnipi497nx9x10ifack09w41579svryss5q2w5wxy0pg764"))))
(build-system go-build-system)
(inputs
- (list go-github-com-google-go-cmp-cmp
+ (list go-github-com-google-go-cmp
go-github-com-itchyny-timefmt-go
go-github-com-mattn-go-isatty
go-github-com-mattn-go-runewidth