sharlatan pushed a commit to branch go-team in repository guix. commit aff2b7a9845c091120bd1e61bb1325c544a1739d Author: Sharlatan Hellseher <sharlata...@gmail.com> AuthorDate: Fri Mar 28 23:37:13 2025 +0000
gnu: Add go-google-golang-org-grpc. * gnu/packages/golang-web.scm (go-google-golang-org-grpc): New variable. Change-Id: I428367aa3dc0eacb0f44c9b74ba8a9923df363b9 --- gnu/packages/golang-web.scm | 71 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm index 52f1a7c6ca..715ba43716 100644 --- a/gnu/packages/golang-web.scm +++ b/gnu/packages/golang-web.scm @@ -10247,6 +10247,77 @@ the standard @code{context} package to store request-scoped values.") (description "This package is a Go Implementation of WireGuard.") (license license:expat))) +(define-public go-google-golang-org-grpc + (package + (name "go-google-golang-org-grpc") + (version "1.69.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/grpc/grpc-go") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0bvwnhgg04zhzwb9pxsv3n0c96hci5mdnpdaxr4ggy2m28df2q6m")) + (modules '((guix build utils))) + (snippet + #~(begin + ;; Submodules with their own go.mod files and packaged separately: + ;; + ;; - google.golang.org/grpc/cmd/protoc-gen-go-grpc + ;; - google.golang.org/grpc/examples + ;; - google.golang.org/grpc/gcp/observability + ;; - google.golang.org/grpc + ;; - google.golang.org/grpc/interop/observability + ;; - google.golang.org/grpc/interop/xds + ;; - google.golang.org/grpc/security/advancedtls/examples + ;; - google.golang.org/grpc/security/advancedtls + ;; - google.golang.org/grpc/stats/opencensus + ;; - google.golang.org/grpc/test/tools + (for-each delete-file-recursively + (list "cmd/protoc-gen-go-grpc" + "examples" + "gcp/observability" + "interop/observability" + "interop/xds" + "security/advancedtls/examples" + "security/advancedtls" + "stats/opencensus" + "test/tools")))))) + (build-system go-build-system) + (arguments + (list + #:go go-1.22 + #:tests? #f ; TODO: full test suite needs more packages + #:import-path "google.golang.org/grpc")) + (propagated-inputs + (list go-github-com-cespare-xxhash-v2 + ;; go-github-com-cncf-xds-go + ;; go-github-com-envoyproxy-go-control-plane + ;; go-github-com-envoyproxy-go-control-plane-envoy + go-github-com-golang-glog + go-github-com-golang-protobuf + go-github-com-google-go-cmp + go-github-com-google-uuid + ;; go-go-opentelemetry-io-contrib-detectors-gcp + go-go-opentelemetry-io-otel + go-go-opentelemetry-io-otel-metric + go-go-opentelemetry-io-otel-sdk + go-go-opentelemetry-io-otel-sdk-metric + go-go-opentelemetry-io-otel-trace + go-golang-org-x-net + go-golang-org-x-oauth2 + go-golang-org-x-sync + go-golang-org-x-sys + go-google-golang-org-genproto-googleapis-rpc + go-google-golang-org-protobuf)) + (home-page "https://google.golang.org/grpc") + (synopsis "Golang implementation of gRPC - HTTP/2 based RPC") + (description + "Package grpc implements an RPC system called @code{gRPC}.") + (license license:asl2.0))) + (define-public go-gopkg-in-go-jose-go-jose-v2 (package (inherit go-github-com-go-jose-go-jose-v3)