gnu: Remove go-github-com-audriusbutkevicius-pfilter.
[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 147
4e9e74be
LF
148(define-public go-github-com-audriusbutkevicius-recli
149 (package
150 (name "go-github-com-audriusbutkevicius-recli")
151 (version "0.0.5")
152 (source (origin
153 (method git-fetch)
154 (uri (git-reference
155 (url "https://github.com/AudriusButkevicius/recli")
156 (commit (string-append "v" version))))
157 (file-name (git-file-name name version))
158 (sha256
159 (base32
160 "1m1xna1kb78pkmr1lfmvvnpk9j7c4x71j3a7c6vj7zpzc4srpsmf"))))
161 (build-system go-build-system)
162 (inputs
163 `(("go-github-com-pkg-errors" ,go-github-com-pkg-errors)
164 ("go-github-com-urfave-cli" ,go-github-com-urfave-cli)))
165 (arguments
166 `(#:import-path "github.com/AudriusButkevicius/recli"))
167 (synopsis "Reflection-based CLI generator")
168 (description "For a given struct, @code{recli} builds a set of
169@code{urfave/cli} commands which allows you to modify it from the command line.
170It is useful for generating command line clients for your application
171configuration that is stored in a Go struct.")
172 (home-page "https://github.com/AudriusButkevicius/recli")
173 (license mpl2.0)))
174
67b46818
LF
175(define-public go-github-com-bkaradzic-go-lz4
176 (let ((commit "7224d8d8f27ef618c0a95f1ae69dbb0488abc33a")
177 (revision "0"))
178 (package
179 (name "go-github-com-bkaradzic-go-lz4")
180 (version (git-version "0.0.0" revision commit))
181 (source (origin
182 (method git-fetch)
183 (uri (git-reference
184 (url "https://github.com/bkaradzic/go-lz4")
185 (commit commit)))
186 (file-name (git-file-name name version))
187 (sha256
188 (base32
189 "10lmya17vdqg2pvqni0p73iahni48s1v11ya9a0hcz4jh5vw4dkb"))))
190 (build-system go-build-system)
191 (arguments
192 `(#:import-path "github.com/bkaradzic/go-lz4"))
193 (synopsis "LZ4 compression algorithm")
194 (description "This package provides @code{go-lz4}, a Go implementation of
195the LZ4 compression algorithm.")
196 (home-page "https://github.com/bkaradzic/go-lz4")
197 (license bsd-2))))
add56f34
LF
198
199(define-public go-github-com-calmh-du
200 (package
201 (name "go-github-com-calmh-du")
202 (version "1.0.1")
203 (source (origin
204 (method git-fetch)
205 (uri (git-reference
206 (url "https://github.com/calmh/du")
207 (commit (string-append "v" version))))
208 (file-name (git-file-name name version))
209 (sha256
210 (base32
211 "0qb3a6y3p9nkyn3s66k6zcm16y8n8578qh23ddj14cxf2scrr2n2"))))
212 (build-system go-build-system)
213 (arguments
214 `(#:import-path "github.com/calmh/du"))
215 (synopsis "Get total and available disk space of a given volume")
216 (description "This is a Go implementation of `du`. It provides disk usage
217information, such as how much storage space is available, free, and used.")
218 (home-page "https://github.com/calmh/du")
219 (license public-domain)))
1e28085e
LF
220
221(define-public go-github-com-calmh-xdr
fef131b4
LF
222 (package
223 (name "go-github-com-calmh-xdr")
224 (version "1.1.0")
225 (source (origin
226 (method git-fetch)
227 (uri (git-reference
228 (url "https://github.com/calmh/xdr")
229 (commit (string-append "v" version))))
230 (file-name (git-file-name name version))
231 (sha256
232 (base32
233 "072wqdncz3nd4a3zkhvzzx1y3in1lm29wfvl0d8wrnqs5pyqh0mh"))))
234 (build-system go-build-system)
235 (arguments
236 `(#:import-path "github.com/calmh/xdr"))
237 (synopsis "XDR marshalling and unmarshalling")
238 (description "XDR is an External Data Representation (XDR)
1e28085e
LF
239marshalling and unmarshalling library in Go. It uses code generation and not
240reflection.")
fef131b4
LF
241 (home-page "https://github.com/calmh/xdr")
242 (license expat)))
ab3e1589
LF
243
244(define-public go-github-com-d4l3k-messagediff
edda279f
LF
245 (package
246 (name "go-github-com-d4l3k-messagediff")
247 (version "1.2.1")
248 (source (origin
249 (method git-fetch)
250 (uri (git-reference
251 (url "https://github.com/d4l3k/messagediff")
252 (commit (string-append "v" version))))
253 (file-name (git-file-name name version))
254 (sha256
255 (base32
256 "104hl8x57ciaz7mzafg1vp9qggxcyfm8hsv9bmlihbz9ml3nyr8v"))))
257 (build-system go-build-system)
258 (arguments
259 `(#:import-path "github.com/d4l3k/messagediff"))
260 (synopsis "Diff arbitrary Go structs")
261 (description "Messagediff is a library for calculating diffs of arbitrary
ab3e1589 262structs in the Go programming language.")
edda279f
LF
263 (home-page "https://github.com/d4l3k/messagediff")
264 (license expat)))
a3a5b012 265
4d93ebb3
LF
266(define-public go-github-com-gobwas-glob
267 (let ((commit "51eb1ee00b6d931c66d229ceeb7c31b985563420")
268 (revision "0"))
269 (package
270 (name "go-github-com-gobwas-glob")
271 (version (git-version "0.0.0" revision commit))
272 (source (origin
273 (method git-fetch)
274 (uri (git-reference
275 (url "https://github.com/gobwas/glob")
276 (commit commit)))
277 (file-name (git-file-name name version))
278 (sha256
279 (base32
280 "090wzpwsjana1qas8ipwh1pj959gvc4b7vwybzi01f3bmd79jwlp"))))
281 (build-system go-build-system)
282 (arguments
283 `(#:import-path "github.com/gobwas/glob"))
284 (synopsis "Go globbing library")
285 (description "This packages provides a Go implementation of globs.")
286 (home-page "https://github.com/gobwas/glob")
287 (license expat))))
07e88fc6 288
ede4f50c
LF
289
290(define-public go-github-com-golang-groupcache-lru
e83994f2
LF
291 (let ((commit "84a468cf14b4376def5d68c722b139b881c450a4")
292 (revision "1"))
ede4f50c
LF
293 (package
294 (name "go-github-com-golang-groupcache-lru")
295 (version (git-version "0.0.0" revision commit))
296 (source (origin
297 (method git-fetch)
298 (uri (git-reference
299 (url "https://github.com/golang/groupcache")
300 (commit commit)))
301 (file-name (git-file-name name version))
302 (sha256
303 (base32
e83994f2 304 "1ky1r9qh54yi9zp2769qrjngzndgd8fn7mja2qfac285n06chmcn"))))
ede4f50c
LF
305 (build-system go-build-system)
306 (arguments
307 `(#:import-path "github.com/golang/groupcache/lru"
308 #:unpack-path "github.com/golang/groupcache"))
309 (synopsis "Groupcache is a caching and cache-filling library")
310 (description "Groupcache is a caching and cache-filling library, intended
311as a replacement for memcached in many cases. It provides a data loading
312mechanism with caching and de-duplication that works across a set of peer
313processes.")
314 (home-page "https://github.com/golang/groupcache")
315 (license asl2.0))))
b32eab0b
LF
316
317(define-public go-github-com-golang-snappy
318 (let ((commit "553a641470496b2327abcac10b36396bd98e45c9")
319 (revision "0"))
320 (package
321 (name "go-github-com-golang-snappy")
322 (version (git-version "0.0.0" revision commit))
323 (source (origin
324 (method git-fetch)
325 (uri (git-reference
326 (url "https://github.com/golang/snappy")
327 (commit commit)))
328 (file-name (git-file-name name version))
329 (sha256
330 (base32
331 "0kssxnih1l722hx9219c7javganjqkqhvl3i0hp0hif6xm6chvqk"))))
332 (build-system go-build-system)
333 (arguments
334 `(#:import-path "github.com/golang/snappy"))
335 (synopsis "Snappy compression format in the Go programming language")
336 (description "This package provides a Go implementation of the Snappy
337compression format.")
338 (home-page "https://github.com/golang/snappy")
339 (license bsd-3))))
7b92093d
LF
340
341(define-public go-github-com-jackpal-gateway
342 (let ((commit "5795ac81146e01d3fab7bcf21c043c3d6a32b006")
343 (revision "0"))
344 (package
345 (name "go-github-com-jackpal-gateway")
346 (version (git-version "0.0.0" revision commit))
347 (source (origin
348 (method git-fetch)
349 (uri (git-reference
350 (url "https://github.com/jackpal/gateway")
351 (commit commit)))
352 (file-name (git-file-name name version))
353 (sha256
354 (base32
355 "0fkwkwmhfadwk3cha8616bhqxfkr9gjjnynhhxyldlphixgs3f25"))))
356 (build-system go-build-system)
357 (arguments
358 `(#:import-path "github.com/jackpal/gateway"))
359 (synopsis "Discover the address of a LAN gateway")
360 (description "@code{gateway} is a Go library for discovering the IP
361address of the default LAN gateway.")
362 (home-page "https://github.com/jackpal/gateway")
363 (license bsd-3))))
7577a1d5 364
340e1a9a 365(define-public go-github-com-lib-pq
d73cbbda
LF
366 (package
367 (name "go-github-com-lib-pq")
368 (version "1.0.0")
369 (source (origin
370 (method git-fetch)
371 (uri (git-reference
372 (url "https://github.com/lib/pq")
373 (commit (string-append "v" version))))
374 (file-name (git-file-name name version))
375 (sha256
376 (base32
377 "1zqnnyczaf00xi6xh53vq758v5bdlf0iz7kf22l02cal4i6px47i"))))
378 (build-system go-build-system)
379 (arguments
380 `(#:import-path "github.com/lib/pq"
381 ;; The tests seem to fail without access to the network or a running
382 ;; Postgres instance.
383 #:tests? #f))
384 (synopsis "Golang Postgres driver for Go's database/sql")
385 (description "This packages provides a pure Go Postgres driver for Go's
340e1a9a 386database/sql package.")
d73cbbda
LF
387 (home-page "https://github.com/lib/pq")
388 (license expat)))
4a9c4dbe 389
0921b230 390(define-public go-github-com-oschwald-geoip2-golang
d277b9bc
LF
391 (package
392 (name "go-github-com-oschwald-geoip2-golang")
393 (version "1.1.0")
394 (source (origin
395 (method git-fetch)
396 (uri (git-reference
397 (url "https://github.com/oschwald/geoip2-golang")
398 (commit (string-append "v" version))))
399 (file-name (git-file-name name version))
400 (sha256
401 (base32
402 "0v698bzs8lb59cqpsa9cf4sl8rdsvnnmaravhbfn6g6i511ppclr"))))
403 (build-system go-build-system)
404 (propagated-inputs
405 `(("go-github-com-oschwald-maxminddb-golang"
406 ,go-github-com-oschwald-maxminddb-golang)
407 ("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
408 (arguments
409 `(#:import-path "github.com/oschwald/geoip2-golang"
410 #:tests? #f)) ; Requires some unpackaged software and test data
411 (synopsis "MaxMind GeoIP2 reader")
412 (description "This packages provides a library for reading MaxMind
0921b230 413GeoLite2 and GeoIP2 databases in Go.")
d277b9bc
LF
414 (home-page "https://github.com/oschwald/geoip2-golang")
415 (license isc)))
0921b230 416
a57778f5 417(define-public go-github-com-oschwald-maxminddb-golang
ac909141 418 (let ((commit "26fe5ace1c706491c2936119e1dc69c1a9c04d7f")
a57778f5
LF
419 (revision "0"))
420 (package
421 (name "go-github-com-oschwald-maxminddb-golang")
ac909141 422 (version (git-version "1.2.0" revision commit))
a57778f5
LF
423 (source (origin
424 (method git-fetch)
425 (uri (git-reference
426 (url "https://github.com/oschwald/maxminddb-golang")
427 (commit commit)))
428 (file-name (git-file-name name version))
429 (sha256
430 (base32
ac909141 431 "1i6d935f3cv9djpjvc2ibh8aps8jqvg454b9pkwg2h98al759ggk"))))
a57778f5
LF
432 (build-system go-build-system)
433 (propagated-inputs
434 `(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
435 (arguments
436 `(#:import-path "github.com/oschwald/maxminddb-golang"
437 #:tests? #f)) ; Requires some unpackaged software and test data
438 (synopsis "MaxMind DB Reader for Go")
439 (description "This is a Go reader for the MaxMind DB format. Although
440this can be used to read GeoLite2 and GeoIP2 databases, @code{geoip2} provides a
441higher-level API for doing so.")
442 (home-page "https://github.com/oschwald/maxminddb-golang")
443 (license isc))))
444
6bc1eb11
LF
445(define-public go-github-com-stathat-go
446 (let ((commit "74669b9f388d9d788c97399a0824adbfee78400e")
447 (revision "0"))
448 (package
449 (name "go-github-com-stathat-go")
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/stathat/go")
455 (commit commit)))
456 (file-name (git-file-name name version))
457 (sha256
458 (base32
459 "1zzlsl24dyr202qkr2pay22m6d0gb7ssms77wgdx0r0clgm7dihw"))))
460 (build-system go-build-system)
461 (arguments
462 `(#:import-path "github.com/stathat/go"))
463 (synopsis "Post statistics to StatHat")
464 (description "This is a Go package for posting to a StatHat account.")
465 (home-page "https://github.com/stathat/go")
466 (license expat))))
467
1a4795f9 468(define-public go-github-com-rcrowley-go-metrics
d2c7971d
LF
469 (let ((commit "e181e095bae94582363434144c61a9653aff6e50")
470 (revision "1"))
1a4795f9
LF
471 (package
472 (name "go-github-com-rcrowley-go-metrics")
473 (version (git-version "0.0.0" revision commit))
474 (source (origin
475 (method git-fetch)
476 (uri (git-reference
477 (url "https://github.com/rcrowley/go-metrics")
478 (commit commit)))
479 (file-name (git-file-name name version))
480 (sha256
481 (base32
d2c7971d 482 "1pwkyw801hy7n94skzk6h177zqcil6ayrmb5gs3jdpsfayh8ia5w"))))
1a4795f9
LF
483 (build-system go-build-system)
484 (arguments
485 `(#:import-path "github.com/rcrowley/go-metrics"))
486 (propagated-inputs
487 `(("go-github-com-stathat-go" ,go-github-com-stathat-go)))
488 (synopsis "Go port of Coda Hale's Metrics library")
489 (description "This package provides a Go implementation of Coda Hale's
490Metrics library.")
491 (home-page "https://github.com/rcrowley/go-metrics")
492 (license bsd-2))))
493
8d7e9924 494(define-public go-github-com-sasha-s-go-deadlock
767579d1
LF
495 (package
496 (name "go-github-com-sasha-s-go-deadlock")
497 (version "0.2.0")
498 (source (origin
499 (method git-fetch)
500 (uri (git-reference
501 (url "https://github.com/sasha-s/go-deadlock")
502 (commit (string-append "v" version))))
503 (file-name (git-file-name name version))
504 (sha256
505 (base32
506 "13p7b7pakd9k1c2k0fs1hfim3c8mivz679977ai6zb01s4aw7gyg"))))
507 (build-system go-build-system)
508 (arguments
509 `(#:import-path "github.com/sasha-s/go-deadlock"))
510 (propagated-inputs
511 `(("go-github-com-petermattis-goid" ,go-github-com-petermattis-goid)))
512 (synopsis "Deadlock detection in go")
513 (description "This package provides tools for detecting deadlocks at
8d7e9924 514run-time in Go.")
767579d1
LF
515 (home-page "https://github.com/sasha-s/go-deadlock")
516 (license asl2.0)))
8d7e9924 517
c864a4a7 518(define-public go-github-com-syndtr-goleveldb
619db5cf
LF
519 (let ((commit "34011bf325bce385408353a30b101fe5e923eb6e")
520 (revision "2"))
c864a4a7
LF
521 (package
522 (name "go-github-com-syndtr-goleveldb")
523 (version (git-version "0.0.0" revision commit))
524 (source (origin
525 (method git-fetch)
526 (uri (git-reference
527 (url "https://github.com/syndtr/goleveldb")
528 (commit commit)))
529 (file-name (git-file-name name version))
530 (sha256
531 (base32
619db5cf 532 "097ja0vyj6p27zrxha9nhk09fj977xsvhmd3bk2hbyvnbw4znnhd"))))
c864a4a7
LF
533 (build-system go-build-system)
534 (propagated-inputs
535 `(("go-github-com-golang-snappy" ,go-github-com-golang-snappy)))
536 (arguments
537 `(#:import-path "github.com/syndtr/goleveldb/leveldb"
538 #:unpack-path "github.com/syndtr/goleveldb"
539 #:tests? #f)) ; XXX needs 'github.com/onsi/gomega' package
540 (synopsis "LevelDB key/value database")
541 (description "This is an implementation of the LevelDB key / value
542database in Go.")
543 (home-page "https://github.com/syndtr/goleveldb")
544 (license bsd-2))))
545
f7612f0f 546(define-public go-github-com-thejerf-suture
ac51900d
LF
547 (package
548 (name "go-github-com-thejerf-suture")
549 (version "3.0.2")
550 (source (origin
551 (method git-fetch)
552 (uri (git-reference
553 (url "https://github.com/thejerf/suture")
554 (commit (string-append "v" version))))
555 (file-name (git-file-name name version))
556 (sha256
557 (base32
558 "03bdrl78jfwk0kw40lj63ga9cxhgccgss8yi9lp5j0m0ml7921gh"))))
559 (build-system go-build-system)
560 (arguments
561 `(#:import-path "github.com/thejerf/suture"))
562 (synopsis "Supervisor trees for Go")
563 (description "Suture provides Erlang-ish supervisor trees for Go.
f7612f0f
LF
564\"Supervisor trees\" -> \"sutree\" -> \"suture\" -> holds your code together
565when it's trying to die.
566
567It is intended to deal gracefully with the real failure cases that can occur
568with supervision trees (such as burning all your CPU time endlessly restarting
569dead services), while also making no unnecessary demands on the \"service\"
570code, and providing hooks to perform adequate logging with in a production
571environment")
ac51900d
LF
572 (home-page "https://github.com/thejerf/suture")
573 (license expat)))
f7612f0f 574
292a6b0d
LF
575(define-public go-github-com-vitrun-qart-coding
576 (let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
577 (revision "0"))
578 (package
579 (name "go-github-com-vitrun-qart-coding")
580 (version (git-version "0.0.0" revision commit))
581 (source (origin
582 (method git-fetch)
583 (uri (git-reference
584 (url "https://github.com/vitrun/qart")
585 (commit commit)))
586 (file-name (string-append "go-github-com-vitrun-qart-"
587 version "-checkout"))
588 (sha256
589 (base32
590 "1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
591 (build-system go-build-system)
592 (arguments
593 `(#:import-path "github.com/vitrun/qart/coding"
594 #:unpack-path "github.com/vitrun/qart"))
595 (synopsis "Low-level QR coding library")
596 (description "This package provides a library for embedding
597human-meaningful graphics in QR codes. However, instead of scribbling on
598redundant pieces and relying on error correction to preserve the meaning,
599@code{qart} engineers the encoded values to create the picture in a code with no
600inherent errors. This @code{qart} component, @code{coding}, implements
601low-level QR coding details.")
602 (home-page "https://github.com/vitrun/qart/")
603 (license bsd-3))))
604
6934827a
LF
605(define-public go-github-com-vitrun-qart-gf256
606 (let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
607 (revision "0"))
608 (package
609 (name "go-github-com-vitrun-qart-gf256")
610 (version (git-version "0.0.0" revision commit))
611 (source (origin
612 (method git-fetch)
613 (uri (git-reference
614 (url "https://github.com/vitrun/qart")
615 (commit commit)))
616 (file-name (string-append "go-github-com-vitrun-qart-"
617 version "-checkout"))
618 (sha256
619 (base32
620 "1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
621 (build-system go-build-system)
622 (arguments
623 `(#:import-path "github.com/vitrun/qart/gf256"
624 #:unpack-path "github.com/vitrun/qart"))
625 (synopsis "Qart library for Galois Field GF(256) math")
626 (description "This package, a component of @code{qart}, provides @code{gf256},
627implements arithmetic over the Galois Field GF(256).")
628 (home-page "https://github.com/vitrun/qart")
892ced6d
LF
629 (license bsd-3))))
630
631(define-public go-github-com-vitrun-qart-qr
632 (let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
633 (revision "0"))
634 (package
635 (name "go-github-com-vitrun-qart-qr")
636 (version (git-version "0.0.0" revision commit))
637 (source (origin
638 (method git-fetch)
639 (uri (git-reference
640 (url "https://github.com/vitrun/qart")
641 (commit commit)))
642 (file-name (string-append "go-github-com-vitrun-qart-"
643 version "-checkout"))
644 (sha256
645 (base32
646 "1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
647 (build-system go-build-system)
648 (arguments
649 `(#:import-path "github.com/vitrun/qart/qr"
650 #:unpack-path "github.com/vitrun/qart"))
651 (synopsis "Qart component for generating QR codes")
892ced6d
LF
652 (description "This package provides a library for embedding
653human-meaningful graphics in QR codes. However, instead of scribbling on
654redundant pieces and relying on error correction to preserve the meaning,
655@code{qart} engineers the encoded values to create the picture in a code with no
656inherent errors. This @code{qart} component, @code{qr}, provides QR code
657generation.")
658 (home-page "https://github.com/vitrun/qart")
6934827a
LF
659 (license bsd-3))))
660
2785690a 661(define-public go-github-com-chmduquesne-rollinghash-adler32
2fcd1c84
LF
662 (let ((commit "a60f8e7142b536ea61bb5d84014171189eeaaa81")
663 (revision "0"))
2785690a
LF
664 (package
665 (name "go-github-com-chmduquesne-rollinghash-adler32")
2fcd1c84 666 (version (git-version "4.0.0" revision commit))
2785690a
LF
667 (source
668 (origin
669 (method git-fetch)
670 (uri (git-reference
671 (url "https://github.com/chmduquesne/rollinghash.git")
672 (commit commit)))
673 (file-name (git-file-name name version))
674 (sha256
675 (base32
2fcd1c84 676 "0fpaqq4zb0wikgbhn7vwqqj1h865f5xy195vkhivsp922p7qwsjr"))))
2785690a
LF
677 (build-system go-build-system)
678 (arguments
679 '(#:import-path "github.com/chmduquesne/rollinghash/adler32"
680 #:unpack-path "github.com/chmduquesne/rollinghash"))
681 (synopsis "Adler-32 rolling hash in Go")
682 (description "This package provides a Go implementation of the Adler-32
683rolling hash.")
684 (home-page "https://github.com/chmduquesne/rollinghash")
685 (license expat))))
3d86b557 686
936e02b4 687(define-public go-github-com-pkg-errors
c36177c6
LF
688 (package
689 (name "go-github-com-pkg-errors")
690 (version "0.8.1")
691 (source (origin
692 (method git-fetch)
693 (uri (git-reference
694 (url "https://github.com/pkg/errors.git")
695 (commit (string-append "v" version))))
696 (file-name (git-file-name name version))
697 (sha256
698 (base32
699 "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1"))))
700 (build-system go-build-system)
701 (arguments
702 `(#:import-path "github.com/pkg/errors"))
703 (synopsis "Go error handling primitives")
704 (description "This packages provides @code{error}, which offers simple
936e02b4 705error handling primitives in Go.")
c36177c6
LF
706 (home-page "https://github.com/pkg/errors")
707 (license bsd-2)))
936e02b4 708
73a2f841
LF
709(define-public go-github-com-petermattis-goid
710 (let ((commit "3db12ebb2a599ba4a96bea1c17b61c2f78a40e02")
711 (revision "0"))
712 (package
713 (name "go-github-com-petermattis-goid")
714 (version (git-version "0.0.0" revision commit))
715 (source (origin
716 (method git-fetch)
717 (uri (git-reference
718 (url "https://github.com/petermattis/goid.git")
719 (commit commit)))
720 (file-name (git-file-name name version))
721 (sha256
722
723 (base32
724 "0z18a3mr72c52g7g94n08gxw0ksnaafbfwdl5p5jav2sffirb0kd"))))
725 (build-system go-build-system)
726 (arguments
727 '(#:import-path "github.com/petermattis/goid"))
728 (synopsis "Identify the running goroutine")
729 (description "This package offers a method of programatically retrieving
730the current goroutine's ID.")
731 (home-page "https://github.com/petermattis/goid")
732 (license asl2.0))))
71415e23
LF
733
734(define-public go-github-com-audriusbutkevicius-cli
735 (let ((commit "7f561c78b5a4aad858d9fd550c92b5da6d55efbb")
736 (revision "0"))
737 (package
738 (name "go-github-com-audriusbutkevicius-cli")
739 (version (git-version "0.0.0" revision commit))
740 (source (origin
741 (method git-fetch)
742 (uri (git-reference
743 (url "https://github.com/AudriusButkevicius/cli.git")
744 (commit commit)))
745 (file-name (git-file-name name version))
746 (sha256
747 (base32
748 "0bg26pfg25vr16jmczig2m493mja2nxjxyswz3hha7avxw20rpi5"))))
749 (build-system go-build-system)
750 (arguments
d4780c82
PN
751 '(#:import-path "github.com/AudriusButkevicius/cli"
752 ;; Tests don't pass "vet" on go-1.11. See
753 ;; https://github.com/AudriusButkevicius/cli/pull/1.
754 #:phases
755 (modify-phases %standard-phases
756 (replace 'check
757 (lambda* (#:key import-path #:allow-other-keys)
758 (invoke "go" "test"
759 "-vet=off"
760 import-path))))))
71415e23
LF
761 (synopsis "Library for building command-line interfaces in Go")
762 (description "This package provides a library for building command-line
763interfaces in Go.")
764 (home-page "https://github.com/AudriusButkevicius/cli")
765 (license expat))))
89d91ee2
LF
766
767(define-public go-github-com-kballard-go-shellquote
768 (let ((commit "cd60e84ee657ff3dc51de0b4f55dd299a3e136f2")
769 (revision "0"))
770 (package
771 (name "go-github-com-kballard-go-shellquote")
772 (version (git-version "0.0.0" revision commit))
773 (source (origin
774 (method git-fetch)
775 (uri (git-reference
776 (url "https://github.com/kballard/go-shellquote.git")
777 (commit commit)))
778 (file-name (git-file-name name version))
779 (sha256
780 (base32
781 "1xjpin4jq1zl84dcn96xhjmn9bsfyszf6g9aqyj2dc0xfi6c88y0"))))
782 (build-system go-build-system)
783 (arguments
784 '(#:import-path "github.com/kballard/go-shellquote"))
785 (synopsis "Shell-style string joins and splits")
786 (description "Shellquote provides utilities for joining/splitting strings
787using sh's word-splitting rules.")
788 (home-page "https://github.com/kballard/go-shellquote")
789 (license expat))))
a3d98dd8 790
2849c665 791(define-public go-github-com-syncthing-notify
061387ea
LF
792 (let ((commit "4e389ea6c0d84e6195eb585ffaf62c8c143306ae")
793 (revision "4"))
52ff28e4 794 (package
2849c665 795 (name "go-github-com-syncthing-notify")
52ff28e4
LF
796 (version (git-version "0.0.0" revision commit))
797 (source (origin
798 (method git-fetch)
799 (uri (git-reference
2849c665 800 (url "https://github.com/syncthing/notify")
52ff28e4
LF
801 (commit commit)))
802 (file-name (git-file-name name version))
803 (sha256
804 (base32
061387ea 805 "19gvl14s1l9m82f8c2xsjcr8lmbqrvw1mxkayvfcpimvxfz0j61i"))))
52ff28e4
LF
806 (build-system go-build-system)
807 (arguments
2849c665 808 '(#:import-path "github.com/syncthing/notify"))
52ff28e4
LF
809 (propagated-inputs
810 `(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
3bd840e4 811 (synopsis "File system event notification library")
162a1374 812 (description "This package provides @code{notify}, a file system event
52ff28e4 813notification library in Go.")
2849c665 814 (home-page "https://github.com/syncthing/notify")
52ff28e4 815 (license expat))))
63aade45 816
a04434f2
LF
817(define-public go-github-com-beorn7-perks-quantile
818 (let ((commit "4c0e84591b9aa9e6dcfdf3e020114cd81f89d5f9")
819 (revision "0"))
820 (package
821 (name "go-github-com-beorn7-perks-quantile")
822 (version (git-version "0.0.0" revision commit))
823 (source (origin
824 (method git-fetch)
825 (uri (git-reference
826 (url "https://github.com/beorn7/perks.git")
827 (commit commit)))
828 (file-name (git-file-name name version))
829 (sha256
830 (base32
831 "1hrybsql68xw57brzj805xx2mghydpdiysv3gbhr7f5wlxj2514y"))))
832 (build-system go-build-system)
833 (arguments
834 '(#:import-path "github.com/beorn7/perks/quantile"
835 #:unpack-path "github.com/beorn7/perks"))
836 (synopsis "Compute approximate quantiles over an unbounded data stream")
837 (description "Perks contains the Go package @code{quantile} that computes
838approximate quantiles over an unbounded data stream within low memory and CPU
839bounds.")
840 (home-page "https://github.com/beorn7/perks")
841 (license expat))))
339e44da
LF
842
843(define-public go-github-com-golang-protobuf-proto
844 (let ((commit "1e59b77b52bf8e4b449a57e6f79f21226d571845")
845 (revision "0"))
846 (package
847 (name "go-github-com-golang-protobuf-proto")
848 (version (git-version "0.0.0" revision commit))
849 (source (origin
850 (method git-fetch)
851 (uri (git-reference
852 (url "https://github.com/golang/protobuf.git")
853 (commit commit)))
854 (file-name (git-file-name name version))
855 (sha256
856 (base32
857 "19bkh81wnp6njg3931wky6hsnnl2d1ig20vfjxpv450sd3k6yys8"))))
858 (build-system go-build-system)
859 (arguments
860 '(#:import-path "github.com/golang/protobuf/proto"
861 #:unpack-path "github.com/golang/protobuf"
862 #:tests? #f ; requires unpackaged golang.org/x/sync/errgroup
863 ))
864 (synopsis "Go support for Protocol Buffers")
865 (description "This package provides Go support for the Protocol Buffers
866data serialization format.")
867 (home-page "https://github.com/golang/protobuf")
868 (license bsd-3))))
4b6b1a38
LF
869
870(define-public go-github-com-prometheus-client-model-go
871 (let ((commit "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c")
872 (revision "0"))
873 (package
874 (name "go-github-com-prometheus-client-model-go")
875 (version (git-version "0.0.2" revision commit))
876 (source (origin
877 (method git-fetch)
878 (uri (git-reference
879 (url "https://github.com/prometheus/client_model.git")
880 (commit commit)))
881 (file-name (git-file-name name version))
882 (sha256
883 (base32
884 "19y4ywsivhpxj7ikf2j0gm9k3cmyw37qcbfi78n526jxcc7kw998"))))
885 (build-system go-build-system)
886 (arguments
887 '(#:import-path "github.com/prometheus/client_model/go"
888 #:unpack-path "github.com/prometheus/client_model"))
889 (propagated-inputs
890 `(("go-github-com-golang-protobuf-proto"
891 ,go-github-com-golang-protobuf-proto)))
892 (synopsis "Data model artifacts for Prometheus")
893 (description "This package provides data model artifacts for Prometheus.")
894 (home-page "https://github.com/prometheus/client_model")
895 (license asl2.0))))
1da227b0
LF
896
897(define-public go-github-com-matttproud-golang-protobuf-extensions-pbutil
898 (let ((commit "c12348ce28de40eed0136aa2b644d0ee0650e56c")
899 (revision "0"))
900 (package
901 (name "go-github-com-matttproud-golang-protobuf-extensions-pbutil")
902 (version (git-version "1.0.0" revision commit))
903 (source
904 (origin
905 (method git-fetch)
906 (uri
907 (git-reference
908 (url "https://github.com/matttproud/golang_protobuf_extensions.git")
909 (commit commit)))
910 (file-name (git-file-name name version))
911 (sha256
912 (base32
913 "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya"))))
914 (build-system go-build-system)
915 (arguments
916 '(#:import-path "github.com/matttproud/golang_protobuf_extensions/pbutil"
917 #:unpack-path "github.com/matttproud/golang_protobuf_extensions"))
918 (propagated-inputs
919 `(("go-github-com-golang-protobuf-proto"
920 ,go-github-com-golang-protobuf-proto)))
921 (synopsis "Streaming Protocol Buffers in Go")
922 (description "This package provides various Protocol Buffer
923extensions for the Go language, namely support for record length-delimited
924message streaming.")
925 (home-page "https://github.com/matttproud/golang_protobuf_extensions")
926 (license asl2.0))))
270590bd
LF
927
928(define-public go-github-com-prometheus-common-expfmt
929 (let ((commit "2e54d0b93cba2fd133edc32211dcc32c06ef72ca")
930 (revision "0"))
931 (package
932 (name "go-github-com-prometheus-common-expfmt")
933 (version (git-version "0.0.0" revision commit))
934 (source (origin
935 (method git-fetch)
936 (uri (git-reference
937 (url "https://github.com/prometheus/common.git")
938 (commit commit)))
939 (file-name (git-file-name name version))
940 (sha256
941 (base32
942 "14kn5w7imcxxlfdqxl21fsnlf1ms7200g3ldy29hwamldv8qlm7j"))))
943 (build-system go-build-system)
944 (arguments
945 '(#:import-path "github.com/prometheus/common/expfmt"
946 #:unpack-path "github.com/prometheus/common"
947 #:phases
948 (modify-phases %standard-phases
949 (add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
950 (lambda* (#:key outputs #:allow-other-keys)
951 (map (lambda (file)
952 (make-file-writable file))
953 (find-files
954 (string-append (assoc-ref outputs "out")
955 "/src/github.com/prometheus/common/expfmt/testdata/")
956 ".*\\.gz$"))
46a37b59
PN
957 #t))
958 (replace 'check
959 ;; Tests don't pass "vet" on go-1.11. See
960 ;; https://github.com/syncthing/syncthing/issues/5311.
961 (lambda* (#:key import-path #:allow-other-keys)
962 (invoke "go" "test"
963 "-vet=off"
964 import-path))))))
270590bd
LF
965 (propagated-inputs
966 `(("go-github-com-golang-protobuf-proto"
967 ,go-github-com-golang-protobuf-proto)
968 ("go-github-com-matttproud-golang-protobuf-extensions-pbutil"
969 ,go-github-com-matttproud-golang-protobuf-extensions-pbutil)
970 ("go-github-com-prometheus-client-model-go"
971 ,go-github-com-prometheus-client-model-go)))
972 (synopsis "Prometheus metrics")
973 (description "This package provides tools for reading and writing
974Prometheus metrics.")
975 (home-page "https://github.com/prometheus/common")
976 (license asl2.0))))
13dca4a5 977
bafdb0fa
LF
978(define-public go-github-com-prometheus-common-model
979 (let ((commit "2e54d0b93cba2fd133edc32211dcc32c06ef72ca")
980 (revision "0"))
981 (package
982 (name "go-github-com-prometheus-common-model")
983 (version (git-version "0.0.0" revision commit))
984 (source (origin
985 (method git-fetch)
986 (uri (git-reference
987 (url "https://github.com/prometheus/common.git")
988 (commit commit)))
989 (file-name (git-file-name name version))
990 (sha256
991 (base32
992 "14kn5w7imcxxlfdqxl21fsnlf1ms7200g3ldy29hwamldv8qlm7j"))))
993 (build-system go-build-system)
994 (arguments
995 '(#:import-path "github.com/prometheus/common/model"
996 #:unpack-path "github.com/prometheus/common"))
997 (synopsis "Prometheus component")
998 (description "This package provides a component of the Go Prometheus
999implementation.")
1000 (home-page "https://github.com/prometheus/common")
1001 (license asl2.0))))
1002
13dca4a5
LF
1003(define-public go-github-com-prometheus-procfs
1004 (let ((commit "b15cd069a83443be3154b719d0cc9fe8117f09fb")
1005 (revision "0"))
1006 (package
1007 (name "go-github-com-prometheus-procfs")
1008 (version (git-version "0.0.0" revision commit))
1009 (source (origin
1010 (method git-fetch)
1011 (uri (git-reference
1012 (url "https://github.com/prometheus/procfs.git")
1013 (commit commit)))
1014 (file-name (git-file-name name version))
1015 (sha256
1016 (base32
1017 "1cr45wg2m40bj2za8f32mq09rjlcnk5kfam0h0hr8wcb015k4wxj"))))
1018 (build-system go-build-system)
1019 (arguments
1020 '(#:import-path "github.com/prometheus/procfs"))
1021 (synopsis "Go library for reading @file{/proc}")
3bd840e4
TGR
1022 (description "The @code{procfs} Go package provides functions to retrieve
1023system, kernel, and process metrics from the @file{/proc} pseudo file system.")
13dca4a5
LF
1024 (home-page "https://github.com/prometheus/procfs")
1025 (license asl2.0))))
bfbe868d
LF
1026
1027(define-public go-github-com-client-golang-prometheus-promhttp
bfbe868d
LF
1028 (package
1029 (name "go-github-com-client-golang-prometheus-promhttp")
94b1e5e0 1030 (version "0.9.2")
bfbe868d
LF
1031 (source (origin
1032 (method git-fetch)
1033 (uri (git-reference
1034 (url "https://github.com/prometheus/client_golang.git")
94b1e5e0 1035 (commit (string-append "v" version))))
bfbe868d
LF
1036 (file-name (git-file-name name version))
1037 (sha256
1038 (base32
94b1e5e0 1039 "02b4yg6rfag0m3j0i39sillcm5xczwv8h133vn12yr8qw04cnigs"))))
bfbe868d
LF
1040 (build-system go-build-system)
1041 (arguments
1042 '(#:tests? #f ; The tests require internet access
1043 #:import-path "github.com/prometheus/client_golang/prometheus/promhttp"
1044 #:unpack-path "github.com/prometheus/client_golang"))
1045 (propagated-inputs
1046 `(("go-github-com-beorn7-perks-quantile"
1047 ,go-github-com-beorn7-perks-quantile)
1048 ("go-github-com-golang-protobuf-proto"
1049 ,go-github-com-golang-protobuf-proto)
94b1e5e0
LF
1050 ("go-github-com-prometheus-common-model"
1051 ,go-github-com-prometheus-common-model)
bfbe868d
LF
1052 ("go-github-com-prometheus-client-model-go"
1053 ,go-github-com-prometheus-client-model-go)
94b1e5e0
LF
1054 ("go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg"
1055 ,go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg)
bfbe868d
LF
1056 ("go-github-com-prometheus-common-expfmt"
1057 ,go-github-com-prometheus-common-expfmt)
1058 ("go-github-com-prometheus-procfs" ,go-github-com-prometheus-procfs)))
1059 (synopsis "HTTP server and client tools for Prometheus")
1060 (description "This package @code{promhttp} provides HTTP client and
1061server tools for Prometheus metrics.")
1062 (home-page "https://github.com/prometheus/client_golang")
94b1e5e0 1063 (license asl2.0)))
fa22168b 1064
94b1e5e0 1065(define-public go-github-com-prometheus-client-golang-prometheus
fa22168b
LF
1066 (package
1067 (name "go-github-com-prometheus-client-golang-prometheus")
94b1e5e0 1068 (version "0.9.2")
fa22168b
LF
1069 (source (origin
1070 (method git-fetch)
1071 (uri (git-reference
1072 (url "https://github.com/prometheus/client_golang.git")
94b1e5e0 1073 (commit (string-append "v" version))))
fa22168b
LF
1074 (file-name (git-file-name name version))
1075 (sha256
1076 (base32
94b1e5e0 1077 "02b4yg6rfag0m3j0i39sillcm5xczwv8h133vn12yr8qw04cnigs"))))
fa22168b
LF
1078 (build-system go-build-system)
1079 (arguments
1080 '(#:import-path "github.com/prometheus/client_golang/prometheus"
f224ea36
LF
1081 #:unpack-path "github.com/prometheus/client_golang"
1082 #:tests? #f)) ; 'TestHandler' test fails in this non-critical dependency
fa22168b
LF
1083 (propagated-inputs
1084 `(("go-github-com-beorn7-perks-quantile"
1085 ,go-github-com-beorn7-perks-quantile)
94b1e5e0 1086 ("go-github-com-prometheus-common-model" ,go-github-com-prometheus-common-model)
fa22168b
LF
1087 ("go-github-com-prometheus-client-model-go"
1088 ,go-github-com-prometheus-client-model-go)
1089 ("go-github-com-prometheus-common-expfmt"
1090 ,go-github-com-prometheus-common-expfmt)
1091 ("go-github-com-prometheus-procfs" ,go-github-com-prometheus-procfs)
94b1e5e0
LF
1092 ("go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg"
1093 ,go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg)))
fa22168b
LF
1094 (synopsis "Prometheus instrumentation library for Go applications")
1095 (description "This package provides the Go client library for the
1096Prometheus monitoring and alerting system. It has two separate parts, one for
1097instrumenting application code, and one for creating clients that talk to the
1098Prometheus HTTP API.")
1099 (home-page "https://github.com/prometheus/client_golang")
94b1e5e0 1100 (license asl2.0)))
712d01bb
LF
1101
1102(define-public go-gopkg.in-asn1-ber.v1
1103 (package
1104 (name "go-gopkg.in-asn1-ber.v1")
1105 (version "1.2")
1106 (source (origin
1107 (method git-fetch)
1108 (uri (git-reference
1109 (url "https://gopkg.in/asn1-ber.v1")
1110 (commit (string-append "v" version))))
1111 (file-name (git-file-name name version))
1112 (sha256
1113 (base32
1114 "1y8bvzbxpw0lfnn7pbcdwzqj4l90qj6xf88dvv9pxd9yl5g6cskx"))))
1115 (build-system go-build-system)
1116 (arguments
66fa8f0f
PN
1117 '(#:import-path "gopkg.in/asn1-ber.v1"
1118 ;; Tests don't pass "vet" on go-1.11. See
1119 ;; https://github.com/go-asn1-ber/asn1-ber/issues/20.
1120 #:phases
1121 (modify-phases %standard-phases
1122 (replace 'check
1123 (lambda* (#:key import-path #:allow-other-keys)
1124 (invoke "go" "test"
1125 "-vet=off"
1126 import-path))))))
712d01bb
LF
1127 (synopsis "ASN.1 BER encoding and decoding in Go")
1128 (description "This package provides ASN.1 BER encoding and decoding in the
1129Go language.")
1130 (home-page "https://gopkg.in/asn1-ber.v1")
1131 (license expat)))
4cb2112d
LF
1132
1133(define-public go-gopkg.in-ldap.v2
1134 (package
1135 (name "go-gopkg.in-ldap.v2")
1136 (version "2.5.1")
1137 (source (origin
1138 (method git-fetch)
1139 (uri (git-reference
1140 (url "https://gopkg.in/ldap.v2")
1141 (commit (string-append "v" version))))
1142 (file-name (git-file-name name version))
1143 (sha256
1144 (base32
1145 "1wf81wy04nhkqs0dg5zkivr4sh37r83bxrfwjz9vr4jq6vmljr3h"))))
1146 (build-system go-build-system)
1147 (arguments
1148 '(#:import-path "gopkg.in/ldap.v2"
1149 #:tests? #f)) ; the test suite requires network access
1150 (propagated-inputs
1151 `(("go-gopkg.in-asn1-ber.v1" ,go-gopkg.in-asn1-ber.v1)))
1152 (synopsis "LDAP v3 functionality for Go")
1153 (description "This package provides basic LDAP v3 functionality in the Go
1154language.")
1155 (home-page "https://gopkg.in/ldap.v2")
1156 (license expat)))
7dc89dc6
LF
1157
1158(define-public go-github-com-flynn-archive-go-shlex
1159 (let ((commit "3f9db97f856818214da2e1057f8ad84803971cff")
1160 (revision "0"))
1161 (package
1162 (name "go-github-com-flynn-archive-go-shlex")
1163 (version (git-version "0.0.0" revision commit))
1164 (source (origin
1165 (method git-fetch)
1166 (uri (git-reference
1167 (url "https://github.com/flynn-archive/go-shlex.git")
1168 (commit commit)))
1169 (file-name (git-file-name name version))
1170 (sha256
1171 (base32
1172 "1j743lysygkpa2s2gii2xr32j7bxgc15zv4113b0q9jhn676ysia"))))
1173 (build-system go-build-system)
1174 (arguments
1175 '(#:import-path "github.com/flynn-archive/go-shlex"))
1176 (synopsis "Go lexer")
1177 (description "Shlex is a simple lexer for go that supports shell-style
1178quoting, commenting, and escaping.")
1179 (home-page "https://github.com/flynn-archive/go-shlex")
1180 (license asl2.0))))
9d81bab8
LF
1181
1182(define-public go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg
1183 (package
1184 (name "go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg")
1185 (version "0.2.0")
1186 (source (origin
1187 (method git-fetch)
1188 (uri (git-reference
1189 (url "https://github.com/prometheus/common.git")
1190 (commit (string-append "v" version))))
1191 (file-name (git-file-name name version))
1192 (sha256
1193 (base32
1194 "02kym6lcfnlq23qbv277jr0q1n7jj0r14gqg93c7wn7gc44jv3vp"))))
1195 (build-system go-build-system)
1196 (arguments
1197 '(#:import-path "github.com/prometheus/common/internal/bitbucket.org/ww/goautoneg"
1198 #:unpack-path "github.com/prometheus/common"))
1199 (synopsis "Internal Prometheus component")
1200 (description "This package is an internal component of Prometheus.")
1201 (home-page "https://github.com/prometheus/common")
1202 (license asl2.0)))