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