* gnu/packages/golang-web.scm (go-github-com-oschwald-geoip2-golang): Update to 1.11.0. Change-Id: I0e7003b680143a21aa2f773761b34b60d6cd0a74
		
			
				
	
	
		
			3067 lines
		
	
	
	
		
			113 KiB
		
	
	
	
		
			Scheme
		
	
	
	
	
	
			
		
		
	
	
			3067 lines
		
	
	
	
		
			113 KiB
		
	
	
	
		
			Scheme
		
	
	
	
	
	
| ;;; GNU Guix --- Functional package management for GNU
 | ||
| ;;; Copyright © 2017, 2019, 2020, 2021 Leo Famulari <leo@famulari.name>
 | ||
| ;;; 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 © 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 © 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 Adam Kandur <kefironpremise@gmail.com>
 | ||
| ;;; Copyright © 2022 Dhruvin Gandhi <contact@dhruvin.dev>
 | ||
| ;;; Copyright © 2022 Giacomo Leidi <goodoldpaul@autistici.org>
 | ||
| ;;; Copyright © 2022 jgart via Guix-patches via <guix-patches@gnu.org>
 | ||
| ;;; Copyright © 2022 muradm <mail@muradm.net>
 | ||
| ;;; Copyright © 2022, 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
 | ||
| ;;; Copyright © 2023 Filip Lajszczak <filip@lajszczak.dev>
 | ||
| ;;; Copyright © 2023 Fries <fries1234@protonmail.com>
 | ||
| ;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
 | ||
| ;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
 | ||
| ;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
 | ||
| ;;; Copyright © 2023 Thomas Ieong <th.ieong@free.fr>
 | ||
| ;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
 | ||
| ;;; Copyright © 2024 Jesse Eisses <jesse@eisses.email>
 | ||
| ;;; 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 golang-web)
 | ||
|   #:use-module ((guix licenses) #:prefix license:)
 | ||
|   #:use-module (guix packages)
 | ||
|   #:use-module (guix build-system go)
 | ||
|   #:use-module (guix gexp)
 | ||
|   #:use-module (guix git-download)
 | ||
|   #:use-module (guix utils)
 | ||
|   #:use-module (gnu packages)
 | ||
|   #: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-crypto)
 | ||
|   #:use-module (gnu packages golang-xyz)
 | ||
|   #:use-module (gnu packages ipfs)
 | ||
|   #:use-module (gnu packages tls)
 | ||
|   #:use-module (gnu packages web))
 | ||
| 
 | ||
| ;;; Commentary:
 | ||
| ;;;
 | ||
| ;;; Golang modules (libraries) related to HTML, CSS, SCSS, JavaScript, JSON,
 | ||
| ;;; Web-framework, REST-API or similar functionality. They may provide
 | ||
| ;;; executables and libraries, for which there are marked sections.
 | ||
| 
 | ||
| ;;;
 | ||
| ;;; Please: Try to add new module packages in alphabetic order.
 | ||
| ;;;
 | ||
| ;;; Code:
 | ||
| 
 | ||
| ;;;
 | ||
| ;;; Libraries:
 | ||
| ;;;
 | ||
| 
 | ||
| (define-public go-cloud-google-com-go-compute-metadata
 | ||
|   (package
 | ||
|     (name "go-cloud-google-com-go-compute-metadata")
 | ||
|     (version "0.81.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/googleapis/google-cloud-go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "15jgynqb5pbxqbj3a7ii970yn4srsw1dbxzxnhpkfkmplalpgyh3"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:unpack-path "cloud.google.com/go"
 | ||
|        #:import-path "cloud.google.com/go/compute/metadata"))
 | ||
|     (home-page
 | ||
|      "https://pkg.go.dev/cloud.google.com/go/compute/metadata")
 | ||
|     (synopsis
 | ||
|      "Go wrapper for Google Compute Engine metadata service")
 | ||
|     (description
 | ||
|      "This package provides access to Google Compute Engine (GCE) metadata and
 | ||
| API service accounts for Go.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-git-sr-ht-emersion-gqlclient
 | ||
|   (package
 | ||
|     (name "go-git-sr-ht-emersion-gqlclient")
 | ||
|     (version "0.0.0-20230820050442-8873fe0204b9")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://git.sr.ht/~emersion/gqlclient")
 | ||
|              (commit (go-version->git-ref version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0x64kcryawdr0daq1w6fada60zqrddw75yi397835b9ij7wb5gmh"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list #:import-path "git.sr.ht/~emersion/gqlclient"))
 | ||
|     (home-page "https://git.sr.ht/~emersion/gqlclient")
 | ||
|     (synopsis "GraphQL client and code generator")
 | ||
|     (description
 | ||
|      "This package provides a GraphQL client and code generator for Go.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-alexliesenfeld-health
 | ||
|   (package
 | ||
|     (name "go-github-com-alexliesenfeld-health")
 | ||
|     (version "0.8.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/alexliesenfeld/health")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1fchlvxwidsscskwq07vhxfwcn5wbigbizi51619l8gg09mr158q"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/alexliesenfeld/health"
 | ||
|       #:phases #~(modify-phases %standard-phases
 | ||
|                    ;; Examples requires additional dependencies and comes with
 | ||
|                    ;; their own go.mod, consider to pack it as separate
 | ||
|                    ;; package if required.
 | ||
|                    (add-after 'unpack 'remove-examples
 | ||
|                      (lambda* (#:key import-path #:allow-other-keys)
 | ||
|                        (delete-file-recursively
 | ||
|                         (string-append "src/" import-path "/examples")))))))
 | ||
|     (native-inputs (list go-github-com-stretchr-testify))
 | ||
|     (home-page "https://github.com/alexliesenfeld/health")
 | ||
|     (synopsis "Simple and flexible health check library for Go")
 | ||
|     (description
 | ||
|      "This library provides a @code{http.Handler} that acts as a health
 | ||
| endpoint.  It can be used by cloud infrastructure or other services to
 | ||
| determine the availability of an application.
 | ||
| 
 | ||
| Rather than simply returning a response with HTTP status code 200, this
 | ||
| library allows building health checks that test the availability of all
 | ||
| required dependencies.  The HTTP response contains the aggregated health
 | ||
| result and details about the health status of each component.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-andybalholm-cascadia
 | ||
|   (package
 | ||
|     (name "go-github-com-andybalholm-cascadia")
 | ||
|     (version "1.3.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/andybalholm/cascadia")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0zgc9fjkn7d66cnmgnmalr9lrq4ii1spap95pf2x1hln4pflib5s"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/andybalholm/cascadia"))
 | ||
|     (native-inputs
 | ||
|      (list go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/andybalholm/cascadia/")
 | ||
|     (synopsis "CSS selectors for HTML")
 | ||
|     (description "The Cascadia package implements CSS selectors for use with
 | ||
| the parse trees produced by the html package.")
 | ||
|     (license license:bsd-2)))
 | ||
| 
 | ||
| (define-public go-github-com-audriusbutkevicius-pfilter
 | ||
|   (package
 | ||
|     (name "go-github-com-audriusbutkevicius-pfilter")
 | ||
|     (version "0.0.11")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/AudriusButkevicius/pfilter")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "03kwi1hnhcz9qdblmhpaqg2063k2ch29hc5dr8cl2z7q5rp81m9i"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/AudriusButkevicius/pfilter"
 | ||
|       #: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)
 | ||
|                 (for-each delete-file
 | ||
|                           ;; Remove tests requiring setting up local
 | ||
|                           ;; connection.
 | ||
|                           (list "quic_test.go"))))))))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pkg-errors
 | ||
|            go-github-com-quic-go-quic-go
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/AudriusButkevicius/pfilter")
 | ||
|     (synopsis "Filter packets into multiple virtual connections")
 | ||
|     (description
 | ||
|      "Pfilter is a Go package for filtering packets into multiple virtual
 | ||
| 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")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/aws/aws-sdk-go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "169mkkw1cff1px6326krwvfpfj07sb4y5rbn003gi4bk176h6ry9"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-jmespath-go-jmespath))
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go"
 | ||
|        #:phases %standard-phases))
 | ||
|     (synopsis "The official AWS SDK for the Go programming language")
 | ||
|     (description
 | ||
|      "The official AWS SDK for the Go programming language.")
 | ||
|     (home-page "https://github.com/aws/aws-sdk-go")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2
 | ||
|   (package
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2")
 | ||
|     (version "1.17.3")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/aws/aws-sdk-go-v2")
 | ||
|              (commit "v1.17.3")))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1a07xab1cn96iff7zvp5a82fzhqwl0i4bhplkm2h1qbkxgldn6x0"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#: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-jmespath-go-jmespath))
 | ||
|     (home-page "https://github.com/aws/aws-sdk-go-v2")
 | ||
|     (synopsis "AWS SDK for Go v2")
 | ||
|     (description
 | ||
|      "Package sdk is the official AWS SDK v2 for the Go programming language.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-config
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-config")
 | ||
|     (version "1.18.5")
 | ||
|     (arguments
 | ||
|      '(#: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
 | ||
|            go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-feature-s3-manager
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-feature-s3-manager")
 | ||
|     (version "1.11.44")
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go-v2/feature/s3/manager"
 | ||
|        #:unpack-path "github.com/aws/aws-sdk-go-v2"))
 | ||
|     (propagated-inputs (list go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-service-iam
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-service-iam")
 | ||
|     (version "1.44.161")
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go-v2/service/iam"
 | ||
|        #:unpack-path "github.com/aws/aws-sdk-go-v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-service-s3
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-service-s3")
 | ||
|     (version "1.30.0")
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go-v2/service/s3"
 | ||
|        #:unpack-path "github.com/aws/aws-sdk-go-v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-service-sso
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-service-sso")
 | ||
|     (version "1.11.27")
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go-v2/service/sso"
 | ||
|        #:unpack-path "github.com/aws/aws-sdk-go-v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-service-ssooidc
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-service-ssooidc")
 | ||
|     (version "1.13.10")
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go-v2/service/ssooidc"
 | ||
|        #:unpack-path "github.com/aws/aws-sdk-go-v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-aws-sdk-go-v2-service-sts
 | ||
|   (package
 | ||
|     (inherit go-github-com-aws-aws-sdk-go-v2)
 | ||
|     (name "go-github-com-aws-aws-sdk-go-v2-service-sts")
 | ||
|     (version "1.17.7")
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/aws-sdk-go-v2/service/sts"
 | ||
|        #:unpack-path "github.com/aws/aws-sdk-go-v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-aws-smithy-go))))
 | ||
| 
 | ||
| (define-public go-github-com-aws-smithy-go
 | ||
|   (package
 | ||
|     (name "go-github-com-aws-smithy-go")
 | ||
|     (version "1.13.5")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/aws/smithy-go")
 | ||
|              (commit "v1.13.5")))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1rgyk0m2d3agknnlzjqvac1a61wwdq1pbck7vyl587m38n5zi2cz"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/aws/smithy-go"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-jmespath-go-jmespath go-github-com-google-go-cmp-cmp))
 | ||
|     (home-page "https://github.com/aws/smithy-go")
 | ||
|     (synopsis "@url{https://smithy.io/2.0/index.html,Smithy} code generators
 | ||
| for Go")
 | ||
|     (description
 | ||
|      "Package smithy provides the core components for a Smithy SDK.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-aymerick-douceur
 | ||
|   (package
 | ||
|     (name "go-github-com-aymerick-douceur")
 | ||
|     (version "0.2.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/aymerick/douceur/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1hfysznib0fqbp8vqxpk0xiggpp0ayk2bsddi36vbg6f8zq5f81n"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/aymerick/douceur"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-andybalholm-cascadia
 | ||
|            go-github-com-gorilla-css
 | ||
|            go-github-com-puerkitobio-goquery
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/aymerick/douceur/")
 | ||
|     (synopsis "CSS parser and inliner")
 | ||
|     (description "This package provides a CSS parser and inliner.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-azure-go-ntlmssp
 | ||
|   (package
 | ||
|     (name "go-github-com-azure-go-ntlmssp")
 | ||
|     (version "0.0.0-20221128193559-754e69321358")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/Azure/go-ntlmssp")
 | ||
|              (commit (go-version->git-ref version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0dg20fwylf5lpsc5fgnnzw7jxz0885bg97lla1b5wrlhjas6lidn"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; See <https://github.com/Azure/go-ntlmssp/issues/40>.
 | ||
|       #:tests? #f
 | ||
|       #:import-path "github.com/Azure/go-ntlmssp"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-crypto))
 | ||
|     (home-page "https://github.com/Azure/go-ntlmssp")
 | ||
|     (synopsis "NTLM negotiation in Go")
 | ||
|     (description
 | ||
|      "This package provides @acronym{NT (New Technology) LAN
 | ||
| Manager,NTLM}/Negotiate authentication over HTTP.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-bep-golibsass
 | ||
|   (package
 | ||
|     (name "go-github-com-bep-golibsass")
 | ||
|     (version "0.7.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/bep/golibsass")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0xk3m2ynbydzx87dz573ihwc4ryq0r545vz937szz175ivgfrhh3"))
 | ||
|        (modules '((guix build utils)))
 | ||
|        (snippet
 | ||
|         '(begin
 | ||
|            (delete-file-recursively "libsass_src")
 | ||
|            #t))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/bep/golibsass/libsass"
 | ||
|        #:unpack-path "github.com/bep/golibsass"
 | ||
|        ;; The dev build tag modifies the build to link to system libsass
 | ||
|        ;; instead of including the bundled one (which we remove.)
 | ||
|        ;; https://github.com/bep/golibsass/blob/v0.7.0/internal/libsass/a__cgo_dev.go
 | ||
|        #:build-flags '("-tags" "dev")
 | ||
|        #:phases
 | ||
|        (modify-phases %standard-phases
 | ||
|          (add-before 'build 'generate-bindings
 | ||
|            ;; Generate bindings for system libsass, replacing the
 | ||
|            ;; pre-generated bindings.
 | ||
|            (lambda* (#:key inputs unpack-path #:allow-other-keys)
 | ||
|              (mkdir-p (string-append "src/" unpack-path "/internal/libsass"))
 | ||
|              (let ((libsass-src (string-append (assoc-ref inputs "libsass-src") "/src")))
 | ||
|                (substitute* (string-append "src/" unpack-path "/gen/main.go")
 | ||
|                  (("filepath.Join\\(rootDir, \"libsass_src\", \"src\"\\)")
 | ||
|                   (string-append "\"" libsass-src "\""))
 | ||
|                  (("../../libsass_src/src/")
 | ||
|                   libsass-src)))
 | ||
|              (invoke "go" "generate" (string-append unpack-path "/gen"))
 | ||
|              #t))
 | ||
|          (replace 'check
 | ||
|            (lambda* (#:key tests? import-path #:allow-other-keys)
 | ||
|              (if tests?
 | ||
|                  (invoke "go" "test" import-path "-tags" "dev"))
 | ||
|              #t)))))
 | ||
|     (propagated-inputs
 | ||
|      (list libsass))
 | ||
|     (native-inputs
 | ||
|      `(("go-github-com-frankban-quicktest" ,go-github-com-frankban-quicktest)
 | ||
|        ("libsass-src" ,(package-source libsass))))
 | ||
|     (home-page "https://github.com/bep/golibsass")
 | ||
|     (synopsis "Easy to use Go bindings for LibSass")
 | ||
|     (description
 | ||
|      "This package provides SCSS compiler support for Go applications.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-ccding-go-stun
 | ||
|   (package
 | ||
|     (name "go-github-com-ccding-go-stun")
 | ||
|     (version "0.1.4")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/ccding/go-stun")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0wjhckyg42kp04njhj7gni84cyk0s7m17n13kqf6r7mjzx8a83pw"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/ccding/go-stun"))
 | ||
|     (home-page "https://github.com/ccding/go-stun")
 | ||
|     (synopsis "STUN client implementation")
 | ||
|     (description
 | ||
|      "Go-stun is a go implementation of the STUN client (RFC 3489
 | ||
| and RFC 5389).")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-cenkalti-backoff-v4
 | ||
|   (package
 | ||
|     (name "go-github-com-cenkalti-backoff-v4")
 | ||
|     (version "4.3.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/cenkalti/backoff")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1pwr7fzxgngb073q98qrz1f90bkk3pljynif6jl5a6q6kcsn7xf1"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list #:go go-1.21
 | ||
|            #:import-path "github.com/cenkalti/backoff/v4"))
 | ||
|     (home-page "https://github.com/cenkalti/backoff")
 | ||
|     (synopsis "The exponential backoff algorithm in Go")
 | ||
|     (description "This is a Go port of the exponential backoff algorithm from
 | ||
| @url{https://github.com/google/google-http-java-client/blob/da1aa993e90285ec18579f1553339b00e19b3ab5/google-http-client/src/main/java/com/google/api/client/util/ExponentialBackOff.java,
 | ||
| Google's HTTP Client Library for Java}.
 | ||
| 
 | ||
| @url{http://en.wikipedia.org/wiki/Exponential_backoff, Exponential backoff} is an
 | ||
| algorithm that uses feedback to multiplicatively decrease the rate of some process,
 | ||
| in order to gradually find an acceptable rate.  The retries exponentially increase
 | ||
| and stop increasing when a certain threshold is met.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-chris-ramon-douceur
 | ||
|   (package
 | ||
|     (name "go-github-com-chris-ramon-douceur")
 | ||
|     (version "0.2.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/chris-ramon/douceur")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1hfysznib0fqbp8vqxpk0xiggpp0ayk2bsddi36vbg6f8zq5f81n"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/chris-ramon/douceur"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-aymerick-douceur
 | ||
|            go-github-com-gorilla-css))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-puerkitobio-goquery
 | ||
|            go-github-com-andybalholm-cascadia
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/chris-ramon/douceur/")
 | ||
|     (synopsis "CSS parser and inliner")
 | ||
|     (description "This package provides a CSS parser and inliner.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-coreos-go-oidc
 | ||
|   (package
 | ||
|     (name "go-github-com-coreos-go-oidc")
 | ||
|     (version "2.2.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/coreos/go-oidc")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "11m6slbpi33ynffml7812piq4anhjlf1qszjlsf26f5y7x3qh8n5"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list #:import-path "github.com/coreos/go-oidc"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pquerna-cachecontrol
 | ||
|            go-golang-org-x-oauth2
 | ||
|            go-gopkg-in-square-go-jose-v2))
 | ||
|     (home-page "https://github.com/coreos/go-oidc")
 | ||
|     (synopsis "OpenID Connect support for Go")
 | ||
|     (description
 | ||
|      "This package enables OpenID Connect support for the
 | ||
| @code{go-golang-org-x-oauth2} package.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-coreos-go-oidc-v3
 | ||
|   (package
 | ||
|     (inherit go-github-com-coreos-go-oidc)
 | ||
|     (name "go-github-com-coreos-go-oidc-v3")
 | ||
|     (version "3.6.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/coreos/go-oidc")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1sbm6n3lp48lymn0g921afhq2j6inb38w3wy5rhyx9h8gpzhnxx9"))))
 | ||
|     (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"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-go-jose-go-jose-v3
 | ||
|            go-golang-org-x-oauth2))))
 | ||
| 
 | ||
| (define-public go-github-com-emicklei-go-restful
 | ||
|   (package
 | ||
|     (name "go-github-com-emicklei-go-restful")
 | ||
|     (version "3.4.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/emicklei/go-restful")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0m1y5a6xr6hmdj77afrvyh2llkbhn1166lcrgis654shl8zs9qhz"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/emicklei/go-restful"))
 | ||
|     (home-page "https://github.com/emicklei/go-restful")
 | ||
|     (synopsis "Build REST-style web services using Go")
 | ||
|     (description "This package provides @code{go-restful}, which helps
 | ||
| developers to use @code{http} methods explicitly and in a way that's
 | ||
| consistent with the HTTP protocol definition.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-felixge-httpsnoop
 | ||
|   (package
 | ||
|     (name "go-github-com-felixge-httpsnoop")
 | ||
|     (version "1.0.4")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/felixge/httpsnoop")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1xrvg5ndpz4gv9mf9xl6p6gjmvvv8bbzaspcr070qxx72jhlllkk"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/felixge/httpsnoop"))
 | ||
|     (home-page "https://github.com/felixge/httpsnoop/")
 | ||
|     (synopsis "Capture http related metrics")
 | ||
|     (description
 | ||
|      "Httpsnoop provides an easy way to capture http related
 | ||
| metrics (i.e. response time, bytes written, and http status code) from your
 | ||
| application's http.Handlers.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| ;; This project looks like domain or abandoned, see
 | ||
| ;; <https://github.com/francoispqt/gojay/issues/150>.
 | ||
| (define-public go-github-com-francoispqt-gojay
 | ||
|   (package
 | ||
|     (name "go-github-com-francoispqt-gojay")
 | ||
|     (version "1.2.13")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/francoispqt/gojay")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1ix95qdyajfmxhf9y52vjrih63f181pjs4v5as8905s4d5vmkd06"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; XXX: Disable failing tests on non-x86-64 architecture, see
 | ||
|       ;; <https://github.com/francoispqt/gojay/issues/173>.
 | ||
|       #:tests? (and (not (%current-target-system))
 | ||
|                     (target-x86-64?))
 | ||
|       #:import-path "github.com/francoispqt/gojay"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (home-page "https://github.com/francoispqt/gojay")
 | ||
|     (synopsis "JSON encoder/decoder with powerful stream API for Golang")
 | ||
|     (description
 | ||
|      "GoJay is a performant JSON encoder/decoder for Golang.  It has a simple
 | ||
| API and doesn't use reflection.  It relies on small interfaces to
 | ||
| decode/encode structures and slices.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| ;; 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
 | ||
| (define-public go-github-com-getsentry-raven-go
 | ||
|   (let ((commit "5c24d5110e0e198d9ae16f1f3465366085001d92")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-getsentry-raven-go")
 | ||
|       (version (git-version "0.2.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/getsentry/raven-go")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "0lvc376sq8r8jhy2v1m6rf1wyld61pvbk0x6j9xpg56ivqy69xs7"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/getsentry/raven-go"))
 | ||
|       (propagated-inputs
 | ||
|        (list go-github-com-certifi-gocertifi go-github-com-pkg-errors))
 | ||
|       (home-page "https://github.com/getsentry/raven-go")
 | ||
|       (synopsis "Sentry client in Go")
 | ||
|       (description "This package is a Go client API for the Sentry event/error
 | ||
| logging system.")
 | ||
|       (license license:bsd-3))))
 | ||
| 
 | ||
| (define-public go-github-com-go-chi-chi-v5
 | ||
|   (package
 | ||
|     (name "go-github-com-go-chi-chi-v5")
 | ||
|     (version "5.0.7")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/go-chi/chi")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0rzrsxz4xj0973c6nxklvq2vmg2m795snhk25836i0gnd1jnx79k"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/go-chi/chi/v5"))
 | ||
|     (home-page "https://github.com/go-chi/chi")
 | ||
|     (synopsis "Composable router for HTTP services written in Go")
 | ||
|     (description
 | ||
|      "@code{go-github-com-go-chi-chi-v5} is an HTTP router that lets the user
 | ||
| decompose request handling into many smaller layers.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-go-jose-go-jose-v3
 | ||
|   (package
 | ||
|     (name "go-github-com-go-jose-go-jose-v3")
 | ||
|     (version "3.0.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/go-jose/go-jose")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1fnw0p49wc9gmd2xcji2x9jf97dgg9igagd5m6bmq3nw9jjfqdc5"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '( #:import-path "github.com/go-jose/go-jose/v3"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-crypto))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-google-go-cmp-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")
 | ||
|     (description
 | ||
|      "This package provides a Golang implementation of the Javascript Object
 | ||
| Signing and Encryption set of standards.  This includes support for JSON Web
 | ||
| Encryption, JSON Web Signature, and JSON Web Token standards.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-go-ldap-ldap
 | ||
|   (package
 | ||
|     (name "go-github-com-go-ldap-ldap")
 | ||
|     (version "3.4.8")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/go-ldap/ldap")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0fbmhlc8ss5vn6zz0iiifvy4pm0mwaf13qpz70k83mmnv9vrv16x"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/go-ldap/ldap/v3"
 | ||
|       #: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)
 | ||
|                 (for-each delete-file
 | ||
|                           ;; FAIL <...> LDAP Result Code 200 "Network Error":
 | ||
|                           ;; dial tcp: lookup ldap.itd.umich.edu on <...>
 | ||
|                           (list "ldap_test.go"))))))))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-azure-go-ntlmssp
 | ||
|            go-github-com-go-asn1-ber-asn1-ber
 | ||
|            go-github-com-google-uuid))
 | ||
|     (home-page "https://github.com/go-ldap/ldap")
 | ||
|     (synopsis "LDAP v3 functionality for Go")
 | ||
|     (description "This package provides basic LDAP v3 functionality in the Go
 | ||
| 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-goccy-go-json
 | ||
|   (package
 | ||
|     (name "go-github-com-goccy-go-json")
 | ||
|     (version "0.10.2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/goccy/go-json")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1krid2hlvs808jl9zmv7m6zx92samc60gymhwr2mwwykicwbnks8"))
 | ||
|        (modules '((guix build utils)))
 | ||
|        (snippet '(delete-file-recursively "benchmarks"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/goccy/go-json"))
 | ||
|     (home-page "https://github.com/goccy/go-json")
 | ||
|     (synopsis "JSON encoder/decoder in Go")
 | ||
|     (description
 | ||
|      "Fast JSON encoder/decoder compatible with encoding/json for Go.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-golang-groupcache
 | ||
|   (let ((commit "41bb18bfe9da5321badc438f91158cd790a33aa3")
 | ||
|         (revision "3"))
 | ||
|     (package
 | ||
|       (name "go-github-com-golang-groupcache")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/golang/groupcache")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "07amgr8ji4mnq91qbsw2jlcmw6hqiwdf4kzfdrj8c4b05w4knszc"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        (list #:import-path "github.com/golang/groupcache"))
 | ||
|       (propagated-inputs
 | ||
|        (list go-github-com-golang-protobuf-proto))
 | ||
|       (home-page "https://github.com/golang/groupcache")
 | ||
|       (synopsis "Groupcache is a caching and cache-filling library")
 | ||
|       (description
 | ||
|        "Groupcache is a caching and cache-filling library, intended
 | ||
| as a replacement for memcached in many cases.  It provides a data loading
 | ||
| mechanism with caching and de-duplication that works across a set of peer
 | ||
| processes.")
 | ||
|       (license license:asl2.0))))
 | ||
| 
 | ||
| (define-public go-github-com-google-go-github
 | ||
|   (package
 | ||
|     (name "go-github-com-google-go-github")
 | ||
|     (version "26.1.3")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/google/go-github")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0x0zz1vcmllp6r6l2qin9b2llm5cxbf6n84rf99h8wrmhvzs2ipi"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:tests? #f ;application/octet-stream instead of text/plain
 | ||
|        #:import-path "github.com/google/go-github/v26/github"
 | ||
|        #:unpack-path "github.com/google/go-github/v26"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-google-go-querystring go-golang-org-x-crypto))
 | ||
|     (home-page "https://github.com/google/go-github/")
 | ||
|     (synopsis "Client library for accessing the GitHub API v3")
 | ||
|     (description "@code{go-github} is a Go client library for accessing the
 | ||
| GitHub API v3.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| ;; For chezmoi-1.8.10
 | ||
| (define-public go-github-com-google-go-github-v33
 | ||
|   (package
 | ||
|     (inherit go-github-com-google-go-github)
 | ||
|     (name "go-github-com-google-go-github-v33")
 | ||
|     (version "33.0.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/google/go-github")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1nzwgvaa9k1ky3sfynib6nhalam9dx66h5lxff334m9kk3rf5nn0"))))
 | ||
|     (arguments
 | ||
|      (substitute-keyword-arguments
 | ||
|          (package-arguments go-github-com-google-go-github)
 | ||
|        ((#:unpack-path _ "github.com/google/go-github/v26")
 | ||
|         "github.com/google/go-github/v33")
 | ||
|        ((#:import-path _ "github.com/google/go-github/v26/github")
 | ||
|         "github.com/google/go-github/v33/github")))))
 | ||
| 
 | ||
| (define-public go-github-com-google-safehtml
 | ||
|   (package
 | ||
|     (name "go-github-com-google-safehtml")
 | ||
|     (version "0.1.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/google/safehtml")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0j2xjy8xrk9y9k6bqpvimj84i6hg1wwsyvwsb0axhmp49cmnrp86"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/google/safehtml"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-text))
 | ||
|     (home-page "https://github.com/google/safehtml")
 | ||
|     (synopsis "Safe HTML for Go")
 | ||
|     (description
 | ||
|      "Package safehtml provides immutable string-like types which represent
 | ||
| values that are guaranteed to be safe, by construction or by escaping or
 | ||
| sanitization, to use in various HTML contexts and with various DOM APIs.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-context
 | ||
|   (let ((commit "08b5f424b9271eedf6f9f0ce86cb9396ed337a42")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-gorilla-context")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/gorilla/context")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/gorilla/context"))
 | ||
|       (home-page "https://github.com/gorilla/context")
 | ||
|       (synopsis "Go registry for request variables")
 | ||
|       (description
 | ||
|        "This package provides @code{gorilla/context}, which is a general
 | ||
| purpose registry for global request variables in the Go programming
 | ||
| language.")
 | ||
|       (license license:bsd-3))))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-csrf
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-csrf")
 | ||
|     (version "1.7.2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/gorilla/csrf")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "01d56sr9yggn6gs4lf5bnj15q6bkwvsim8kzj8m4arv1ccj7918j"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/gorilla/csrf"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-gorilla-securecookie
 | ||
|            go-github-com-pkg-errors))
 | ||
|     (home-page "https://github.com/gorilla/csrf")
 | ||
|     (synopsis "Cross Site Request Forgery (CSRF) prevention middleware")
 | ||
|     (description
 | ||
|      "Gorilla/csrf provides Cross Site Request Forgery (CSRF) prevention
 | ||
| middleware for Go web applications and services.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-css
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-css")
 | ||
|     (version "1.0.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/gorilla/css")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "116fhy3n7bsq3psyn4pa0i4x9zy916kh1zxslmbbp0p9l4i7ysrj"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/gorilla/css/scanner"
 | ||
|        #:unpack-path "github.com/gorilla/css"))
 | ||
|     (home-page "https://github.com/gorilla/css/")
 | ||
|     (synopsis "CSS3 tokenizer")
 | ||
|     (description "This package provides a CSS3 tokenizer.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-handlers
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-handlers")
 | ||
|     (version "1.5.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/gorilla/handlers")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "15gycdz9lkjnsvvichsbdf25vf6pi1sfn41khhz53iqf300l0w0s"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:tests? #f                      ; Tries to download from the internet
 | ||
|        #:import-path "github.com/gorilla/handlers"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-felixge-httpsnoop))
 | ||
|     (home-page "https://github.com/gorilla/handlers")
 | ||
|     (synopsis "Middleware for Go HTTP services and web applications")
 | ||
|     (description "A collection of useful middleware for Go HTTP services and
 | ||
| web applications.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-mux
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-mux")
 | ||
|     (version "1.8.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/gorilla/mux")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "18f0q9qxgq1yh4ji07mqhiydfcwvi56z9d775v7dc7yckj33kpdk"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/gorilla/mux"))
 | ||
|     (home-page "https://github.com/gorilla/mux")
 | ||
|     (synopsis "URL router and dispatcher for Go")
 | ||
|     (description
 | ||
|      "Gorilla/Mux implements a request router and dispatcher for matching
 | ||
| incoming requests with their respective handler.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-securecookie
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-securecookie")
 | ||
|     (version "1.1.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/gorilla/securecookie")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "16bqimpxs9vj5n59vm04y04v665l7jh0sddxn787pfafyxcmh410"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/gorilla/securecookie"))
 | ||
|     (home-page "https://github.com/gorilla/securecookie")
 | ||
|     (synopsis "Encodes and decodes authenticated and optionally encrypted
 | ||
| cookie values")
 | ||
|     (description
 | ||
|      "Gorilla/securecookie encodes and decodes authenticated and optionally
 | ||
| encrypted cookie values for Go web applications.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-sessions
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-sessions")
 | ||
|     (version "1.2.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/gorilla/sessions")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1zjw2s37yggk9231db0vmgs67z8m3am8i8l4gpgz6fvlbv52baxp"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/gorilla/sessions"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-gorilla-securecookie))
 | ||
|     (home-page "https://github.com/gorilla/sessions")
 | ||
|     (synopsis "Manage user sessions in web applications")
 | ||
|     (description
 | ||
|      "This package that provides infrastructure for creating and managing user
 | ||
| sessions in web applications.  It supports cookie and filesystem-based
 | ||
| sessions, flash messages, custom backends, and more.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-gorilla-websocket
 | ||
|   (package
 | ||
|     (name "go-github-com-gorilla-websocket")
 | ||
|     (version "1.5.0")
 | ||
|     (home-page "https://github.com/gorilla/websocket")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url home-page)
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1xrr6snvs9g1nzxxg05w4i4pq6k1xjljl5mvavd838qc468n118i"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/gorilla/websocket"))
 | ||
|     (synopsis "Fast WebSocket implementation for Go")
 | ||
|     (description "Gorilla WebSocket is a Go implementation of the WebSocket
 | ||
| protocol.")
 | ||
|     (license license:bsd-2)))
 | ||
| 
 | ||
| (define-public go-github-com-gregjones-httpcache
 | ||
|   (let ((commit "901d90724c7919163f472a9812253fb26761123d")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-gregjones-httpcache")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/gregjones/httpcache")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "05r0xq51vfb55di11m7iv19341d73f7in33vq1ihcqs1nffdwiq0"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/gregjones/httpcache"))
 | ||
|       (home-page "https://github.com/gregjones/httpcache")
 | ||
|       (synopsis "Transport for @code{http.Client} that will cache responses")
 | ||
|       (description
 | ||
|        "Package @code{httpcache} provides a @code{http.RoundTripper}
 | ||
| implementation that works as a mostly @url{https://tools.ietf.org/html/rfc7234, RFC 7234}
 | ||
| compliant cache for HTTP responses.  It is only suitable for use as a
 | ||
| \"private\" cache (i.e. for a web-browser or an API-client and not for a
 | ||
| shared proxy).")
 | ||
|       (license license:expat))))
 | ||
| 
 | ||
| (define-public go-github-com-hashicorp-go-cleanhttp
 | ||
|   (package
 | ||
|     (name "go-github-com-hashicorp-go-cleanhttp")
 | ||
|     (version "0.5.2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/hashicorp/go-cleanhttp")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1i5xslizzwd966w81bz6dxjwzgml4q9bwqa186bsxd1vi8lqxl9p"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/hashicorp/go-cleanhttp"))
 | ||
|     (home-page "https://github.com/hashicorp/go-cleanhttp")
 | ||
|     (synopsis "Functions for accessing clean Go @code{http.Client} values")
 | ||
|     (description
 | ||
|      "The Go standard library contains a default @code{http.Client} and it is
 | ||
| a common idiom to tweak it as necessary.  Unfortunately, this is a shared
 | ||
| value, and it is not uncommon for libraries to assume that they are free to
 | ||
| modify it at will.  This package provides some simple functions to get a
 | ||
| \"clean\" @code{http.Client}, namely one that uses the same default values as
 | ||
| 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
 | ||
|   (package
 | ||
|     (name "go-github-com-hjson-hjson-go")
 | ||
|     (version "4.3.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/hjson/hjson-go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "138vmbnrwzxf64cia27k407clrydvs2jx927dlv6ziydiqyvy7m3"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/hjson/hjson-go"))
 | ||
|     (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.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-jackpal-gateway
 | ||
|   (package
 | ||
|     (name "go-github-com-jackpal-gateway")
 | ||
|     (version "1.0.15")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/jackpal/gateway")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0dlspnbdz63b3kpavibd2764hdy53mx1v3vrqi721dsjy77r9ig3"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/jackpal/gateway"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/jackpal/gateway")
 | ||
|     (synopsis "Discover the address of a LAN gateway")
 | ||
|     (description
 | ||
|      "@code{gateway} is a Go library for discovering the IP address of the
 | ||
| default LAN gateway.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-jackpal-go-nat-pmp
 | ||
|   (package
 | ||
|     (name "go-github-com-jackpal-go-nat-pmp")
 | ||
|     (version "1.0.2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/jackpal/go-nat-pmp")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1p2yrzfbkazc9nisr2iqjwzhb6q16zj6finyxxn2ikk7iiighl1g"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/jackpal/go-nat-pmp"))
 | ||
|     (home-page "https://github.com/jackpal/go-nat-pmp")
 | ||
|     (synopsis "Port mapping and discovery of external IP address")
 | ||
|     (description
 | ||
|      "This package provides a Go client for the NAT-PMP internet protocol for
 | ||
| port mapping and discovering the external IP address of a firewall.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-jcmturner-dnsutils-v2
 | ||
|   (package
 | ||
|     (name "go-github-com-jcmturner-dnsutils-v2")
 | ||
|     (version "2.0.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/jcmturner/dnsutils")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "116zbgvfj88vv93fnapmmgyd5g8kzy774cdyzsnnzyzng92j61c9"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/jcmturner/dnsutils/v2"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (home-page "https://github.com/jcmturner/dnsutils")
 | ||
|     (synopsis "Go library with DNS utils")
 | ||
|     (description
 | ||
|      "The dnsutils package provides a Go function to return a map of Service
 | ||
| Records (SRV) in the order they should be used for a given service, protocol
 | ||
| and name.  The order is determined by the records' priority and randomized
 | ||
| selection based on their relative weighting.  This package is useful for
 | ||
| network applications that require accessing services using SRV records.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-jcmturner-goidentity-v6
 | ||
|   (package
 | ||
|     (name "go-github-com-jcmturner-goidentity-v6")
 | ||
|     (version "6.0.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/jcmturner/goidentity")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "064ysvxvrvij843s7qj1nkzl5qc6j1qbrsb3s0zmwd1sa7vq8q1n"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/jcmturner/goidentity/v6"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-hashicorp-go-uuid))
 | ||
|     (home-page "https://github.com/jcmturner/goidentity")
 | ||
|     (synopsis "Hold authenticated identities and their attributes")
 | ||
|     (description "This package provides a standard interface for holding
 | ||
| authenticated identities and their attributes.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-jcmturner-gokrb5-v8
 | ||
|   (package
 | ||
|     (name "go-github-com-jcmturner-gokrb5-v8")
 | ||
|     (version "8.4.2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/jcmturner/gokrb5")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0w9d1pa3r6qmdblk25bghf78ncs03l15l1sxnh4n536c356rzq4b"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/jcmturner/gokrb5/v8"
 | ||
|        #:unpack-path "github.com/jcmturner/gokrb5"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-gorilla-sessions
 | ||
|            go-github-com-hashicorp-go-uuid
 | ||
|            go-github-com-jcmturner-aescts-v2
 | ||
|            go-github-com-jcmturner-dnsutils-v2
 | ||
|            go-github-com-jcmturner-gofork
 | ||
|            go-github-com-jcmturner-goidentity-v6
 | ||
|            go-github-com-jcmturner-rpc-v2-mstypes
 | ||
|            go-github-com-jcmturner-rpc-v2-ndr
 | ||
|            go-golang-org-x-crypto
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/jcmturner/gokrb5")
 | ||
|     (synopsis "Pure Go Kerberos library for clients and services")
 | ||
|     (description "This package provides a pure Go Kerberos library.  It
 | ||
| features:
 | ||
| @itemize
 | ||
| @item Kerberos libraries for custom integration
 | ||
| @item Parsing Keytab files
 | ||
| @item Parsing krb5.conf files
 | ||
| @item Parsing client credentials cache files such as /tmp/krb5cc_$(id -u $(whoami))
 | ||
| @end itemize
 | ||
| 
 | ||
| On the client side, it provides a client that can authenticate to an SPNEGO
 | ||
| Kerberos authenticated web service, and the ability to change client's
 | ||
| password.
 | ||
| 
 | ||
| On the server side, the library provides a HTTP handler wrapper implements
 | ||
| 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-jmespath-go-jmespath
 | ||
|   (package
 | ||
|     (name "go-github-com-jmespath-go-jmespath")
 | ||
|     (version "0.4.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/jmespath/go-jmespath")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "18zyr9nlywmwp3wpzcjxrgq9s9d2mmc6zg6xhsna00m663nkyc3n"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/jmespath/go-jmespath"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-davecgh-go-spew
 | ||
|            go-github-com-pmezard-go-difflib
 | ||
|            go-github-com-stretchr-objx
 | ||
|            go-gopkg-in-yaml-v2))
 | ||
|     (home-page "https://github.com/jmespath/go-jmespath")
 | ||
|     (synopsis "Golang implementation of JMESPath")
 | ||
|     (description
 | ||
|      "This package implements JMESPath, a query language for JSON.  It
 | ||
| transforms one JSON document into another through a JMESPath expression.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-json-iterator-go
 | ||
|   (package
 | ||
|     (name "go-github-com-json-iterator-go")
 | ||
|     (version "1.1.12")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/json-iterator/go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1c8f0hxm18wivx31bs615x3vxs2j3ba0v6vxchsjhldc8kl311bz"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list #:import-path "github.com/json-iterator/go"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-davecgh-go-spew
 | ||
|            go-github-com-google-gofuzz
 | ||
|            go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-modern-go-concurrent
 | ||
|            go-github-com-modern-go-reflect2))
 | ||
|     (home-page "https://github.com/json-iterator/go")
 | ||
|     (synopsis "High-performance replacement for Golang @code{encoding/json}")
 | ||
|     (description
 | ||
|      "This package implements encoding and decoding of JSON as defined in
 | ||
| @uref{https://rfc-editor.org/rfc/rfc4627.html,RFC 4627} and provides
 | ||
| interfaces with identical syntax of standard lib encoding/json.  Converting
 | ||
| from encoding/json to jsoniter is no more than replacing the package with
 | ||
| jsoniter and variable type declarations (if any).  jsoniter interfaces gives
 | ||
| 100% compatibility with code using standard lib.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-julienschmidt-httprouter
 | ||
|   (package
 | ||
|     (name "go-github-com-julienschmidt-httprouter")
 | ||
|     (version "1.3.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/julienschmidt/httprouter")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1a6sy0ysqknsjssjh7qg1dqn21xmj9a36c57nrk7srfmab4ffmk1"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/julienschmidt/httprouter"))
 | ||
|     (home-page "https://github.com/julienschmidt/httprouter")
 | ||
|     (synopsis "High performance HTTP request router")
 | ||
|     (description
 | ||
|      "Package @code{httprouter} is a trie based high performance HTTP request
 | ||
| router.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-makeworld-the-better-one-go-gemini
 | ||
|   (package
 | ||
|     (name "go-github-com-makeworld-the-better-one-go-gemini")
 | ||
|     (version "0.13.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/makew0rld/go-gemini")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "196rxfg7w8s3zn87gra1mxh1l8iav6kdmg909gkbnc9cxip65zc0"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-google-go-cmp-cmp
 | ||
|            go-golang-org-x-net
 | ||
|            go-golang-org-x-text))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/makeworld-the-better-one/go-gemini"))
 | ||
|     (home-page "https://github.com/makew0rld/go-gemini")
 | ||
|     (synopsis "Client/server library for the Gemini protocol, in Go")
 | ||
|     (description
 | ||
|      "@code{go-gemini} is a library that provides an easy interface to create
 | ||
| clients that speak the Gemini protocol.")
 | ||
|     (license license:isc)))
 | ||
| 
 | ||
| (define-public go-github-com-makeworld-the-better-one-go-gemini-socks5
 | ||
|   (package
 | ||
|     (name "go-github-com-makeworld-the-better-one-go-gemini-socks5")
 | ||
|     (version "1.0.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/makew0rld/go-gemini-socks5")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0r8iljs12nhyn3nk5dzsji9hi88fivashbrcb5d42x5rvzry15px"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/makeworld-the-better-one/go-gemini-socks5"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/makeworld-the-better-one/go-gemini-socks5")
 | ||
|     (synopsis "SOCKS5 proxy for go-gemini")
 | ||
|     (description
 | ||
|      "This package provides SOCKS5 proxy for
 | ||
| @@url{https://github.com/makeworld-the-better-one/go-gemini,go-gemini}.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-microcosm-cc-bluemonday
 | ||
|   (package
 | ||
|     (name "go-github-com-microcosm-cc-bluemonday")
 | ||
|     (version "1.0.3")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/microcosm-cc/bluemonday")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "071ph097c1iwbcc33x6kblj9rxb1r4mp3qfkrj4qw5mg7qcqxydk"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/microcosm-cc/bluemonday"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-chris-ramon-douceur
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/microcosm-cc/bluemonday/")
 | ||
|     (synopsis "HTML sanitizer")
 | ||
|     (description "@code{bluemonday} is a HTML sanitizer implemented in Go.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-multiformats-go-multiaddr
 | ||
|   (package
 | ||
|     (name "go-github-com-multiformats-go-multiaddr")
 | ||
|     (version "0.1.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/multiformats/go-multiaddr")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0cdzlzh7cb1pj9mhq45va3r6gs6pcdfa9j7vdrqlv3zd6k3bxg39"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/multiformats/go-multiaddr"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-multiformats-go-multihash))
 | ||
|     (home-page "https://github.com/multiformats/go-multiaddr")
 | ||
|     (synopsis "Composable and future-proof network addresses")
 | ||
|     (description
 | ||
|      "Multiaddr is a standard way to represent addresses that does the
 | ||
| following:
 | ||
| 
 | ||
| @itemize
 | ||
| @item Support any standard network protocols.
 | ||
| @item Self-describe (include protocols).
 | ||
| @item Have a binary packed format.
 | ||
| @item Have a nice string representation.
 | ||
| @item Encapsulate well.
 | ||
| @end itemize")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| ;; It's for the Kubo update; remove it when it is no longer needed.
 | ||
| (define-public go-github-com-multiformats-go-multiaddr-0.12
 | ||
|   (package
 | ||
|     (inherit go-github-com-multiformats-go-multiaddr)
 | ||
|     (name "go-github-com-multiformats-go-multiaddr")
 | ||
|     (version "0.12.3")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/multiformats/go-multiaddr")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1rn02yn7494r7ayn585bbsddprbn8wdccxs4n2k5dmll4dyd39mp"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/multiformats/go-multiaddr"))
 | ||
|     (native-inputs (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs (list go-github-com-ipfs-go-cid
 | ||
|                              go-github-com-multiformats-go-multibase
 | ||
|                              go-github-com-multiformats-go-varint
 | ||
|                              go-github-com-multiformats-go-multihash
 | ||
|                              go-golang-org-x-exp-2023))))
 | ||
| 
 | ||
| (define-public go-github-com-multiformats-go-multiaddr-dns
 | ||
|   (package
 | ||
|     (name "go-github-com-multiformats-go-multiaddr-dns")
 | ||
|     (version "0.3.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/multiformats/go-multiaddr-dns")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "17qpcgxlmji6wdnjabl5ihc4zn69w2g0karad46zj70y5zg4y24r"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/multiformats/go-multiaddr-dns"
 | ||
|       #:unpack-path "github.com/multiformats/go-multiaddr-dns"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-miekg-dns
 | ||
|            go-github-com-multiformats-go-multiaddr-0.12))
 | ||
|     (home-page "https://multiformats.io/multiaddr/")
 | ||
|     (synopsis "Library and CLI tool for DNS multiaddr resolution")
 | ||
|     (description
 | ||
|      "Go library for /dns4, /dns6, /dnsaddr multiaddr resolution.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-multiformats-go-multiaddr-fmt
 | ||
|   (package
 | ||
|     (name "go-github-com-multiformats-go-multiaddr-fmt")
 | ||
|     (version "0.1.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/multiformats/go-multiaddr-fmt")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "119qqrnhzcb9im428alssv2dz9rrj74hy0asd10bnfv2d5fd09nm"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/multiformats/go-multiaddr-fmt"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-multiformats-go-multiaddr-0.12))
 | ||
|     (home-page "https://github.com/multiformats/go-multiaddr-fmt")
 | ||
|     (synopsis "Declarative validator for multiaddrs")
 | ||
|     (description
 | ||
|      "This package provides a validation checker for multiaddrs.  Some basic
 | ||
| validators for common address types are provided, but creating your own
 | ||
| combinations is easy.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-multiformats-go-multiaddr-net
 | ||
|   ;; This commit is from <2018-10-01> and associated with GX package manager,
 | ||
|   ;; since that time the project has changed versing stile and GX is dropped.
 | ||
|   ;; The latest versioned tag is v0.1.5 <2020-04-30>. The project is archved
 | ||
|   ;; on <2021-10-05>.
 | ||
|   (let ((commit "1cb9a0e8a6de3c8a10f6cee60d01d793603c4f7e")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-multiformats-go-multiaddr-net")
 | ||
|       (version (git-version "1.6.3" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/multiformats/go-multiaddr-net")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "1ypgi47xdz3bh8lh7f8cmk7w3ql9g4izx5l3kzdg9gda1xn5zxq3"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        (list
 | ||
|         ;; TODO: Tests fail because they try to access the network.
 | ||
|         #:tests? #f
 | ||
|         #:import-path "github.com/multiformats/go-multiaddr-net"))
 | ||
|       (propagated-inputs
 | ||
|        (list go-github-com-multiformats-go-multiaddr))
 | ||
|       (home-page "https://github.com/multiformats/go-multiaddr-net")
 | ||
|       (synopsis "Multiaddress net tools")
 | ||
|       (description
 | ||
|        "This package provides Multiaddr specific versions of common functions
 | ||
| in stdlib's @command{net} package.  This means wrappers of standard net
 | ||
| symbols like @command{net.Dial} and @command{net.Listen}, as well as
 | ||
| conversion to and from @command{net.Addr}.")
 | ||
|       (license license:expat))))
 | ||
| 
 | ||
| (define-public go-github-com-multiformats-go-multistream
 | ||
|   (package
 | ||
|     (name "go-github-com-multiformats-go-multistream")
 | ||
|     (version "0.5.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/multiformats/go-multistream")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1mlcz16ii090vq6brm02dmmkj8akkafa55kyvkrrwpq6zvj1hy23"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.20
 | ||
|       #:import-path "github.com/multiformats/go-multistream"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-multiformats-go-varint))
 | ||
|     (home-page "https://github.com/multiformats/go-multistream")
 | ||
|     (synopsis "Implementation of the multistream protocol in Golang")
 | ||
|     (description
 | ||
|      "Package multistream implements a simple stream router for the
 | ||
| multistream-select protocol.  The protocol is defined at
 | ||
| @url{https://github.com/multiformats/multistream-select}")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-nwidger-jsoncolor
 | ||
|   (package
 | ||
|     (name "go-github-com-nwidger-jsoncolor")
 | ||
|     (version "0.3.0")
 | ||
|     (home-page "https://github.com/nwidger/jsoncolor")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url home-page)
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "13rd146pnj7qm70r1333gyd1f61x40nafxlpvdxlci9h7mx8c5p8"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/nwidger/jsoncolor"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-fatih-color))
 | ||
|     (synopsis "Colorized JSON marshalling and encoding")
 | ||
|     (description
 | ||
|      "@code{jsoncolor} is a drop-in replacement for @code{encoding/json}'s
 | ||
| @code{Marshal} and @code{MarshalIndent} functions and @code{Encoder} type
 | ||
| which produce colorized output using github.com/fatih/color.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-opentracing-opentracing-go
 | ||
|   (package
 | ||
|     (name "go-github-com-opentracing-opentracing-go")
 | ||
|     (version "1.2.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri
 | ||
|         (git-reference
 | ||
|          (url "https://github.com/opentracing/opentracing-go")
 | ||
|          (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "04rgdwl29kimp2wnm4dycnzp7941hvpj6wym85x23c6fclacm94h"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/opentracing/opentracing-go"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (home-page "https://github.com/opentracing/opentracing-go")
 | ||
|     (synopsis "OpenTracing API for Go")
 | ||
|     (description "OpenTracing-Go is a Go implementation of the OpenTracing API.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-oschwald-geoip2-golang
 | ||
|   (package
 | ||
|     (name "go-github-com-oschwald-geoip2-golang")
 | ||
|     (version "1.11.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/oschwald/geoip2-golang")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0670cv1b9c2p0lx63rlwl7kplbvzr79apbw13109v0pv4qlapmhx"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:tests? #f ; Requires some unpackaged software and test data
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/oschwald/geoip2-golang"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-oschwald-maxminddb-golang))
 | ||
|     (home-page "https://github.com/oschwald/geoip2-golang")
 | ||
|     (synopsis "MaxMind GeoIP2 reader")
 | ||
|     (description
 | ||
|      "This package provides a library for reading MaxMind GeoLite2 and GeoIP2
 | ||
| databases in Go.")
 | ||
|     (license license:isc)))
 | ||
| 
 | ||
| (define-public go-github-com-oschwald-maxminddb-golang
 | ||
|   (package
 | ||
|     (name "go-github-com-oschwald-maxminddb-golang")
 | ||
|     (version "1.13.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/oschwald/maxminddb-golang")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1p0c10r6850znvarc9h3y0jlwika9qmq0ys7rmg2aj8x2cffz3z6"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/oschwald/maxminddb-golang"
 | ||
|       #:phases
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           ;; XXX: Remove most of the tests requiring test-data from submodule
 | ||
|           ;; <https://github.com/maxmind/MaxMind-DB>, there is a documented
 | ||
|           ;; process on how to generate it, consider to pack and activate
 | ||
|           ;; tests in the next update cycle.
 | ||
|           (add-after 'unpack 'remove-failing-tests
 | ||
|             (lambda* (#:key import-path #:allow-other-keys)
 | ||
|               (with-directory-excursion (string-append "src/" import-path)
 | ||
|                 (for-each delete-file
 | ||
|                           (list "decoder_test.go"
 | ||
|                                 "deserializer_test.go"
 | ||
|                                 "example_test.go"
 | ||
|                                 "reader_test.go"
 | ||
|                                 "traverse_test.go"
 | ||
|                                 "verifier_test.go"))))))))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-sys))
 | ||
|     (home-page "https://github.com/oschwald/maxminddb-golang")
 | ||
|     (synopsis "MaxMind DB Reader for Go")
 | ||
|     (description
 | ||
|      "This is a Go reader for the MaxMind DB format.  Although this can be
 | ||
| used to read GeoLite2 and GeoIP2 databases, @code{geoip2} provides a
 | ||
| higher-level API for doing so.")
 | ||
|     (license license:isc)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-dtls
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-dtls")
 | ||
|     (version "1.5.4")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/dtls")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0qc5dbgh31lilbd1lpmajj1fjzy4jx9iadzqgl9jd1ry9fj3ly1d"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; XXX: TestClientCertificate: Client failed(x509: certificate relies on
 | ||
|       ;; legacy Common Name field, use SANs instead)
 | ||
|       #:tests? #f
 | ||
|       #:import-path "github.com/pion/dtls"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-github-com-pion-transport
 | ||
|            go-golang-org-x-crypto))
 | ||
|     (home-page "https://github.com/pion/dtls")
 | ||
|     (synopsis "DTLS 1.2 Server/Client implementation for Go")
 | ||
|     (description
 | ||
|      "This package provides a native
 | ||
| @url{https://datatracker.ietf.org/doc/html/rfc6347, DTLS 1.2} implementation
 | ||
| in Golang.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-dtls-v2
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-dtls)
 | ||
|     (name "go-github-com-pion-dtls-v2")
 | ||
|     (version "2.2.11")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (inherit (package-source go-github-com-pion-dtls))
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/dtls")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "10nn9349f7snqkzncda5m013fgnzicrcxi6pb6ghc0vb6rhqkf30"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/pion/dtls/v2"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-github-com-pion-transport-v2
 | ||
|            go-github-com-pion-transport-v3
 | ||
|            go-golang-org-x-crypto
 | ||
|            go-golang-org-x-net))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-ice
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-ice")
 | ||
|     (version "0.7.18")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/ice/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "17108z4fkr9b2fxf5icxspgif29a40gi57bhp9a50mlfr36yv9vk"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; Source-only package
 | ||
|       #:tests? #f
 | ||
|       #:import-path "https://github.com/pion/ice"
 | ||
|       #:phases
 | ||
|       ;; Failed to build and only requried for inheritance:
 | ||
|       ;;
 | ||
|       ;; cannot use a.net (type *vnet.Net) as type transport.Net in field value:
 | ||
|       ;; *vnet.Net does not implement transport.Net (wrong type for CreateDialer method)
 | ||
|       ;;         have CreateDialer(*net.Dialer) vnet.Dialer
 | ||
|       ;;         want CreateDialer(*net.Dialer) transport.Dialer
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           (delete 'build))))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-google-uuid
 | ||
|            go-github-com-pion-dtls-v2
 | ||
|            go-github-com-pion-logging
 | ||
|            go-github-com-pion-mdns
 | ||
|            go-github-com-pion-randutil
 | ||
|            go-github-com-pion-stun
 | ||
|            go-github-com-pion-transport
 | ||
|            go-github-com-pion-turn-v2
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/pion/ice/")
 | ||
|     (synopsis "Go implementation of ICE")
 | ||
|     (description
 | ||
|      "This package provides an implementation of @acronym{ICE, Interactive
 | ||
| Connectivity Establishment protocol}, specified in
 | ||
| @url{https://datatracker.ietf.org/doc/html/rfc8445, RFC8445}.  It is used as a
 | ||
| part of @url{https://github.com/pion, Pion} WebRTC implementation.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-ice-v2
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-ice)
 | ||
|     (name "go-github-com-pion-ice-v2")
 | ||
|     (version "2.3.24")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/ice/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0mh7l31vv15gxpl61f22jwpc77b5l9wx4hbjv4h8cgmpb9911cv8"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:tests? #f ;Tests require network access.
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/pion/ice/v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-google-uuid
 | ||
|            go-github-com-pion-dtls-v2
 | ||
|            go-github-com-pion-logging
 | ||
|            go-github-com-pion-mdns
 | ||
|            go-github-com-pion-randutil
 | ||
|            go-github-com-pion-stun
 | ||
|            go-github-com-pion-transport-v2
 | ||
|            go-github-com-pion-turn-v2
 | ||
|            go-golang-org-x-net))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-ice-v3
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-ice)
 | ||
|     (name "go-github-com-pion-ice-v3")
 | ||
|     (version "3.0.7")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/ice/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0f9jy80law69zb26rkb6kl6w1c66vdghdrmifhwlmzngb644ihdb"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:tests? #f ;Tests require network access.
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/pion/ice/v3"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-google-uuid
 | ||
|            go-github-com-pion-dtls-v2
 | ||
|            go-github-com-pion-logging
 | ||
|            go-github-com-pion-mdns-v2
 | ||
|            go-github-com-pion-randutil
 | ||
|            go-github-com-pion-stun-v2
 | ||
|            go-github-com-pion-transport-v3
 | ||
|            go-github-com-pion-turn-v3
 | ||
|            go-golang-org-x-net))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-mdns
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-mdns")
 | ||
|     (version "0.0.12")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/mdns/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "18nz0vddxik3q11mn4z65zvrfhspxv0xymxv9w3kgk2kszwq2byy"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; Tests are implemented in GitHub Actions and require aditional
 | ||
|       ;; packaging, see
 | ||
|       ;; <https://github.com/pion/.goassets/blob/master/.github/workflows/test.reusable.yml>.
 | ||
|       #:tests? #f
 | ||
|       #:go go-1.21
 | ||
|       #:unpack-path "github.com/pion/mdns"
 | ||
|       #:import-path "github.com/pion/mdns"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-github-com-pion-transport-v3
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/pion/mdns/")
 | ||
|     (synopsis "Pure Go implementation of Multicast DNS")
 | ||
|     (description
 | ||
|      "This package implements a mDNS (multicast DNS) used by
 | ||
| @url{https://github.com/pion, Pion}.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-mdns-v2
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-mdns)
 | ||
|     (name "go-github-com-pion-mdns-v2")
 | ||
|     (version "2.0.7")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/mdns/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "03675hx82lx3c8akkxdbkch1z4dbq54r05jk6jgdyd7mrdh9k4lm"))))
 | ||
|     (arguments
 | ||
|      (substitute-keyword-arguments (package-arguments
 | ||
|                                     go-github-com-pion-mdns)
 | ||
|        ((#:unpack-path flags ''())
 | ||
|         "github.com/pion/mdns/v2")
 | ||
|        ((#:import-path flags ''())
 | ||
|         "github.com/pion/mdns/v2")))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-rtp
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-rtp")
 | ||
|     (version "1.8.6")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/rtp")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1vrdvswvvbqq83kbjlyblarbsn5v0sjcwrcv03nncd605cggnbkx"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/pion/rtp"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-randutil))
 | ||
|     (home-page "https://github.com/pion/rtp")
 | ||
|     (synopsis "Go implementation of RTP")
 | ||
|     (description
 | ||
|      "This package provides a @acronym{Real-time Transport Protocol, RTP}
 | ||
| packetizer and depacketizer.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-stun
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-stun")
 | ||
|     (version "0.6.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/stun")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0172fcm1xvzvy3d5lcpscayzpf3i5w4bpfydifdc9l4n2wslx0sm"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/pion/stun"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list  go-github-com-pion-dtls-v2
 | ||
|             go-github-com-pion-logging
 | ||
|             go-github-com-pion-transport-v2))
 | ||
|     (home-page "https://github.com/pion/stun")
 | ||
|     (synopsis "Go implementation of STUN")
 | ||
|     (description
 | ||
|      "Package @code{stun} implements Session Traversal Utilities for
 | ||
| +NAT (STUN) (@url{https://tools.ietf.org/html/rfc5389, RFC 5389}) protocol and
 | ||
| +@url{https://pkg.go.dev/github.com/pion/stun#Client, client} with no external
 | ||
| +dependencies and zero allocations in hot paths.  Client
 | ||
| +@url{https://pkg.go.dev/github.com/pion/stun#WithRTO, supports} automatic
 | ||
| +request retransmissions.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-stun-v2
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-stun)
 | ||
|     (name "go-github-com-pion-stun-v2")
 | ||
|     (version "2.0.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (inherit (package-source go-github-com-pion-stun))
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/stun")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0zli55ls5izpr6cw0wj0gy44872xn9rk20i8ay9cfk7j2rb60y60"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/pion/stun/v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-dtls-v2
 | ||
|            go-github-com-pion-logging
 | ||
|            go-github-com-pion-transport-v3
 | ||
|            go-golang-org-x-crypto
 | ||
|            go-golang-org-x-net))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-transport
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-transport")
 | ||
|     (version "0.14.1")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/transport")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0331kywqaa6fymc64wrqgwnxlhx31qdf299i927vifx1wdcl9ikp"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; Source-only package
 | ||
|       #:tests? #f
 | ||
|       #:import-path "github.com/pion/transport"
 | ||
|       #:phases
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           (delete 'build))))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-golang-org-x-net
 | ||
|            go-golang-org-x-sys))
 | ||
|     (home-page "https://github.com/pion/transport")
 | ||
|     (synopsis "Golang networking related functions")
 | ||
|     (description
 | ||
|      "This package implements a various networking related functions used
 | ||
| throughout the @url{https://github.com/pion, Pion} modules.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-transport-v2
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-transport)
 | ||
|     (name "go-github-com-pion-transport-v2")
 | ||
|     (version "2.2.5")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (inherit (package-source go-github-com-pion-transport))
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/transport/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "00q3v37l56yr1ch25g5w70jy8y923csbvy4krvy4dv3h5f1mdpmf"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/pion/transport/v2"))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-transport-v3
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-transport)
 | ||
|     (name "go-github-com-pion-transport-v3")
 | ||
|     (version "3.0.2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (inherit (package-source go-github-com-pion-transport))
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/transport/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0j7ljkbyf2qd7daxg7d1rd6c92md64agi59b69g6jyqpz5jww998"))))
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/pion/transport/v3"))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-turn
 | ||
|   (package
 | ||
|     (name "go-github-com-pion-turn")
 | ||
|     (version "1.4.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/turn/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "16lkgmrlks0qdzbk8jj0c0j66qfxhb54cvzgrfn4imvm56dbxp2n"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:tests? #f ;Tests require network access.
 | ||
|       #:import-path "github.com/pion/turn"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-github-com-pion-stun
 | ||
|            go-github-com-pion-transport
 | ||
|            go-github-com-pkg-errors))
 | ||
|     (home-page "https://github.com/pion/turn/")
 | ||
|     (synopsis "API for building TURN clients and servers in Golang")
 | ||
|     (description
 | ||
|      "This package provides a toolkit for building @acronym{TURN, Traversal
 | ||
| Using Relays around NAT}, specified in
 | ||
| @url{https://datatracker.ietf.org/doc/html/rfc8656, RFC 8656}, servers and
 | ||
| clients.
 | ||
| 
 | ||
| @code{pion/turn} is an API for building STUN/TURN clients and servers, not a
 | ||
| binary you deploy then configure.  It may require copying the examples and
 | ||
| making minor modifications to fit your need, no knowledge of Go is required
 | ||
| however.
 | ||
| 
 | ||
| The advantage of this is that you don't need to deal with complicated
 | ||
| configuration files, or custom APIs to modify the state of Pion TURN.  After
 | ||
| you instantiate an instance of a Pion TURN server or client you interact with
 | ||
| it like any library.  The quickest way to get started is to look at the
 | ||
| @url{https://github.com/pion/turn/blob/master/examples, examples} or
 | ||
| @url{https://godoc.org/github.com/pion/turn, GoDoc}.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-pion-turn-v2
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-turn)
 | ||
|     (name "go-github-com-pion-turn-v2")
 | ||
|     (version "2.1.6")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/turn/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0iw7nvqsxpqy90k5a8mq3dyask272391m59cbiy30aak1y2wwaac"))))
 | ||
|     (arguments
 | ||
|      (substitute-keyword-arguments (package-arguments
 | ||
|                                     go-github-com-pion-turn)
 | ||
|        ((#:import-path flags ''())
 | ||
|         "github.com/pion/turn/v2")))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-github-com-pion-randutil
 | ||
|            go-github-com-pion-stun
 | ||
|            go-github-com-pion-transport-v2
 | ||
|            go-golang-org-x-sys))))
 | ||
| 
 | ||
| (define-public go-github-com-pion-turn-v3
 | ||
|   (package
 | ||
|     (inherit go-github-com-pion-turn)
 | ||
|     (name "go-github-com-pion-turn-v3")
 | ||
|     (version "3.0.3")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pion/turn/")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0l78m9ym0sv1zfalbv95lwblmr789fc53d957ph5mdznhjx89lyx"))))
 | ||
|     (arguments
 | ||
|      (substitute-keyword-arguments (package-arguments
 | ||
|                                     go-github-com-pion-turn)
 | ||
|        ((#:import-path flags ''())
 | ||
|         "github.com/pion/turn/v3")))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-pion-logging
 | ||
|            go-github-com-pion-randutil
 | ||
|            go-github-com-pion-stun-v2
 | ||
|            go-github-com-pion-transport-v3
 | ||
|            go-golang-org-x-sys))))
 | ||
| 
 | ||
| (define-public go-github-com-pires-go-proxyproto
 | ||
|   (package
 | ||
|     (name "go-github-com-pires-go-proxyproto")
 | ||
|     (version "0.7.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pires/go-proxyproto")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1p18w555xp187fl807h1yd092cvs8jarp98pa76zl84rxlk4k2h4"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.18
 | ||
|       #:import-path "github.com/pires/go-proxyproto"))
 | ||
|     (home-page "https://github.com/pires/go-proxyproto")
 | ||
|     (synopsis "Implementation of the PROXY protocol")
 | ||
|     (description
 | ||
|      "Package proxyproto implements Proxy Protocol (v1 and v2) parser and
 | ||
| writer, as per specification:
 | ||
| @@url{https://www.haproxy.org/download/2.3/doc/proxy-protocol.txt}.  It is to
 | ||
| be used in one of or both proxy clients and proxy servers that need to support
 | ||
| said protocol.  Both protocol versions, 1 (text-based) and 2 (binary-based)
 | ||
| are supported. @acronym{TLV, tag-length-value} parsers extensions comming with
 | ||
| this library support AWS, Azure and GCP.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-pkg-sftp
 | ||
|   (package
 | ||
|     (name "go-github-com-pkg-sftp")
 | ||
|     (version "1.13.6")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/pkg/sftp")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0n35lzfrnrffjqy34ny6gxs27kq81s67ply6q8s1g19mhfzm6my7"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/pkg/sftp"))
 | ||
|     (propagated-inputs (list go-golang-org-x-crypto go-github-com-kr-fs))
 | ||
|     (native-inputs (list go-github-com-stretchr-testify))
 | ||
|     (home-page "https://github.com/pkg/sftp")
 | ||
|     (synopsis "SFTP implementation for Go")
 | ||
|     (description
 | ||
|      "This package provides an @acronym{SFTP, SSH File Transfer Protocol}
 | ||
| implementation, as described in
 | ||
| @url{https://filezilla-project.org/specs/draft-ietf-secsh-filexfer-02.txt},
 | ||
| for Go.")
 | ||
|     (license license:bsd-2)))
 | ||
| 
 | ||
| (define-public go-github-com-pquerna-cachecontrol
 | ||
|   (package
 | ||
|     (name "go-github-com-pquerna-cachecontrol")
 | ||
|     (version "0.2.0")
 | ||
|     (source (origin
 | ||
|               (method git-fetch)
 | ||
|               (uri (git-reference
 | ||
|                     (url "https://github.com/pquerna/cachecontrol")
 | ||
|                     (commit (string-append "v" version))))
 | ||
|               (file-name (git-file-name name version))
 | ||
|               (sha256
 | ||
|                (base32
 | ||
|                 "0d5zgv2w0sinh9m41pw3n015zzyabk7awgwwga7nmhjz452c9r5n"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list #:import-path "github.com/pquerna/cachecontrol"))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-stretchr-testify))
 | ||
|     (home-page "https://github.com/pquerna/cachecontrol")
 | ||
|     (synopsis "Golang HTTP Cache-Control Parser and Interpretation")
 | ||
|     (description
 | ||
|      "This package implements RFC 7234 Hypertext Transfer Protocol (HTTP/1.1):
 | ||
| Caching.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-github-com-puerkitobio-goquery
 | ||
|   (package
 | ||
|     (name "go-github-com-puerkitobio-goquery")
 | ||
|     (version "1.7.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/PuerkitoBio/goquery")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0gh1d99l5xc9hvwa4j40pfq3y9vfyq52mnrz6bf1kw2r2zr2gbcc"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      `(#:import-path "github.com/PuerkitoBio/goquery"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-andybalholm-cascadia go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/PuerkitoBio/goquery")
 | ||
|     (synopsis "Features similar to jQuery to the Go language")
 | ||
|     (description "@code{goquery} brings a syntax and a set of features similar
 | ||
| to jQuery to the Go language.")
 | ||
|     (license license:bsd-3)))
 | ||
| 
 | ||
| (define-public go-github-com-quic-go-qpack
 | ||
|   (package
 | ||
|     (name "go-github-com-quic-go-qpack")
 | ||
|     (version "0.4.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/quic-go/qpack")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "00mjz445hhx4yar5l8p21bpp4d06jyg2ajw0ax7bh64d37l4kx39"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; Tests require ginkgo v2.
 | ||
|       #:tests? #f
 | ||
|       #:go go-1.20
 | ||
|       #:import-path "github.com/quic-go/qpack"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-onsi-ginkgo
 | ||
|            go-github-com-onsi-gomega
 | ||
|            go-golang-org-x-net))
 | ||
|     (home-page "https://github.com/quic-go/qpack")
 | ||
|     (synopsis "Minimal QPACK (RFC 9204) implementation for Go")
 | ||
|     (description
 | ||
|      "A minimal QPACK (RFC 9204) implementation in Go.  It is minimal in the sense
 | ||
| that it doesn't use the dynamic table at all, but just the static table and (Huffman
 | ||
| encoded) string literals.  Wherever possible, it reuses code from the
 | ||
| @url{https://github.com/golang/net/tree/master/http2/hpack, HPACK implementation in
 | ||
| the Go standard library}.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-quic-go-quic-go
 | ||
|   (package
 | ||
|     (name "go-github-com-quic-go-quic-go")
 | ||
|     (version "0.43.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/quic-go/quic-go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1vqc1mb60flbm5jqf48gzhzm8m0k06klf9szpx6mgw30957qv3fn"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/quic-go/quic-go"
 | ||
|       #:phases
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           ;; TODO: Figure out why some tests fail.
 | ||
|           (add-after 'unpack 'remove-failing-tests
 | ||
|             (lambda* (#:key import-path #:allow-other-keys)
 | ||
|               (with-directory-excursion (string-append "src/" import-path)
 | ||
|                 (for-each delete-file
 | ||
|                           (list "integrationtests/self/timeout_test.go"
 | ||
|                                 "server_test.go")))))
 | ||
|           ;; Test steps are taken from GitHub Actions -
 | ||
|           ;; <https://github.com/quic-go/quic-go/blob/v0.42.0/.github/workflows/unit.yml>.
 | ||
|           (replace 'check
 | ||
|             (lambda* (#:key tests? import-path #:allow-other-keys)
 | ||
|               (when tests?
 | ||
|                 (with-directory-excursion (string-append "src/" import-path)
 | ||
|                   (invoke "ginkgo" "-r" "-v"
 | ||
|                           (string-append "--procs="
 | ||
|                                          (number->string (parallel-job-count)))
 | ||
|                           "--randomize-all"
 | ||
|                           "--randomize-suites"
 | ||
|                           "--skip-package"
 | ||
|                           "integrationtests"))))))))
 | ||
|     (native-inputs
 | ||
|      (list go-ginkgo
 | ||
|            go-github-com-onsi-ginkgo-v2
 | ||
|            go-go-uber-org-mock
 | ||
|            go-golang-org-x-time))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-francoispqt-gojay
 | ||
|            go-github-com-quic-go-qpack
 | ||
|            go-golang-org-x-crypto
 | ||
|            go-golang-org-x-exp
 | ||
|            go-golang-org-x-net
 | ||
|            go-golang-org-x-sync
 | ||
|            go-golang-org-x-sys))
 | ||
|     (home-page "https://github.com/quic-go/quic-go")
 | ||
|     (synopsis "QUIC in Go")
 | ||
|     (description
 | ||
|      "This package provides a Go language implementation of the QUIC network
 | ||
| protocol.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-quic-go-webtransport-go
 | ||
|   (package
 | ||
|     (name "go-github-com-quic-go-webtransport-go")
 | ||
|     (version "0.8.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/quic-go/webtransport-go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0zwr4jg4dg2b14kkypkbs8dpai5b5s44gm5gq0vrs3mmg6vq0v97"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:go go-1.21
 | ||
|       #:import-path "github.com/quic-go/webtransport-go"))
 | ||
|     (native-inputs
 | ||
|      (list go-go-uber-org-mock
 | ||
|            go-github-com-stretchr-testify-next))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-quic-go-quic-go
 | ||
|            go-golang-org-x-exp))
 | ||
|     (home-page "https://github.com/quic-go/webtransport-go")
 | ||
|     (synopsis "WebTransport implementation based on quic-go")
 | ||
|     (description
 | ||
|      "webtransport-go is an implementation of the @code{WebTransport} protocol, based
 | ||
| on @@url{https://github.com/quic-go/quic-go,quic-go}.  It currently implements
 | ||
| @@url{https://www.ietf.org/archive/id/draft-ietf-webtrans-http3-02.html,draft-02}
 | ||
| of the specification.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-sherclockholmes-webpush-go
 | ||
|   (package
 | ||
|     (name "go-github-com-sherclockholmes-webpush-go")
 | ||
|     (version "1.3.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/SherClockHolmes/webpush-go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0qv16zvkd1c7q81v2ai8pfz590fxdrk4lfbgyymln0q7jn5wlvki"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/SherClockHolmes/webpush-go"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-golang-jwt-jwt go-golang-org-x-crypto))
 | ||
|     (home-page "https://github.com/SherClockHolmes/webpush-go")
 | ||
|     (synopsis "Web Push API Encryption with VAPID support")
 | ||
|     (description
 | ||
|      "Web Push API Encryption with
 | ||
| @url{https://datatracker.ietf.org/doc/html/draft-ietf-webpush-vapid-01, VAPID}
 | ||
| support.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-sourcegraph-jsonrpc2
 | ||
|   (package
 | ||
|     (name "go-github-com-sourcegraph-jsonrpc2")
 | ||
|     (version "0.1.0")
 | ||
|     (home-page "https://github.com/sourcegraph/jsonrpc2")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url home-page)
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1dk0w32k96vxrwnmm24wqx337dn8ylch65qwrbc3wh7whw2xx71q"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      '(#:import-path "github.com/sourcegraph/jsonrpc2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-daviddengcn-go-colortext
 | ||
|            go-github-com-gorilla-websocket
 | ||
|            go-github-com-motemen-go-colorine))
 | ||
|     (synopsis "Provides a client and server implementation of JSON-RPC 2.0")
 | ||
|     (description
 | ||
|      "Package jsonrpc2 provides a Go implementation of JSON-RPC 2.0.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-tdewolff-minify-v2
 | ||
|   (package
 | ||
|     (name "go-github-com-tdewolff-minify-v2")
 | ||
|     (version "2.12.7")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/tdewolff/minify")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "0qhslaq885zbqs83nvbi29yh09b89kkb6ycami8lz28wkwrlayap"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/tdewolff/minify/v2"
 | ||
|       #:phases
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           (add-after 'unpack 'regenerate-hash
 | ||
|             (lambda* (#:key import-path #:allow-other-keys)
 | ||
|               (for-each
 | ||
|                (lambda (dir)
 | ||
|                  (with-directory-excursion
 | ||
|                      (format #f "src/~a/~a" import-path dir)
 | ||
|                    (make-file-writable "hash.go")
 | ||
|                    (format #t "Generating `hash.go' for ~a...~%" dir)
 | ||
|                    (invoke "go" "generate")))
 | ||
|                '("css" "html" "svg")))))))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-tdewolff-parse-v2))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-tdewolff-hasher
 | ||
|            go-github-com-tdewolff-test))
 | ||
|     (home-page "https://go.tacodewolff.nl/minify")
 | ||
|     (synopsis "Go minifiers for web formats")
 | ||
|     (description
 | ||
|      "This package provides HTML5, CSS3, JS, JSON, SVG and XML minifiers and
 | ||
| an interface to implement any other minifier.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-tdewolff-parse-v2
 | ||
|   (package
 | ||
|     (name "go-github-com-tdewolff-parse-v2")
 | ||
|     (version "2.6.6")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/tdewolff/parse")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1dqki9ima079k9a3l72igmx5dml8qsl9z8rzw8a433f4gjhlv320"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/tdewolff/parse/v2"
 | ||
|       #:phases
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           (add-after 'unpack 'regenerate-hash
 | ||
|             (lambda* (#:key import-path #:allow-other-keys)
 | ||
|               (for-each
 | ||
|                (lambda (dir)
 | ||
|                  (with-directory-excursion
 | ||
|                      (format #f "src/~a/~a" import-path dir)
 | ||
|                    (make-file-writable "hash.go")
 | ||
|                    (format #t "Generating `hash.go' for ~a...~%" dir)
 | ||
|                    (invoke "go" "generate")))
 | ||
|                '("css" "html")))))))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-tdewolff-hasher
 | ||
|            go-github-com-tdewolff-test))
 | ||
|     (home-page "https://github.com/tdewolff/parse")
 | ||
|     (synopsis "Go parsers for web formats")
 | ||
|     (description
 | ||
|      "This package contains several lexers and parsers written in Go.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-tv42-httpunix
 | ||
|   (let ((commit "2ba4b9c3382c77e7b9ea89d00746e6111d142a22")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-tv42-httpunix")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/tv42/httpunix")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "0xbwpip2hsfhd2kd878jn5ndl8y1i9658lggha4x3xb5m1rsds9w"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/tv42/httpunix"))
 | ||
|       (home-page "https://github.com/tv42/httpunix")
 | ||
|       (synopsis "Go library to talk HTTP over Unix domain sockets")
 | ||
|       (description "This package is a Go library to talk HTTP over Unix domain
 | ||
| sockets.")
 | ||
|       (license license:expat))))
 | ||
| 
 | ||
| (define-public go-github-com-ugorji-go-codec
 | ||
|   (package
 | ||
|     (name "go-github-com-ugorji-go-codec")
 | ||
|     (version "1.2.12")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/ugorji/go")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "11j0sd7kli2bh2npfr2znnvdjsk118rs8khqzfdp6pb5jm0l20ib"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/ugorji/go/codec"
 | ||
|       #:unpack-path "github.com/ugorji/go"
 | ||
|       #: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
 | ||
|                                                                "/bench")))))))
 | ||
|     (propagated-inputs (list go-golang-org-x-tools))
 | ||
|     (home-page "https://github.com/ugorji/go")
 | ||
|     (synopsis "Codec and encoding library for various serialization formats")
 | ||
|     (description
 | ||
|      "This package provides a high performance and feature rich codec and
 | ||
| encoding library for the MessagePack, CBOR, JSON and the Binc formats.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-valyala-fasthttp
 | ||
|   (package
 | ||
|     (name "go-github-com-valyala-fasthttp")
 | ||
|     (version "1.39.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/valyala/fasthttp")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "12qwx0yk7wjj25v4fswgmj28r69gk94kqdmzavca8k9f0yznniz1"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       #:import-path "github.com/valyala/fasthttp"
 | ||
|       #:phases
 | ||
|       #~(modify-phases %standard-phases
 | ||
|           (replace 'check
 | ||
|             (lambda* (#:key inputs #:allow-other-keys #:rest args)
 | ||
|               (unless
 | ||
|                   ;; Tests hang forever with gccgo.
 | ||
|                   (false-if-exception (search-input-file inputs "/bin/gccgo"))
 | ||
|                 (apply (assoc-ref %standard-phases 'check) args)))))))
 | ||
|     (propagated-inputs
 | ||
|      (list go-github-com-andybalholm-brotli
 | ||
|            go-github-com-klauspost-compress
 | ||
|            go-github-com-valyala-bytebufferpool
 | ||
|            go-github-com-valyala-tcplisten
 | ||
|            go-golang-org-x-crypto
 | ||
|            go-golang-org-x-net
 | ||
|            go-golang-org-x-sys
 | ||
|            go-golang-org-x-text))
 | ||
|     (home-page "https://github.com/valyala/fasthttp")
 | ||
|     (synopsis "Provides fast HTTP server and client API")
 | ||
|     (description
 | ||
|      "This package provides a Go module @code{fasthttp} which may be used as
 | ||
| replacement for native @code{net/http} module.")
 | ||
|     (license license:expat)))
 | ||
| 
 | ||
| (define-public go-github-com-whyrusleeping-json-filter
 | ||
|   (let ((commit "ff25329a9528f01c5175414f16cc0a6a162a5b8b")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-whyrusleeping-json-filter")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/whyrusleeping/json-filter")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "0cai0drvx4c8j686l908vpcsz3mw3vxi3ziz94b0f3c5ylpj07j7"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path
 | ||
|          "github.com/whyrusleeping/json-filter"))
 | ||
|       (home-page "https://github.com/whyrusleeping/json-filter")
 | ||
|       (synopsis "Library to query JSON objects marshalled into map[string]interface")
 | ||
|       (description "A library to query JSON objects marshalled into
 | ||
| @command{map[string]interface{}}.")
 | ||
|       (license license:expat))))
 | ||
| 
 | ||
| (define-public go-github-com-xeipuuv-gojsonpointer
 | ||
|   (let ((commit "4e3ac2762d5f479393488629ee9370b50873b3a6")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-xeipuuv-gojsonpointer")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/xeipuuv/gojsonpointer")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "13y6iq2nzf9z4ls66bfgnnamj2m3438absmbpqry64bpwjfbsi9q"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/xeipuuv/gojsonpointer"))
 | ||
|       (home-page "https://github.com/xeipuuv/gojsonpointer")
 | ||
|       (synopsis "Implementation of JSON Pointer for Go")
 | ||
|       (description
 | ||
|        "This package provides an implementation of JSON Pointer for the Go
 | ||
| programming language.")
 | ||
|       (license license:asl2.0))))
 | ||
| 
 | ||
| (define-public go-github-com-xeipuuv-gojsonreference
 | ||
|   (let ((commit "bd5ef7bd5415a7ac448318e64f11a24cd21e594b")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-xeipuuv-gojsonreference")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/xeipuuv/gojsonreference")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "1xby79padc7bmyb8rfbad8wfnfdzpnh51b1n8c0kibch0kwc1db5"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/xeipuuv/gojsonreference"))
 | ||
|       (propagated-inputs
 | ||
|        (list go-github-com-xeipuuv-gojsonpointer))
 | ||
|       (home-page "https://github.com/xeipuuv/gojsonreference")
 | ||
|       (synopsis "Implementation of JSON Reference for Go")
 | ||
|       (description
 | ||
|        "This package provides an implementation of JSON Reference for the Go
 | ||
| programming language.")
 | ||
|       (license license:asl2.0))))
 | ||
| 
 | ||
| (define-public go-github-com-xeipuuv-gojsonschema
 | ||
|   (let ((commit "6b67b3fab74d992bd07f72550006ab2c6907c416")
 | ||
|         (revision "0"))
 | ||
|     (package
 | ||
|       (name "go-github-com-xeipuuv-gojsonschema")
 | ||
|       (version (git-version "0.0.0" revision commit))
 | ||
|       (source
 | ||
|        (origin
 | ||
|          (method git-fetch)
 | ||
|          (uri (git-reference
 | ||
|                (url "https://github.com/xeipuuv/gojsonschema")
 | ||
|                (commit commit)))
 | ||
|          (file-name (git-file-name name version))
 | ||
|          (sha256
 | ||
|           (base32 "1q937a6q7canlr3dllqdw0qwa6z2fpwn1w9kycavx8jmwh6q3f69"))))
 | ||
|       (build-system go-build-system)
 | ||
|       (arguments
 | ||
|        '(#:import-path "github.com/xeipuuv/gojsonschema"
 | ||
|          #:phases
 | ||
|          (modify-phases %standard-phases
 | ||
|            (add-after 'unpack 'disable-failing-tests
 | ||
|              (lambda* (#:key import-path #:allow-other-keys)
 | ||
|                (with-directory-excursion (string-append "src/" import-path)
 | ||
|                  (substitute* "schema_test.go"
 | ||
|                    (("\\{\"phase\": \"remote ref, " all)
 | ||
|                     (string-append "// " all))
 | ||
|                    (("\\{\"phase\": \"valid definition" all)
 | ||
|                     (string-append "// " all))
 | ||
|                    (("\\{\"phase\": \"invalid definition" all)
 | ||
|                     (string-append "// " all)))))))))
 | ||
|       (native-inputs
 | ||
|        (list go-github-com-stretchr-testify))
 | ||
|       (propagated-inputs
 | ||
|        (list go-github-com-xeipuuv-gojsonreference
 | ||
|              go-github-com-xeipuuv-gojsonpointer))
 | ||
|       (home-page "https://github.com/xeipuuv/gojsonschema")
 | ||
|       (synopsis "Implementation of JSON Schema for Go")
 | ||
|       (description
 | ||
|        "This package provides an implementation of JSON Schema for the Go
 | ||
| programming language, which supports draft-04, draft-06 and draft-07.")
 | ||
|       (license license:asl2.0))))
 | ||
| 
 | ||
| (define-public go-gopkg-in-square-go-jose-v2
 | ||
|   (package
 | ||
|     (name "go-gopkg-in-square-go-jose-v2")
 | ||
|     (version "2.6.0")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/square/go-jose")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "1b1nhqxfmhzwrfk7pkvp2w3z3d0pf5ir00vizmy2d4xdbnldn70r"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list #:import-path "gopkg.in/square/go-jose.v2"))
 | ||
|     (propagated-inputs
 | ||
|      (list go-golang-org-x-crypto))
 | ||
|     (native-inputs
 | ||
|      (list go-github-com-google-go-cmp-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")
 | ||
|     (description
 | ||
|      "This package aims to provide an implementation of the Javascript Object
 | ||
| Signing and Encryption set of standards.  This includes support for JSON Web
 | ||
| Encryption, JSON Web Signature, and JSON Web Token standards.")
 | ||
|     (license license:asl2.0)))
 | ||
| 
 | ||
| (define-public go-nhooyr-io-websocket
 | ||
|   (package
 | ||
|     (name "go-nhooyr-io-websocket")
 | ||
|     (version "1.8.11")
 | ||
|     (source
 | ||
|      (origin
 | ||
|        (method git-fetch)
 | ||
|        (uri (git-reference
 | ||
|              (url "https://github.com/nhooyr/websocket")
 | ||
|              (commit (string-append "v" version))))
 | ||
|        (file-name (git-file-name name version))
 | ||
|        (sha256
 | ||
|         (base32 "019pm2bkzwyvzl61127nqzihchk35q5xh57wy50aa2syn9214fxm"))))
 | ||
|     (build-system go-build-system)
 | ||
|     (arguments
 | ||
|      (list
 | ||
|       ;; Tests require additional dependencies like `wasmbrowsertest`.
 | ||
|       #:tests? #f
 | ||
|       #:import-path "nhooyr.io/websocket"))
 | ||
|     (home-page "https://nhooyr.io/websocket")
 | ||
|     (synopsis "Minimal and idiomatic WebSocket library for Go")
 | ||
|     (description
 | ||
|      "Package websocket implements the
 | ||
| @@url{https://rfc-editor.org/rfc/rfc6455.html,RFC 6455} @code{WebSocket}
 | ||
| protocol.")
 | ||
|     (license license:isc)))
 | ||
| 
 | ||
| ;;;
 | ||
| ;;; Executables:
 | ||
| ;;;
 | ||
| 
 | ||
| (define-public go-madns
 | ||
|   (package
 | ||
|     (inherit go-github-com-multiformats-go-multiaddr-dns)
 | ||
|     (name "go-madns")
 | ||
|     (arguments
 | ||
|      (substitute-keyword-arguments
 | ||
|          (package-arguments go-github-com-multiformats-go-multiaddr-dns)
 | ||
|        ((#:install-source? _ #t) #f)
 | ||
|        ((#:import-path _ "github.com/multiformats/go-multiaddr-dns")
 | ||
|         "github.com/multiformats/go-multiaddr-dns/madns")))
 | ||
|     (description
 | ||
|      "This package provides a CLI binary executible built from
 | ||
| go-github-com-multiformats-go-multiaddr-dns.")))
 | ||
| 
 | ||
| (define-public go-minify
 | ||
|   (package
 | ||
|     (inherit go-github-com-tdewolff-minify-v2)
 | ||
|     (name "go-minify")
 | ||
|     (arguments
 | ||
|      (substitute-keyword-arguments
 | ||
|          (package-arguments go-github-com-tdewolff-minify-v2)
 | ||
|        ((#:install-source? _ #t) #f)
 | ||
|        ((#:import-path _ "github.com/tdewolff/minify/v2")
 | ||
|         "github.com/tdewolff/minify/cmd/minify")))
 | ||
|     (inputs
 | ||
|      (list go-github-com-djherbis-atime
 | ||
|            go-github-com-dustin-go-humanize
 | ||
|            go-github-com-fsnotify-fsnotify
 | ||
|            go-github-com-matryer-try
 | ||
|            go-github-com-spf13-pflag))
 | ||
|     (description "This package provides a CLI binary executible built from
 | ||
| go-github-com-tdewolff-minify-v2 source.")))
 | ||
| 
 | ||
| ;;;
 | ||
| ;;; 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
 | ||
| ;;; functionality or similar names.
 | ||
| ;;;
 |