diff options
Diffstat (limited to 'gnu/packages/golang-xyz.scm')
| -rw-r--r-- | gnu/packages/golang-xyz.scm | 302 |
1 files changed, 243 insertions, 59 deletions
diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index e465eb175e..3c95cf279b 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -95,7 +95,7 @@ #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages) - #:use-module (gnu packages cmake) + #:use-module (gnu packages base) #:use-module (gnu packages freedesktop) #:use-module (gnu packages gcc) #:use-module (gnu packages glib) @@ -4752,6 +4752,55 @@ a HTTP context way.") (license license:asl2.0))) +(define-public go-github-com-containerd-go-runc + (package + (name "go-github-com-containerd-go-runc") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/containerd/go-runc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "03f6a44j24g64x0zwx6daqbssbka0wcvj3fkjz4rvqx5dz3n7xhf")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/containerd/go-runc" + #:test-flags #~(list "-skip" "TestRuncStarted") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-paths + (lambda* (#:key inputs import-path #:allow-other-keys) + (substitute* (string-append "src/" import-path "/runc_test.go") + (("Command: \"/bin/true\",") + (string-append "Command: \"" + (search-input-file inputs "/bin/true") + "\",\n")) + (("Command: \"/bin/false\",") + (string-append "Command: \"" + (search-input-file inputs "/bin/false") + "\",\n"))) + (substitute* (string-append "src/" import-path "/runc.go") + (("return -1, err") + "fmt.Errorf(\"Achou\")\n return -1, err"))))))) + (inputs + (list coreutils)) + (propagated-inputs + (list go-github-com-containerd-console + go-github-com-opencontainers-runtime-spec + go-github-com-sirupsen-logrus + go-golang-org-x-sys)) + (home-page "https://github.com/containerd/go-runc") + (synopsis "Runc bindings for Golang") + (description + "This package implements a functionality for consuming the @code{runc} + binary in Go applications. It tries to expose all the settings and features +of the @code{runc} CLI.") + (license license:asl2.0))) + (define-public go-github-com-containerd-log (package (name "go-github-com-containerd-log") @@ -8305,8 +8354,8 @@ while callers can implement logging with whatever backend is appropriate.") standard log package.") (license license:asl2.0))) -(define-public go-github-com-go-md2man - (deprecated-package "go-github-com-go-md2man" go-github-com-cpuguy83-go-md2man-v2)) +(define-deprecated-package go-github-com-go-md2man + go-github-com-cpuguy83-go-md2man-v2) (define-public go-github-com-go-openapi-inflect (package @@ -9508,6 +9557,30 @@ provides a buffered io.Writer that is flushed at a timed interval.") according @@url{https://rfc-editor.org/rfc/rfc8785.html, RFC 8785}.") (license license:asl2.0))) +(define-public go-github-com-grafana-regexp + (package + (name "go-github-com-grafana-regexp") + (version "0.0.0-20240518133315-a468a5bfb3bc") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/grafana/regexp") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0vhncrr5n8f150rg0q01i7yc58b0jpcci2h7zgiwv9wr5k0yaqs2")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/grafana/regexp")) + (home-page "https://github.com/grafana/regexp") + (synopsis "Alternative implementation of Go's std @code{regexp} package") + (description + "This package provides an alternative implementation of @code{regexp}, + with some code optimisations to make it run faster.") + (license license:bsd-3))) + (define-public go-github-com-guptarohit-asciigraph (package (name "go-github-com-guptarohit-asciigraph") @@ -9792,6 +9865,38 @@ single @code{Tree} implementation, optimized for sparse nodes.") (replace "go-github-com-hashicorp-golang-lru" go-github-com-hashicorp-golang-lru-v2))))) +(define-public go-github-com-hashicorp-go-memdb + (package + (name "go-github-com-hashicorp-go-memdb") + (version "1.3.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hashicorp/go-memdb") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1faz0sr9f82zz0vgxsh131b7swi6a3yrsgbw72y45cm2k8bxviad")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/hashicorp/go-memdb")) + (propagated-inputs + (list go-github-com-hashicorp-go-immutable-radix)) + (home-page "https://github.com/hashicorp/go-memdb") + (synopsis "Golang in-memory database built on immutable radix trees") + (description + "This package implements a simple in-memory database built on immutable +@url{https://en.wikipedia.org/wiki/Radix_tree, radix trees}. The database +provides Atomicity, Consistency and Isolation from ACID. Being that it is +in-memory, it does not provide durability. The database is instantiated with +a schema that specifies the tables and indices that exist and allows +transactions to be executed. The database provides the following: +@acronym{Multi-Version Concurrency Control, MVCC}, transaction support, rich +indexing, watches.") + (license license:mpl2.0))) + (define-public go-github-com-hashicorp-go-msgpack-v2 (package (name "go-github-com-hashicorp-go-msgpack-v2") @@ -14745,6 +14850,30 @@ to help free up more global locks to handle other tasks.") names.") (license license:asl2.0))) +(define-public go-github-com-moby-pubsub + (package + (name "go-github-com-moby-pubsub") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/moby/pubsub") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1di8wyipxjxg9v28klzjna6a9zg5n2g5wyn1qy3klp428zzknbyw")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/moby/pubsub")) + (home-page "https://github.com/moby/pubsub") + (synopsis "Publish–subscribe pattern in Golang") + (description "This package implements a +@url{https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern, +publish–subscribe pattern}.") + (license license:asl2.0))) + (define-public go-github-com-moby-spdystream (package (name "go-github-com-moby-spdystream") @@ -16818,16 +16947,21 @@ specification-runtime-spec.") (define-public go-github-com-opencontainers-runtime-tools (package (name "go-github-com-opencontainers-runtime-tools") - (version "0.9.0") + ;; XXX: See: <https://github.com/opencontainers/runtime-tools/issues/792>. + (properties '((commit . "0ea5ed0382a279b30530acccafaf070fefeddafd") + (revision . "0"))) + (version (git-version "0.9.0" + (assoc-ref properties 'revision) + (assoc-ref properties 'commit))) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/opencontainers/runtime-tools") - (commit (string-append "v" version)))) + (commit (assoc-ref properties 'commit)))) (file-name (git-file-name name version)) (sha256 - (base32 "1pli3jb1rq9lkzzz83f7jw788vijg7x6ly3vgasdlwri7kiph1sa")) + (base32 "1385hh25ysni83wp5xdn4zajzavmnbrgz9mrpqsj3byk33xqyh3z")) (snippet #~(begin (use-modules (guix build utils)) (delete-file-recursively "vendor"))))) @@ -16835,8 +16969,6 @@ specification-runtime-spec.") (arguments (list #:skip-build? #t - ;; XXX: See: <https://github.com/opencontainers/runtime-tools/issues/792>. - #:tests? #f #:import-path "github.com/opencontainers/runtime-tools" #:build-flags #~(list (format #f "-ldflags=-X ~s" @@ -16850,14 +16982,15 @@ specification-runtime-spec.") go-github-com-stretchr-testify go-github-com-urfave-cli)) (propagated-inputs - (list go-github-com-blang-semver + (list go-github-com-blang-semver-v4 + go-github-com-google-uuid go-github-com-hashicorp-go-multierror + go-github-com-moby-sys-capability + go-github-com-moby-sys-mountinfo go-github-com-mrunalp-fileutils go-github-com-opencontainers-runtime-spec go-github-com-opencontainers-selinux - go-github-com-satori-go-uuid go-github-com-sirupsen-logrus - go-github-com-syndtr-gocapability go-github-com-xeipuuv-gojsonschema go-golang-org-x-sys)) (home-page "https://github.com/opencontainers/runtime-tools") @@ -20564,6 +20697,82 @@ structures using selector strings. It's similar to @code{jq}/@code{yq}, but supports JSON, YAML, TOML, XML and CSV with zero runtime dependencies.") (license license:expat))) +(define-public go-github-com-tonistiigi-go-csvvalue + (package + (name "go-github-com-tonistiigi-go-csvvalue") + (version "0.0.0-20240814133006-030d3b2625d0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tonistiigi/go-csvvalue") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "128i7fmxyf08q80b1i6hgb3sbx2nsa56p2kr6vcdyijazhqnrn0p")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/tonistiigi/go-csvvalue")) + (home-page "https://github.com/tonistiigi/go-csvvalue") + (synopsis "Efficient parser for a single line CSV value in Golang") + (description + "Package csvvalue provides an efficient parser for a single line CSV +value. It is more efficient than the standard library csv package for parsing +many small values. For multi-line CSV parsing, the standard library is +recommended.") + (license license:expat))) + +(define-public go-github-com-tonistiigi-units + (package + (name "go-github-com-tonistiigi-units") + (version "0.0.0-20180711220420-6950e57a87ea") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tonistiigi/units") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1w8rgmlg6pim4vchg4qfpdf6niqmsp0a4f6bafgwd1gnwxi71zkf")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/tonistiigi/units")) + (native-inputs + (list go-github-com-stretchr-testify)) + (home-page "https://github.com/tonistiigi/units") + (synopsis "Simple byte size formatting") + (description "This package provides a simple byte size formatting in Go.") + (license license:expat))) + +(define-public go-github-com-tonistiigi-vt100 + (package + (name "go-github-com-tonistiigi-vt100") + (version "0.0.0-20240514184818-90bafcd6abab") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tonistiigi/vt100") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1vjk3yam610kc600h3hd3glsygr3m863765m9q7c0gsaj0vd38y0")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/tonistiigi/vt100")) + (native-inputs + (list go-github-com-stretchr-testify)) + (home-page "https://github.com/tonistiigi/vt100") + (synopsis "Raw-mode vt100 screen reader in Golang") + (description + "Package vt100 implements a quick-and-dirty programmable ANSI terminal +emulator.") + (license license:expat))) + (define-public go-github-com-twpayne-go-shell (package (name "go-github-com-twpayne-go-shell") @@ -22002,8 +22211,9 @@ common sequence} values from two arbitrary arrays.") (build-system go-build-system) (arguments (list - #:go go-1.23 #:import-path "github.com/yuin/gopher-lua" + #:test-flags + #~(list "-vet=off") ;Go@1.24 forces vet, but tests are not ready yet. #:phases #~(modify-phases %standard-phases ;; FIXME: "ls" needs to be substituted in _glua-tests/issues.lua and @@ -24311,22 +24521,21 @@ recognizers) at run time.") (origin (method git-fetch) (uri (git-reference - (url "https://github.com/mvdan/editorconfig") - (commit (string-append "v" version)))) + (url "https://github.com/mvdan/editorconfig") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "0mi1cp6fyaknjn7smvaas4lj03fws5qib5vbi4mrz3qrmvmhh9l4")))) (build-system go-build-system) (arguments (list - #:import-path "mvdan.cc/editorconfig")) - (native-inputs - (list cmake-minimal)) + #:import-path "mvdan.cc/editorconfig" + #:test-flags #~(list "-skip" "TestViaCmake"))) (home-page "https://github.com/mvdan/editorconfig") (synopsis "EditorConfig support in Go") (description - "Package editorconfig allows parsing and using @code{EditorConfig} files, as -defined in @url{https://editorconfig.org/,https://editorconfig.org/}.") + "Package editorconfig allows parsing and using @code{EditorConfig} +files, as defined in https://editorconfig.org/.") (license license:bsd-3))) (define-public go-mvdan-cc-gofumpt @@ -24905,15 +25114,23 @@ library.") ;;; (define-public glua - (package - (inherit go-github-com-yuin-gopher-lua) + (package/inherit go-github-com-yuin-gopher-lua (name "glua") (arguments - (list - #:tests? #f - #:install-source? #f - #:import-path "github.com/yuin/gopher-lua/cmd/glua" - #:unpack-path "github.com/yuin/gopher-lua")))) + (substitute-keyword-arguments + (package-arguments go-github-com-yuin-gopher-lua) + ((#:tests? _ #t) #f) + ((#:install-source? _ #t) #f) + ((#:import-path _) "github.com/yuin/gopher-lua/cmd/glua") + ((#:unpack-path _ "") "github.com/yuin/gopher-lua") + ((#:phases %standard-phases) + #~(modify-phases %standard-phases + (delete 'disable-failing-tests))))) + (native-inputs + (append (package-native-inputs go-github-com-yuin-gopher-lua) + (package-propagated-inputs go-github-com-yuin-gopher-lua))) + (propagated-inputs '()) + (inputs '()))) (define-public go-asmfmt (package @@ -24978,39 +25195,6 @@ correctly."))) (string-append (package-description go-zgo-at-jfmt) " This package provides a command line interface (CLI) tool.")))) -(define-public go-jsonnet - (package - (name "go-jsonnet") - (version "0.20.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/google/go-jsonnet") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1qfr6yvhj33rhx1icxh99bbpngh5kwq1x7r39315y53bw216vbrz")))) - (build-system go-build-system) - (arguments - (list - #:install-source? #f - #:import-path "github.com/google/go-jsonnet/cmd/jsonnet" - #:unpack-path "github.com/google/go-jsonnet")) - (native-inputs - (list go-github-com-fatih-color - go-github-com-sergi-go-diff - go-gopkg-in-yaml-v2 - go-sigs-k8s-io-yaml)) - (home-page "https://github.com/google/go-jsonnet") - (synopsis "Go implementation of Jsonnet") - (description - "This package provides an implementation of the @url{http://jsonnet.org/, -Jsonnet} data templating language in Go. It is a -feature-complete,production-ready implementation, compatible with the original -Jsonnet C++implementation.") - (license license:asl2.0))) - (define-public go-ifacemaker (package/inherit go-github-com-vburenin-ifacemaker (name "go-ifacemaker") |
