gnu: go-github-com-pkg-errors: Update to 0.8.1.
[jackhill/guix/guix.git] / gnu / packages / syncthing.scm
CommitLineData
56a37713
LF
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2016 Petter <petter@mykolab.ch>
30335a29 3;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name>
56a37713
LF
4;;;
5;;; This file is part of GNU Guix.
6;;;
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages syncthing)
21 #:use-module (guix build-system go)
cca22eb3 22 #:use-module (guix build-system trivial)
56a37713 23 #:use-module (guix packages)
947453a8 24 #:use-module (guix download)
56a37713 25 #:use-module (guix git-download)
269d0858 26 #:use-module (guix licenses)
fd115bee 27 #:use-module (gnu packages)
269d0858 28 #:use-module (gnu packages golang))
56a37713 29
947453a8
LF
30(define-public syncthing
31 (package
32 (name "syncthing")
f4319c6e 33 (version "1.1.0")
947453a8
LF
34 (source (origin
35 (method url-fetch)
36 (uri (string-append "https://github.com/syncthing/syncthing"
37 "/releases/download/v" version
38 "/syncthing-source-v" version ".tar.gz"))
39 (sha256
40 (base32
f4319c6e 41 "1iks1a3149gj89yqmqa5iry2ik2sj9sjhlhc6nfh7xq4swqgsrb5"))
c7c0b3a9
LF
42 ;; Since the update to Go 1.11, Go programs have been keeping
43 ;; spurious references to all their dependencies:
44 ;; <https://bugs.gnu.org/33620>.
45 ;; For Syncthing, this increases the size of the 'out' closure
46 ;; from 87.6 MiB to 253.5 MiB. So, we use the bundled
47 ;; dependencies until the bug is resolved.
48; (modules '((guix build utils)))
49; ;; Delete bundled ("vendored") free software source code.
50; (snippet '(begin
51; (delete-file-recursively "vendor")
52; #t))
53 ))
947453a8 54 (build-system go-build-system)
c330c27f
LF
55 ;; The primary Syncthing executable goes to "out", while the auxiliary
56 ;; server programs and utility tools go to "utils". This reduces the size
57 ;; of "out" by ~80 MiB.
58 (outputs '("out" "utils"))
947453a8
LF
59 (arguments
60 `(#:import-path "github.com/syncthing/syncthing"
61 #:unpack-path "github.com/syncthing"
1899ef0b
LF
62 ;; We don't need to install the source code for end-user applications.
63 #:install-source? #f
947453a8
LF
64 #:phases
65 (modify-phases %standard-phases
947453a8
LF
66 (add-before 'build 'increase-test-timeout
67 (lambda _
68 (substitute* "src/github.com/syncthing/syncthing/build.go"
7d15490c 69 (("120s") "999s"))
947453a8
LF
70 #t))
71
72 (replace 'build
c7c0b3a9 73 (lambda _
947453a8 74 (with-directory-excursion "src/github.com/syncthing/syncthing"
1feaca62 75 (invoke "go" "run" "build.go" "-no-upgrade"))))
947453a8
LF
76
77 (replace 'check
78 (lambda _
79 (with-directory-excursion "src/github.com/syncthing/syncthing"
1feaca62 80 (invoke "go" "run" "build.go" "test"))))
947453a8
LF
81
82 (replace 'install
c330c27f
LF
83 (lambda* (#:key outputs #:allow-other-keys)
84 (let ((out (assoc-ref outputs "out"))
85 (utils (assoc-ref outputs "utils"))
86 (src "src/github.com/syncthing/syncthing/bin/"))
87 (install-file (string-append src "/syncthing")
88 (string-append out "/bin"))
89 (delete-file (string-append src "/syncthing"))
90 (copy-recursively "src/github.com/syncthing/syncthing/bin/"
91 (string-append utils "/bin"))
92 #t)))
947453a8
LF
93
94 (add-after 'install 'install-docs
95 (lambda* (#:key outputs #:allow-other-keys)
96 (let* ((out (assoc-ref outputs "out"))
c330c27f
LF
97 (utils (assoc-ref outputs "utils"))
98 (man "/share/man")
99 (man-section (string-append man "/man"))
947453a8 100 (src "src/github.com/syncthing/syncthing/man/"))
c330c27f 101 ;; Install all the man pages to "out".
947453a8
LF
102 (for-each
103 (lambda (file)
104 (install-file file
c330c27f
LF
105 (string-append out man-section
106 (string-take-right file 1))))
947453a8 107 (find-files src "\\.[1-9]"))
c330c27f
LF
108 ;; Copy all the man pages to "utils"
109 (copy-recursively (string-append out man)
110 (string-append utils man))
111 ;; Delete extraneous man pages from "out" and "utils",
112 ;; respectively.
113 (delete-file (string-append out man "/man1/stdiscosrv.1"))
114 (delete-file (string-append out man "/man1/strelaysrv.1"))
115 (delete-file (string-append utils man "/man1/syncthing.1"))
947453a8 116 #t))))))
162a1374 117 (synopsis "Decentralized continuous file system synchronization")
947453a8
LF
118 (description "Syncthing is a peer-to-peer file synchronization tool that
119supports a wide variety of computing platforms. It uses the Block Exchange
120Protocol.")
121 (home-page "https://github.com/syncthing/syncthing")
122 (license mpl2.0)))
123
56a37713
LF
124(define-public go-github-com-audriusbutkevicius-go-nat-pmp
125 (let ((commit "452c97607362b2ab5a7839b8d1704f0396b640ca")
126 (revision "0"))
127 (package
128 (name "go-github-com-audriusbutkevicius-go-nat-pmp")
129 (version (git-version "0.0.0" revision commit))
130 (source (origin
131 (method git-fetch)
132 (uri (git-reference
133 (url "https://github.com/AudriusButkevicius/go-nat-pmp")
134 (commit commit)))
135 (file-name (git-file-name name version))
136 (sha256
137 (base32 "1accmpl1llk16a19nlyy991fqrgfay6l53gb64hgmdfmqljdvbk7"))))
138 (build-system go-build-system)
139 (arguments
140 `(#:import-path "github.com/AudriusButkevicius/go-nat-pmp"))
141 (synopsis "Port mapping and discovery of external IP address")
142 (description "This packages provides a Go client for the NAT-PMP internet
143protocol for port mapping and discovering the external IP address of a
144firewall.")
145 (home-page "https://github.com/AudriusButkevicius/go-nat-pmp")
146 (license asl2.0))))
67b46818
LF
147
148(define-public go-github-com-bkaradzic-go-lz4
149 (let ((commit "7224d8d8f27ef618c0a95f1ae69dbb0488abc33a")
150 (revision "0"))
151 (package
152 (name "go-github-com-bkaradzic-go-lz4")
153 (version (git-version "0.0.0" revision commit))
154 (source (origin
155 (method git-fetch)
156 (uri (git-reference
157 (url "https://github.com/bkaradzic/go-lz4")
158 (commit commit)))
159 (file-name (git-file-name name version))
160 (sha256
161 (base32
162 "10lmya17vdqg2pvqni0p73iahni48s1v11ya9a0hcz4jh5vw4dkb"))))
163 (build-system go-build-system)
164 (arguments
165 `(#:import-path "github.com/bkaradzic/go-lz4"))
166 (synopsis "LZ4 compression algorithm")
167 (description "This package provides @code{go-lz4}, a Go implementation of
168the LZ4 compression algorithm.")
169 (home-page "https://github.com/bkaradzic/go-lz4")
170 (license bsd-2))))
add56f34
LF
171
172(define-public go-github-com-calmh-du
173 (package
174 (name "go-github-com-calmh-du")
175 (version "1.0.1")
176 (source (origin
177 (method git-fetch)
178 (uri (git-reference
179 (url "https://github.com/calmh/du")
180 (commit (string-append "v" version))))
181 (file-name (git-file-name name version))
182 (sha256
183 (base32
184 "0qb3a6y3p9nkyn3s66k6zcm16y8n8578qh23ddj14cxf2scrr2n2"))))
185 (build-system go-build-system)
186 (arguments
187 `(#:import-path "github.com/calmh/du"))
188 (synopsis "Get total and available disk space of a given volume")
189 (description "This is a Go implementation of `du`. It provides disk usage
190information, such as how much storage space is available, free, and used.")
191 (home-page "https://github.com/calmh/du")
192 (license public-domain)))
1e28085e
LF
193
194(define-public go-github-com-calmh-xdr
195 (let ((commit "08e072f9cb164f943a92eb59f90f3abc64ac6e8f")
196 (revision "0"))
197 (package
198 (name "go-github-com-calmh-xdr")
199 (version (git-version "2.0.1" revision commit))
200 (source (origin
201 (method git-fetch)
202 (uri (git-reference
203 (url "https://github.com/calmh/xdr")
204 (commit commit)))
205 (file-name (git-file-name name version))
206 (sha256
207 (base32
208 "072wqdncz3nd4a3zkhvzzx1y3in1lm29wfvl0d8wrnqs5pyqh0mh"))))
209 (build-system go-build-system)
210 (arguments
211 `(#:import-path "github.com/calmh/xdr"))
212 (synopsis "XDR marshalling and unmarshalling")
213 (description "XDR is an External Data Representation (XDR)
214marshalling and unmarshalling library in Go. It uses code generation and not
215reflection.")
216 (home-page "https://github.com/calmh/xdr")
217 (license expat))))
ab3e1589
LF
218
219(define-public go-github-com-d4l3k-messagediff
edda279f
LF
220 (package
221 (name "go-github-com-d4l3k-messagediff")
222 (version "1.2.1")
223 (source (origin
224 (method git-fetch)
225 (uri (git-reference
226 (url "https://github.com/d4l3k/messagediff")
227 (commit (string-append "v" version))))
228 (file-name (git-file-name name version))
229 (sha256
230 (base32
231 "104hl8x57ciaz7mzafg1vp9qggxcyfm8hsv9bmlihbz9ml3nyr8v"))))
232 (build-system go-build-system)
233 (arguments
234 `(#:import-path "github.com/d4l3k/messagediff"))
235 (synopsis "Diff arbitrary Go structs")
236 (description "Messagediff is a library for calculating diffs of arbitrary
ab3e1589 237structs in the Go programming language.")
edda279f
LF
238 (home-page "https://github.com/d4l3k/messagediff")
239 (license expat)))
a3a5b012 240
4d93ebb3
LF
241(define-public go-github-com-gobwas-glob
242 (let ((commit "51eb1ee00b6d931c66d229ceeb7c31b985563420")
243 (revision "0"))
244 (package
245 (name "go-github-com-gobwas-glob")
246 (version (git-version "0.0.0" revision commit))
247 (source (origin
248 (method git-fetch)
249 (uri (git-reference
250 (url "https://github.com/gobwas/glob")
251 (commit commit)))
252 (file-name (git-file-name name version))
253 (sha256
254 (base32
255 "090wzpwsjana1qas8ipwh1pj959gvc4b7vwybzi01f3bmd79jwlp"))))
256 (build-system go-build-system)
257 (arguments
258 `(#:import-path "github.com/gobwas/glob"))
259 (synopsis "Go globbing library")
260 (description "This packages provides a Go implementation of globs.")
261 (home-page "https://github.com/gobwas/glob")
262 (license expat))))
07e88fc6 263
ede4f50c
LF
264
265(define-public go-github-com-golang-groupcache-lru
e83994f2
LF
266 (let ((commit "84a468cf14b4376def5d68c722b139b881c450a4")
267 (revision "1"))
ede4f50c
LF
268 (package
269 (name "go-github-com-golang-groupcache-lru")
270 (version (git-version "0.0.0" revision commit))
271 (source (origin
272 (method git-fetch)
273 (uri (git-reference
274 (url "https://github.com/golang/groupcache")
275 (commit commit)))
276 (file-name (git-file-name name version))
277 (sha256
278 (base32
e83994f2 279 "1ky1r9qh54yi9zp2769qrjngzndgd8fn7mja2qfac285n06chmcn"))))
ede4f50c
LF
280 (build-system go-build-system)
281 (arguments
282 `(#:import-path "github.com/golang/groupcache/lru"
283 #:unpack-path "github.com/golang/groupcache"))
284 (synopsis "Groupcache is a caching and cache-filling library")
285 (description "Groupcache is a caching and cache-filling library, intended
286as a replacement for memcached in many cases. It provides a data loading
287mechanism with caching and de-duplication that works across a set of peer
288processes.")
289 (home-page "https://github.com/golang/groupcache")
290 (license asl2.0))))
b32eab0b
LF
291
292(define-public go-github-com-golang-snappy
293 (let ((commit "553a641470496b2327abcac10b36396bd98e45c9")
294 (revision "0"))
295 (package
296 (name "go-github-com-golang-snappy")
297 (version (git-version "0.0.0" revision commit))
298 (source (origin
299 (method git-fetch)
300 (uri (git-reference
301 (url "https://github.com/golang/snappy")
302 (commit commit)))
303 (file-name (git-file-name name version))
304 (sha256
305 (base32
306 "0kssxnih1l722hx9219c7javganjqkqhvl3i0hp0hif6xm6chvqk"))))
307 (build-system go-build-system)
308 (arguments
309 `(#:import-path "github.com/golang/snappy"))
310 (synopsis "Snappy compression format in the Go programming language")
311 (description "This package provides a Go implementation of the Snappy
312compression format.")
313 (home-page "https://github.com/golang/snappy")
314 (license bsd-3))))
7b92093d
LF
315
316(define-public go-github-com-jackpal-gateway
317 (let ((commit "5795ac81146e01d3fab7bcf21c043c3d6a32b006")
318 (revision "0"))
319 (package
320 (name "go-github-com-jackpal-gateway")
321 (version (git-version "0.0.0" revision commit))
322 (source (origin
323 (method git-fetch)
324 (uri (git-reference
325 (url "https://github.com/jackpal/gateway")
326 (commit commit)))
327 (file-name (git-file-name name version))
328 (sha256
329 (base32
330 "0fkwkwmhfadwk3cha8616bhqxfkr9gjjnynhhxyldlphixgs3f25"))))
331 (build-system go-build-system)
332 (arguments
333 `(#:import-path "github.com/jackpal/gateway"))
334 (synopsis "Discover the address of a LAN gateway")
335 (description "@code{gateway} is a Go library for discovering the IP
336address of the default LAN gateway.")
337 (home-page "https://github.com/jackpal/gateway")
338 (license bsd-3))))
7577a1d5 339
340e1a9a 340(define-public go-github-com-lib-pq
5e30d8c1
LF
341 (let ((commit "83612a56d3dd153a94a629cd64925371c9adad78")
342 (revision "1"))
340e1a9a
LF
343 (package
344 (name "go-github-com-lib-pq")
345 (version (git-version "0.0.0" revision commit))
346 (source (origin
347 (method git-fetch)
348 (uri (git-reference
349 (url "https://github.com/lib/pq")
350 (commit commit)))
351 (file-name (git-file-name name version))
352 (sha256
353 (base32
5e30d8c1 354 "12334yigh284k5cdvb9pgxaq6n78205jcbp75ajz44vvfd4wi6qc"))))
340e1a9a
LF
355 (build-system go-build-system)
356 (arguments
357 `(#:import-path "github.com/lib/pq"
358 ;; The tests seem to fail without access to the network or a running
359 ;; Postgres instance.
360 #:tests? #f))
361 (synopsis "Golang Postgres driver for Go's database/sql")
362 (description "This packages provides a pure Go Postgres driver for Go's
363database/sql package.")
364 (home-page "https://github.com/lib/pq")
365 (license expat))))
4a9c4dbe 366
0921b230 367(define-public go-github-com-oschwald-geoip2-golang
d277b9bc
LF
368 (package
369 (name "go-github-com-oschwald-geoip2-golang")
370 (version "1.1.0")
371 (source (origin
372 (method git-fetch)
373 (uri (git-reference
374 (url "https://github.com/oschwald/geoip2-golang")
375 (commit (string-append "v" version))))
376 (file-name (git-file-name name version))
377 (sha256
378 (base32
379 "0v698bzs8lb59cqpsa9cf4sl8rdsvnnmaravhbfn6g6i511ppclr"))))
380 (build-system go-build-system)
381 (propagated-inputs
382 `(("go-github-com-oschwald-maxminddb-golang"
383 ,go-github-com-oschwald-maxminddb-golang)
384 ("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
385 (arguments
386 `(#:import-path "github.com/oschwald/geoip2-golang"
387 #:tests? #f)) ; Requires some unpackaged software and test data
388 (synopsis "MaxMind GeoIP2 reader")
389 (description "This packages provides a library for reading MaxMind
0921b230 390GeoLite2 and GeoIP2 databases in Go.")
d277b9bc
LF
391 (home-page "https://github.com/oschwald/geoip2-golang")
392 (license isc)))
0921b230 393
a57778f5 394(define-public go-github-com-oschwald-maxminddb-golang
ac909141 395 (let ((commit "26fe5ace1c706491c2936119e1dc69c1a9c04d7f")
a57778f5
LF
396 (revision "0"))
397 (package
398 (name "go-github-com-oschwald-maxminddb-golang")
ac909141 399 (version (git-version "1.2.0" revision commit))
a57778f5
LF
400 (source (origin
401 (method git-fetch)
402 (uri (git-reference
403 (url "https://github.com/oschwald/maxminddb-golang")
404 (commit commit)))
405 (file-name (git-file-name name version))
406 (sha256
407 (base32
ac909141 408 "1i6d935f3cv9djpjvc2ibh8aps8jqvg454b9pkwg2h98al759ggk"))))
a57778f5
LF
409 (build-system go-build-system)
410 (propagated-inputs
411 `(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
412 (arguments
413 `(#:import-path "github.com/oschwald/maxminddb-golang"
414 #:tests? #f)) ; Requires some unpackaged software and test data
415 (synopsis "MaxMind DB Reader for Go")
416 (description "This is a Go reader for the MaxMind DB format. Although
417this can be used to read GeoLite2 and GeoIP2 databases, @code{geoip2} provides a
418higher-level API for doing so.")
419 (home-page "https://github.com/oschwald/maxminddb-golang")
420 (license isc))))
421
6bc1eb11
LF
422(define-public go-github-com-stathat-go
423 (let ((commit "74669b9f388d9d788c97399a0824adbfee78400e")
424 (revision "0"))
425 (package
426 (name "go-github-com-stathat-go")
427 (version (git-version "0.0.0" revision commit))
428 (source (origin
429 (method git-fetch)
430 (uri (git-reference
431 (url "https://github.com/stathat/go")
432 (commit commit)))
433 (file-name (git-file-name name version))
434 (sha256
435 (base32
436 "1zzlsl24dyr202qkr2pay22m6d0gb7ssms77wgdx0r0clgm7dihw"))))
437 (build-system go-build-system)
438 (arguments
439 `(#:import-path "github.com/stathat/go"))
440 (synopsis "Post statistics to StatHat")
441 (description "This is a Go package for posting to a StatHat account.")
442 (home-page "https://github.com/stathat/go")
443 (license expat))))
444
1a4795f9 445(define-public go-github-com-rcrowley-go-metrics
d2c7971d
LF
446 (let ((commit "e181e095bae94582363434144c61a9653aff6e50")
447 (revision "1"))
1a4795f9
LF
448 (package
449 (name "go-github-com-rcrowley-go-metrics")
450 (version (git-version "0.0.0" revision commit))
451 (source (origin
452 (method git-fetch)
453 (uri (git-reference
454 (url "https://github.com/rcrowley/go-metrics")
455 (commit commit)))
456 (file-name (git-file-name name version))
457 (sha256
458 (base32
d2c7971d 459 "1pwkyw801hy7n94skzk6h177zqcil6ayrmb5gs3jdpsfayh8ia5w"))))
1a4795f9
LF
460 (build-system go-build-system)
461 (arguments
462 `(#:import-path "github.com/rcrowley/go-metrics"))
463 (propagated-inputs
464 `(("go-github-com-stathat-go" ,go-github-com-stathat-go)))
465 (synopsis "Go port of Coda Hale's Metrics library")
466 (description "This package provides a Go implementation of Coda Hale's
467Metrics library.")
468 (home-page "https://github.com/rcrowley/go-metrics")
469 (license bsd-2))))
470
8d7e9924 471(define-public go-github-com-sasha-s-go-deadlock
feade866
LF
472 (let ((commit "03d40e5dbd5488667a13b3c2600b2f7c2886f02f")
473 (revision "1"))
8d7e9924
LF
474 (package
475 (name "go-github-com-sasha-s-go-deadlock")
476 (version (git-version "0.1.0" revision commit))
477 (source (origin
478 (method git-fetch)
479 (uri (git-reference
480 (url "https://github.com/sasha-s/go-deadlock")
481 (commit commit)))
482 (file-name (git-file-name name version))
483 (sha256
484 (base32
feade866 485 "13p7b7pakd9k1c2k0fs1hfim3c8mivz679977ai6zb01s4aw7gyg"))))
8d7e9924
LF
486 (build-system go-build-system)
487 (arguments
488 `(#:import-path "github.com/sasha-s/go-deadlock"))
489 (propagated-inputs
490 `(("go-github-com-petermattis-goid" ,go-github-com-petermattis-goid)))
491 (synopsis "Deadlock detection in go")
492 (description "This package provides tools for detecting deadlocks at
493run-time in Go.")
494 (home-page "https://github.com/sasha-s/go-deadlock")
495 (license asl2.0))))
496
c864a4a7 497(define-public go-github-com-syndtr-goleveldb
619db5cf
LF
498 (let ((commit "34011bf325bce385408353a30b101fe5e923eb6e")
499 (revision "2"))
c864a4a7
LF
500 (package
501 (name "go-github-com-syndtr-goleveldb")
502 (version (git-version "0.0.0" revision commit))
503 (source (origin
504 (method git-fetch)
505 (uri (git-reference
506 (url "https://github.com/syndtr/goleveldb")
507 (commit commit)))
508 (file-name (git-file-name name version))
509 (sha256
510 (base32
619db5cf 511 "097ja0vyj6p27zrxha9nhk09fj977xsvhmd3bk2hbyvnbw4znnhd"))))
c864a4a7
LF
512 (build-system go-build-system)
513 (propagated-inputs
514 `(("go-github-com-golang-snappy" ,go-github-com-golang-snappy)))
515 (arguments
516 `(#:import-path "github.com/syndtr/goleveldb/leveldb"
517 #:unpack-path "github.com/syndtr/goleveldb"
518 #:tests? #f)) ; XXX needs 'github.com/onsi/gomega' package
519 (synopsis "LevelDB key/value database")
520 (description "This is an implementation of the LevelDB key / value
521database in Go.")
522 (home-page "https://github.com/syndtr/goleveldb")
523 (license bsd-2))))
524
f7612f0f 525(define-public go-github-com-thejerf-suture
51498576 526 (let ((commit "bf6ee6a0b047ebbe9ae07d847f750dd18c6a9276")
f7612f0f
LF
527 (revision "0"))
528 (package
529 (name "go-github-com-thejerf-suture")
51498576 530 (version (git-version "3.0.0" revision commit))
f7612f0f
LF
531 (source (origin
532 (method git-fetch)
533 (uri (git-reference
534 (url "https://github.com/thejerf/suture")
535 (commit commit)))
536 (file-name (git-file-name name version))
537 (sha256
538 (base32
51498576 539 "0rzx9k408vaglwnnpgpcs6y7ff7p65915nbg33rvbaz13hxwkz3y"))))
f7612f0f
LF
540 (build-system go-build-system)
541 (arguments
542 `(#:import-path "github.com/thejerf/suture"))
543 (synopsis "Supervisor trees for Go")
544 (description "Suture provides Erlang-ish supervisor trees for Go.
545\"Supervisor trees\" -> \"sutree\" -> \"suture\" -> holds your code together
546when it's trying to die.
547
548It is intended to deal gracefully with the real failure cases that can occur
549with supervision trees (such as burning all your CPU time endlessly restarting
550dead services), while also making no unnecessary demands on the \"service\"
551code, and providing hooks to perform adequate logging with in a production
552environment")
553 (home-page "https://github.com/thejerf/suture")
554 (license expat))))
555
292a6b0d
LF
556(define-public go-github-com-vitrun-qart-coding
557 (let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
558 (revision "0"))
559 (package
560 (name "go-github-com-vitrun-qart-coding")
561 (version (git-version "0.0.0" revision commit))
562 (source (origin
563 (method git-fetch)
564 (uri (git-reference
565 (url "https://github.com/vitrun/qart")
566 (commit commit)))
567 (file-name (string-append "go-github-com-vitrun-qart-"
568 version "-checkout"))
569 (sha256
570 (base32
571 "1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
572 (build-system go-build-system)
573 (arguments
574 `(#:import-path "github.com/vitrun/qart/coding"
575 #:unpack-path "github.com/vitrun/qart"))
576 (synopsis "Low-level QR coding library")
577 (description "This package provides a library for embedding
578human-meaningful graphics in QR codes. However, instead of scribbling on
579redundant pieces and relying on error correction to preserve the meaning,
580@code{qart} engineers the encoded values to create the picture in a code with no
581inherent errors. This @code{qart} component, @code{coding}, implements
582low-level QR coding details.")
583 (home-page "https://github.com/vitrun/qart/")
584 (license bsd-3))))
585
6934827a
LF
586(define-public go-github-com-vitrun-qart-gf256
587 (let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
588 (revision "0"))
589 (package
590 (name "go-github-com-vitrun-qart-gf256")
591 (version (git-version "0.0.0" revision commit))
592 (source (origin
593 (method git-fetch)
594 (uri (git-reference
595 (url "https://github.com/vitrun/qart")
596 (commit commit)))
597 (file-name (string-append "go-github-com-vitrun-qart-"
598 version "-checkout"))
599 (sha256
600 (base32
601 "1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
602 (build-system go-build-system)
603 (arguments
604 `(#:import-path "github.com/vitrun/qart/gf256"
605 #:unpack-path "github.com/vitrun/qart"))
606 (synopsis "Qart library for Galois Field GF(256) math")
607 (description "This package, a component of @code{qart}, provides @code{gf256},
608implements arithmetic over the Galois Field GF(256).")
609 (home-page "https://github.com/vitrun/qart")
892ced6d
LF
610 (license bsd-3))))
611
612(define-public go-github-com-vitrun-qart-qr
613 (let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
614 (revision "0"))
615 (package
616 (name "go-github-com-vitrun-qart-qr")
617 (version (git-version "0.0.0" revision commit))
618 (source (origin
619 (method git-fetch)
620 (uri (git-reference
621 (url "https://github.com/vitrun/qart")
622 (commit commit)))
623 (file-name (string-append "go-github-com-vitrun-qart-"
624 version "-checkout"))
625 (sha256
626 (base32
627 "1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
628 (build-system go-build-system)
629 (arguments
630 `(#:import-path "github.com/vitrun/qart/qr"
631 #:unpack-path "github.com/vitrun/qart"))
632 (synopsis "Qart component for generating QR codes")
892ced6d
LF
633 (description "This package provides a library for embedding
634human-meaningful graphics in QR codes. However, instead of scribbling on
635redundant pieces and relying on error correction to preserve the meaning,
636@code{qart} engineers the encoded values to create the picture in a code with no
637inherent errors. This @code{qart} component, @code{qr}, provides QR code
638generation.")
639 (home-page "https://github.com/vitrun/qart")
6934827a
LF
640 (license bsd-3))))
641
6deb73c4 642(define-public go-github-com-audriusbutkevicius-pfilter
23e2c09c
LF
643 (let ((commit "9dca34a5b530bfc9843fa8aa2ff08ff9821032cb")
644 (revision "2"))
6deb73c4
LF
645 (package
646 (name "go-github-com-audriusbutkevicius-pfilter")
647 (version (git-version "0.0.0" revision commit))
648 (source
649 (origin
650 (method git-fetch)
651 (uri (git-reference
652 (url "https://github.com/AudriusButkevicius/pfilter.git")
653 (commit commit)))
654 (file-name (git-file-name name version))
655 (sha256
656 (base32
23e2c09c 657 "0i4qbnwba49db27fb1y792gcvhb0m744i9q4zgwjbypqmy3bj2a5"))))
6deb73c4
LF
658 (build-system go-build-system)
659 (arguments
660 '(#:import-path "github.com/AudriusButkevicius/pfilter"))
661 (synopsis "Filter packets into mulitple virtual connections")
662 (description "Pfilter is a Go package for filtering packets into multiple
663virtual connections from a single physical connection.")
664 (home-page "https://github.com/AudriusButkevicius/pfilter")
665 (license expat))))
db64cb40 666
2785690a 667(define-public go-github-com-chmduquesne-rollinghash-adler32
2fcd1c84
LF
668 (let ((commit "a60f8e7142b536ea61bb5d84014171189eeaaa81")
669 (revision "0"))
2785690a
LF
670 (package
671 (name "go-github-com-chmduquesne-rollinghash-adler32")
2fcd1c84 672 (version (git-version "4.0.0" revision commit))
2785690a
LF
673 (source
674 (origin
675 (method git-fetch)
676 (uri (git-reference
677 (url "https://github.com/chmduquesne/rollinghash.git")
678 (commit commit)))
679 (file-name (git-file-name name version))
680 (sha256
681 (base32
2fcd1c84 682 "0fpaqq4zb0wikgbhn7vwqqj1h865f5xy195vkhivsp922p7qwsjr"))))
2785690a
LF
683 (build-system go-build-system)
684 (arguments
685 '(#:import-path "github.com/chmduquesne/rollinghash/adler32"
686 #:unpack-path "github.com/chmduquesne/rollinghash"))
687 (synopsis "Adler-32 rolling hash in Go")
688 (description "This package provides a Go implementation of the Adler-32
689rolling hash.")
690 (home-page "https://github.com/chmduquesne/rollinghash")
691 (license expat))))
3d86b557 692
936e02b4 693(define-public go-github-com-pkg-errors
c36177c6
LF
694 (package
695 (name "go-github-com-pkg-errors")
696 (version "0.8.1")
697 (source (origin
698 (method git-fetch)
699 (uri (git-reference
700 (url "https://github.com/pkg/errors.git")
701 (commit (string-append "v" version))))
702 (file-name (git-file-name name version))
703 (sha256
704 (base32
705 "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1"))))
706 (build-system go-build-system)
707 (arguments
708 `(#:import-path "github.com/pkg/errors"))
709 (synopsis "Go error handling primitives")
710 (description "This packages provides @code{error}, which offers simple
936e02b4 711error handling primitives in Go.")
c36177c6
LF
712 (home-page "https://github.com/pkg/errors")
713 (license bsd-2)))
936e02b4 714
73a2f841
LF
715(define-public go-github-com-petermattis-goid
716 (let ((commit "3db12ebb2a599ba4a96bea1c17b61c2f78a40e02")
717 (revision "0"))
718 (package
719 (name "go-github-com-petermattis-goid")
720 (version (git-version "0.0.0" revision commit))
721 (source (origin
722 (method git-fetch)
723 (uri (git-reference
724 (url "https://github.com/petermattis/goid.git")
725 (commit commit)))
726 (file-name (git-file-name name version))
727 (sha256
728
729 (base32
730 "0z18a3mr72c52g7g94n08gxw0ksnaafbfwdl5p5jav2sffirb0kd"))))
731 (build-system go-build-system)
732 (arguments
733 '(#:import-path "github.com/petermattis/goid"))
734 (synopsis "Identify the running goroutine")
735 (description "This package offers a method of programatically retrieving
736the current goroutine's ID.")
737 (home-page "https://github.com/petermattis/goid")
738 (license asl2.0))))
71415e23
LF
739
740(define-public go-github-com-audriusbutkevicius-cli
741 (let ((commit "7f561c78b5a4aad858d9fd550c92b5da6d55efbb")
742 (revision "0"))
743 (package
744 (name "go-github-com-audriusbutkevicius-cli")
745 (version (git-version "0.0.0" revision commit))
746 (source (origin
747 (method git-fetch)
748 (uri (git-reference
749 (url "https://github.com/AudriusButkevicius/cli.git")
750 (commit commit)))
751 (file-name (git-file-name name version))
752 (sha256
753 (base32
754 "0bg26pfg25vr16jmczig2m493mja2nxjxyswz3hha7avxw20rpi5"))))
755 (build-system go-build-system)
756 (arguments
d4780c82
PN
757 '(#:import-path "github.com/AudriusButkevicius/cli"
758 ;; Tests don't pass "vet" on go-1.11. See
759 ;; https://github.com/AudriusButkevicius/cli/pull/1.
760 #:phases
761 (modify-phases %standard-phases
762 (replace 'check
763 (lambda* (#:key import-path #:allow-other-keys)
764 (invoke "go" "test"
765 "-vet=off"
766 import-path))))))
71415e23
LF
767 (synopsis "Library for building command-line interfaces in Go")
768 (description "This package provides a library for building command-line
769interfaces in Go.")
770 (home-page "https://github.com/AudriusButkevicius/cli")
771 (license expat))))
89d91ee2
LF
772
773(define-public go-github-com-kballard-go-shellquote
774 (let ((commit "cd60e84ee657ff3dc51de0b4f55dd299a3e136f2")
775 (revision "0"))
776 (package
777 (name "go-github-com-kballard-go-shellquote")
778 (version (git-version "0.0.0" revision commit))
779 (source (origin
780 (method git-fetch)
781 (uri (git-reference
782 (url "https://github.com/kballard/go-shellquote.git")
783 (commit commit)))
784 (file-name (git-file-name name version))
785 (sha256
786 (base32
787 "1xjpin4jq1zl84dcn96xhjmn9bsfyszf6g9aqyj2dc0xfi6c88y0"))))
788 (build-system go-build-system)
789 (arguments
790 '(#:import-path "github.com/kballard/go-shellquote"))
791 (synopsis "Shell-style string joins and splits")
792 (description "Shellquote provides utilities for joining/splitting strings
793using sh's word-splitting rules.")
794 (home-page "https://github.com/kballard/go-shellquote")
795 (license expat))))
a3d98dd8 796
2849c665 797(define-public go-github-com-syncthing-notify
061387ea
LF
798 (let ((commit "4e389ea6c0d84e6195eb585ffaf62c8c143306ae")
799 (revision "4"))
52ff28e4 800 (package
2849c665 801 (name "go-github-com-syncthing-notify")
52ff28e4
LF
802 (version (git-version "0.0.0" revision commit))
803 (source (origin
804 (method git-fetch)
805 (uri (git-reference
2849c665 806 (url "https://github.com/syncthing/notify")
52ff28e4
LF
807 (commit commit)))
808 (file-name (git-file-name name version))
809 (sha256
810 (base32
061387ea 811 "19gvl14s1l9m82f8c2xsjcr8lmbqrvw1mxkayvfcpimvxfz0j61i"))))
52ff28e4
LF
812 (build-system go-build-system)
813 (arguments
2849c665 814 '(#:import-path "github.com/syncthing/notify"))
52ff28e4
LF
815 (propagated-inputs
816 `(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
3bd840e4 817 (synopsis "File system event notification library")
162a1374 818 (description "This package provides @code{notify}, a file system event
52ff28e4 819notification library in Go.")
2849c665 820 (home-page "https://github.com/syncthing/notify")
52ff28e4 821 (license expat))))
63aade45 822
a04434f2
LF
823(define-public go-github-com-beorn7-perks-quantile
824 (let ((commit "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9")
825 (revision "0"))
826 (package
827 (name "go-github-com-beorn7-perks-quantile")
828 (version (git-version "0.0.0" revision commit))
829 (source (origin
830 (method git-fetch)
831 (uri (git-reference
832 (url "https://github.com/beorn7/perks.git")
833 (commit commit)))
834 (file-name (git-file-name name version))
835 (sha256
836 (base32
837 "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y"))))
838 (build-system go-build-system)
839 (arguments
840 '(#:import-path "github.com/beorn7/perks/quantile"
841 #:unpack-path "github.com/beorn7/perks"))
842 (synopsis "Compute approximate quantiles over an unbounded data stream")
843 (description "Perks contains the Go package @code{quantile} that computes
844approximate quantiles over an unbounded data stream within low memory and CPU
845bounds.")
846 (home-page "https://github.com/beorn7/perks")
847 (license expat))))
339e44da
LF
848
849(define-public go-github-com-golang-protobuf-proto
850 (let ((commit "1e59b77b52bf8e4b449a57e6f79f21226d571845")
851 (revision "0"))
852 (package
853 (name "go-github-com-golang-protobuf-proto")
854 (version (git-version "0.0.0" revision commit))
855 (source (origin
856 (method git-fetch)
857 (uri (git-reference
858 (url "https://github.com/golang/protobuf.git")
859 (commit commit)))
860 (file-name (git-file-name name version))
861 (sha256
862 (base32
863 "19bkh81wnp6njg3931wky6hsnnl2d1ig20vfjxpv450sd3k6yys8"))))
864 (build-system go-build-system)
865 (arguments
866 '(#:import-path "github.com/golang/protobuf/proto"
867 #:unpack-path "github.com/golang/protobuf"
868 #:tests? #f ; requires unpackaged golang.org/x/sync/errgroup
869 ))
870 (synopsis "Go support for Protocol Buffers")
871 (description "This package provides Go support for the Protocol Buffers
872data serialization format.")
873 (home-page "https://github.com/golang/protobuf")
874 (license bsd-3))))
4b6b1a38
LF
875
876(define-public go-github-com-prometheus-client-model-go
877 (let ((commit "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c")
878 (revision "0"))
879 (package
880 (name "go-github-com-prometheus-client-model-go")
881 (version (git-version "0.0.2" revision commit))
882 (source (origin
883 (method git-fetch)
884 (uri (git-reference
885 (url "https://github.com/prometheus/client_model.git")
886 (commit commit)))
887 (file-name (git-file-name name version))
888 (sha256
889 (base32
890 "19y4ywsivhpxj7ikf2j0gm9k3cmyw37qcbfi78n526jxcc7kw998"))))
891 (build-system go-build-system)
892 (arguments
893 '(#:import-path "github.com/prometheus/client_model/go"
894 #:unpack-path "github.com/prometheus/client_model"))
895 (propagated-inputs
896 `(("go-github-com-golang-protobuf-proto"
897 ,go-github-com-golang-protobuf-proto)))
898 (synopsis "Data model artifacts for Prometheus")
899 (description "This package provides data model artifacts for Prometheus.")
900 (home-page "https://github.com/prometheus/client_model")
901 (license asl2.0))))
1da227b0
LF
902
903(define-public go-github-com-matttproud-golang-protobuf-extensions-pbutil
904 (let ((commit "c12348ce28de40eed0136aa2b644d0ee0650e56c")
905 (revision "0"))
906 (package
907 (name "go-github-com-matttproud-golang-protobuf-extensions-pbutil")
908 (version (git-version "1.0.0" revision commit))
909 (source
910 (origin
911 (method git-fetch)
912 (uri
913 (git-reference
914 (url "https://github.com/matttproud/golang_protobuf_extensions.git")
915 (commit commit)))
916 (file-name (git-file-name name version))
917 (sha256
918 (base32
919 "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya"))))
920 (build-system go-build-system)
921 (arguments
922 '(#:import-path "github.com/matttproud/golang_protobuf_extensions/pbutil"
923 #:unpack-path "github.com/matttproud/golang_protobuf_extensions"))
924 (propagated-inputs
925 `(("go-github-com-golang-protobuf-proto"
926 ,go-github-com-golang-protobuf-proto)))
927 (synopsis "Streaming Protocol Buffers in Go")
928 (description "This package provides various Protocol Buffer
929extensions for the Go language, namely support for record length-delimited
930message streaming.")
931 (home-page "https://github.com/matttproud/golang_protobuf_extensions")
932 (license asl2.0))))
270590bd
LF
933
934(define-public go-github-com-prometheus-common-expfmt
935 (let ((commit "2e54d0b93cba2fd133edc32211dcc32c06ef72ca")
936 (revision "0"))
937 (package
938 (name "go-github-com-prometheus-common-expfmt")
939 (version (git-version "0.0.0" revision commit))
940 (source (origin
941 (method git-fetch)
942 (uri (git-reference
943 (url "https://github.com/prometheus/common.git")
944 (commit commit)))
945 (file-name (git-file-name name version))
946 (sha256
947 (base32
948 "14kn5w7imcxxlfdqxl21fsnlf1ms7200g3ldy29hwamldv8qlm7j"))))
949 (build-system go-build-system)
950 (arguments
951 '(#:import-path "github.com/prometheus/common/expfmt"
952 #:unpack-path "github.com/prometheus/common"
953 #:phases
954 (modify-phases %standard-phases
955 (add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
956 (lambda* (#:key outputs #:allow-other-keys)
957 (map (lambda (file)
958 (make-file-writable file))
959 (find-files
960 (string-append (assoc-ref outputs "out")
961 "/src/github.com/prometheus/common/expfmt/testdata/")
962 ".*\\.gz$"))
46a37b59
PN
963 #t))
964 (replace 'check
965 ;; Tests don't pass "vet" on go-1.11. See
966 ;; https://github.com/syncthing/syncthing/issues/5311.
967 (lambda* (#:key import-path #:allow-other-keys)
968 (invoke "go" "test"
969 "-vet=off"
970 import-path))))))
270590bd
LF
971 (propagated-inputs
972 `(("go-github-com-golang-protobuf-proto"
973 ,go-github-com-golang-protobuf-proto)
974 ("go-github-com-matttproud-golang-protobuf-extensions-pbutil"
975 ,go-github-com-matttproud-golang-protobuf-extensions-pbutil)
976 ("go-github-com-prometheus-client-model-go"
977 ,go-github-com-prometheus-client-model-go)))
978 (synopsis "Prometheus metrics")
979 (description "This package provides tools for reading and writing
980Prometheus metrics.")
981 (home-page "https://github.com/prometheus/common")
982 (license asl2.0))))
13dca4a5
LF
983
984(define-public go-github-com-prometheus-procfs
985 (let ((commit "b15cd069a83443be3154b719d0cc9fe8117f09fb")
986 (revision "0"))
987 (package
988 (name "go-github-com-prometheus-procfs")
989 (version (git-version "0.0.0" revision commit))
990 (source (origin
991 (method git-fetch)
992 (uri (git-reference
993 (url "https://github.com/prometheus/procfs.git")
994 (commit commit)))
995 (file-name (git-file-name name version))
996 (sha256
997 (base32
998 "1cr45wg2m40bj2za8f32mq09rjlcnk5kfam0h0hr8wcb015k4wxj"))))
999 (build-system go-build-system)
1000 (arguments
1001 '(#:import-path "github.com/prometheus/procfs"))
1002 (synopsis "Go library for reading @file{/proc}")
3bd840e4
TGR
1003 (description "The @code{procfs} Go package provides functions to retrieve
1004system, kernel, and process metrics from the @file{/proc} pseudo file system.")
13dca4a5
LF
1005 (home-page "https://github.com/prometheus/procfs")
1006 (license asl2.0))))
bfbe868d
LF
1007
1008(define-public go-github-com-client-golang-prometheus-promhttp
1009 (let ((commit "180b8fdc22b4ea7750bcb43c925277654a1ea2f3")
1010 (revision "0"))
1011 (package
1012 (name "go-github-com-client-golang-prometheus-promhttp")
1013 (version (git-version "0.0.0" revision commit))
1014 (source (origin
1015 (method git-fetch)
1016 (uri (git-reference
1017 (url "https://github.com/prometheus/client_golang.git")
1018 (commit commit)))
1019 (file-name (git-file-name name version))
1020 (sha256
1021 (base32
1022 "1kkfx1j9ka18ydsmdi2cdy3hs39c22b39mbc4laykmj2x93lmbdp"))))
1023 (build-system go-build-system)
1024 (arguments
1025 '(#:tests? #f ; The tests require internet access
1026 #:import-path "github.com/prometheus/client_golang/prometheus/promhttp"
1027 #:unpack-path "github.com/prometheus/client_golang"))
1028 (propagated-inputs
1029 `(("go-github-com-beorn7-perks-quantile"
1030 ,go-github-com-beorn7-perks-quantile)
1031 ("go-github-com-golang-protobuf-proto"
1032 ,go-github-com-golang-protobuf-proto)
1033 ("go-github-com-prometheus-client-model-go"
1034 ,go-github-com-prometheus-client-model-go)
1035 ("go-github-com-prometheus-common-expfmt"
1036 ,go-github-com-prometheus-common-expfmt)
1037 ("go-github-com-prometheus-procfs" ,go-github-com-prometheus-procfs)))
1038 (synopsis "HTTP server and client tools for Prometheus")
1039 (description "This package @code{promhttp} provides HTTP client and
1040server tools for Prometheus metrics.")
1041 (home-page "https://github.com/prometheus/client_golang")
1042 (license asl2.0))))
fa22168b
LF
1043
1044(define-public go-github-com-client-golang-prometheus
f224ea36 1045 (let ((commit "7e9098b20fb8e103a7a5691878272d7e3d703663")
fa22168b
LF
1046 (revision "0"))
1047 (package
1048 (name "go-github-com-prometheus-client-golang-prometheus")
f224ea36 1049 (version (git-version "0.9.1" revision commit))
fa22168b
LF
1050 (source (origin
1051 (method git-fetch)
1052 (uri (git-reference
1053 (url "https://github.com/prometheus/client_golang.git")
1054 (commit commit)))
1055 (file-name (git-file-name name version))
1056 (sha256
1057 (base32
f224ea36 1058 "09q8hlvgyn58hn8fmmj535hrwhqc1215czwzf7fhaqpa9zamj4w1"))))
fa22168b
LF
1059 (build-system go-build-system)
1060 (arguments
1061 '(#:import-path "github.com/prometheus/client_golang/prometheus"
f224ea36
LF
1062 #:unpack-path "github.com/prometheus/client_golang"
1063 #:tests? #f)) ; 'TestHandler' test fails in this non-critical dependency
fa22168b
LF
1064 (propagated-inputs
1065 `(("go-github-com-beorn7-perks-quantile"
1066 ,go-github-com-beorn7-perks-quantile)
1067 ("go-github-com-golang-protobuf-proto"
1068 ,go-github-com-golang-protobuf-proto)
1069 ("go-github-com-prometheus-client-model-go"
1070 ,go-github-com-prometheus-client-model-go)
1071 ("go-github-com-prometheus-common-expfmt"
1072 ,go-github-com-prometheus-common-expfmt)
1073 ("go-github-com-prometheus-procfs" ,go-github-com-prometheus-procfs)
1074 ("go-github-com-client-golang-prometheus-promhttp"
1075 ,go-github-com-client-golang-prometheus-promhttp)))
1076 (synopsis "Prometheus instrumentation library for Go applications")
1077 (description "This package provides the Go client library for the
1078Prometheus monitoring and alerting system. It has two separate parts, one for
1079instrumenting application code, and one for creating clients that talk to the
1080Prometheus HTTP API.")
1081 (home-page "https://github.com/prometheus/client_golang")
1082 (license asl2.0))))
f07ccbc2
LF
1083
1084(define* (go-github-com-prometheus-union
1085 #:optional (packages (list go-github-com-client-golang-prometheus
1086 go-github-com-client-golang-prometheus-promhttp)))
1087 (package
1088 (name "go-github-com-prometheus-union")
1089 (version (package-version go-github-com-client-golang-prometheus))
1090 (source #f)
1091 (build-system trivial-build-system)
1092 (arguments
1093 '(#:modules ((guix build union))
1094 #:builder (begin
1095 (use-modules (ice-9 match)
1096 (guix build union))
1097 (match %build-inputs
1098 (((names . directories) ...)
1099 (union-build (assoc-ref %outputs "out")
e3cfef22
MW
1100 directories)
1101 #t)))))
f07ccbc2
LF
1102 (inputs (map (lambda (package)
1103 (list (package-name package) package))
1104 packages))
1105 (synopsis "Union of Go Prometheus libraries")
1106 (description "This is a union of Go Prometheus libraries")
1107 (home-page (package-home-page go-github-com-client-golang-prometheus))
1108 (license (package-license go-github-com-client-golang-prometheus))))
712d01bb
LF
1109
1110(define-public go-gopkg.in-asn1-ber.v1
1111 (package
1112 (name "go-gopkg.in-asn1-ber.v1")
1113 (version "1.2")
1114 (source (origin
1115 (method git-fetch)
1116 (uri (git-reference
1117 (url "https://gopkg.in/asn1-ber.v1")
1118 (commit (string-append "v" version))))
1119 (file-name (git-file-name name version))
1120 (sha256
1121 (base32
1122 "1y8bvzbxpw0lfnn7pbcdwzqj4l90qj6xf88dvv9pxd9yl5g6cskx"))))
1123 (build-system go-build-system)
1124 (arguments
66fa8f0f
PN
1125 '(#:import-path "gopkg.in/asn1-ber.v1"
1126 ;; Tests don't pass "vet" on go-1.11. See
1127 ;; https://github.com/go-asn1-ber/asn1-ber/issues/20.
1128 #:phases
1129 (modify-phases %standard-phases
1130 (replace 'check
1131 (lambda* (#:key import-path #:allow-other-keys)
1132 (invoke "go" "test"
1133 "-vet=off"
1134 import-path))))))
712d01bb
LF
1135 (synopsis "ASN.1 BER encoding and decoding in Go")
1136 (description "This package provides ASN.1 BER encoding and decoding in the
1137Go language.")
1138 (home-page "https://gopkg.in/asn1-ber.v1")
1139 (license expat)))
4cb2112d
LF
1140
1141(define-public go-gopkg.in-ldap.v2
1142 (package
1143 (name "go-gopkg.in-ldap.v2")
1144 (version "2.5.1")
1145 (source (origin
1146 (method git-fetch)
1147 (uri (git-reference
1148 (url "https://gopkg.in/ldap.v2")
1149 (commit (string-append "v" version))))
1150 (file-name (git-file-name name version))
1151 (sha256
1152 (base32
1153 "1wf81wy04nhkqs0dg5zkivr4sh37r83bxrfwjz9vr4jq6vmljr3h"))))
1154 (build-system go-build-system)
1155 (arguments
1156 '(#:import-path "gopkg.in/ldap.v2"
1157 #:tests? #f)) ; the test suite requires network access
1158 (propagated-inputs
1159 `(("go-gopkg.in-asn1-ber.v1" ,go-gopkg.in-asn1-ber.v1)))
1160 (synopsis "LDAP v3 functionality for Go")
1161 (description "This package provides basic LDAP v3 functionality in the Go
1162language.")
1163 (home-page "https://gopkg.in/ldap.v2")
1164 (license expat)))