2024-02-05 12:30:31 -05:00
|
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
2024-07-21 07:52:32 -04:00
|
|
|
|
;;; Copyright © 2018, 2019, 2020 Leo Famulari <leo@famulari.name>
|
2024-02-10 16:14:55 -05:00
|
|
|
|
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
|
2024-02-10 12:00:55 -05:00
|
|
|
|
;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
|
2024-02-10 12:23:32 -05:00
|
|
|
|
;;; Copyright © 2020 HiPhish <hiphish@posteo.de>
|
2024-02-10 16:25:12 -05:00
|
|
|
|
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
|
2024-02-10 11:42:16 -05:00
|
|
|
|
;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
|
2024-02-10 12:00:55 -05:00
|
|
|
|
;;; Copyright © 2020 Vagrant Cascadian <vagrant@debian.org>
|
2024-07-19 19:19:46 -04:00
|
|
|
|
;;; Copyright © 2020, 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
|
2024-02-10 12:34:47 -05:00
|
|
|
|
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
|
2024-02-10 11:29:50 -05:00
|
|
|
|
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
|
2024-02-10 16:39:59 -05:00
|
|
|
|
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
|
2024-02-10 11:29:50 -05:00
|
|
|
|
;;; Copyright © 2021 hackeryarn <artemchernyak@gmail.com>
|
2024-07-21 07:05:58 -04:00
|
|
|
|
;;; Copyright © 2022 (unmatched-parenthesis <paren@disroot.org>
|
2024-02-05 15:57:31 -05:00
|
|
|
|
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
|
|
|
|
|
;;; Copyright © 2023 Felix Lechner <felix.lechner@lease-up.com>
|
2024-02-10 11:24:01 -05:00
|
|
|
|
;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
|
2024-02-10 12:34:47 -05:00
|
|
|
|
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
|
2024-02-10 12:00:55 -05:00
|
|
|
|
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
|
2024-07-21 07:05:58 -04:00
|
|
|
|
;;; Copyright © 2024 Hilton Chain <hako@ultrarare.space>
|
2024-09-07 11:52:56 -04:00
|
|
|
|
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
|
2024-02-17 12:38:53 -05:00
|
|
|
|
;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
|
2024-02-05 12:30:31 -05:00
|
|
|
|
;;;
|
|
|
|
|
;;; 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-build)
|
|
|
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
|
|
|
#:use-module (guix build-system go)
|
|
|
|
|
#:use-module (guix gexp)
|
|
|
|
|
#:use-module (guix git-download)
|
|
|
|
|
#:use-module (guix packages)
|
|
|
|
|
#:use-module (guix utils)
|
2024-07-12 11:03:55 -04:00
|
|
|
|
#:use-module (gnu packages)
|
|
|
|
|
#:use-module (gnu packages gcc))
|
2024-02-05 12:30:31 -05:00
|
|
|
|
|
|
|
|
|
;;; Commentary:
|
|
|
|
|
;;;
|
|
|
|
|
;;; Modules (libraries) which are part of the Golang project but outside the
|
|
|
|
|
;;; main Golang tree, see <https://pkg.go.dev/golang.org/x>
|
|
|
|
|
;;;
|
|
|
|
|
;;; Since they are bound to be relied on by many, their dependencies should be
|
|
|
|
|
;;; kept minimal, and this module should not depend on other modules
|
|
|
|
|
;;; containing Golang packages.
|
|
|
|
|
;;;
|
|
|
|
|
;;; Please: Try to add new module packages in alphabetic order.
|
|
|
|
|
;;;
|
|
|
|
|
;;; Code:
|
|
|
|
|
|
2024-09-07 11:52:56 -04:00
|
|
|
|
(define-public go-github-com-golang-glog
|
|
|
|
|
(package
|
|
|
|
|
(name "go-github-com-golang-glog")
|
|
|
|
|
(version "1.2.2")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://github.com/golang/glog")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32 "1a9ybpgp6grlpbhg2559sh54pxc9qfkhr4zvylw8qv1bny8c90q0"))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "github.com/golang/glog"))
|
|
|
|
|
(home-page "https://github.com/golang/glog")
|
|
|
|
|
(synopsis "Leveled execution logs for Golang")
|
|
|
|
|
(description
|
|
|
|
|
"This package implements logging analogous to C++ package
|
|
|
|
|
@url{https://github.com/google/glog,glog} INFO/ERROR/V setup. It provides
|
|
|
|
|
functions that have a name matched by regex:.")
|
|
|
|
|
(license license:asl2.0)))
|
|
|
|
|
|
2024-07-21 07:52:32 -04:00
|
|
|
|
(define-public go-github-com-golang-protobuf
|
|
|
|
|
(package
|
|
|
|
|
(name "go-github-com-golang-protobuf")
|
|
|
|
|
(version "1.5.3")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://github.com/golang/protobuf")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32 "03f1w2cd4s8a3xhl61x7yjx81kbzlrjpvnnwmbhqnz814yi7h43i"))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "github.com/golang/protobuf"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
|
|
|
|
(propagated-inputs
|
|
|
|
|
(list go-google-golang-org-protobuf))
|
|
|
|
|
(home-page "https://github.com/golang/protobuf")
|
|
|
|
|
(synopsis "Go support for Protocol Buffers")
|
|
|
|
|
(description
|
|
|
|
|
"This package provides Go support for the Protocol Buffers data
|
|
|
|
|
serialization format.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-07-19 19:19:46 -04:00
|
|
|
|
(define-public go-github-com-google-go-cmp
|
|
|
|
|
(package
|
|
|
|
|
(name "go-github-com-google-go-cmp")
|
|
|
|
|
(version "0.6.0")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://github.com/google/go-cmp")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32 "1n1j4hi50bl05pyys4i7y417k9g6k1blslj27z327qny7kkdl2ma"))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "github.com/google/go-cmp/cmp"
|
|
|
|
|
#:unpack-path "github.com/google/go-cmp"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path inputs #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
;; The tests fail when run with gccgo.
|
|
|
|
|
(let ((gccgo? (false-if-exception
|
|
|
|
|
(search-input-file inputs "/bin/gccgo"))))
|
|
|
|
|
(if gccgo?
|
|
|
|
|
(format #t "skipping tests with gccgo compiler~%")
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go
|
|
|
|
|
;; modules support.
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))))
|
|
|
|
|
(synopsis "Determine equality of values in Go")
|
|
|
|
|
(home-page "https://github.com/google/go-cmp")
|
|
|
|
|
(description
|
|
|
|
|
"This package is intended to be a more powerful and safer
|
|
|
|
|
alternative to @code{reflect.DeepEqual} for comparing whether two values are
|
|
|
|
|
semantically equal.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-10 16:25:12 -05:00
|
|
|
|
(define-public go-github-com-yuin-goldmark
|
|
|
|
|
(package
|
|
|
|
|
(name "go-github-com-yuin-goldmark")
|
2024-07-02 17:00:14 -04:00
|
|
|
|
(version "1.7.4")
|
2024-02-10 16:25:12 -05:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://github.com/yuin/goldmark")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-07-02 17:00:14 -04:00
|
|
|
|
(base32 "01807xs8501cyhkrrgg6k9ghl9jrw6dp0ry9knygck48canckxs2"))))
|
2024-02-10 16:25:12 -05:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-03 04:18:44 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "github.com/yuin/goldmark"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
2024-07-21 10:17:17 -04:00
|
|
|
|
;; We need to extend the timeout on some architectures.
|
|
|
|
|
;; 64 is the default in extra_test.go.
|
|
|
|
|
(setenv "GOLDMARK_TEST_TIMEOUT_MULTIPLIER"
|
|
|
|
|
(number->string (* 64 5)))
|
2024-07-03 04:18:44 -04:00
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
2024-02-10 16:25:12 -05:00
|
|
|
|
(home-page "https://github.com/yuin/goldmark/")
|
|
|
|
|
(synopsis "Markdown parser")
|
2024-07-03 04:18:44 -04:00
|
|
|
|
(description
|
|
|
|
|
"This package provides a markdown parser.")
|
2024-02-10 16:25:12 -05:00
|
|
|
|
(license license:expat)))
|
|
|
|
|
|
2024-07-12 18:23:39 -04:00
|
|
|
|
(define-public go-github-com-yuin-goldmark-emoji
|
|
|
|
|
(package
|
|
|
|
|
(name "go-github-com-yuin-goldmark-emoji")
|
|
|
|
|
(version "1.0.3")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://github.com/yuin/goldmark-emoji")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32 "1mx8rkxd3ksvgi41jvf365x9mf00sxiqq4wm75x4sasd2lgcbrl4"))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "github.com/yuin/goldmark-emoji"))
|
|
|
|
|
(propagated-inputs
|
|
|
|
|
(list go-github-com-yuin-goldmark))
|
|
|
|
|
(home-page "https://github.com/yuin/goldmark-emoji")
|
|
|
|
|
(synopsis "Emoji extension for the goldmark markdown parser")
|
|
|
|
|
(description
|
|
|
|
|
"This package provides an emoji is a extension for the
|
|
|
|
|
@url{http://github.com/yuin/goldmark,goldmark}.")
|
|
|
|
|
(license license:expat)))
|
|
|
|
|
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(define-public go-golang-org-x-crypto
|
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-crypto")
|
2024-08-11 08:07:11 -04:00
|
|
|
|
(version "0.26.0")
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/crypto")
|
|
|
|
|
(commit (string-append "v" version))))
|
2024-07-12 08:47:31 -04:00
|
|
|
|
(file-name (git-file-name name version))
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(sha256
|
2024-08-11 08:07:11 -04:00
|
|
|
|
(base32 "1rc5zl3gxfy4wcwqjibqgnqj8wdm0v9ff25vkyirzb71l343ydlx"))))
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-12 09:49:16 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/crypto"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'remove-test-files
|
|
|
|
|
(lambda* (#:key import-path #:allow-other-keys)
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(for-each delete-file
|
|
|
|
|
(list
|
|
|
|
|
;; Network access requried: go mod download -json
|
|
|
|
|
;; github.com/google/wycheproof@v0.0.0-20191219022705-2196000605e4.
|
|
|
|
|
"internal/wycheproof/aead_test.go"
|
|
|
|
|
"internal/wycheproof/aes_cbc_test.go"
|
|
|
|
|
"internal/wycheproof/dsa_test.go"
|
|
|
|
|
"internal/wycheproof/ecdh_stdlib_test.go"
|
|
|
|
|
"internal/wycheproof/ecdh_test.go"
|
|
|
|
|
"internal/wycheproof/ecdsa_test.go"
|
|
|
|
|
"internal/wycheproof/eddsa_test.go"
|
|
|
|
|
"internal/wycheproof/hkdf_test.go"
|
|
|
|
|
"internal/wycheproof/hmac_test.go"
|
|
|
|
|
"internal/wycheproof/rsa_oaep_decrypt_test.go"
|
|
|
|
|
"internal/wycheproof/rsa_pss_test.go"
|
|
|
|
|
"internal/wycheproof/rsa_signature_test.go"
|
|
|
|
|
"internal/wycheproof/wycheproof_test.go")))))
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v"
|
|
|
|
|
;; acme - cycle with go-golang-org-x-net
|
|
|
|
|
"./argon2/..."
|
|
|
|
|
"./bcrypt/..."
|
|
|
|
|
"./blake2b/..."
|
|
|
|
|
"./blake2s/..."
|
|
|
|
|
"./blowfish/..."
|
|
|
|
|
"./bn256/..."
|
|
|
|
|
"./cast5/..."
|
|
|
|
|
"./chacha20/..."
|
|
|
|
|
"./chacha20poly1305/..."
|
|
|
|
|
"./cryptobyte/..."
|
|
|
|
|
"./curve25519/..."
|
|
|
|
|
"./ed25519/..."
|
|
|
|
|
"./hkdf/..."
|
|
|
|
|
"./internal/..."
|
|
|
|
|
"./md4/..."
|
|
|
|
|
"./nacl/..."
|
|
|
|
|
"./ocsp/..."
|
|
|
|
|
"./openpgp/..."
|
|
|
|
|
"./otr/..."
|
|
|
|
|
"./pbkdf2/..."
|
|
|
|
|
"./pkcs12/..."
|
|
|
|
|
"./poly1305/..."
|
|
|
|
|
"./ripemd160/..."
|
|
|
|
|
"./salsa20/..."
|
|
|
|
|
"./scrypt/..."
|
|
|
|
|
"./sha3/..."
|
|
|
|
|
"./ssh/..."
|
|
|
|
|
"./tea/..."
|
|
|
|
|
"./twofish/..."
|
|
|
|
|
"./x509roots/..."
|
|
|
|
|
"./xtea/..."
|
|
|
|
|
"./xts/..."))))))))
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(propagated-inputs
|
2024-07-12 08:47:31 -04:00
|
|
|
|
(list go-golang-org-x-sys go-golang-org-x-term))
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(home-page "https://go.googlesource.com/crypto/")
|
|
|
|
|
(synopsis "Supplementary cryptographic libraries in Go")
|
2024-07-12 09:49:16 -04:00
|
|
|
|
(description
|
|
|
|
|
"This package provides supplementary cryptographic libraries for the Go
|
|
|
|
|
language.")
|
2024-02-10 16:39:59 -05:00
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-10 11:24:01 -05:00
|
|
|
|
(define-public go-golang-org-x-exp
|
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-exp")
|
2024-08-11 08:11:40 -04:00
|
|
|
|
(version "0.0.0-20240808152545-0cdaa3abc0fa")
|
2024-02-10 11:24:01 -05:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/exp")
|
|
|
|
|
(commit (go-version->git-ref version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:11:40 -04:00
|
|
|
|
(base32 "1sa03fm57326qnchvfza7am7jjlz32l1yyqbdvy6mknw5bmp8a71"))
|
2024-07-03 07:59:09 -04:00
|
|
|
|
(modules '((guix build utils)))
|
|
|
|
|
(snippet
|
2024-07-20 03:17:09 -04:00
|
|
|
|
#~(begin
|
|
|
|
|
;; Submodules with their own go.mod files and packed as separated
|
|
|
|
|
;; packages:
|
|
|
|
|
;;
|
|
|
|
|
;; - golang.org/x/exp/event
|
|
|
|
|
;; - golang.org/x/exp/jsonrpc2
|
|
|
|
|
;; - golang.org/x/exp/shiny
|
|
|
|
|
;; - golang.org/x/exp/sumbdb
|
|
|
|
|
;; - golang.org/x/exp/typeparams
|
|
|
|
|
(for-each delete-file-recursively
|
|
|
|
|
(list "event" "jsonrpc2" "shiny" "sumdb" "typeparams"))))))
|
2024-02-10 11:24:01 -05:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-20 03:17:09 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/exp"
|
2024-07-20 03:34:26 -04:00
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'remove-failing-tests
|
|
|
|
|
(lambda* (#:key import-path #:allow-other-keys)
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
;; Benchmark requires other modules to pass tests, delete them.
|
|
|
|
|
(delete-file-recursively "slog/benchmarks")
|
|
|
|
|
(substitute* (find-files "." "\\_test.go$")
|
|
|
|
|
;; Disable failing tests: error running `go mod init`: go:
|
|
|
|
|
;; modules disabled by GO111MODULE=off; see 'go help modules'
|
|
|
|
|
;; , exit status 1
|
|
|
|
|
(("TestFailure") "OffTestFailure")
|
|
|
|
|
(("TestRelease_gitRepo_uncommittedChanges")
|
|
|
|
|
"OffTestRelease_gitRepo_uncommittedChanges")))))
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
|
|
|
|
(propagated-inputs
|
|
|
|
|
(list go-github-com-google-go-cmp
|
|
|
|
|
go-golang-org-x-mod
|
|
|
|
|
go-golang-org-x-tools))
|
2024-02-10 11:24:01 -05:00
|
|
|
|
(home-page "https://golang.org/x/exp")
|
|
|
|
|
(synopsis "Experimental and deprecated Go packages")
|
2024-07-20 03:17:09 -04:00
|
|
|
|
(description
|
|
|
|
|
"This subrepository holds experimental and deprecated (in the @code{old}
|
|
|
|
|
directory) packages.")
|
2024-02-10 11:24:01 -05:00
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-07-13 09:43:53 -04:00
|
|
|
|
(define-public go-golang-org-x-exp-typeparams
|
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-exp-typeparams")
|
|
|
|
|
(version "0.0.0-20240707233637-46b078467d37")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/exp")
|
|
|
|
|
(commit (go-version->git-ref version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32 "17pwikql9x1bm5ci0kk4mlad7smkph0cgq1pi2b43gnhjz8m96l0"))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/exp/typeparams"
|
|
|
|
|
#:unpack-path "golang.org/x/exp"))
|
|
|
|
|
(home-page "https://pkg.go.dev/golang.org/x/exp/typeparams")
|
|
|
|
|
(synopsis "Golang common utilities for writing tools")
|
|
|
|
|
(description
|
|
|
|
|
"Package typeparams contains common utilities for writing tools that
|
|
|
|
|
interact with generic Go code, as introduced with Go 1.18.
|
|
|
|
|
|
|
|
|
|
Many of the types and functions in this package are proxies for the new APIs
|
|
|
|
|
introduced in the standard library with Go 1.18. For example, the
|
|
|
|
|
typeparams.Union type is an alias for @code{go/types.Union}, and the
|
|
|
|
|
@code{ForTypeSpec} function returns the value of the
|
|
|
|
|
@code{go/ast.TypeSpec.TypeParams} field. At Go versions older than 1.18 these
|
|
|
|
|
helpers are implemented as stubs, allowing users of this package to write code
|
|
|
|
|
that handles generic constructs inline,even if the Go version being used to
|
|
|
|
|
compile does not support generics.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-10 16:32:16 -05:00
|
|
|
|
(define-public go-golang-org-x-image
|
2024-07-03 15:21:23 -04:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-image")
|
2024-08-11 08:05:48 -04:00
|
|
|
|
(version "0.19.0")
|
2024-07-03 15:21:23 -04:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/image")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:05:48 -04:00
|
|
|
|
(base32 "0nb1wvy0xr0s9xylzf336vghkblkp5b9sq2hqh6wdav1awnpry90"))))
|
2024-07-03 15:22:15 -04:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-03 16:58:53 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/image"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: go-build-system can't install/build submodules.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(add-after 'unpack 'remove-examples
|
|
|
|
|
(lambda* (#:key import-path #:allow-other-keys)
|
|
|
|
|
(delete-file-recursively
|
|
|
|
|
(string-append "src/" import-path "/example"))))
|
|
|
|
|
(add-before 'check 'remove-failing-tests
|
|
|
|
|
(lambda* (#:key import-path #:allow-other-keys)
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(for-each delete-file
|
|
|
|
|
;; tiff/reader_test.go:557:14: too many errors
|
|
|
|
|
(list "tiff/reader_test.go"
|
|
|
|
|
"tiff/writer_test.go")))))
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules support.
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
|
|
|
|
(propagated-inputs
|
|
|
|
|
(list go-golang-org-x-text))
|
|
|
|
|
(home-page "https://pkg.go.dev/golang.org/x/image")
|
2024-07-03 15:22:15 -04:00
|
|
|
|
(synopsis "Supplemental Go image libraries")
|
|
|
|
|
(description
|
|
|
|
|
"This package provides supplemental Go libraries for image processing.")
|
|
|
|
|
(license license:bsd-3)))
|
2024-02-10 16:32:16 -05:00
|
|
|
|
|
2024-02-10 11:29:50 -05:00
|
|
|
|
(define-public go-golang-org-x-mod
|
2024-07-12 08:13:55 -04:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-mod")
|
2024-08-11 08:06:23 -04:00
|
|
|
|
(version "0.20.0")
|
2024-07-12 08:13:55 -04:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
2024-07-12 08:31:58 -04:00
|
|
|
|
(url "https://go.googlesource.com/mod")
|
2024-07-12 08:13:55 -04:00
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:06:23 -04:00
|
|
|
|
(base32 "0vrzahgr08idiz9g2ksngwsjhyaa0rryn4vh0lm54kkxgv9pcv7f"))))
|
2024-07-12 08:13:55 -04:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-12 08:31:58 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/mod"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'remove-test-files
|
|
|
|
|
(lambda* (#:key import-path #:allow-other-keys)
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(for-each delete-file
|
|
|
|
|
(list
|
|
|
|
|
;; Break cycle: go-golang-org-x-mod ->
|
|
|
|
|
;; go-golang-org-x-tools -> go-golang-org-x-mod.
|
|
|
|
|
"zip/zip_test.go"
|
|
|
|
|
;; Trying to access
|
|
|
|
|
;; <http://ct.googleapis.com/logs/argon2020/ct/v1/get-sth>.
|
|
|
|
|
"sumdb/tlog/ct_test.go")))))
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
2024-07-12 08:13:55 -04:00
|
|
|
|
(home-page "https://golang.org/x/mod")
|
|
|
|
|
(synopsis "Tools to work directly with Go module mechanics")
|
|
|
|
|
(description
|
|
|
|
|
"This repository holds packages for writing tools that work directly
|
2024-02-10 11:29:50 -05:00
|
|
|
|
with Go module mechanics. That is, it is for direct manipulation of Go
|
|
|
|
|
modules themselves.
|
|
|
|
|
|
|
|
|
|
The specific case of loading packages should still be done by invoking the
|
|
|
|
|
@command{go} command, which remains the single point of truth for package
|
|
|
|
|
loading algorithms.")
|
2024-07-12 08:13:55 -04:00
|
|
|
|
(license license:bsd-3)))
|
2024-02-10 11:29:50 -05:00
|
|
|
|
|
2024-02-05 15:57:31 -05:00
|
|
|
|
(define-public go-golang-org-x-net
|
2024-07-12 08:36:51 -04:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-net")
|
2024-08-09 15:27:51 -04:00
|
|
|
|
(version "0.28.0")
|
2024-07-12 08:36:51 -04:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/net")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-09 15:27:51 -04:00
|
|
|
|
(base32 "1fh4rnqsxc652lhncnrdb3qcsw811565qb9619z21z0p1fdgzlar"))))
|
2024-07-12 08:36:51 -04:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/net"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
2024-07-12 08:44:06 -04:00
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
2024-07-12 08:36:51 -04:00
|
|
|
|
(propagated-inputs
|
2024-07-12 08:44:06 -04:00
|
|
|
|
(list go-golang-org-x-crypto
|
|
|
|
|
go-golang-org-x-sys
|
|
|
|
|
go-golang-org-x-term
|
|
|
|
|
go-golang-org-x-text))
|
2024-07-12 08:36:51 -04:00
|
|
|
|
(home-page "https://go.googlesource.com/net")
|
|
|
|
|
(synopsis "Go supplemental networking libraries")
|
|
|
|
|
(description
|
|
|
|
|
"This package provides supplemental Go networking libraries.")
|
|
|
|
|
(license license:bsd-3)))
|
2024-02-05 15:57:31 -05:00
|
|
|
|
|
2024-02-10 12:23:32 -05:00
|
|
|
|
(define-public go-golang-org-x-sync
|
2024-06-20 03:10:30 -04:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-sync")
|
2024-08-11 08:03:11 -04:00
|
|
|
|
(version "0.8.0")
|
2024-06-20 03:10:30 -04:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/sync")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:03:11 -04:00
|
|
|
|
(base32 "1jssyq49g5z7dbhdb9bnzsb8gigvsy5f4aczbzn5paz07v9wbjxs"))))
|
2024-06-20 03:10:30 -04:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/sync"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
|
|
|
|
(home-page "https://go.googlesource.com/sync/")
|
|
|
|
|
(synopsis "Additional Go concurrency primitives")
|
2024-06-20 04:24:13 -04:00
|
|
|
|
(description
|
|
|
|
|
"This package provides Go concurrency primitives in addition to the ones
|
|
|
|
|
provided by the language and @code{sync} and @code{sync/atomic} packages.
|
|
|
|
|
The package provides several Golang submodules:
|
|
|
|
|
@itemize
|
|
|
|
|
@item @code{errgroup} - synchronization, error propagation, and Context
|
|
|
|
|
cancelation for groups of goroutines working on subtasks of a common task
|
|
|
|
|
@item @code{semaphore} - a weighted semaphore implementation
|
|
|
|
|
@item @code{singleflight} - a duplicate function call suppression mechanism
|
|
|
|
|
@item @code{syncmap} - a concurrent map implementation
|
|
|
|
|
@end itemize")
|
2024-06-20 03:10:30 -04:00
|
|
|
|
(license license:bsd-3)))
|
2024-02-10 12:23:32 -05:00
|
|
|
|
|
2024-02-07 15:53:56 -05:00
|
|
|
|
(define-public go-golang-org-x-sys
|
2024-06-20 05:10:25 -04:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-sys")
|
2024-08-11 08:05:08 -04:00
|
|
|
|
(version "0.24.0")
|
2024-06-20 05:10:25 -04:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/sys")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:05:08 -04:00
|
|
|
|
(base32 "0j5hhwrbgjh5bnwqr9g1c32175j43rqlrpv199ay1b970iwiqd4l"))))
|
2024-06-20 05:10:25 -04:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/sys"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
|
|
|
|
(home-page "https://go.googlesource.com/sys")
|
|
|
|
|
(synopsis "Go support for low-level system interaction")
|
|
|
|
|
(description "This package provides supplemental libraries offering Go
|
2024-02-07 15:53:56 -05:00
|
|
|
|
support for low-level interaction with the operating system.")
|
2024-06-20 05:10:25 -04:00
|
|
|
|
(license license:bsd-3)))
|
2024-02-07 15:53:56 -05:00
|
|
|
|
|
2024-02-10 12:34:47 -05:00
|
|
|
|
(define-public go-golang-org-x-term
|
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-term")
|
2024-08-11 08:02:00 -04:00
|
|
|
|
(version "0.23.0")
|
2024-02-10 12:34:47 -05:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/term")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:02:00 -04:00
|
|
|
|
(base32 "1pdv60bm4gfvgf98lyms92qm32zc4f4h4w1fagrhzllwflmsca8h"))))
|
2024-02-10 12:34:47 -05:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments '(#:import-path "golang.org/x/term"))
|
|
|
|
|
(propagated-inputs
|
|
|
|
|
(list go-golang-org-x-sys))
|
|
|
|
|
(home-page "https://pkg.go.dev/golang.org/x/term")
|
|
|
|
|
(synopsis "Go terminal/console support")
|
|
|
|
|
(description "@code{term} provides support functions for dealing with
|
|
|
|
|
terminals, as commonly found on Unix systems.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-10 16:14:55 -05:00
|
|
|
|
(define-public go-golang-org-x-text
|
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-text")
|
2024-08-11 08:04:10 -04:00
|
|
|
|
(version "0.17.0")
|
2024-02-10 16:14:55 -05:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/text")
|
|
|
|
|
(commit (string-append "v" version))))
|
2024-07-12 10:03:34 -04:00
|
|
|
|
(file-name (git-file-name name version))
|
2024-02-10 16:14:55 -05:00
|
|
|
|
(sha256
|
2024-08-11 08:04:10 -04:00
|
|
|
|
(base32 "1jqvh4mmg3db2slh5z7fxdhkgazyld5l858rwnbpfxvfrw0k9w1h"))))
|
2024-02-10 16:14:55 -05:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-12 10:03:34 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/text"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v"
|
|
|
|
|
"./cases/..."
|
|
|
|
|
;; cmd - cycle with go-golang-org-x-tools
|
|
|
|
|
"./collate/..."
|
|
|
|
|
"./currency/..."
|
|
|
|
|
"./date/..."
|
|
|
|
|
"./encoding/..."
|
|
|
|
|
"./feature/..."
|
|
|
|
|
"./internal/..."
|
|
|
|
|
"./language/..."
|
|
|
|
|
;; message - cycle with go-golang-org-x-tools
|
|
|
|
|
"./number/..."
|
|
|
|
|
"./runes/..."
|
|
|
|
|
"./search/..."
|
|
|
|
|
"./secure/..."
|
|
|
|
|
"./transform/..."
|
|
|
|
|
"./unicode/..."
|
|
|
|
|
"./width/..."))))))))
|
2024-02-10 16:14:55 -05:00
|
|
|
|
(home-page "https://go.googlesource.com/text")
|
|
|
|
|
(synopsis "Supplemental Go text processing libraries")
|
2024-07-12 10:03:34 -04:00
|
|
|
|
(description
|
|
|
|
|
"This package provides supplemental Go libraries for text
|
2024-02-10 16:14:55 -05:00
|
|
|
|
processing.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-10 12:44:46 -05:00
|
|
|
|
(define-public go-golang-org-x-time
|
2024-07-12 10:09:29 -04:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-time")
|
2024-08-09 15:26:59 -04:00
|
|
|
|
(version "0.6.0")
|
2024-07-12 10:09:29 -04:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/time")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-09 15:26:59 -04:00
|
|
|
|
(base32 "14z7f1yx3r393f94yjv09mrsfaydq6da7pswv8wvk327mxa56vw1"))))
|
2024-07-12 10:09:29 -04:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-12 10:10:47 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/time"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
2024-07-12 10:09:29 -04:00
|
|
|
|
(home-page "https://godoc.org/golang.org/x/time/rate")
|
|
|
|
|
(synopsis "Supplemental Go time libraries")
|
|
|
|
|
(description
|
|
|
|
|
"This package provides supplemental Go libraries related to
|
2024-02-10 12:44:46 -05:00
|
|
|
|
time.")
|
2024-07-12 10:09:29 -04:00
|
|
|
|
(license license:bsd-3)))
|
2024-02-10 12:44:46 -05:00
|
|
|
|
|
2024-02-10 16:28:17 -05:00
|
|
|
|
(define-public go-golang-org-x-tools
|
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-tools")
|
2024-08-11 08:12:52 -04:00
|
|
|
|
(version "0.24.0")
|
2024-02-10 16:28:17 -05:00
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/tools")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-08-11 08:12:52 -04:00
|
|
|
|
(base32 "007n9bmhxn2yspvmcdbj8h0l132vhakszv4i0bd65cvravskcw8y"))
|
2024-02-10 16:28:17 -05:00
|
|
|
|
(modules '((guix build utils)))
|
|
|
|
|
(snippet
|
|
|
|
|
'(begin
|
|
|
|
|
;; gopls versions are tagged separately, and it is a
|
|
|
|
|
;; separate Guix package.
|
|
|
|
|
(delete-file-recursively "gopls")))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
2024-07-12 11:03:55 -04:00
|
|
|
|
(list
|
|
|
|
|
#:import-path "golang.org/x/tools"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v"
|
|
|
|
|
;; TODO: They contain final project executable builds,
|
|
|
|
|
;; would be packed separately.
|
|
|
|
|
;; - cmd
|
|
|
|
|
;; - godoc
|
|
|
|
|
|
|
|
|
|
;; FIXME: Figure out why they are failing:
|
|
|
|
|
;; "./internal/..."
|
|
|
|
|
;; "./present/..."
|
|
|
|
|
;; "./refactor/eg/..."
|
|
|
|
|
;; "./go/ssa/..."
|
|
|
|
|
;; "./go/packages/..."
|
|
|
|
|
;; "./go/analysis/..."
|
|
|
|
|
|
|
|
|
|
"./blog/..." ;
|
|
|
|
|
"./container/..."
|
|
|
|
|
"./copyright/..."
|
|
|
|
|
"./cover/..."
|
|
|
|
|
"./go/ast/..."
|
|
|
|
|
"./go/buildutil/..."
|
|
|
|
|
"./go/callgraph/..."
|
|
|
|
|
"./go/cfg/..."
|
|
|
|
|
"./go/expect/..."
|
|
|
|
|
"./go/gccgoexportdata/..."
|
|
|
|
|
"./go/gcexportdata/..."
|
|
|
|
|
"./go/internal/..."
|
|
|
|
|
"./go/loader/..."
|
|
|
|
|
"./go/types/..."
|
|
|
|
|
"./imports/..."
|
|
|
|
|
"./playground/..."
|
|
|
|
|
"./refactor/importgraph/..."
|
|
|
|
|
"./refactor/rename/..."
|
|
|
|
|
"./refactor/satisfy/..."
|
|
|
|
|
"./txtar/..."))))))))
|
|
|
|
|
(native-inputs
|
|
|
|
|
(list gccgo-14))
|
2024-02-10 16:28:17 -05:00
|
|
|
|
(propagated-inputs
|
|
|
|
|
(list go-github-com-yuin-goldmark
|
|
|
|
|
go-golang-org-x-mod
|
|
|
|
|
go-golang-org-x-net
|
2024-07-12 11:03:55 -04:00
|
|
|
|
go-golang-org-x-sync))
|
2024-02-10 16:28:17 -05:00
|
|
|
|
(home-page "https://go.googlesource.com/tools/")
|
|
|
|
|
(synopsis "Tools that support the Go programming language")
|
2024-07-12 11:03:55 -04:00
|
|
|
|
(description
|
|
|
|
|
"This package provides miscellaneous tools that support the
|
2024-02-10 16:28:17 -05:00
|
|
|
|
Go programming language.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-10 11:42:16 -05:00
|
|
|
|
(define-public go-golang-org-x-xerrors
|
2024-07-12 11:07:47 -04:00
|
|
|
|
(let ((commit "104605ab7028f4af38a8aff92ac848a51bd53c5d")
|
|
|
|
|
(revision "1"))
|
2024-02-10 11:42:16 -05:00
|
|
|
|
(package
|
|
|
|
|
(name "go-golang-org-x-xerrors")
|
|
|
|
|
(version (git-version "0.0.0" revision commit))
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/xerrors")
|
|
|
|
|
(commit commit)))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
2024-07-12 11:07:47 -04:00
|
|
|
|
(base32 "051xfwx95vq7yhmsy8p9rq0qw67bzvimhz1icjssahwrjndm7h92"))))
|
2024-02-10 11:42:16 -05:00
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
'(#:import-path "golang.org/x/xerrors"))
|
|
|
|
|
(home-page "https://godoc.org/golang.org/x/xerrors")
|
|
|
|
|
(synopsis "Go 1.13 error values")
|
|
|
|
|
(description "This package holds the transition packages for the new Go
|
|
|
|
|
1.13 error values.")
|
|
|
|
|
(license license:bsd-3))))
|
|
|
|
|
|
2024-07-21 07:05:58 -04:00
|
|
|
|
(define-public go-google-golang-org-protobuf
|
|
|
|
|
(package
|
|
|
|
|
(name "go-google-golang-org-protobuf")
|
|
|
|
|
(version "1.31.0")
|
|
|
|
|
(source
|
|
|
|
|
(origin
|
|
|
|
|
(method git-fetch)
|
|
|
|
|
(uri (git-reference
|
|
|
|
|
(url "https://go.googlesource.com/protobuf")
|
|
|
|
|
(commit (string-append "v" version))))
|
|
|
|
|
(file-name (git-file-name name version))
|
|
|
|
|
(sha256
|
|
|
|
|
(base32 "1xf18kzz96hgfy1vlbnydrizzpxkqj2iamfdbj3dx5a1zz5mi8n0"))))
|
|
|
|
|
(build-system go-build-system)
|
|
|
|
|
(arguments
|
|
|
|
|
(list
|
|
|
|
|
#:import-path "google.golang.org/protobuf"
|
|
|
|
|
#:phases
|
|
|
|
|
#~(modify-phases %standard-phases
|
|
|
|
|
(add-after 'unpack 'disable-failing-tests
|
|
|
|
|
(lambda* (#:key tests? unpack-path #:allow-other-keys)
|
|
|
|
|
(with-directory-excursion (string-append "src/" unpack-path)
|
|
|
|
|
(substitute* (find-files "." "\\_test.go$")
|
|
|
|
|
;; XXX Failing on i686-linux:
|
|
|
|
|
;; panic: unaligned 64-bit atomic operation
|
|
|
|
|
(("TestDynamicTypesExtensionNotFound")
|
|
|
|
|
"OffTestDynamicTypesExtensionNotFound")
|
|
|
|
|
(("TestDynamicTypesFilesChangeAfterCreation")
|
|
|
|
|
"OffTestDynamicTypesFilesChangeAfterCreation")
|
|
|
|
|
(("TestDynamicTypesFindExtensionByNameOrNumber")
|
|
|
|
|
"OffTestDynamicTypesFindExtensionByNameOrNumber")))))
|
|
|
|
|
;; XXX: Workaround for go-build-system's lack of Go modules
|
|
|
|
|
;; support.
|
|
|
|
|
(delete 'build)
|
|
|
|
|
(replace 'check
|
|
|
|
|
(lambda* (#:key tests? import-path #:allow-other-keys)
|
|
|
|
|
(when tests?
|
|
|
|
|
(with-directory-excursion (string-append "src/" import-path)
|
|
|
|
|
(invoke "go" "test" "-v" "./..."))))))))
|
|
|
|
|
(propagated-inputs (list go-github-com-google-go-cmp))
|
|
|
|
|
(home-page "https://google.golang.org/protobuf")
|
|
|
|
|
(synopsis "Go library for Protocol Buffers")
|
|
|
|
|
(description
|
|
|
|
|
"The protobuf package provides a Go implementation of Protocol Buffers, a
|
|
|
|
|
language and platform neutral, extensible mechanism for serializing structured
|
|
|
|
|
data. It is a successor to @code{go-github-com-golang-protobuf} with an
|
|
|
|
|
improved and cleaner API.")
|
|
|
|
|
(license license:bsd-3)))
|
|
|
|
|
|
2024-02-05 12:30:31 -05:00
|
|
|
|
;;;
|
|
|
|
|
;;; 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.
|
|
|
|
|
;;;
|