diff options
-rw-r--r-- | gnu/packages/golang.scm | 42 | ||||
-rw-r--r-- | gnu/packages/syncthing.scm | 38 |
2 files changed, 41 insertions, 39 deletions
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 9c81534205..f59ddd1386 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -36,6 +36,7 @@ #: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 admin) #:use-module (gnu packages gcc) @@ -47,7 +48,8 @@ #:use-module (gnu packages mp3) #:use-module (ice-9 match) #:use-module (srfi srfi-1) - #:export (go-github-com-gogo-protobuf-union)) + #:export (go-github-com-gogo-protobuf-union) + #:export (go-golang-org-x-crypto-union)) ;; According to https://golang.org/doc/install/gccgo, gccgo-4.8.2 includes a ;; complete go-1.1.2 implementation, gccgo-4.9 includes a complete go-1.2 @@ -988,6 +990,44 @@ Tiny Encryption Algorithm (XTEA) block cipher.") (home-page "https://go.googlesource.com/crypto/") (license license:bsd-3)))) +;; Go searches for library modules by looking in the GOPATH environment +;; variable. This variable is a list of paths. However, Go does not +;; keep searching on GOPATH if it tries and fails to import a module. +;; So, we use a union for packages sharing a namespace. +(define* (go-golang-org-x-crypto-union #:optional + (packages (list go-golang-org-x-crypto-blowfish + go-golang-org-x-crypto-bcrypt + go-golang-org-x-crypto-tea + go-golang-org-x-crypto-xtea + go-golang-org-x-crypto-pbkdf2 + go-golang-org-x-crypto-twofish + go-golang-org-x-crypto-cast5 + go-golang-org-x-crypto-salsa20))) + (package + (name "go-golang-org-x-crypto") + (version (package-version go-golang-org-x-crypto-bcrypt)) + (source #f) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build union)) + #:builder (begin + (use-modules (ice-9 match) + (guix build union)) + (match %build-inputs + (((names . directories) ...) + (union-build (assoc-ref %outputs "out") + directories) + #t))))) + (inputs (map (lambda (package) + (list (package-name package) package)) + packages)) + (synopsis "Union of the Go x crypto libraries") + (description "A union of the Golang cryptographic libraries. A +union is required because `go build` assumes that all of the headers and +libraries are in the same directory.") + (home-page (package-home-page go-golang-org-x-crypto-bcrypt)) + (license (package-license go-golang-org-x-crypto-bcrypt)))) + (define-public go-golang-org-x-net-ipv4 (let ((commit "d866cfc389cec985d6fda2859936a575a55a3ab6") (revision "1")) diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 0fe1d3d774..48b52d2002 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -728,44 +728,6 @@ generation.") (home-page "https://github.com/vitrun/qart") (license bsd-3)))) -;; Go searches for library modules by looking in the GOPATH environment -;; variable. This variable is a list of paths. However, Go does not -;; keep searching on GOPATH if it tries and fails to import a module. -;; So, we use a union for packages sharing a namespace. -(define* (go-golang-org-x-crypto-union #:optional - (packages (list go-golang-org-x-crypto-blowfish - go-golang-org-x-crypto-bcrypt - go-golang-org-x-crypto-tea - go-golang-org-x-crypto-xtea - go-golang-org-x-crypto-pbkdf2 - go-golang-org-x-crypto-twofish - go-golang-org-x-crypto-cast5 - go-golang-org-x-crypto-salsa20))) - (package - (name "go-golang-org-x-crypto") - (version (package-version go-golang-org-x-crypto-bcrypt)) - (source #f) - (build-system trivial-build-system) - (arguments - '(#:modules ((guix build union)) - #:builder (begin - (use-modules (ice-9 match) - (guix build union)) - (match %build-inputs - (((names . directories) ...) - (union-build (assoc-ref %outputs "out") - directories) - #t))))) - (inputs (map (lambda (package) - (list (package-name package) package)) - packages)) - (synopsis "Union of the Go x crypto libraries") - (description "A union of the Golang cryptographic libraries. A -union is required because `go build` assumes that all of the headers and -libraries are in the same directory.") - (home-page (package-home-page go-golang-org-x-crypto-bcrypt)) - (license (package-license go-golang-org-x-crypto-bcrypt)))) - (define* (go-golang-org-x-net-union #:optional (packages (list go-golang-org-x-net-ipv4 go-golang-org-x-net-bpf |