aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/golang.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/golang.scm')
-rw-r--r--gnu/packages/golang.scm383
1 files changed, 383 insertions, 0 deletions
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 92ce504c52..445533b0c2 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
+;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -41,6 +42,8 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pcre)
+ #:use-module (gnu packages lua)
+ #:use-module (gnu packages mp3)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -1975,3 +1978,383 @@ which satisfies the cron expression.")
"This package provides a Go library for encode and decode YAML
values.")
(license license:asl2.0))))
+
+(define-public go-github-com-mattn-go-isatty
+ (let ((commit "6ca4dbf54d38eea1a992b3c722a76a5d1c4cb25c")
+ (revision "0"))
+ (package
+ (name "go-github-com-mattn-go-isatty")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mattn/go-isatty")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/mattn/go-isatty"))
+ (home-page "https://github.com/mattn/go-isatty")
+ (synopsis "Provide @code{isatty} for Golang")
+ (description "This package provides @code{isatty}, a Go module that can
+tell you whether a file descriptor points to a terminal and the type of the
+terminal.")
+ (license license:expat))))
+
+(define-public go-github-com-mattn-go-colorable
+ (let ((commit "efa589957cd060542a26d2dd7832fd6a6c6c3ade")
+ (revision "0"))
+ (package
+ (name "go-github-com-mattn-go-colorable")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mattn/go-colorable")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0kshi4hvm0ayrsxqxy0599iv81kryhd2fn9lwjyczpj593cq069r"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-mattn-go-isatty"
+ ,go-github-com-mattn-go-isatty)))
+ (arguments
+ '(#:import-path "github.com/mattn/go-colorable"))
+ (home-page "https://github.com/mattn/go-colorable")
+ (synopsis "Handle ANSI color escapes on Windows")
+ (description "This package provides @code{colorable}, a module that
+makes it possible to handle ANSI color escapes on Windows.")
+ (license license:expat))))
+
+(define-public go-github-com-mgutz-ansi
+ (let ((commit "9520e82c474b0a04dd04f8a40959027271bab992")
+ (revision "0"))
+ (package
+ (name "go-github-com-mgutz-ansi")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/mgutz/ansi")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "00bz22314j26736w1f0q4jy9d9dfaml17vn890n5zqy3cmvmww1j"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-mattn-go-isatty"
+ ,go-github-com-mattn-go-isatty)
+ ("go-github-com-mattn-go-colorable"
+ ,go-github-com-mattn-go-colorable)))
+ (arguments
+ '(#:import-path "github.com/mgutz/ansi"))
+ (home-page "https://github.com/mgutz/ansi")
+ (synopsis "Small, fast library to create ANSI colored strings and codes")
+ (description "This package provides @code{ansi}, a Go module that can
+generate ANSI colored strings.")
+ (license license:expat))))
+
+(define-public go-github-com-aarzilli-golua
+ (let ((commit "03fc4642d792b1f2bc5e7343b403cf490f8c501d")
+ (revision "0"))
+ (package
+ (name "go-github-com-aarzilli-golua")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/aarzilli/golua")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1d9hr29i36cza98afj3g6rs3l7xbkprwzz0blcxsr9dd7nak20di"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("lua" ,lua)))
+ (arguments
+ `(#:unpack-path "github.com/aarzilli/golua"
+ #:import-path "github.com/aarzilli/golua/lua"
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'build
+ (lambda* (#:key import-path #:allow-other-keys)
+ (invoke "go" "install"
+ "-v" ; print the name of packages as they are compiled
+ "-x" ; print each command as it is invoked
+ "-ldflags=-s -w" ; strip the symbol table and debug
+ "-tags" "llua" ; Latest Lua on Guix does not have a version number.
+ import-path)))
+ (replace 'check
+ (lambda* (#:key import-path #:allow-other-keys)
+ (invoke "go" "test"
+ "-tags" "llua" ; Latest Lua on Guix does not have a version number.
+ import-path))))))
+ (home-page "https://github.com/aarzilli/golua")
+ (synopsis "Go Bindings for the Lua C API")
+ (description "This package provides @code{lua}, a Go module that can
+run a Lua virtual machine.")
+ (license license:expat))))
+
+(define-public go-gitlab-com-ambrevar-golua-unicode
+ (let ((commit "97ce517e7a1fe2407a90c317a9c74b173d396144")
+ (revision "0"))
+ (package
+ (name "go-gitlab-com-ambrevar-golua-unicode")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://gitlab.com/ambrevar/golua")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1izcp7p8nagjwqd13shb0020w7xhppib1a3glw2d1468bflhksnm"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("lua" ,lua)
+ ("go-github-com-aarzilli-golua" ,go-github-com-aarzilli-golua)))
+ (arguments
+ `(#:unpack-path "gitlab.com/ambrevar/golua"
+ #:import-path "gitlab.com/ambrevar/golua/unicode"
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key import-path #:allow-other-keys)
+ (setenv "USER" "homeless-dude")
+ (invoke "go" "test" import-path))))))
+ (home-page "https://gitlab.com/ambrevar/golua")
+ (synopsis "Add Unicode support to Golua")
+ (description "This extension to Arzilli's Golua adds Unicode support to
+all functions from the Lua string library. Lua patterns are replaced by Go
+regexps. This breaks compatibility with Lua, but Unicode support breaks it
+anyways and Go regexps are more powerful.")
+ (license license:expat))))
+
+(define-public go-github-com-yookoala-realpath
+ (let ((commit "d19ef9c409d9817c1e685775e53d361b03eabbc8")
+ (revision "0"))
+ (package
+ (name "go-github-com-yookoala-realpath")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/yookoala/realpath")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0qvz1dcdldf53rq69fli76z5k1vr7prx9ds1d5rpzgs68kwn40nw"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/yookoala/realpath"))
+ (home-page "https://github.com/yookoala/realpath")
+ (synopsis "@code{realpath} for Golang")
+ (description "This package provides @code{realpath}, a Go module that
+when provided with a valid relative path / alias path, it will return you with
+a string of its real absolute path in the system.")
+ (license license:expat))))
+
+(define-public go-gitlab-com-ambrevar-damerau
+ (let ((commit "883829e1f25fad54015772ea663e69017cf22352")
+ (revision "0"))
+ (package
+ (name "go-gitlab-com-ambrevar-damerau")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://gitlab.com/ambrevar/damerau")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1b9p8fypc914ij1afn6ir346zsgfqrc5mqc1k3d53n4snypq27qv"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "gitlab.com/ambrevar/damerau"))
+ (home-page "https://gitlab.com/ambrevar/damerau")
+ (synopsis "Damerau-Levenshtein distance for Golang")
+ (description "This is a spelling corrector implementing the
+Damerau-Levenshtein distance. Takes a string value input from the user.
+Looks for an identical word on a list of words, if none is found, look for a
+similar word.")
+ (license license:expat))))
+
+(define-public go-github-com-stevedonovan-luar
+ (let ((commit "22d247e5366095f491cd83edf779ee99a78f5ead")
+ (revision "0"))
+ (package
+ (name "go-github-com-stevedonovan-luar")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/stevedonovan/luar")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1acjgw9cz1l0l9mzkyk7irz6cfk31wnxgbwa805fvm1rqcjzin2c"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-aarzilli-golua" ,go-github-com-aarzilli-golua)))
+ (arguments
+ `(#:tests? #f ; Upstream tests are broken.
+ #:import-path "github.com/stevedonovan/luar"))
+ (home-page "https://github.com/stevedonovan/luar")
+ (synopsis "Lua reflection bindings for Go")
+ (description "Luar is designed to make using Lua from Go more
+convenient. Go structs, slices and maps can be automatically converted to Lua
+tables and vice-versa. The resulting conversion can either be a copy or a
+proxy. In the latter case, any change made to the result will reflect on the
+source.
+
+Any Go function can be made available to Lua scripts, without having to write
+C-style wrappers.
+
+Luar support cyclic structures (lists, etc.).
+
+User-defined types can be made available to Lua as well: their exported
+methods can be called and usual operations such as indexing or arithmetic can
+be performed.")
+ (license license:expat))))
+
+(define-public go-github-com-kr-text
+ (let ((commit "e2ffdb16a802fe2bb95e2e35ff34f0e53aeef34f")
+ (revision "0"))
+ (package
+ (name "go-github-com-kr-text")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/kr/text")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/kr/text"))
+ (home-page "https://github.com/kr/text")
+ (synopsis "Go package for manipulating paragraphs of text")
+ (description "Package @code{text} provides manipulation Go functions for
+paragraphs of text.")
+ (license license:expat))))
+
+(define-public go-github-com-michiwend-golang-pretty
+ (let ((commit "8ac61812ea3fa540f3f141a444fcb0dd713cdca4")
+ (revision "0"))
+ (package
+ (name "go-github-com-michiwend-golang-pretty")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/michiwend/golang-pretty")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0rjfms0csjqi91xnddzx3rcrcaikc7xc027617px3kdwdap80ir4"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-kr-text" ,go-github-com-kr-text)))
+ (arguments
+ `(#:tests? #f ; Upstream tests seem to be broken.
+ #:import-path "github.com/michiwend/golang-pretty"))
+ (home-page "https://github.com/michiwend/golang-pretty")
+ (synopsis "Pretty printing for Go values")
+ (description "Package @code{pretty} provides pretty-printing for Go
+values. This is useful during debugging, to avoid wrapping long output lines
+in the terminal.
+
+It provides a function, @code{Formatter}, that can be used with any function
+that accepts a format string. It also provides convenience wrappers for
+functions in packages @code{fmt} and @code{log}.")
+ (license license:expat))))
+
+(define-public go-github-com-michiwend-gomusicbrainz
+ (let ((commit "0cdeb13f9b24d2c714feb7e3c63d595cf7121d7d")
+ (revision "0"))
+ (package
+ (name "go-github-com-michiwend-gomusicbrainz")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/michiwend/gomusicbrainz")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1li9daw0kghb80rdmxbh7g72qhxcvx3rvhwq5gs0jrr9hb8pjvcn"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("go-github-com-michiwend-golang-pretty" ,go-github-com-michiwend-golang-pretty)
+ ("go-github-com-kr-text" ,go-github-com-kr-text)))
+ (arguments
+ `(#:import-path "github.com/michiwend/gomusicbrainz"))
+ (home-page "https://github.com/michiwend/gomusicbrainz")
+ (synopsis "MusicBrainz WS2 client library for Golang")
+ (description "Currently GoMusicBrainz provides methods to perform search
+and lookup requests. Browse requests are not supported yet.")
+ (license license:expat))))
+
+(define-public go-github-com-wtolson-go-taglib
+ (let ((commit "6e68349ff94ecea412de7e748cb5eaa26f472777")
+ (revision "0"))
+ (package
+ (name "go-github-com-wtolson-go-taglib")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/wtolson/go-taglib")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1cpjqnrviwflz150g78iir5ndrp3hh7a93zbp4dwbg6sb2q141p2"))))
+ (build-system go-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("taglib" ,taglib)))
+ (arguments
+ `(#:import-path "github.com/wtolson/go-taglib"))
+ (home-page "https://github.com/wtolson/go-taglib")
+ (synopsis "Go wrapper for taglib")
+ (description "Go wrapper for taglib")
+ (license license:unlicense))))