rekahsoft-guix/rekahsoft-gnu/packages/golang.scm

151 lines
5.9 KiB
Scheme

;;; Copyright © 2020 Collin J. Doering <collin@rekahsoft.ca>
;;;
;;; This file is part of the GNU Guix channel rekahsoft-guix
;;;
;;; The rekahsoft-guix channel for 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.
;;;
;;; The rekahsoft-guix channel for 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 the rekahsoft-guix channel for GNU Guix. If not, see
;;; <http://www.gnu.org/licenses/>.
(define-module (rekahsoft-gnu packages golang)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix build-system go)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages gcc)
#:use-module (gnu packages golang)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pcre)
#:use-module (gnu packages glib)
#:use-module (gnu packages password-utils)
#:use-module (gnu packages lua)
#:use-module (gnu packages mp3)
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
(define-public go-github-com-mitchellh-gox
(package
(name "go-gox")
(version "1.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mitchellh/gox")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0mkh81hd7kn45dz7b6yhzqsg2mvg1g6pwx89jjigxrnqhyg9vrl7"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/mitchellh/gox"
#:phases (modify-phases %standard-phases
(delete 'check))))
(synopsis "Dead simple, no frills Go cross compile tool")
(description
"Gox is a simple, no-frills tool for Go cross compilation that behaves a
lot like standard go build. Gox will parallelize builds for multiple
platforms. Gox will also build the cross-compilation toolchain for you.")
(home-page "https://github.com/mitchellh/gox")
(license license:mpl2.0)))
(define-public go-github-com-androiddnsfix
(package
(name "go-androiddnsfix")
(version "ff02804463540c36e3a148dcf4b009d003cf2a31")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mtibben/androiddnsfix")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1pcbjs793kd0yg3dcp79agfxm7xm3sldx2r7v66ipzpcq0j2npi2"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/mtibben/androiddnsfix"
#:phases %standard-phases))
(synopsis "Hack to get around the issues building on android")
(description
"Hack around the issues in https://github.com/golang/go/issues/8877.")
(home-page "https://github.com/mtibben/androiddnsfix")
(license license:expat)))
(define-public go-github-com-aws-aws-sdk-go
(package
(name "go-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)
(native-inputs
`(("go-github-com-jmespath-go-jmespath" ,go-github-com-jmespath-go-jmespath)))
(arguments
'(#:import-path "github.com/aws/aws-sdk-go"
#:phases %standard-phases))
(synopsis "aws-sdk-go is the official AWS SDK for the Go programming language")
(description
"aws-sdk-go is the official AWS SDK for the Go programming language.")
(home-page "https://github.com/aws/aws-sdk-go")
(license license:asl2.0)))
;; TODO: this package is not yet complete, but was accidentally
;; committed. Commenting it out until it is completed.
;;
;; (define-public yq
;; (package
;; (name "yq")
;; (version "4.16.1")
;; (source
;; (origin
;; (method git-fetch)
;; (uri (git-reference
;; (url "https://github.com/mikefarah/yq")
;; (commit (string-append "v" version))))
;; (file-name (git-file-name name version))
;; (sha256
;; (base32 "1in11959lxnab01hkbirrjiim4ww8rgzgnj9dfg7wk3dk5zzr3g2"))))
;; (build-system go-build-system)
;; (native-inputs
;; `(("go-github-com-imdario-mergo" ,go-github-com-imdario-mergo)
;; ("go-github-com-op-go-logging" ,go-github-com-op-go-logging)
;; ("go-github-com-spf13-cobra" ,go-github-com-spf13-cobra)
;; ("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2)
;; ;; TODO: Missing dependencies
;; ))
;; (arguments '(#:import-path "github.com/mikefarah/yq"
;; #:install-source? #f))
;; (home-page "https://github.com/mikefarah/yq")
;; (synopsis "yq")
;; (description "a lightweight and portable command-line YAML processor")
;; (license license:expat)))