gnu: Add rust-rand-0.3.
[jackhill/guix/guix.git] / gnu / packages / crates-io.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com>
3 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
4 ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
5 ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
6 ;;;
7 ;;; This file is part of GNU Guix.
8 ;;;
9 ;;; GNU Guix is free software; you can redistribute it and/or modify it
10 ;;; under the terms of the GNU General Public License as published by
11 ;;; the Free Software Foundation; either version 3 of the License, or (at
12 ;;; your option) any later version.
13 ;;;
14 ;;; GNU Guix is distributed in the hope that it will be useful, but
15 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 ;;; GNU General Public License for more details.
18 ;;;
19 ;;; You should have received a copy of the GNU General Public License
20 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
21
22 (define-module (gnu packages crates-io)
23 #:use-module (guix build-system cargo)
24 #:use-module (guix download)
25 #:use-module ((guix licenses) #:prefix license:)
26 #:use-module (guix packages)
27 #:use-module (gnu packages pkg-config))
28
29 ;;;
30 ;;; Please: Try to add new module packages in alphabetic order.
31 ;;;
32
33 (define-public rust-antidote
34 (package
35 (name "rust-antidote")
36 (version "1.0.0")
37 (source
38 (origin
39 (method url-fetch)
40 (uri (crate-uri "antidote" version))
41 (file-name (string-append name "-" version ".tar.gz"))
42 (sha256
43 (base32
44 "19g2sw2qa2ibnh4x7j1snk46593jgx6y7rnvva496ynq61af5z9l"))))
45 (build-system cargo-build-system)
46 (home-page "https://github.com/sfackler/rust-antidote")
47 (synopsis "Poison-free Mutex and RwLock types")
48 (description
49 "These types expose identical APIs to the standard library @code{Mutex} and
50 @code{RwLock} except that they do not return @code{PoisonError}s.")
51 (license (list license:asl2.0
52 license:expat))))
53
54 (define-public rust-atty
55 (package
56 (name "rust-atty")
57 (version "0.2.13")
58 (source
59 (origin
60 (method url-fetch)
61 (uri (crate-uri "atty" version))
62 (file-name (string-append name "-" version ".tar.gz"))
63 (sha256
64 (base32
65 "140sswp1bwqwc4zk80bxkbnfb3g936hgrb77g9g0k1zcld3wc0qq"))))
66 (build-system cargo-build-system)
67 (arguments
68 `(#:cargo-inputs
69 (("rust-libc" ,rust-libc)
70 ("rust-winapi" ,rust-winapi))
71 #:tests? #f)) ; tests fail in our sandbox
72 (home-page "https://github.com/softprops/atty")
73 (synopsis "A simple interface for querying atty")
74 (description
75 "This package provides a simple interface for querying atty.")
76 (license license:expat)))
77
78 (define-public rust-autocfg
79 (package
80 (name "rust-autocfg")
81 (version "0.1.5")
82 (source
83 (origin
84 (method url-fetch)
85 (uri (crate-uri "autocfg" version))
86 (file-name (string-append name "-" version ".tar.gz"))
87 (sha256
88 (base32
89 "0asl6fnc35yk5l2rxwhp25v128jgm45dp754h9z8x51b6n90w4r2"))))
90 (build-system cargo-build-system)
91 (home-page "https://github.com/cuviper/autocfg")
92 (synopsis "Automatic cfg for Rust compiler features")
93 (description "Rust library for build scripts to automatically configure
94 code based on compiler support. Code snippets are dynamically tested to see
95 if the @code{rustc} will accept them, rather than hard-coding specific version
96 support.")
97 (license (list license:asl2.0
98 license:expat))))
99
100 (define-public rust-bencher
101 (package
102 (name "rust-bencher")
103 (version "0.1.5")
104 (source
105 (origin
106 (method url-fetch)
107 (uri (crate-uri "bencher" version))
108 (file-name (string-append name "-" version ".tar.gz"))
109 (sha256
110 (base32
111 "1x8p2xblgqssay8cdykp5pkfc0np0jk5bs5cx4f5av097aav9zbx"))))
112 (build-system cargo-build-system)
113 (home-page "https://github.com/bluss/bencher/")
114 (synopsis "Port of the libtest benchmark runner to Rust stable")
115 (description "This package provides a port of the libtest (unstable Rust)
116 benchmark runner to Rust stable releases. Supports running benchmarks and
117 filtering based on the name. Benchmark execution works exactly the same way
118 and no more (caveat: black_box is still missing!).")
119 (license (list license:asl2.0
120 license:expat))))
121
122 (define-public rust-bitflags
123 (package
124 (name "rust-bitflags")
125 (version "1.1.0")
126 (source
127 (origin
128 (method url-fetch)
129 (uri (crate-uri "bitflags" version))
130 (file-name (string-append name "-" version ".tar.gz"))
131 (sha256
132 (base32
133 "1zc1qb1hwsnl2d8rhzicsv9kqd5b2hwbrscrcfw5as4sfr35659x"))))
134 (build-system cargo-build-system)
135 (home-page "https://github.com/bitflags/bitflags")
136 (synopsis "Macro to generate structures which behave like bitflags")
137 (description "This package provides a macro to generate structures which
138 behave like a set of bitflags.")
139 (license (list license:asl2.0
140 license:expat))))
141
142 (define-public rust-blas-sys
143 (package
144 (name "rust-blas-sys")
145 (version "0.7.1")
146 (source
147 (origin
148 (method url-fetch)
149 (uri (crate-uri "blas-sys" version))
150 (file-name (string-append name "-" version ".tar.gz"))
151 (sha256
152 (base32
153 "0h14zjycwc76v15h8qll9z1xiryvmpvsb5gam97pqpdjrrwv5c8k"))))
154 (build-system cargo-build-system)
155 (arguments
156 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
157 (home-page "https://github.com/blas-lapack-rs/blas-sys")
158 (synopsis "Bindings to BLAS (Fortran)")
159 (description
160 "Ths package provides bindings to BLAS (Fortran).")
161 (license (list license:asl2.0
162 license:expat))))
163
164 (define-public rust-cblas-sys
165 (package
166 (name "rust-cblas-sys")
167 (version "0.1.4")
168 (source
169 (origin
170 (method url-fetch)
171 (uri (crate-uri "cblas-sys" version))
172 (file-name (string-append name "-" version ".tar.gz"))
173 (sha256
174 (base32
175 "0rgsn3klhhh09d8qf3b87zl4rwk93l2g0qzh9hhb0lff5kcfrzmn"))))
176 (build-system cargo-build-system)
177 (arguments
178 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
179 (home-page "https://github.com/blas-lapack-rs/cblas-sys")
180 (synopsis "Bindings to CBLAS (C)")
181 (description
182 "The package provides bindings to CBLAS (C).")
183 (license (list license:asl2.0
184 license:expat))))
185
186 (define-public rust-cfg-if
187 (package
188 (name "rust-cfg-if")
189 (version "0.1.9")
190 (source
191 (origin
192 (method url-fetch)
193 (uri (crate-uri "cfg-if" version))
194 (file-name (string-append name "-" version ".tar.gz"))
195 (sha256
196 (base32
197 "0csygklgz3ybpr0670rkip49zh76m43ar3k7xgypkzbzrwycx1ml"))))
198 (build-system cargo-build-system)
199 (home-page "https://github.com/alexcrichton/cfg-if")
200 (synopsis "Define an item depending on parameters")
201 (description "This package provides a macro to ergonomically define an item
202 depending on a large number of #[cfg] parameters. Structured like an
203 @code{if-else} chain, the first matching branch is the item that gets emitted.")
204 (license (list license:asl2.0
205 license:expat))))
206
207 (define-public rust-clicolors-control
208 (package
209 (name "rust-clicolors-control")
210 (version "1.0.0")
211 (source
212 (origin
213 (method url-fetch)
214 (uri (crate-uri "clicolors-control" version))
215 (file-name (string-append name "-" version ".tar.gz"))
216 (sha256
217 (base32
218 "1y80cgarxhrd1bz5yjm81r444v6flvy36aaxrrsac0yhfd6gvavk"))))
219 (build-system cargo-build-system)
220 (arguments
221 `(#:cargo-inputs
222 (("rust-atty" ,rust-atty)
223 ("rust-lazy-static" ,rust-lazy-static)
224 ("rust-libc" ,rust-libc)
225 ("rust-winapi" ,rust-winapi))))
226 (home-page "https://github.com/mitsuhiko/clicolors-control")
227 (synopsis "Common utility library to control CLI colorization")
228 (description
229 "This package provides a common utility library to control CLI
230 colorization.")
231 (license license:expat)))
232
233 (define-public rust-cloudabi
234 (package
235 (name "rust-cloudabi")
236 (version "0.0.3")
237 (source
238 (origin
239 (method url-fetch)
240 (uri (crate-uri "cloudabi" version))
241 (file-name (string-append name "-" version ".tar.gz"))
242 (sha256
243 (base32
244 "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x"))))
245 (build-system cargo-build-system)
246 (arguments
247 `(#:cargo-inputs
248 (("rust-bitflags" ,rust-bitflags))))
249 (home-page "https://nuxi.nl/cloudabi/")
250 (synopsis "Low level interface to CloudABI")
251 (description
252 "Low level interface to CloudABI. Contains all syscalls and related types.")
253 (license license:bsd-2)))
254
255 (define-public rust-constant-time-eq
256 (package
257 (name "rust-constant-time-eq")
258 (version "0.1.4")
259 (source
260 (origin
261 (method url-fetch)
262 (uri (crate-uri "constant_time_eq" version))
263 (file-name (string-append name "-" version ".tar.gz"))
264 (sha256
265 (base32
266 "083icpr9xb72rrdxw3p4068dcspn6ai22jy7rhl2a8grfz448nlr"))))
267 (build-system cargo-build-system)
268 (home-page "https://crates.io/crates/constant_time_eq")
269 (synopsis
270 "Compares two equal-sized byte strings in constant time")
271 (description
272 "This package compares two equal-sized byte strings in constant time.
273 It is inspired by the Linux kernel's @code{crypto_memneq}.")
274 (license license:cc0)))
275
276 (define-public rust-core-foundation-sys
277 (package
278 (name "rust-core-foundation-sys")
279 (version "0.6.2")
280 (source
281 (origin
282 (method url-fetch)
283 (uri (crate-uri "core-foundation-sys" version))
284 (file-name (string-append name "-" version ".tar.gz"))
285 (sha256
286 (base32
287 "0fzsw1j9g1x598yhwklg59l15hwzc0pyvs01w9fg2kin4598mjp7"))))
288 (build-system cargo-build-system)
289 (home-page "https://github.com/servo/core-foundation-rs")
290 (synopsis "Bindings to Core Foundation for OS X")
291 (description
292 "Bindings to Core Foundation for OS X.")
293 (license (list license:asl2.0
294 license:expat))))
295
296 (define-public rust-data-encoding
297 (package
298 (name "rust-data-encoding")
299 (version "2.1.2")
300 (source
301 (origin
302 (method url-fetch)
303 (uri (crate-uri "data-encoding" version))
304 (file-name (string-append name "-" version ".tar.gz"))
305 (sha256
306 (base32
307 "15xd6afhsjl08285piwczrafmckpp8i29padj8v12xhahshprx7l"))))
308 (build-system cargo-build-system)
309 (home-page "https://github.com/ia0/data-encoding")
310 (synopsis "Efficient and customizable data-encoding functions")
311 (description
312 "This library provides encodings for many different common cases, including
313 hexadecimal, bas32, and base64.")
314 (license license:expat)))
315
316 (define-public rust-defmac
317 (package
318 (name "rust-defmac")
319 (version "0.2.0")
320 (source
321 (origin
322 (method url-fetch)
323 (uri (crate-uri "defmac" version))
324 (file-name (string-append name "-" version ".tar.gz"))
325 (sha256
326 (base32
327 "01ff3jdmcc5waffkwllndnx5hsn414r7x1rq4ib73n7awsyzxkxv"))))
328 (build-system cargo-build-system)
329 (home-page "https://github.com/bluss/defmac")
330 (synopsis "Macro to define lambda-like macros inline")
331 (description "A macro to define lambda-like macros inline.")
332 (license (list license:asl2.0
333 license:expat))))
334
335 (define-public rust-defmac-0.1
336 (package
337 (inherit rust-defmac)
338 (name "rust-defmac")
339 (version "0.1.3")
340 (source
341 (origin
342 (method url-fetch)
343 (uri (crate-uri "defmac" version))
344 (file-name (string-append name "-" version ".tar.gz"))
345 (sha256
346 (base32
347 "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
348
349 (define-public rust-discard
350 (package
351 (name "rust-discard")
352 (version "1.0.4")
353 (source
354 (origin
355 (method url-fetch)
356 (uri (crate-uri "discard" version))
357 (file-name (string-append name "-" version ".tar.gz"))
358 (sha256
359 (base32
360 "1h67ni5bxvg95s91wgicily4ix7lcw7cq0a5gy9njrybaibhyb91"))))
361 (build-system cargo-build-system)
362 (home-page "https://github.com/Pauan/rust-discard")
363 (synopsis "Allow for intentionally leaking memory")
364 (description "There are situations where you need to intentionally leak some
365 memory but not other memory. This package provides a discard trait which allows
366 for intentionally leaking memory")
367 (license license:expat)))
368
369 (define-public rust-doc-comment
370 (package
371 (name "rust-doc-comment")
372 (version "0.3.1")
373 (source
374 (origin
375 (method url-fetch)
376 (uri (crate-uri "doc-comment" version))
377 (file-name (string-append name "-" version ".tar.gz"))
378 (sha256
379 (base32
380 "15rsqxgarfpb1yim9sbp9yfgj7p2dq6v51c6bq1a62paii9ylgcj"))))
381 (build-system cargo-build-system)
382 (home-page "https://github.com/GuillaumeGomez/doc-comment")
383 (synopsis "Macro to generate doc comments")
384 (description "This package provides a way to generate doc comments
385 from macros.")
386 (license license:expat)))
387
388 (define-public rust-dtoa
389 (package
390 (name "rust-dtoa")
391 (version "0.4.4")
392 (source
393 (origin
394 (method url-fetch)
395 (uri (crate-uri "dtoa" version))
396 (file-name (string-append name "-" version ".tar.gz"))
397 (sha256
398 (base32
399 "0phbm7i0dpn44gzi07683zxaicjap5064w62pidci4fhhciv8mza"))))
400 (build-system cargo-build-system)
401 (home-page "https://github.com/dtolnay/dtoa")
402 (synopsis "Fast functions for printing floating-point primitives")
403 (description "This crate provides fast functions for printing
404 floating-point primitives to an @code{io::Write}.")
405 (license (list license:asl2.0
406 license:expat))))
407
408 (define-public rust-fallible-iterator
409 (package
410 (name "rust-fallible-iterator")
411 (version "0.2.0")
412 (source
413 (origin
414 (method url-fetch)
415 (uri (crate-uri "fallible-iterator" version))
416 (file-name (string-append name "-" version ".tar.gz"))
417 (sha256
418 (base32
419 "1xq759lsr8gqss7hva42azn3whgrbrs2sd9xpn92c5ickxm1fhs4"))))
420 (build-system cargo-build-system)
421 (home-page "https://github.com/sfackler/rust-fallible-iterator")
422 (synopsis "Fallible iterator traits")
423 (description "If the @code{std} or @code{alloc} features are enabled, this
424 crate provides implementations for @code{Box}, @code{Vec}, @code{BTreeMap}, and
425 @code{BTreeSet}. If the @code{std} feature is enabled, this crate additionally
426 provides implementations for @code{HashMap} and @code{HashSet}.")
427 (license (list license:asl2.0
428 license:expat))))
429
430 (define-public rust-findshlibs
431 (package
432 (name "rust-findshlibs")
433 (version "0.5.0")
434 (source
435 (origin
436 (method url-fetch)
437 (uri (crate-uri "findshlibs" version))
438 (file-name (string-append name "-" version ".tar.gz"))
439 (sha256
440 (base32
441 "1n2vagn0q5yim32hxkwi1cjgp3yn1dm45p7z8nw6lapywihhs9mi"))))
442 (build-system cargo-build-system)
443 (arguments
444 `(#:cargo-inputs
445 (("rust-lazy-static" ,rust-lazy-static)
446 ("rust-libc" ,rust-libc))))
447 (home-page "https://github.com/gimli-rs/findshlibs")
448 (synopsis "Find the set of shared libraries loaded in the current process")
449 (description
450 "Find the set of shared libraries loaded in the current process with a
451 cross platform API.")
452 (license (list license:asl2.0
453 license:expat))))
454
455 (define-public rust-fixedbitset
456 (package
457 (name "rust-fixedbitset")
458 (version "0.1.9")
459 (source
460 (origin
461 (method url-fetch)
462 (uri (crate-uri "fixedbitset" version))
463 (file-name (string-append name "-" version ".tar.gz"))
464 (sha256
465 (base32
466 "0czam11mi80dbyhf4rd4lz0ihcf7vkfchrdcrn45wbs0h40dxm46"))))
467 (build-system cargo-build-system)
468 (home-page "https://github.com/bluss/fixedbitset")
469 (synopsis "FixedBitSet is a simple bitset collection")
470 (description "FixedBitSet is a simple bitset collection.")
471 (license (list license:asl2.0
472 license:expat))))
473
474 (define-public rust-fnv
475 (package
476 (name "rust-fnv")
477 (version "1.0.6")
478 (source
479 (origin
480 (method url-fetch)
481 (uri (crate-uri "fnv" version))
482 (file-name (string-append name "-" version ".tar.gz"))
483 (sha256
484 (base32
485 "1ww56bi1r5b8id3ns9j3qxbi7w5h005rzhiryy0zi9h97raqbb9g"))))
486 (build-system cargo-build-system)
487 (home-page "https://github.com/servo/rust-fnv")
488 (synopsis "implementation of the Fowler-Noll-Vo hash function")
489 (description "The @code{fnv} hash function is a custom @code{Hasher}
490 implementation that is more efficient for smaller hash keys.")
491 (license (list license:asl2.0
492 license:expat))))
493
494 (define-public rust-foreign-types-shared
495 (package
496 (name "rust-foreign-types-shared")
497 (version "0.2.0")
498 (source
499 (origin
500 (method url-fetch)
501 (uri (crate-uri "foreign-types-shared" version))
502 (file-name (string-append name "-" version ".tar.gz"))
503 (sha256
504 (base32
505 "0kanxlif1vp0ffh2r9l610jqbkmb3183yqykxq1z5w1vay2rn7y6"))))
506 (build-system cargo-build-system)
507 (home-page "https://github.com/sfackler/foreign-types")
508 (synopsis "An internal crate used by foreign-types")
509 (description
510 "An internal crate used by foreign-types.")
511 (license (list license:asl2.0
512 license:expat))))
513
514 (define-public rust-fs-extra
515 (package
516 (name "rust-fs-extra")
517 (version "1.1.0")
518 (source
519 (origin
520 (method url-fetch)
521 (uri (crate-uri "fs_extra" version))
522 (file-name (string-append name "-" version ".tar.gz"))
523 (sha256
524 (base32
525 "0x6675wdhsx277k1k1235jwcv38naf20d8kwrk948ds26hh4lajz"))))
526 (build-system cargo-build-system)
527 (home-page "https://github.com/webdesus/fs_extra")
528 (synopsis "Extra filesystem methods")
529 (description "Expanding opportunities standard library @code{std::fs} and
530 @code{std::io}. Recursively copy folders with recept information about
531 process and much more.")
532 (license license:expat)))
533
534 (define-public rust-fuchsia-cprng
535 (package
536 (name "rust-fuchsia-cprng")
537 (version "0.1.1")
538 (source
539 (origin
540 (method url-fetch)
541 (uri (crate-uri "fuchsia-cprng" version))
542 (file-name (string-append name "-" version ".tar.gz"))
543 (sha256
544 (base32
545 "1fnkqrbz7ixxzsb04bsz9p0zzazanma8znfdqjvh39n14vapfvx0"))))
546 (build-system cargo-build-system)
547 (arguments
548 `(#:tests? #f)) ; tests require zircon
549 (home-page "https://fuchsia.googlesource.com/fuchsia/+/master/garnet/public/rust/fuchsia-cprng")
550 (synopsis "Fuchsia cryptographically secure pseudorandom number generator")
551 (description "Rust crate for the Fuchsia cryptographically secure
552 pseudorandom number generator")
553 (license license:bsd-3)))
554
555 (define-public rust-fuchsia-zircon
556 (package
557 (name "rust-fuchsia-zircon")
558 (version "0.3.3")
559 (source
560 (origin
561 (method url-fetch)
562 (uri (crate-uri "fuchsia-zircon" version))
563 (file-name (string-append name "-" version ".tar.gz"))
564 (sha256
565 (base32
566 "10jxc5ks1x06gpd0xg51kcjrxr35nj6qhx2zlc5n7bmskv3675rf"))))
567 (build-system cargo-build-system)
568 (arguments
569 `(#:cargo-inputs
570 (("rust-bitflags" ,rust-bitflags)
571 ("rust-fuchsia-zircon-sys" ,rust-fuchsia-zircon-sys))
572 #:tests? #f)) ; tests require zircon
573 (home-page "https://fuchsia.googlesource.com/garnet/")
574 (synopsis "Rust bindings for the Zircon kernel")
575 (description "Rust bindings for the Zircon kernel.")
576 (license license:bsd-3)))
577
578 (define-public rust-fuchsia-zircon-sys
579 (package
580 (name "rust-fuchsia-zircon-sys")
581 (version "0.3.3")
582 (source
583 (origin
584 (method url-fetch)
585 (uri (crate-uri "fuchsia-zircon-sys" version))
586 (file-name (string-append name "-" version ".tar.gz"))
587 (sha256
588 (base32
589 "19zp2085qsyq2bh1gvcxq1lb8w6v6jj9kbdkhpdjrl95fypakjix"))))
590 (build-system cargo-build-system)
591 (arguments
592 `(#:tests? #f)) ; tests require zircon
593 (home-page "https://fuchsia.googlesource.com/garnet/")
594 (synopsis "Low-level Rust bindings for the Zircon kernel")
595 (description "Low-level Rust bindings for the Zircon kernel.")
596 (license license:bsd-3)))
597
598 (define-public rust-futures
599 (package
600 (name "rust-futures")
601 (version "0.1.28")
602 (source
603 (origin
604 (method url-fetch)
605 (uri (crate-uri "futures" version))
606 (file-name (string-append name "-" version ".tar.gz"))
607 (sha256
608 (base32
609 "0saq8ffjw1pwf1pzhw3kq1z7dfq6wpd8x93dnni6vbkc799kkp25"))))
610 (build-system cargo-build-system)
611 (home-page "https://github.com/rust-lang-nursery/futures-rs")
612 (synopsis "Implementation of zero-cost futures in Rust")
613 (description "An implementation of @code{futures} and @code{streams}
614 featuring zero allocations, composability, and iterator-like interfaces.")
615 (license (list license:asl2.0
616 license:expat))))
617
618 (define-public rust-futures-cpupool
619 (package
620 (name "rust-futures-cpupool")
621 (version "0.1.8")
622 (source
623 (origin
624 (method url-fetch)
625 (uri (crate-uri "futures-cpupool" version))
626 (file-name (string-append name "-" version ".tar.gz"))
627 (sha256
628 (base32
629 "1r32456gpblzfvnkf60545v8acqk7gh5zhyhi1jn669k9gicv45b"))))
630 (build-system cargo-build-system)
631 (arguments
632 `(#:cargo-inputs
633 (("rust-futures" ,rust-futures)
634 ("rust-num-cpus" ,rust-num-cpus))))
635 (home-page "https://github.com/alexcrichton/futures-rs")
636 (synopsis "Implementation of thread pools which hand out futures")
637 (description
638 "An implementation of thread pools which hand out futures to the results of
639 the computation on the threads themselves.")
640 (license (list license:asl2.0
641 license:expat))))
642
643 (define-public rust-futures-io-preview
644 (package
645 (name "rust-futures-io-preview")
646 (version "0.3.0-alpha.17")
647 (source
648 (origin
649 (method url-fetch)
650 (uri (crate-uri "futures-io-preview" version))
651 (file-name (string-append name "-" version ".tar.gz"))
652 (sha256
653 (base32
654 "0fhvwhdb8ywjjbfng0ra1r8yyc9yzpyxg9sv3spb3f7w0lk40bh8"))))
655 (build-system cargo-build-system)
656 (home-page "https://rust-lang-nursery.github.io/futures-rs/")
657 (synopsis "Async read and write traits for the futures library")
658 (description "This crate provides the @code{AsyncRead} and
659 @code{AsyncWrite} traits for the @code{futures-rs} library.")
660 (license (list license:asl2.0
661 license:expat))))
662
663 (define-public rust-heapsize
664 (package
665 (name "rust-heapsize")
666 (version "0.4.2")
667 (source
668 (origin
669 (method url-fetch)
670 (uri (crate-uri "heapsize" version))
671 (file-name (string-append name "-" version ".tar.gz"))
672 (sha256
673 (base32
674 "0q94q9ppqjgrw71swiyia4hgby2cz6dldp7ij57nkvhd6zmfcy8n"))))
675 (build-system cargo-build-system)
676 (arguments
677 `(#:cargo-inputs (("rust-winapi" ,rust-winapi))
678 ;; Tests assume rust is built with jemalloc.
679 ;; https://github.com/servo/heapsize/issues/74
680 #:cargo-test-flags '("--features" "flexible-tests")))
681 (home-page "https://github.com/servo/heapsize")
682 (synopsis "Measure the total runtime size of an object on the heap")
683 (description
684 "Infrastructure for measuring the total runtime size of an object on the
685 heap.")
686 (license (list license:asl2.0
687 license:expat))))
688
689 (define-public rust-heapsize-0.3
690 (package
691 (inherit rust-heapsize)
692 (name "rust-heapsize")
693 (version "0.3.9")
694 (source
695 (origin
696 (method url-fetch)
697 (uri (crate-uri "heapsize" version))
698 (file-name (string-append name "-" version ".tar.gz"))
699 (sha256
700 (base32
701 "0dmwc37vgsdjzk10443dj4f23439i9gch28jcwzmry3chrwx8v2m"))))
702 (arguments
703 `(#:cargo-inputs (("rust-kernel32-sys" ,rust-kernel32-sys))
704 #:tests? #f)))) ;; No flexible-tests feature flags on this release.
705
706 ;; This package makes use of removed features
707 (define-public rust-heapsize-plugin
708 (package
709 (name "rust-heapsize-plugin")
710 (version "0.1.6")
711 (source
712 (origin
713 (method url-fetch)
714 (uri (crate-uri "heapsize_plugin" version))
715 (file-name (string-append name "-" version ".tar.gz"))
716 (sha256
717 (base32
718 "1i72isf699q9jl167g2kg4xd6h3cd05rc79zaph58aqjy0g0m9y9"))))
719 (build-system cargo-build-system)
720 (arguments
721 `(#:cargo-development-inputs (("rust-heapsize" ,rust-heapsize-0.3))
722 #:phases
723 (modify-phases %standard-phases
724 (add-after 'unpack 'fix-Cargo-toml
725 (lambda _
726 (substitute* "Cargo.toml"
727 (("path = \"..\", ") ""))
728 #t)))))
729 (home-page "https://github.com/servo/heapsize")
730 (synopsis "Measure runtime size of an object on the heap")
731 (description
732 "This package automatically generates infrastructure for measuring the
733 total runtime size of an object on the heap")
734 (properties `((hidden? . #t)))
735 (license license:mpl2.0)))
736
737 (define-public rust-hex
738 (package
739 (name "rust-hex")
740 (version "0.3.2")
741 (source
742 (origin
743 (method url-fetch)
744 (uri (crate-uri "hex" version))
745 (file-name (string-append name "-" version ".tar.gz"))
746 (sha256
747 (base32
748 "0xsdcjiik5j750j67zk42qdnmm4ahirk3gmkmcqgq7qls2jjcl40"))))
749 (build-system cargo-build-system)
750 (home-page "https://github.com/KokaKiwi/rust-hex")
751 (synopsis "Encode and decode data to/from hexadecimals")
752 (description "This crate allows for encoding and decoding data into/from
753 hexadecimal representation.")
754 (license (list license:asl2.0
755 license:expat))))
756
757 (define-public rust-hostname
758 (package
759 (name "rust-hostname")
760 (version "0.1.5")
761 (source
762 (origin
763 (method url-fetch)
764 (uri (crate-uri "hostname" version))
765 (file-name (string-append name "-" version ".tar.gz"))
766 (sha256
767 (base32
768 "0kprf862qaa7lwdms6aw7f3275h0j2rwhs9nz5784pm8hdmb9ki1"))))
769 (build-system cargo-build-system)
770 (arguments
771 `(#:cargo-inputs
772 (("rust-libc" ,rust-libc)
773 ("rust-winutil" ,rust-winutil))))
774 (home-page "https://github.com/fengcen/hostname")
775 (synopsis "Get hostname for Rust")
776 (description
777 "Get hostname for Rust.")
778 (license license:expat)))
779
780 (define-public rust-iovec
781 (package
782 (name "rust-iovec")
783 (version "0.1.2")
784 (source
785 (origin
786 (method url-fetch)
787 (uri (crate-uri "iovec" version))
788 (file-name (string-append name "-" version ".tar.gz"))
789 (sha256
790 (base32
791 "025vi072m22299z3fg73qid188z2iip7k41ba6v5v5yhwwby9rnv"))))
792 (build-system cargo-build-system)
793 (arguments
794 `(#:cargo-inputs
795 (("rust-libc" ,rust-libc)
796 ("rust-winapi" ,rust-winapi-0.2))))
797 (home-page "https://github.com/carllerche/iovec")
798 (synopsis "Portable buffer type for scatter/gather I/O operations")
799 (description
800 "Portable buffer type for scatter/gather I/O operations.")
801 (license (list license:asl2.0
802 license:expat))))
803
804 (define-public rust-itoa
805 (package
806 (name "rust-itoa")
807 (version "0.4.4")
808 (source
809 (origin
810 (method url-fetch)
811 (uri (crate-uri "itoa" version))
812 (file-name (string-append name "-" version ".tar.gz"))
813 (sha256
814 (base32
815 "0zvg2d9qv3avhf3d8ggglh6fdyw8kkwqg3r4622ly5yhxnvnc4jh"))))
816 (build-system cargo-build-system)
817 (home-page "https://github.com/dtolnay/itoa")
818 (synopsis "Fast functions for printing integer primitives")
819 (description "This crate provides fast functions for printing integer
820 primitives to an @code{io::Write}.")
821 (license (list license:asl2.0
822 license:expat))))
823
824 (define-public rust-json
825 (package
826 (name "rust-json")
827 (version "0.11.14")
828 (source
829 (origin
830 (method url-fetch)
831 (uri (crate-uri "json" version))
832 (file-name (string-append name "-" version ".tar.gz"))
833 (sha256
834 (base32
835 "1hj8c6xj5c2aqqszi8naaflmcdbya1i9byyjrq4iybxjb4q91mq1"))))
836 (build-system cargo-build-system)
837 (home-page "https://github.com/maciejhirsz/json-rust")
838 (synopsis "JSON implementation in Rust")
839 (description "This crate provides a JSON implementation in Rust, reducing
840 friction with idiomatic Rust structs to ease interopability.")
841 (license (list license:asl2.0
842 license:expat))))
843
844 (define-public rust-kernel32-sys
845 (package
846 (name "rust-kernel32-sys")
847 (version "0.2.2")
848 (source
849 (origin
850 (method url-fetch)
851 (uri (crate-uri "kernel32-sys" version))
852 (file-name (string-append name "-" version ".tar.gz"))
853 (sha256
854 (base32
855 "1389av0601a9yz8dvx5zha9vmkd6ik7ax0idpb032d28555n41vm"))))
856 (build-system cargo-build-system)
857 (arguments
858 `(#:cargo-inputs
859 (("rust-winapi" ,rust-winapi-0.2)
860 ("rust-winapi-build" ,rust-winapi-build))
861 #:phases
862 (modify-phases %standard-phases
863 (add-after 'unpack 'fix-Cargo-toml
864 (lambda _
865 (substitute* "Cargo.toml"
866 ((", path =.* }") "}\n"))
867 #t)))))
868 (home-page "https://github.com/retep998/winapi-rs")
869 (synopsis "Function definitions for the Windows API library kernel32")
870 (description "Contains function definitions for the Windows API library
871 kernel32.")
872 (license license:expat)))
873
874 (define-public rust-language-tags
875 (package
876 (name "rust-language-tags")
877 (version "0.2.2")
878 (source
879 (origin
880 (method url-fetch)
881 (uri (crate-uri "language-tags" version))
882 (file-name (string-append name "-" version ".tar.gz"))
883 (sha256
884 (base32
885 "16hrjdpa827carq5x4b8zhas24d8kg4s16m6nmmn1kb7cr5qh7d9"))))
886 (build-system cargo-build-system)
887 (arguments
888 `(#:cargo-inputs
889 (("rust-heapsize" ,rust-heapsize-0.3))
890 #:cargo-development-inputs
891 (("rust-heapsize-plugin" ,rust-heapsize-plugin))))
892 (home-page "https://github.com/pyfisch/rust-language-tags")
893 (synopsis "Language tags for Rust")
894 (description
895 "Language tags can be used identify human languages, scripts e.g. Latin
896 script, countries and other regions. They are commonly used in HTML and HTTP
897 @code{Content-Language} and @code{Accept-Language} header fields. This package
898 currently supports parsing (fully conformant parser), formatting and comparing
899 language tags.")
900 (license license:expat)))
901
902 (define-public rust-lazy-static
903 (package
904 (name "rust-lazy-static")
905 (version "1.3.0")
906 (source
907 (origin
908 (method url-fetch)
909 (uri (crate-uri "lazy_static" version))
910 (file-name (string-append name "-" version ".tar.gz"))
911 (sha256
912 (base32
913 "052ac27w189hrf1j3hz7sga46rp84zl2hqnzyihxv78mgzr2jmxw"))))
914 (build-system cargo-build-system)
915 (arguments
916 `(#:cargo-inputs (("rust-spin" ,rust-spin))))
917 (home-page "https://github.com/rust-lang-nursery/lazy-static.rs")
918 (synopsis "Macro for declaring lazily evaluated statics in Rust")
919 (description
920 "This package provides a macro for declaring lazily evaluated statics in
921 Rust. Using this macro, it is possible to have @code{static}s that require code
922 to be executed at runtime in order to be initialized. This includes anything
923 requiring heap allocations, like vectors or hash maps, as well as anything that
924 requires non-const function calls to be computed.")
925 (license (list license:asl2.0
926 license:expat))))
927
928 (define-public rust-libc
929 (package
930 (name "rust-libc")
931 (version "0.2.62")
932 (source
933 (origin
934 (method url-fetch)
935 (uri (crate-uri "libc" version))
936 (file-name
937 (string-append name "-" version ".tar.gz"))
938 (sha256
939 (base32
940 "1fh69kpjg8hqff36kdczx7sax98gk4qs4ws1dwvjz0rgip0d5z1l"))))
941 (build-system cargo-build-system)
942 (arguments
943 `(#:cargo-inputs
944 (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core))))
945 (home-page "https://github.com/rust-lang/libc")
946 (synopsis "Raw FFI bindings to platform libraries like libc")
947 (description
948 "libc provides all of the definitions necessary to easily
949 interoperate with C code (or \"C-like\" code) on each of the platforms
950 that Rust supports. This includes type definitions (e.g., c_int),
951 constants (e.g., EINVAL) as well as function headers (e.g., malloc).
952
953 This crate exports all underlying platform types, functions, and
954 constants under the crate root, so all items are accessible as
955 @samp{libc::foo}. The types and values of all the exported APIs match
956 the platform that libc is compiled for.")
957 (license (list license:expat
958 license:asl2.0))))
959
960 (define-public rust-maplit
961 (package
962 (name "rust-maplit")
963 (version "1.0.1")
964 (source
965 (origin
966 (method url-fetch)
967 (uri (crate-uri "maplit" version))
968 (file-name (string-append name "-" version ".tar.gz"))
969 (sha256
970 (base32
971 "0hsczmvd6zkqgzqdjp5hfyg7f339n68w83n4pxvnsszrzssbdjq8"))))
972 (build-system cargo-build-system)
973 (home-page "https://github.com/bluss/maplit")
974 (synopsis "Collection of Map macros")
975 (description "This crate provides a collection of @code{literal} macros for
976 @code{HashMap}, @code{HashSet}, @code{BTreeMap}, and @code{BTreeSet.}")
977 (license (list license:asl2.0
978 license:expat))))
979
980 (define-public rust-matches
981 (package
982 (name "rust-matches")
983 (version "0.1.8")
984 (source
985 (origin
986 (method url-fetch)
987 (uri (crate-uri "matches" version))
988 (file-name (string-append name "-" version ".tar.gz"))
989 (sha256
990 (base32
991 "020axl4q7rk9vz90phs7f8jas4imxal9y9kxl4z4v7a6719mrz3z"))))
992 (build-system cargo-build-system)
993 (home-page "https://github.com/SimonSapin/rust-std-candidates")
994 (synopsis "Macro to evaluate whether an expression matches a pattern.")
995 (description "This package provides a macro to evaluate, as a boolean,
996 whether an expression matches a pattern.")
997 (license license:expat)))
998
999 (define-public rust-md5
1000 (package
1001 (name "rust-md5")
1002 (version "0.6.1")
1003 (source
1004 (origin
1005 (method url-fetch)
1006 (uri (crate-uri "md5" version))
1007 (file-name (string-append name "-" version ".tar.gz"))
1008 (sha256
1009 (base32
1010 "17b2xm4h4cvxsdjsf3kdrzqv2za60kak961xzi5kmw6g6djcssvy"))))
1011 (build-system cargo-build-system)
1012 (home-page "https://github.com/stainless-steel/md5")
1013 (synopsis "MD5 hash function in Rust")
1014 (description "The package provides the MD5 hash function.")
1015 (license (list license:asl2.0
1016 license:expat))))
1017
1018 (define-public rust-mime
1019 (package
1020 (name "rust-mime")
1021 (version "0.3.13")
1022 (source
1023 (origin
1024 (method url-fetch)
1025 (uri (crate-uri "mime" version))
1026 (file-name (string-append name "-" version ".tar.gz"))
1027 (sha256
1028 (base32
1029 "09clbyvdkwflp8anwjhqdib0sw8191gphcchdp80nc8ayhhwl9ry"))))
1030 (build-system cargo-build-system)
1031 (arguments
1032 `(#:cargo-inputs
1033 (("rust-unicase" ,rust-unicase))))
1034 (home-page "https://github.com/hyperium/mime")
1035 (synopsis "Strongly Typed Mimes")
1036 (description
1037 "Support MIME (HTTP Media Types) as strong types in Rust.")
1038 (license (list license:asl2.0
1039 license:expat))))
1040
1041 (define-public rust-modifier
1042 (package
1043 (name "rust-modifier")
1044 (version "0.1.0")
1045 (source
1046 (origin
1047 (method url-fetch)
1048 (uri (crate-uri "modifier" version))
1049 (file-name (string-append name "-" version ".tar.gz"))
1050 (sha256
1051 (base32
1052 "0n3fmgli1nsskl0whrfzm1gk0rmwwl6pw1q4nb9sqqmn5h8wkxa1"))))
1053 (build-system cargo-build-system)
1054 (home-page "https://github.com/reem/rust-modifier")
1055 (synopsis
1056 "Chaining APIs for both self -> Self and &mut self methods.")
1057 (description
1058 "Chaining APIs for both self -> Self and &mut self methods.")
1059 (license license:expat)))
1060
1061 (define-public rust-net2
1062 (package
1063 (name "rust-net2")
1064 (version "0.2.33")
1065 (source
1066 (origin
1067 (method url-fetch)
1068 (uri (crate-uri "net2" version))
1069 (file-name (string-append name "-" version ".tar.gz"))
1070 (sha256
1071 (base32
1072 "126g3fgfxp06zimc1l9iyxnn9cif1hjsg7sd81nlls5nnyghsma2"))))
1073 (build-system cargo-build-system)
1074 (arguments
1075 `(#:cargo-inputs
1076 (("rust-cfg-if" ,rust-cfg-if)
1077 ("rust-libc" ,rust-libc)
1078 ("rust-winapi" ,rust-winapi))))
1079 (home-page "https://github.com/rust-lang-nursery/net2-rs")
1080 (synopsis "Extensions to the standard library's networking types")
1081 (description
1082 "This library contains extensions to the standard library's networking
1083 types as proposed in RFC 1158.")
1084 (license (list license:asl2.0
1085 license:expat))))
1086
1087 (define-public rust-nodrop
1088 (package
1089 (name "rust-nodrop")
1090 (version "0.1.13")
1091 (source
1092 (origin
1093 (method url-fetch)
1094 (uri (crate-uri "nodrop" version))
1095 (file-name (string-append name "-" version ".tar.gz"))
1096 (sha256
1097 (base32
1098 "0if9ifn6rvar5jirx4b3qh4sl5kjkmcifycvzhxa9j3crkfng5ig"))))
1099 (build-system cargo-build-system)
1100 (arguments
1101 `(#:cargo-inputs
1102 (("rust-nodrop-union" ,rust-nodrop-union))))
1103 (home-page "https://github.com/bluss/arrayvec")
1104 (synopsis "Wrapper type to inhibit drop (destructor)")
1105 (description "This package provides a wrapper type to inhibit drop
1106 (destructor). Use @code{std::mem::ManuallyDrop} instead!")
1107 (license (list license:asl2.0
1108 license:expat))))
1109
1110 ;; This package requires features which are unavailable
1111 ;; on the stable releases of Rust.
1112 (define-public rust-nodrop-union
1113 (package
1114 (name "rust-nodrop-union")
1115 (version "0.1.10")
1116 (source
1117 (origin
1118 (method url-fetch)
1119 (uri (crate-uri "nodrop-union" version))
1120 (file-name (string-append name "-" version ".tar.gz"))
1121 (sha256
1122 (base32
1123 "0jsnkdn9l8jlmb9h4wssi76sxnyxwnyi00p6y1p2gdq7c1gdw2b7"))))
1124 (build-system cargo-build-system)
1125 (home-page "https://github.com/bluss/arrayvec")
1126 (synopsis "Wrapper type to inhibit drop (destructor)")
1127 (description "This package provides a wrapper type to inhibit drop
1128 (destructor). Implementation crate for nodrop, the untagged unions
1129 implementation (which is unstable / requires nightly).")
1130 (properties '((hidden? . #t)))
1131 (license (list license:asl2.0
1132 license:expat))))
1133
1134 (define-public rust-num-cpus
1135 (package
1136 (name "rust-num-cpus")
1137 (version "1.10.1")
1138 (source
1139 (origin
1140 (method url-fetch)
1141 (uri (crate-uri "num_cpus" version))
1142 (file-name (string-append name "-" version ".tar.gz"))
1143 (sha256
1144 (base32
1145 "0wrj3zvj6h3q26sqj9zxpd59frjb54n7jhjwf307clq31ic47vxw"))))
1146 (build-system cargo-build-system)
1147 (arguments
1148 `(#:cargo-inputs
1149 (("rust-libc" ,rust-libc))
1150 #:cargo-development-inputs
1151 (("rust-doc-comment" ,rust-doc-comment))))
1152 (home-page "https://github.com/seanmonstar/num_cpus")
1153 (synopsis "Get the number of CPUs on a machine")
1154 (description
1155 "Get the number of CPUs on a machine.")
1156 (license (list license:asl2.0
1157 license:expat))))
1158
1159 (define-public rust-num-integer
1160 (package
1161 (name "rust-num-integer")
1162 (version "0.1.41")
1163 (source
1164 (origin
1165 (method url-fetch)
1166 (uri (crate-uri "num-integer" version))
1167 (file-name
1168 (string-append name "-" version ".tar.gz"))
1169 (sha256
1170 (base32
1171 "02dwjjpfbi16c71fq689s4sw3ih52cvfzr5z5gs6qpr5z0g58pmq"))))
1172 (build-system cargo-build-system)
1173 (arguments
1174 `(#:cargo-inputs
1175 (("rust-autocfg" ,rust-autocfg)
1176 ("rust-num-traits" ,rust-num-traits))))
1177 (home-page "https://github.com/rust-num/num-integer")
1178 (synopsis "Integer traits and functions")
1179 (description "Integer traits and functions.")
1180 ;; Dual licensed.
1181 (license (list license:asl2.0
1182 license:expat))))
1183
1184 (define-public rust-num-iter
1185 (package
1186 (name "rust-num-iter")
1187 (version "0.1.39")
1188 (source
1189 (origin
1190 (method url-fetch)
1191 (uri (crate-uri "num-iter" version))
1192 (file-name (string-append name "-" version ".tar.gz"))
1193 (sha256
1194 (base32
1195 "0bhk2qbr3261r6zvfc58lz4spfqjhvdripxgz5mks5rd85r55gbn"))))
1196 (build-system cargo-build-system)
1197 (arguments
1198 `(#:cargo-inputs
1199 (("rust-num-integer" ,rust-num-integer)
1200 ("rust-num-traits" ,rust-num-traits))
1201 #:cargo-development-inputs
1202 (("rust-autocfg" ,rust-autocfg))))
1203 (home-page "https://github.com/rust-num/num-iter")
1204 (synopsis "External iterators for generic mathematics")
1205 (description
1206 "This crate provides external iterators for generic mathematics.")
1207 (license (list license:asl2.0
1208 license:expat))))
1209
1210 (define-public rust-num-traits
1211 (package
1212 (name "rust-num-traits")
1213 (version "0.2.8")
1214 (source
1215 (origin
1216 (method url-fetch)
1217 (uri (crate-uri "num-traits" version))
1218 (file-name
1219 (string-append name "-" version ".tar.gz"))
1220 (sha256
1221 (base32
1222 "0clvrm34rrqc8p6gq5ps5fcgws3kgq5knh7nlqxf2ayarwks9abb"))))
1223 (build-system cargo-build-system)
1224 (arguments
1225 `(#:cargo-inputs
1226 (("rust-autocfg" ,rust-autocfg))))
1227 (home-page "https://github.com/rust-num/num-traits")
1228 (synopsis "Numeric traits for generic mathematics")
1229 (description "Numeric traits for generic mathematics.")
1230 ;; Dual licensed.
1231 (license (list license:asl2.0
1232 license:expat))))
1233
1234 (define-public rust-owning-ref
1235 (package
1236 (name "rust-owning-ref")
1237 (version "0.4.0")
1238 (source
1239 (origin
1240 (method url-fetch)
1241 (uri (crate-uri "owning_ref" version))
1242 (file-name (string-append name "-" version ".tar.gz"))
1243 (sha256
1244 (base32
1245 "04zgwy77lin8qz398s6g44467pd6kjhbrlqifkia5rkr47mbi929"))))
1246 (build-system cargo-build-system)
1247 (arguments
1248 `(#:cargo-inputs
1249 (("rust-stable-deref-trait" ,rust-stable-deref-trait))))
1250 (home-page "https://github.com/Kimundi/owning-ref-rs")
1251 (synopsis "Create references that carry their owner with them")
1252 (description
1253 "This package provides a library for creating references that carry their
1254 owner with them. This can sometimes be useful because Rust borrowing rules
1255 normally prevent moving a type that has been borrowed from.")
1256 (license license:expat)))
1257
1258 (define-public rust-peeking-take-while
1259 (package
1260 (name "rust-peeking-take-while")
1261 (version "0.1.2")
1262 (source
1263 (origin
1264 (method url-fetch)
1265 (uri (crate-uri "peeking_take_while" version))
1266 (file-name (string-append name "-" version ".tar.gz"))
1267 (sha256
1268 (base32
1269 "16bhqr6rdyrp12zv381cxaaqqd0pwysvm1q8h2ygihvypvfprc8r"))))
1270 (build-system cargo-build-system)
1271 (home-page "https://github.com/fitzgen/peeking_take_while")
1272 (synopsis "Provides the peeking_take_while iterator adaptor method")
1273 (description
1274 "Like @code{Iterator::take_while}, but calls the predicate on a peeked
1275 value. This allows you to use @code{Iterator::by_ref} and
1276 @code{Iterator::take_while} together, and still get the first value for which
1277 the @code{take_while} predicate returned false after dropping the @code{by_ref}.")
1278 (license (list license:asl2.0
1279 license:expat))))
1280
1281 (define-public rust-percent-encoding
1282 (package
1283 (name "rust-percent-encoding")
1284 (version "2.0.0")
1285 (source
1286 (origin
1287 (method url-fetch)
1288 (uri (crate-uri "percent-encoding" version))
1289 (file-name (string-append name "-" version ".tar.gz"))
1290 (sha256
1291 (base32
1292 "0m6rkp3iy11la04p6z3492rns6n693pvmx585dvfmzzlzak2hkxs"))))
1293 (build-system cargo-build-system)
1294 (home-page "https://github.com/servo/rust-url/")
1295 (synopsis "Percent encoding and decoding")
1296 (description "This crate provides percent encoding and decoding.")
1297 (license (list license:asl2.0
1298 license:expat))))
1299
1300 (define-public rust-permutohedron
1301 (package
1302 (name "rust-permutohedron")
1303 (version "0.2.4")
1304 (source
1305 (origin
1306 (method url-fetch)
1307 (uri (crate-uri "permutohedron" version))
1308 (file-name (string-append name "-" version ".tar.gz"))
1309 (sha256
1310 (base32
1311 "0b1pzh48j86v46wxngch6k1kx9cdw3jr3lwa86gd6jd4bmxzz1xn"))))
1312 (build-system cargo-build-system)
1313 (home-page "https://github.com/bluss/permutohedron")
1314 (synopsis "Generate permutations of sequences")
1315 (description
1316 "Generate permutations of sequences. Either lexicographical order
1317 permutations, or a minimal swaps permutation sequence implemented using Heap's
1318 algorithm.")
1319 (license (list license:asl2.0
1320 license:expat))))
1321
1322 (define-public rust-pin-utils
1323 (package
1324 (name "rust-pin-utils")
1325 (version "0.1.0-alpha.4")
1326 (source
1327 (origin
1328 (method url-fetch)
1329 (uri (crate-uri "pin-utils" version))
1330 (file-name (string-append name "-" version ".tar.gz"))
1331 (sha256
1332 (base32
1333 "11xmyx00n4m37d546by2rxb8ryxs12v55cc172i3yak1rqccd52q"))))
1334 (build-system cargo-build-system)
1335 (home-page "https://github.com/rust-lang-nursery/pin-utils")
1336 (synopsis "Utilities for pinning")
1337 (description "This crate provides utilities for pinning values on the stack.")
1338 (license (list license:asl2.0
1339 license:expat))))
1340
1341 (define-public rust-pkg-config
1342 (package
1343 (name "rust-pkg-config")
1344 (version "0.3.14")
1345 (source
1346 (origin
1347 (method url-fetch)
1348 (uri (crate-uri "pkg-config" version))
1349 (file-name (string-append name "-" version ".tar.gz"))
1350 (sha256
1351 (base32
1352 "135ia995lqzr0gxpk85h0bjxf82kj6hbxdx924sh9jdln6r8wvk7"))))
1353 (build-system cargo-build-system)
1354 (arguments
1355 `(#:cargo-development-inputs
1356 (("rust-lazy-static" ,rust-lazy-static))))
1357 (inputs
1358 `(("pkg-config" ,pkg-config)))
1359 (home-page "https://github.com/alexcrichton/pkg-config-rs")
1360 (synopsis "Library to run the pkg-config system tool")
1361 (description
1362 "A library to run the pkg-config system tool at build time in order to be
1363 used in Cargo build scripts.")
1364 (license (list license:asl2.0
1365 license:expat))))
1366
1367 (define-public rust-plain
1368 (package
1369 (name "rust-plain")
1370 (version "0.2.3")
1371 (source
1372 (origin
1373 (method url-fetch)
1374 (uri (crate-uri "plain" version))
1375 (file-name (string-append name "-" version ".tar.gz"))
1376 (sha256
1377 (base32
1378 "19n1xbxb4wa7w891268bzf6cbwq4qvdb86bik1z129qb0xnnnndl"))))
1379 (build-system cargo-build-system)
1380 (home-page "https://github.com/randomites/plain")
1381 (synopsis "Rust library that allows reinterpreting data safely")
1382 (description "This package provides a small Rust library that allows users
1383 to reinterpret data of certain types safely.")
1384 (license (list license:asl2.0
1385 license:expat))))
1386
1387 (define-public rust-plugin
1388 (package
1389 (name "rust-plugin")
1390 (version "0.2.6")
1391 (source
1392 (origin
1393 (method url-fetch)
1394 (uri (crate-uri "plugin" version))
1395 (file-name (string-append name "-" version ".tar.gz"))
1396 (sha256
1397 (base32
1398 "1q7nghkpvxxr168y2jnzh3w7qc9vfrby9n7ygy3xpj0bj71hsshs"))))
1399 (build-system cargo-build-system)
1400 (arguments
1401 `(#:cargo-inputs
1402 (("rust-typemap" ,rust-typemap))
1403 #:cargo-development-inputs
1404 (("rust-void" ,rust-void))))
1405 (home-page "https://github.com/reem/rust-plugin")
1406 (synopsis "Lazily evaluated, order-independent plugins for extensible types")
1407 (description
1408 "Lazily evaluated, order-independent plugins for extensible types.")
1409 (license license:expat)))
1410
1411 (define-public rust-pocket-resources
1412 (package
1413 (name "rust-pocket-resources")
1414 (version "0.3.2")
1415 (source
1416 (origin
1417 (method url-fetch)
1418 (uri (crate-uri "pocket-resources" version))
1419 (file-name (string-append name "-" version ".tar.gz"))
1420 (sha256
1421 (base32
1422 "1n2i5vmi8fdbw89wm5nz1ws1z9f1qax911p6ksg4scmdg23z6df1"))))
1423 (build-system cargo-build-system)
1424 (home-page "https://github.com/tomaka/pocket-resources")
1425 (synopsis "Include resources in your applications")
1426 (description "This crate allows you to include resources in your
1427 applications.")
1428 (license license:expat)))
1429
1430 (define-public rust-ppv-lite86
1431 (package
1432 (name "rust-ppv-lite86")
1433 (version "0.2.5")
1434 (source
1435 (origin
1436 (method url-fetch)
1437 (uri (crate-uri "ppv-lite86" version))
1438 (file-name (string-append name "-" version ".tar.gz"))
1439 (sha256
1440 (base32
1441 "06snnv338w341nicfqba2jgln5dsla72ndkgrw7h1dfdb3vgkjz3"))))
1442 (build-system cargo-build-system)
1443 (home-page "https://github.com/cryptocorrosion/cryptocorrosion")
1444 (synopsis "Implementation of the crypto-simd API for x86")
1445 (description "This crate provides an implementation of the crypto-simd API
1446 for x86.")
1447 (license (list license:asl2.0
1448 license:expat))))
1449
1450 (define-public rust-proc-macro2
1451 (package
1452 (name "rust-proc-macro2")
1453 (version "0.4.30")
1454 (source
1455 (origin
1456 (method url-fetch)
1457 (uri (crate-uri "proc-macro2" version))
1458 (file-name
1459 (string-append name "-" version ".tar.gz"))
1460 (sha256
1461 (base32
1462 "0nd71fl24sys066jrha6j7i34nfkjv44yzw8yww9742wmc8j0gfg"))))
1463 (build-system cargo-build-system)
1464 (arguments
1465 `(#:cargo-inputs (("rust-unicode-xid" ,rust-unicode-xid-0.1))
1466 #:cargo-development-inputs (("rust-quote" ,rust-quote))))
1467 (home-page "https://github.com/alexcrichton/proc-macro2")
1468 (synopsis "Stable implementation of the upcoming new `proc_macro` API")
1469 (description "This package provides a stable implementation of the upcoming new
1470 `proc_macro` API. Comes with an option, off by default, to also reimplement itself
1471 in terms of the upstream unstable API.")
1472 ;; Dual licensed.
1473 (license (list license:asl2.0 license:expat))))
1474
1475 (define-public rust-quick-error
1476 (package
1477 (name "rust-quick-error")
1478 (version "1.2.2")
1479 (source
1480 (origin
1481 (method url-fetch)
1482 (uri (crate-uri "quick-error" version))
1483 (file-name (string-append name "-" version ".tar.gz"))
1484 (sha256
1485 (base32
1486 "1w6kgwwv7p7zr0yyg5rb315lkk24bimywklwx7fsvsbwi10bjx4j"))))
1487 (build-system cargo-build-system)
1488 (home-page "http://github.com/tailhook/quick-error")
1489 (synopsis "Macro which makes error types pleasant to write")
1490 (description "This crate provides a macro which makes error types pleasant
1491 to write.")
1492 (license (list license:asl2.0
1493 license:expat))))
1494
1495 (define-public rust-quote
1496 (package
1497 (name "rust-quote")
1498 (version "0.6.12")
1499 (source
1500 (origin
1501 (method url-fetch)
1502 (uri (crate-uri "quote" version))
1503 (file-name
1504 (string-append name "-" version ".tar.gz"))
1505 (sha256
1506 (base32
1507 "1nw0klza45hf127kfyrpxsxd5jw2l6h21qxalil3hkr7bnf7kx7s"))))
1508 (build-system cargo-build-system)
1509 (arguments
1510 `(#:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2))))
1511 (home-page "https://github.com/dtolnay/quote")
1512 (synopsis "Quasi-quoting macro quote!(...)")
1513 (description "Quasi-quoting macro quote!(...)")
1514 ;; Dual licensed.
1515 (license (list license:asl2.0 license:expat))))
1516
1517 (define-public rust-rand
1518 (package
1519 (name "rust-rand")
1520 (version "0.4.3")
1521 (source
1522 (origin
1523 (method url-fetch)
1524 (uri (crate-uri "rand" version))
1525 (file-name (string-append name "-" version ".tar.gz"))
1526 (sha256
1527 (base32
1528 "1gfgnqfj2pyh27dcb720jpawskllwnbvxh816ddyykv269xz8ml3"))))
1529 (build-system cargo-build-system)
1530 (arguments
1531 `(#:cargo-inputs
1532 (("rust-fuchsia-zircon" ,rust-fuchsia-zircon)
1533 ("rust-libc" ,rust-libc)
1534 ("rust-winapi" ,rust-winapi))))
1535 (home-page "https://crates.io/crates/rand")
1536 (synopsis "Random number generators and other randomness functionality")
1537 (description
1538 "Rand provides utilities to generate random numbers, to convert them to
1539 useful types and distributions, and some randomness-related algorithms.")
1540 (license (list license:asl2.0
1541 license:expat))))
1542
1543 (define-public rust-rand-0.3
1544 (package
1545 (inherit rust-rand)
1546 (name "rust-rand")
1547 (version "0.3.23")
1548 (source
1549 (origin
1550 (method url-fetch)
1551 (uri (crate-uri "rand" version))
1552 (file-name (string-append name "-" version ".tar.gz"))
1553 (sha256
1554 (base32
1555 "0v679h38pjjqj5h4md7v2slsvj6686qgcn7p9fbw3h43iwnk1b34"))))
1556 (arguments
1557 `(#:cargo-inputs
1558 (("rust-libc" ,rust-libc)
1559 ("rust-rand" ,rust-rand))))))
1560
1561 (define-public rust-rawpointer
1562 (package
1563 (name "rust-rawpointer")
1564 (version "0.1.0")
1565 (source
1566 (origin
1567 (method url-fetch)
1568 (uri (crate-uri "rawpointer" version))
1569 (file-name (string-append name "-" version ".tar.gz"))
1570 (sha256
1571 (base32
1572 "06ghpm9y7gacks78s3maakha07kbnwrxif5q37r2l7z1sali3b7b"))))
1573 (build-system cargo-build-system)
1574 (home-page "https://github.com/bluss/rawpointer/")
1575 (synopsis "Extra methods for raw pointers")
1576 (description "Extra methods for raw pointers. For example
1577 @code{.post_inc()} and @code{.pre_dec()} (c.f. @code{ptr++} and @code{--ptr})
1578 and @code{ptrdistance}.")
1579 (license (list license:asl2.0
1580 license:expat))))
1581
1582 ;; This package requires features which are unavailable
1583 ;; on the stable releases of Rust.
1584 (define-public rust-redox-syscall ; guix upstreamable
1585 (package
1586 (name "rust-redox-syscall")
1587 (version "0.1.56")
1588 (source
1589 (origin
1590 (method url-fetch)
1591 (uri (crate-uri "redox_syscall" version))
1592 (file-name (string-append name "-" version ".tar.gz"))
1593 (sha256
1594 (base32
1595 "110y7dyfm2vci4x5vk7gr0q551dvp31npl99fnsx2fb17wzwcf94"))))
1596 (build-system cargo-build-system)
1597 (home-page "https://gitlab.redox-os.org/redox-os/syscall")
1598 (synopsis "Rust library to access raw Redox system calls")
1599 (description "This package provides a Rust library to access raw Redox
1600 system calls.")
1601 (properties '((hidden? . #t)))
1602 (license license:expat)))
1603
1604 (define-public rust-regex-syntax
1605 (package
1606 (name "rust-regex-syntax")
1607 (version "0.6.10")
1608 (source
1609 (origin
1610 (method url-fetch)
1611 (uri (crate-uri "regex-syntax" version))
1612 (file-name (string-append name "-" version ".tar.gz"))
1613 (sha256
1614 (base32
1615 "0p47lf38yj2g2fnmvnraccqlxwk35zr76hlnqi8yva932nzqam6d"))))
1616 (build-system cargo-build-system)
1617 (arguments
1618 `(#:cargo-inputs
1619 (("rust-ucd-util" ,rust-ucd-util))))
1620 (home-page "https://github.com/rust-lang/regex")
1621 (synopsis "Regular expression parser")
1622 (description
1623 "This package provides a regular expression parser.")
1624 (license (list license:asl2.0
1625 license:expat))))
1626
1627 (define-public rust-remove-dir-all
1628 (package
1629 (name "rust-remove-dir-all")
1630 (version "0.5.2")
1631 (source
1632 (origin
1633 (method url-fetch)
1634 (uri (crate-uri "remove_dir_all" version))
1635 (file-name (string-append name "-" version ".tar.gz"))
1636 (sha256
1637 (base32
1638 "0bkrlyg26mgizpiy1yb2hhpgscxcag8r5fnckqsvk25608vzm0sa"))))
1639 (build-system cargo-build-system)
1640 (arguments
1641 `(#:cargo-inputs
1642 (("rust-winapi" ,rust-winapi))
1643 #:cargo-development-inputs
1644 (("rust-doc-comment" ,rust-doc-comment))
1645 #:phases
1646 (modify-phases %standard-phases
1647 (add-after 'unpack 'fix-source
1648 ;; The test phase expects there to be a README.md in the root directory.
1649 (lambda _
1650 (invoke "touch" "README.md"))))))
1651 (home-page "https://github.com/XAMPPRocky/remove_dir_all.git")
1652 (synopsis "Implementation of remove_dir_all for Windows")
1653 (description
1654 "This package provides a safe, reliable implementation of
1655 @code{remove_dir_all} for Windows")
1656 (license (list license:asl2.0
1657 license:expat))))
1658
1659 (define-public rust-resolv-conf
1660 (package
1661 (name "rust-resolv-conf")
1662 (version "0.6.2")
1663 (source
1664 (origin
1665 (method url-fetch)
1666 (uri (crate-uri "resolv-conf" version))
1667 (file-name (string-append name "-" version ".tar.gz"))
1668 (sha256
1669 (base32
1670 "1jvdsmksdf6yiipm3aqahyv8n1cjd7wqc8sa0p0gzsax3fmb8qxj"))))
1671 (build-system cargo-build-system)
1672 (arguments
1673 `(#:cargo-inputs
1674 (("rust-quick-error" ,rust-quick-error)
1675 ("rust-hostname" ,rust-hostname))
1676 #:cargo-test-flags '("--release" "--lib" "--examples"))) ; doc tests fail
1677 (home-page "https://github.com/tailhook/resolv-conf")
1678 (synopsis "/etc/resolv.conf parser")
1679 (description
1680 "An /etc/resolv.conf parser crate for Rust.")
1681 (license (list license:asl2.0
1682 license:expat))))
1683
1684 (define-public rust-rustc-std-workspace-core
1685 (package
1686 (name "rust-rustc-std-workspace-core")
1687 (version "1.0.0")
1688 (source
1689 (origin
1690 (method url-fetch)
1691 (uri (crate-uri "rustc-std-workspace-core" version))
1692 (file-name (string-append name "-" version ".tar.gz"))
1693 (sha256
1694 (base32
1695 "1309xhwyai9xpz128xrfjqkmnkvgjwddznmj7brbd8i8f58zamhr"))))
1696 (build-system cargo-build-system)
1697 (home-page "https://crates.io/crates/rustc-std-workspace-core")
1698 (synopsis "Explicitly empty crate for rust-lang/rust integration")
1699 (description "This crate provides an explicitly empty crate for
1700 rust-lang/rust integration.")
1701 (license (list license:asl2.0
1702 license:expat))))
1703
1704 (define-public rust-safemem
1705 (package
1706 (name "rust-safemem")
1707 (version "0.3.2")
1708 (source
1709 (origin
1710 (method url-fetch)
1711 (uri (crate-uri "safemem" version))
1712 (file-name (string-append name "-" version ".tar.gz"))
1713 (sha256
1714 (base32
1715 "1l1ljkm4lpyryrv2ndaxi1f7z1f3v9bwy1rzl9f9mbhx04iq9c6j"))))
1716 (build-system cargo-build-system)
1717 (home-page "https://github.com/abonander/safemem")
1718 (synopsis "Safe wrappers for memory-accessing functions")
1719 (description
1720 "Safe wrappers for memory-accessing functions, like @code{std::ptr::copy()}.")
1721 (license (list license:asl2.0
1722 license:expat))))
1723
1724 (define-public rust-same-file
1725 (package
1726 (name "rust-same-file")
1727 (version "1.0.5")
1728 (source
1729 (origin
1730 (method url-fetch)
1731 (uri (crate-uri "same-file" version))
1732 (file-name (string-append name "-" version ".tar.gz"))
1733 (sha256
1734 (base32
1735 "08a4zy10pjindf2rah320s6shgswk13mqw7s61m8i1y1xpf8spjq"))))
1736 (build-system cargo-build-system)
1737 (arguments
1738 `(#:cargo-inputs
1739 (("rust-winapi-util" ,rust-winapi-util))))
1740 (home-page "https://github.com/BurntSushi/same-file")
1741 (synopsis "Determine whether two file paths point to the same file")
1742 (description
1743 "This package provides a simple crate for determining whether two file
1744 paths point to the same file.")
1745 (license (list license:unlicense
1746 license:expat))))
1747
1748 (define-public rust-schannel
1749 (package
1750 (name "rust-schannel")
1751 (version "0.1.15")
1752 (source
1753 (origin
1754 (method url-fetch)
1755 (uri (crate-uri "schannel" version))
1756 (file-name (string-append name "-" version ".tar.gz"))
1757 (sha256
1758 (base32
1759 "0f9k4pm8yc3z0n1n8hazvnrvg52f0sfxjc91bhf3r76rb3rapxpj"))))
1760 (build-system cargo-build-system)
1761 (arguments
1762 `(#:cargo-inputs
1763 (("rust-lazy-static" ,rust-lazy-static)
1764 ("rust-winapi" ,rust-winapi))))
1765 (home-page "https://github.com/steffengy/schannel-rs")
1766 (synopsis "Rust bindings to the Windows SChannel APIs")
1767 (description
1768 "Rust bindings to the Windows SChannel APIs providing TLS client and
1769 server functionality.")
1770 (license license:expat)))
1771
1772 (define-public rust-scoped-threadpool
1773 (package
1774 (name "rust-scoped-threadpool")
1775 (version "0.1.9")
1776 (source
1777 (origin
1778 (method url-fetch)
1779 (uri (crate-uri "scoped_threadpool" version))
1780 (file-name (string-append name "-" version ".tar.gz"))
1781 (sha256
1782 (base32
1783 "1a26d3lk40s9mrf4imhbik7caahmw2jryhhb6vqv6fplbbgzal8x"))))
1784 (build-system cargo-build-system)
1785 (arguments
1786 `(#:cargo-development-inputs
1787 (("rust-lazy-static" ,rust-lazy-static))))
1788 (home-page "https://github.com/Kimundi/scoped-threadpool-rs")
1789 (synopsis "library for scoped and cached threadpools")
1790 (description
1791 "This crate provides a stable, safe and scoped threadpool. It can be used
1792 to execute a number of short-lived jobs in parallel without the need to respawn
1793 the underlying threads. Jobs are runnable by borrowing the pool for a given
1794 scope, during which an arbitrary number of them can be executed. These jobs can
1795 access data of any lifetime outside of the pools scope, which allows working on
1796 non-'static references in parallel.")
1797 (license (list license:asl2.0
1798 license:expat))))
1799
1800 (define-public rust-scoped-tls
1801 (package
1802 (name "rust-scoped-tls")
1803 (version "1.0.0")
1804 (source
1805 (origin
1806 (method url-fetch)
1807 (uri (crate-uri "scoped-tls" version))
1808 (file-name (string-append name "-" version ".tar.gz"))
1809 (sha256
1810 (base32
1811 "1hj8lifzvivdb1z02lfnzkshpvk85nkgzxsy2hc0zky9wf894spa"))))
1812 (build-system cargo-build-system)
1813 (home-page "https://github.com/alexcrichton/scoped-tls")
1814 (synopsis "Rust library providing the old standard library's scoped_thread_local")
1815 (description "This crate provides a library implementation of the standard
1816 library's old @code{scoped_thread_local!} macro for providing scoped access to
1817 @dfn{thread local storage} (TLS) so any type can be stored into TLS.")
1818 (license (list license:asl2.0
1819 license:expat))))
1820
1821 (define-public rust-scoped-tls-0.1
1822 (package
1823 (inherit rust-scoped-tls)
1824 (name "rust-scoped-tls")
1825 (version "0.1.2")
1826 (source
1827 (origin
1828 (method url-fetch)
1829 (uri (crate-uri "scoped-tls" version))
1830 (file-name (string-append name "-" version ".tar.gz"))
1831 (sha256
1832 (base32
1833 "0a2bn9d2mb07c6l16sadijy4p540g498zddfxyiq4rsqpwrglbrk"))))))
1834
1835 (define-public rust-scopeguard
1836 (package
1837 (name "rust-scopeguard")
1838 (version "1.0.0")
1839 (source
1840 (origin
1841 (method url-fetch)
1842 (uri (crate-uri "scopeguard" version))
1843 (file-name (string-append name "-" version ".tar.gz"))
1844 (sha256
1845 (base32
1846 "03aay84r1f6w87ckbpj6cc4rnsxkxcfs13n5ynxjia0qkgjiabml"))))
1847 (build-system cargo-build-system)
1848 (home-page "https://github.com/bluss/scopeguard")
1849 (synopsis "Scope guard which will run a closure even out of scope")
1850 (description "This package provides a RAII scope guard that will run a
1851 given closure when it goes out of scope, even if the code between panics
1852 (assuming unwinding panic). Defines the macros @code{defer!},
1853 @code{defer_on_unwind!}, @code{defer_on_success!} as shorthands for guards
1854 with one of the implemented strategies.")
1855 (license (list license:asl2.0
1856 license:expat))))
1857
1858 (define-public rust-scopeguard-0.3
1859 (package
1860 (inherit rust-scopeguard)
1861 (name "rust-scopeguard")
1862 (version "0.3.3")
1863 (source
1864 (origin
1865 (method url-fetch)
1866 (uri (crate-uri "scopeguard" version))
1867 (file-name
1868 (string-append name "-" version ".tar.gz"))
1869 (sha256
1870 (base32
1871 "09sy9wbqp409pkwmqni40qmwa99ldqpl48pp95m1xw8sc19qy9cl"))))))
1872
1873 (define-public rust-security-framework-sys
1874 (package
1875 (name "rust-security-framework-sys")
1876 (version "0.3.1")
1877 (source
1878 (origin
1879 (method url-fetch)
1880 (uri (crate-uri "security-framework-sys" version))
1881 (file-name (string-append name "-" version ".tar.gz"))
1882 (sha256
1883 (base32
1884 "0mlsakq9kmqyc0fg2hcbgm6rjk55mb0rhjw2wid3hqdzkjcghdln"))))
1885 (build-system cargo-build-system)
1886 (arguments
1887 `(#:cargo-inputs
1888 (("rust-core-foundation-sys"
1889 ,rust-core-foundation-sys))))
1890 (home-page "https://lib.rs/crates/security-framework-sys")
1891 (synopsis "Apple `Security.framework` low-level FFI bindings")
1892 (description
1893 "Apple `Security.framework` low-level FFI bindings.")
1894 (license (list license:asl2.0
1895 license:expat))))
1896
1897 (define-public rust-semver-parser
1898 (package
1899 (name "rust-semver-parser")
1900 (version "0.9.0")
1901 (source
1902 (origin
1903 (method url-fetch)
1904 (uri (crate-uri "semver-parser" version))
1905 (file-name (string-append name "-" version ".tar.gz"))
1906 (sha256
1907 (base32
1908 "1ahqhvgpzhcsd28id7xnrjv4419i9yyalhm7d7zi430qx0hi2vml"))))
1909 (build-system cargo-build-system)
1910 (home-page "https://github.com/steveklabnik/semver-parser")
1911 (synopsis "Parsing of the semver spec")
1912 (description "This package provides for parsing of the semver spec.")
1913 (license (list license:asl2.0
1914 license:expat))))
1915
1916 (define-public rust-shlex
1917 (package
1918 (name "rust-shlex")
1919 (version "0.1.1")
1920 (source
1921 (origin
1922 (method url-fetch)
1923 (uri (crate-uri "shlex" version))
1924 (file-name (string-append name "-" version ".tar.gz"))
1925 (sha256
1926 (base32
1927 "1lmv6san7g8dv6jdfp14m7bdczq9ss7j7bgsfqyqjc3jnjfippvz"))))
1928 (build-system cargo-build-system)
1929 (home-page "https://github.com/comex/rust-shlex")
1930 (synopsis "Split a string into shell words, like Python's shlex")
1931 (description "This crate provides a method to split a string into shell
1932 words, like Python's shlex.")
1933 (license (list license:asl2.0
1934 license:expat))))
1935
1936 (define-public rust-slab
1937 (package
1938 (name "rust-slab")
1939 (version "0.4.2")
1940 (source
1941 (origin
1942 (method url-fetch)
1943 (uri (crate-uri "slab" version))
1944 (file-name (string-append name "-" version ".tar.gz"))
1945 (sha256
1946 (base32
1947 "1y59xsa27jk84sxzswjk60xcjf8b4fm5960jwpznrrcmasyva4f1"))))
1948 (build-system cargo-build-system)
1949 (home-page "https://github.com/carllerche/slab")
1950 (synopsis "Pre-allocated storage for a uniform data type")
1951 (description "This create provides a pre-allocated storage for a uniform
1952 data type.")
1953 (license license:expat)))
1954
1955 (define-public rust-spin
1956 (package
1957 (name "rust-spin")
1958 (version "0.5.0")
1959 (source
1960 (origin
1961 (method url-fetch)
1962 (uri (crate-uri "spin" version))
1963 (file-name (string-append name "-" version ".tar.gz"))
1964 (sha256
1965 (base32
1966 "0m9clchsj0rf13bggsgvbv9haiy0f6rhvnvkpvkk8720a5pkydj4"))))
1967 (build-system cargo-build-system)
1968 (home-page "https://github.com/mvdnes/spin-rs.git")
1969 (synopsis "Synchronization primitives based on spinning")
1970 (description "This crate provides synchronization primitives based on
1971 spinning. They may contain data, are usable without @code{std},and static
1972 initializers are available.")
1973 (license license:expat)))
1974
1975 (define-public rust-stable-deref-trait
1976 (package
1977 (name "rust-stable-deref-trait")
1978 (version "1.1.1")
1979 (source
1980 (origin
1981 (method url-fetch)
1982 (uri (crate-uri "stable_deref_trait" version))
1983 (file-name (string-append name "-" version ".tar.gz"))
1984 (sha256
1985 (base32
1986 "1j2lkgakksmz4vc5hfawcch2ipiskrhjs1sih0f3br7s7rys58fv"))))
1987 (build-system cargo-build-system)
1988 (home-page "https://github.com/storyyeller/stable_deref_trait0")
1989 (synopsis "Defines an unsafe marker trait, StableDeref")
1990 (description
1991 "This crate defines an unsafe marker trait, StableDeref, for container
1992 types which deref to a fixed address which is valid even when the containing
1993 type is moved. For example, Box, Vec, Rc, Arc and String implement this trait.
1994 Additionally, it defines CloneStableDeref for types like Rc where clones deref
1995 to the same address.")
1996 (license (list license:asl2.0
1997 license:expat))))
1998
1999 (define-public rust-stdweb-internal-runtime
2000 (package
2001 (name "rust-stdweb-internal-runtime")
2002 (version "0.1.4")
2003 (source
2004 (origin
2005 (method url-fetch)
2006 (uri (crate-uri "stdweb-internal-runtime" version))
2007 (file-name (string-append name "-" version ".tar.gz"))
2008 (sha256
2009 (base32
2010 "1nhpyra7glbwcpakhpj5a3d7h7kx1ynif473nzshmk226m91f8ym"))))
2011 (build-system cargo-build-system)
2012 (home-page "https://github.com/koute/stdweb")
2013 (synopsis "Internal runtime for the @code{stdweb} crate")
2014 (description "This crate provides internal runtime for the @code{stdweb}
2015 crate.")
2016 (license (list license:asl2.0
2017 license:expat))))
2018
2019 (define-public rust-stdweb-internal-test-macro
2020 (package
2021 (name "rust-stdweb-internal-test-macro")
2022 (version "0.1.0")
2023 (source
2024 (origin
2025 (method url-fetch)
2026 (uri (crate-uri "stdweb-internal-test-macro" version))
2027 (file-name (string-append name "-" version ".tar.gz"))
2028 (sha256
2029 (base32
2030 "12rrm7p77xnm3xacgn3rgniiyyjb4gq7902wpbljsvbx045z69l2"))))
2031 (build-system cargo-build-system)
2032 (arguments
2033 `(#:cargo-inputs
2034 (("rust-proc-macro2" ,rust-proc-macro2)
2035 ("rust-quote" ,rust-quote))))
2036 (home-page "https://github.com/koute/stdweb")
2037 (synopsis "Internal crate of the `stdweb` crate")
2038 (description
2039 "Internal crate of the @code{stdweb} crate.")
2040 (license (list license:asl2.0
2041 license:expat))))
2042
2043 (define-public rust-streaming-stats
2044 (package
2045 (name "rust-streaming-stats")
2046 (version "0.2.2")
2047 (source
2048 (origin
2049 (method url-fetch)
2050 (uri (crate-uri "streaming-stats" version))
2051 (file-name (string-append name "-" version ".tar.gz"))
2052 (sha256
2053 (base32
2054 "0l7xz4g6709s80zqpvlhrg0qhgz64r94cwhmfsg8xhabgznbp2px"))))
2055 (build-system cargo-build-system)
2056 (arguments
2057 `(#:cargo-inputs
2058 (("rust-num-traits" ,rust-num-traits))))
2059 (home-page "https://github.com/BurntSushi/rust-stats")
2060 (synopsis "Compute basic statistics on streams")
2061 (description
2062 "Experimental crate for computing basic statistics on streams.")
2063 (license (list license:unlicense
2064 license:expat))))
2065
2066 (define-public rust-strsim
2067 (package
2068 (name "rust-strsim")
2069 (version "0.9.2")
2070 (source
2071 (origin
2072 (method url-fetch)
2073 (uri (crate-uri "strsim" version))
2074 (file-name (string-append name "-" version ".tar.gz"))
2075 (sha256
2076 (base32
2077 "1xphwhf86yxxmcpvm4mikj8ls41f6nf7gqyjm98b74mfk81h6b03"))))
2078 (build-system cargo-build-system)
2079 (home-page "https://github.com/dguo/strsim-rs")
2080 (synopsis "Rust implementations of string similarity metrics")
2081 (description "This crate includes implementations of string similarity
2082 metrics. It includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro,
2083 and Jaro-Winkler.")
2084 (license license:expat)))
2085
2086 (define-public rust-synstructure-test-traits
2087 (package
2088 (name "rust-synstructure-test-traits")
2089 (version "0.1.0")
2090 (source
2091 (origin
2092 (method url-fetch)
2093 (uri (crate-uri "synstructure_test_traits" version))
2094 (file-name (string-append name "-" version ".tar.gz"))
2095 (sha256
2096 (base32
2097 "1b3fs2b9kc1gy9dilaxqjbdl4z0mlrbbxjzkprdx953rif1c3q66"))))
2098 (build-system cargo-build-system)
2099 (home-page "https://crates.io/crates/synstructure_test_traits")
2100 (synopsis "Helper test traits for synstructure doctests")
2101 (description
2102 "This package provides helper test traits for synstructure doctests.")
2103 (license license:expat)))
2104
2105 (define-public rust-termcolor
2106 (package
2107 (name "rust-termcolor")
2108 (version "1.0.5")
2109 (source
2110 (origin
2111 (method url-fetch)
2112 (uri (crate-uri "termcolor" version))
2113 (file-name (string-append name "-" version ".tar.gz"))
2114 (sha256
2115 (base32
2116 "0vjfsn1a8zvqhnrbygrz1id6yckwv1dncw3w4zj65qdx0f00kmln"))))
2117 (build-system cargo-build-system)
2118 (arguments
2119 `(#:cargo-inputs
2120 (("rust-wincolor" ,rust-wincolor))))
2121 (home-page "https://github.com/BurntSushi/termcolor")
2122 (synopsis "Library for writing colored text to a terminal")
2123 (description "This package provides a simple cross platform library for
2124 writing colored text to a terminal.")
2125 (license (list license:unlicense
2126 license:expat))))
2127
2128 (define-public rust-termios
2129 (package
2130 (name "rust-termios")
2131 (version "0.3.1")
2132 (source
2133 (origin
2134 (method url-fetch)
2135 (uri (crate-uri "termios" version))
2136 (file-name (string-append name "-" version ".tar.gz"))
2137 (sha256
2138 (base32
2139 "09any1p4jp4bphvb5ikagnvwjc3xn2djchy96nkpa782xb2j1dkj"))))
2140 (build-system cargo-build-system)
2141 (arguments
2142 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
2143 (home-page "https://github.com/dcuddeback/termios-rs")
2144 (synopsis "Safe bindings for the termios library")
2145 (description
2146 "The termios crate provides safe bindings for the Rust programming language
2147 to the terminal I/O interface implemented by Unix operating systems. The safe
2148 bindings are a small wrapper around the raw C functions, which converts integer
2149 return values to @code{std::io::Result} to indicate success or failure.")
2150 (license license:expat)))
2151
2152 (define-public rust-thread-id
2153 (package
2154 (name "rust-thread-id")
2155 (version "3.3.0")
2156 (source
2157 (origin
2158 (method url-fetch)
2159 (uri (crate-uri "thread-id" version))
2160 (file-name (string-append name "-" version ".tar.gz"))
2161 (sha256
2162 (base32
2163 "1h90v19fjz3x9b25ywh68z5yf2zsmm6h5zb4rl302ckbsp4z9yy7"))))
2164 (build-system cargo-build-system)
2165 (arguments
2166 `(#:cargo-inputs
2167 (("rust-libc" ,rust-libc)
2168 ("rust-redox-syscall" ,rust-redox-syscall)
2169 ("rust-winapi" ,rust-winapi))))
2170 (home-page "https://github.com/ruuda/thread-id")
2171 (synopsis "Get a unique ID for the current thread in Rust")
2172 (description
2173 "For diagnostics and debugging it can often be useful to get an ID that is
2174 different for every thread.")
2175 (license (list license:asl2.0
2176 license:expat))))
2177
2178 (define-public rust-thread-local
2179 (package
2180 (name "rust-thread-local")
2181 (version "0.3.6")
2182 (source
2183 (origin
2184 (method url-fetch)
2185 (uri (crate-uri "thread_local" version))
2186 (file-name (string-append name "-" version ".tar.gz"))
2187 (sha256
2188 (base32
2189 "06rzik99p8c5js8238yhc8rk6np543ylb1dy9nrw5v80j0r3xdf6"))))
2190 (build-system cargo-build-system)
2191 (arguments
2192 `(#:cargo-inputs
2193 (("rust-lazy-static" ,rust-lazy-static))))
2194 (home-page "https://github.com/Amanieu/thread_local-rs")
2195 (synopsis "Per-object thread-local storage")
2196 (description "Per-object thread-local storage")
2197 (license (list license:asl2.0
2198 license:expat))))
2199
2200 (define-public rust-threadpool
2201 (package
2202 (name "rust-threadpool")
2203 (version "1.7.1")
2204 (source
2205 (origin
2206 (method url-fetch)
2207 (uri (crate-uri "threadpool" version))
2208 (file-name (string-append name "-" version ".tar.gz"))
2209 (sha256
2210 (base32
2211 "0rd89n1q7vy47w4c32cnynibffv9kj3jy3dwr0536n9lbw5ckw72"))))
2212 (build-system cargo-build-system)
2213 (arguments
2214 `(#:cargo-inputs
2215 (("rust-num-cpus" ,rust-num-cpus))))
2216 (home-page "https://github.com/rust-threadpool/rust-threadpool")
2217 (synopsis "Thread pool for running jobs on a fixed set of worker threads")
2218 (description
2219 "This package provides a thread pool for running a number of jobs on a
2220 fixed set of worker threads.")
2221 (license (list license:asl2.0
2222 license:expat))))
2223
2224 (define-public rust-tokio-mock-task
2225 (package
2226 (name "rust-tokio-mock-task")
2227 (version "0.1.1")
2228 (source
2229 (origin
2230 (method url-fetch)
2231 (uri (crate-uri "tokio-mock-task" version))
2232 (file-name (string-append name "-" version ".tar.gz"))
2233 (sha256
2234 (base32
2235 "1y7q83qfk9ljjfvs82b453pmz9x1v3d6kr4x55j8mal01s6790dw"))))
2236 (build-system cargo-build-system)
2237 (arguments
2238 `(#:cargo-inputs (("rust-futures" ,rust-futures))))
2239 (home-page "https://github.com/carllerche/tokio-mock-task")
2240 (synopsis "Mock a Tokio task")
2241 (description "Mock a Tokio task")
2242 (license license:expat)))
2243
2244 (define-public rust-tracing-core
2245 (package
2246 (name "rust-tracing-core")
2247 (version "0.1.2")
2248 (source
2249 (origin
2250 (method url-fetch)
2251 (uri (crate-uri "tracing-core" version))
2252 (file-name (string-append name "-" version ".tar.gz"))
2253 (sha256
2254 (base32
2255 "01fa73wzw2m5ybi3kkd52dgrw97mgc3i6inmhwys46ab28giwnxi"))))
2256 (build-system cargo-build-system)
2257 (arguments
2258 `(#:cargo-inputs
2259 (("rust-lazy-static" ,rust-lazy-static))))
2260 (home-page "https://tokio.rs")
2261 (synopsis "Core primitives for application-level tracing")
2262 (description
2263 "Core primitives for application-level tracing.")
2264 (license (list license:asl2.0
2265 license:expat))))
2266
2267 (define-public rust-traitobject
2268 (package
2269 (name "rust-traitobject")
2270 (version "0.1.0")
2271 (source
2272 (origin
2273 (method url-fetch)
2274 (uri (crate-uri "traitobject" version))
2275 (file-name (string-append name "-" version ".tar.gz"))
2276 (sha256
2277 (base32
2278 "0yb0n8822mr59j200fyr2fxgzzgqljyxflx9y8bdy3rlaqngilgg"))))
2279 (build-system cargo-build-system)
2280 (home-page "https://github.com/reem/rust-traitobject.git")
2281 (synopsis "Unsafe helpers for dealing with raw trait objects")
2282 (description "Unsafe helpers for dealing with raw trait objects.")
2283 (license (list license:asl2.0
2284 license:expat))))
2285
2286 (define-public rust-try-from
2287 (package
2288 (name "rust-try-from")
2289 (version "0.3.2")
2290 (source
2291 (origin
2292 (method url-fetch)
2293 (uri (crate-uri "try_from" version))
2294 (file-name (string-append name "-" version ".tar.gz"))
2295 (sha256
2296 (base32
2297 "12wdd4ja7047sd3rx70hv2056hyc8gcdllcx3a41g1rnw64kng98"))))
2298 (build-system cargo-build-system)
2299 (arguments
2300 `(#:cargo-inputs
2301 (("rust-cfg-if" ,rust-cfg-if))))
2302 (home-page "https://github.com/derekjw/try_from")
2303 (synopsis "TryFrom and TryInto traits for failable conversions")
2304 (description
2305 "TryFrom and TryInto traits for failable conversions that return a Result.")
2306 (license license:expat)))
2307
2308 (define-public rust-try-lock
2309 (package
2310 (name "rust-try-lock")
2311 (version "0.2.2")
2312 (source
2313 (origin
2314 (method url-fetch)
2315 (uri (crate-uri "try-lock" version))
2316 (file-name (string-append name "-" version ".tar.gz"))
2317 (sha256
2318 (base32
2319 "10p36rx6pqi9d0zr876xa8vksx2m66ha45myakl50rn08dxyn176"))))
2320 (build-system cargo-build-system)
2321 (home-page "https://github.com/seanmonstar/try-lock")
2322 (synopsis "Lightweight atomic lock")
2323 (description
2324 "This package provides a lightweight atomic lock.")
2325 (license license:expat)))
2326
2327 (define-public rust-typeable
2328 (package
2329 (name "rust-typeable")
2330 (version "0.1.2")
2331 (source
2332 (origin
2333 (method url-fetch)
2334 (uri (crate-uri "typeable" version))
2335 (file-name (string-append name "-" version ".tar.gz"))
2336 (sha256
2337 (base32
2338 "11w8dywgnm32hb291izjvh4zjd037ccnkk77ahk63l913zwzc40l"))))
2339 (build-system cargo-build-system)
2340 (home-page "https://github.com/reem/rust-typeable")
2341 (synopsis "Exposes Typeable, for getting TypeIds at runtime")
2342 (description "Exposes Typeable, for getting TypeIds at runtime.")
2343 (license license:expat)))
2344
2345 (define-public rust-typemap
2346 (package
2347 (name "rust-typemap")
2348 (version "0.3.3")
2349 (source
2350 (origin
2351 (method url-fetch)
2352 (uri (crate-uri "typemap" version))
2353 (file-name (string-append name "-" version ".tar.gz"))
2354 (sha256
2355 (base32
2356 "1xm1gbvz9qisj1l6d36hrl9pw8imr8ngs6qyanjnsad3h0yfcfv5"))))
2357 (build-system cargo-build-system)
2358 (arguments
2359 `(#:cargo-inputs
2360 (("rust-unsafe-any" ,rust-unsafe-any))))
2361 (home-page "https://github.com/reem/rust-typemap")
2362 (synopsis "Typesafe store for many value types")
2363 (description
2364 "A typesafe store for many value types.")
2365 (license license:expat)))
2366
2367 (define-public rust-typenum
2368 (package
2369 (name "rust-typenum")
2370 (version "1.10.0")
2371 (source
2372 (origin
2373 (method url-fetch)
2374 (uri (crate-uri "typenum" version))
2375 (file-name (string-append name "-" version ".tar.gz"))
2376 (sha256
2377 (base32
2378 "0sc1jirllfhdi52z1xv9yqzxzpk6v7vadd13n7wvs1wnjipn6bb1"))))
2379 (build-system cargo-build-system)
2380 (home-page "https://github.com/paholg/typenum")
2381 (synopsis "Rust library for type-level numbers evaluated at compile time")
2382 (description "Typenum is a Rust library for type-level numbers evaluated at
2383 compile time. It currently supports bits, unsigned integers, and signed
2384 integers. It also provides a type-level array of type-level numbers, but its
2385 implementation is incomplete.")
2386 (license (list license:asl2.0
2387 license:expat))))
2388
2389 (define-public rust-ucd-trie
2390 (package
2391 (name "rust-ucd-trie")
2392 (version "0.1.2")
2393 (source
2394 (origin
2395 (method url-fetch)
2396 (uri (crate-uri "ucd-trie" version))
2397 (file-name (string-append name "-" version ".tar.gz"))
2398 (sha256
2399 (base32
2400 "1hh6kyzh5xygwy96wfmsf8v8czlzhps2lgbcyhj1xzy1w1xys04g"))))
2401 (build-system cargo-build-system)
2402 (arguments
2403 `(#:cargo-development-inputs
2404 (("rust-lazy-static" ,rust-lazy-static))))
2405 (home-page "https://github.com/BurntSushi/ucd-generate")
2406 (synopsis "Trie for storing Unicode codepoint sets and maps")
2407 (description
2408 "This package provides a trie for storing Unicode codepoint sets and maps.")
2409 (license (list license:asl2.0
2410 license:expat))))
2411
2412 (define-public rust-ucd-util
2413 (package
2414 (name "rust-ucd-util")
2415 (version "0.1.5")
2416 (source
2417 (origin
2418 (method url-fetch)
2419 (uri (crate-uri "ucd-util" version))
2420 (file-name (string-append name "-" version ".tar.gz"))
2421 (sha256
2422 (base32
2423 "0x088q5z0m09a2jqcfgsnq955y8syn1mgn35cl78qinkxm4kp6zs"))))
2424 (build-system cargo-build-system)
2425 (home-page "https://github.com/BurntSushi/ucd-generate")
2426 (synopsis "library for working with the Unicode character database")
2427 (description "This package provides a small utility library for working
2428 with the Unicode character database.")
2429 (license (list license:asl2.0
2430 license:expat))))
2431
2432 (define-public rust-unicase
2433 (package
2434 (name "rust-unicase")
2435 (version "2.4.0")
2436 (source
2437 (origin
2438 (method url-fetch)
2439 (uri (crate-uri "unicase" version))
2440 (file-name (string-append name "-" version ".tar.gz"))
2441 (sha256
2442 (base32
2443 "1xmpmkakhhblq7dzab1kwyv925kv7fqjkjsxjspg6ix9n88makm8"))))
2444 (build-system cargo-build-system)
2445 (arguments
2446 `(#:cargo-inputs (("rust-version-check" ,rust-version-check-0.1))))
2447 (home-page "https://github.com/seanmonstar/unicase")
2448 (synopsis "Case-insensitive wrapper around strings")
2449 (description
2450 "A case-insensitive wrapper around strings.")
2451 (license (list license:asl2.0
2452 license:expat))))
2453
2454 (define-public rust-unicode-width
2455 (package
2456 (name "rust-unicode-width")
2457 (version "0.1.5")
2458 (source
2459 (origin
2460 (method url-fetch)
2461 (uri (crate-uri "unicode-width" version))
2462 (file-name (string-append name "-" version ".tar.gz"))
2463 (sha256
2464 (base32
2465 "09k5lipygardwy0660jhls08fsgknrazzivmn804gps53hiqc8w8"))))
2466 (build-system cargo-build-system)
2467 (home-page "https://github.com/unicode-rs/unicode-width")
2468 (synopsis "Determine displayed width according to Unicode rules")
2469 (description "This crate allows you to determine displayed width of
2470 @code{char} and @code{str} types according to Unicode Standard Annex #11 rules.")
2471 (license (list license:asl2.0
2472 license:expat))))
2473
2474 (define-public rust-unicode-xid
2475 (package
2476 (name "rust-unicode-xid")
2477 (version "0.2.0")
2478 (source
2479 (origin
2480 (method url-fetch)
2481 (uri (crate-uri "unicode-xid" version))
2482 (file-name
2483 (string-append name "-" version ".tar.gz"))
2484 (sha256
2485 (base32
2486 "0z09fn515xm7zyr0mmdyxa9mx2f7azcpv74pqmg611iralwpcvl2"))))
2487 (build-system cargo-build-system)
2488 (home-page
2489 "https://github.com/unicode-rs/unicode-xid")
2490 (synopsis "Determine Unicode XID related properties")
2491 (description "Determine whether characters have the XID_Start
2492 or XID_Continue properties according to Unicode Standard Annex #31.")
2493 ;; Dual licensed.
2494 (license (list license:asl2.0 license:expat))))
2495
2496 (define-public rust-unicode-xid-0.1
2497 (package
2498 (inherit rust-unicode-xid)
2499 (name "rust-unicode-xid")
2500 (version "0.1.0")
2501 (source
2502 (origin
2503 (method url-fetch)
2504 (uri (crate-uri "unicode-xid" version))
2505 (file-name (string-append name "-" version ".tar.gz"))
2506 (sha256
2507 (base32
2508 "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw"))))))
2509
2510 (define-public rust-unindent
2511 (package
2512 (name "rust-unindent")
2513 (version "0.1.3")
2514 (source
2515 (origin
2516 (method url-fetch)
2517 (uri (crate-uri "unindent" version))
2518 (file-name (string-append name "-" version ".tar.gz"))
2519 (sha256
2520 (base32
2521 "1x21ilf78aqcq9xzb9b7i628wm10rhk0jp0chlv06rkc690l8jw3"))))
2522 (build-system cargo-build-system)
2523 (home-page "https://github.com/dtolnay/indoc")
2524 (synopsis "Remove a column of leading whitespace from a string")
2525 (description "This crate allows you to remove a column of leading
2526 whitespace from a string.")
2527 (license (list license:asl2.0
2528 license:expat))))
2529
2530 (define-public rust-unsafe-any
2531 (package
2532 (name "rust-unsafe-any")
2533 (version "0.4.2")
2534 (source
2535 (origin
2536 (method url-fetch)
2537 (uri (crate-uri "unsafe-any" version))
2538 (file-name (string-append name "-" version ".tar.gz"))
2539 (sha256
2540 (base32
2541 "0zwwphsqkw5qaiqmjwngnfpv9ym85qcsyj7adip9qplzjzbn00zk"))))
2542 (build-system cargo-build-system)
2543 (arguments
2544 `(#:cargo-inputs
2545 (("rust-traitobject" ,rust-traitobject))))
2546 (home-page "https://tokio.rs")
2547 (synopsis "Traits and implementations for unchecked downcasting")
2548 (description
2549 "Traits and implementations for unchecked downcasting.")
2550 (license license:expat)))
2551
2552 (define-public rust-untrusted
2553 (package
2554 (name "rust-untrusted")
2555 (version "0.7.0")
2556 (source
2557 (origin
2558 (method url-fetch)
2559 (uri (crate-uri "untrusted" version))
2560 (file-name (string-append name "-" version ".tar.gz"))
2561 (sha256
2562 (base32
2563 "1kmfykcwif6ashkwg54gcnhxj03kpba2i9vc7z5rpr0xlgvrwdk0"))))
2564 (build-system cargo-build-system)
2565 (home-page "https://github.com/briansmith/untrusted")
2566 (synopsis "Zero-allocation parsing of untrusted inputs in Rust")
2567 (description
2568 "Safe, fast, zero-panic, zero-crashing, zero-allocation parsing of
2569 untrusted inputs in Rust.")
2570 (license license:isc)))
2571
2572 (define-public rust-version-check
2573 (package
2574 (name "rust-version-check")
2575 (version "0.9.1")
2576 (source
2577 (origin
2578 (method url-fetch)
2579 (uri (crate-uri "version_check" version))
2580 (file-name (string-append name "-" version ".tar.gz"))
2581 (sha256
2582 (base32
2583 "1kikqlnggii1rvnxrbls55sc46lxvinz5k3giscgncjj4p87b1q7"))))
2584 (build-system cargo-build-system)
2585 (home-page "https://github.com/SergioBenitez/version_check")
2586 (synopsis "Check that the installed rustc meets some version requirements")
2587 (description
2588 "This tiny crate checks that the running or installed rustc meets some
2589 version requirements. The version is queried by calling the Rust compiler with
2590 @code{--version}. The path to the compiler is determined first via the
2591 @code{RUSTC} environment variable. If it is not set, then @code{rustc} is used.
2592 If that fails, no determination is made, and calls return None.")
2593 (license (list license:asl2.0
2594 license:expat))))
2595
2596 (define-public rust-version-check-0.1
2597 (package
2598 (inherit rust-version-check)
2599 (name "rust-version-check")
2600 (version "0.1.5")
2601 (source
2602 (origin
2603 (method url-fetch)
2604 (uri (crate-uri "version_check" version))
2605 (file-name (string-append name "-" version ".tar.gz"))
2606 (sha256
2607 (base32
2608 "1pf91pvj8n6akh7w6j5ypka6aqz08b3qpzgs0ak2kjf4frkiljwi"))))))
2609
2610 (define-public rust-void
2611 (package
2612 (name "rust-void")
2613 (version "1.0.2")
2614 (source
2615 (origin
2616 (method url-fetch)
2617 (uri (crate-uri "void" version))
2618 (file-name (string-append name "-" version ".tar.gz"))
2619 (sha256
2620 (base32
2621 "0zc8f0ksxvmhvgx4fdg0zyn6vdnbxd2xv9hfx4nhzg6kbs4f80ka"))))
2622 (build-system cargo-build-system)
2623 (home-page "https://github.com/reem/rust-void.git")
2624 (synopsis "Void type for use in statically impossible cases")
2625 (description
2626 "The uninhabited void type for use in statically impossible cases.")
2627 (license license:expat)))
2628
2629 (define-public rust-walkdir
2630 (package
2631 (name "rust-walkdir")
2632 (version "2.2.9")
2633 (source
2634 (origin
2635 (method url-fetch)
2636 (uri (crate-uri "walkdir" version))
2637 (file-name (string-append name "-" version ".tar.gz"))
2638 (sha256
2639 (base32
2640 "07ppalpvxkf8cnqr64np422792y4z5bs9m8b4nrflh5rm17wjn4n"))))
2641 (build-system cargo-build-system)
2642 (arguments
2643 `(#:cargo-inputs
2644 (("rust-same-file" ,rust-same-file)
2645 ("rust-winapi" ,rust-winapi)
2646 ("rust-winapi-util" ,rust-winapi-util))
2647 #:cargo-development-inputs
2648 (("rust-doc-comment" ,rust-doc-comment))))
2649 (home-page "https://github.com/BurntSushi/walkdir")
2650 (synopsis "Recursively walk a directory")
2651 (description "Recursively walk a directory.")
2652 (license (list license:unlicense
2653 license:expat))))
2654
2655 (define-public rust-wasi
2656 (package
2657 (name "rust-wasi")
2658 (version "0.5.0")
2659 (source
2660 (origin
2661 (method url-fetch)
2662 (uri (crate-uri "wasi" version))
2663 (file-name
2664 (string-append name "-" version ".tar.gz"))
2665 (sha256
2666 (base32
2667 "1ir3pd4phdfml0cbziw9bqp7mnk0vfp9biy8bh25lln6raml4m7x"))))
2668 (build-system cargo-build-system)
2669 (home-page "https://github.com/CraneStation/rust-wasi")
2670 (synopsis "Experimental WASI API bindings for Rust")
2671 (description "This package contains experimental WASI API bindings
2672 in Rust.")
2673 (license license:asl2.0)))
2674
2675 (define-public rust-wasm-bindgen-shared
2676 (package
2677 (name "rust-wasm-bindgen-shared")
2678 (version "0.2.48")
2679 (source
2680 (origin
2681 (method url-fetch)
2682 (uri (crate-uri "wasm-bindgen-shared" version))
2683 (file-name (string-append name "-" version ".tar.gz"))
2684 (sha256
2685 (base32
2686 "08rnfhjyk0f6liv8n4rdsvhx7r02glkhcbj2lp9lcbkbfpad9hnr"))))
2687 (build-system cargo-build-system)
2688 (home-page "https://rustwasm.github.io/wasm-bindgen/")
2689 (synopsis "Shared support between wasm-bindgen and wasm-bindgen cli")
2690 (description "This package provides shared support between
2691 @code{wasm-bindgen} and @code{wasm-bindgen} cli, an internal dependency.")
2692 (license (list license:asl2.0
2693 license:expat))))
2694
2695 (define-public rust-wasm-bindgen-test-macro
2696 (package
2697 (name "rust-wasm-bindgen-test-macro")
2698 (version "0.2.48")
2699 (source
2700 (origin
2701 (method url-fetch)
2702 (uri (crate-uri "wasm-bindgen-test-macro" version))
2703 (file-name (string-append name "-" version ".tar.gz"))
2704 (sha256
2705 (base32
2706 "0n28mr6vncf1k1qr2b5bvfxq4jvqkjdzq0z0ab6w2f5d6v8q3q3l"))))
2707 (build-system cargo-build-system)
2708 (arguments
2709 `(#:cargo-inputs
2710 (("rust-proc-macro2" ,rust-proc-macro2)
2711 ("rust-quote" ,rust-quote))))
2712 (home-page "https://github.com/rustwasm/wasm-bindgen")
2713 (synopsis "Internal testing macro for wasm-bindgen")
2714 (description
2715 "This library contains the internal testing macro for wasm-bindgen.")
2716 (license (list license:asl2.0
2717 license:expat))))
2718
2719 (define-public rust-widestring
2720 (package
2721 (name "rust-widestring")
2722 (version "0.4.0")
2723 (source
2724 (origin
2725 (method url-fetch)
2726 (uri (crate-uri "widestring" version))
2727 (file-name (string-append name "-" version ".tar.gz"))
2728 (sha256
2729 (base32
2730 "1dhx6dndjsz1y7c9w06922412kdxyrrkqblvggm76mh8z17hxz7g"))))
2731 (build-system cargo-build-system)
2732 (arguments
2733 `(#:cargo-development-inputs
2734 (("rust-winapi" ,rust-winapi))))
2735 (home-page "https://github.com/starkat99/widestring-rs")
2736 (synopsis "Wide string Rust FFI library")
2737 (description
2738 "A wide string Rust FFI library for converting to and from wide strings,
2739 such as those often used in Windows API or other FFI libaries. Both UTF-16 and
2740 UTF-32 types are provided, including support for malformed encoding.")
2741 (license (list license:asl2.0
2742 license:expat))))
2743
2744 (define-public rust-winapi
2745 (package
2746 (name "rust-winapi")
2747 (version "0.3.8")
2748 (source
2749 (origin
2750 (method url-fetch)
2751 (uri (crate-uri "winapi" version))
2752 (file-name (string-append name "-" version ".tar.gz"))
2753 (sha256
2754 (base32
2755 "1ii9j9lzrhwri0902652awifzx9fpayimbp6hfhhc296xcg0k4w0"))))
2756 (build-system cargo-build-system)
2757 (arguments
2758 `(#:cargo-inputs
2759 (("rust-winapi-i686-pc-windows-gnu"
2760 ,rust-winapi-i686-pc-windows-gnu)
2761 ("rust-winapi-x86-64-pc-windows-gnu"
2762 ,rust-winapi-x86-64-pc-windows-gnu))))
2763 (home-page "https://github.com/retep998/winapi-rs")
2764 (synopsis "Raw FFI bindings for all of Windows API.")
2765 (description
2766 "Raw FFI bindings for all of Windows API.")
2767 (license (list license:asl2.0
2768 license:expat))))
2769
2770 (define-public rust-winapi-0.2
2771 (package
2772 (inherit rust-winapi)
2773 (name "rust-winapi")
2774 (version "0.2.8")
2775 (source
2776 (origin
2777 (method url-fetch)
2778 (uri (crate-uri "winapi" version))
2779 (file-name (string-append name "-" version ".tar.gz"))
2780 (sha256
2781 (base32
2782 "0yh816lh6lf56dpsgxy189c2ai1z3j8mw9si6izqb6wsjkbcjz8n"))))
2783 ;; We do not want to package 48 -sys crates for a package we do not want.
2784 ;; They are all dev dependencies, so we skip building and testing.
2785 (arguments
2786 `(#:tests? #f
2787 #:phases
2788 (modify-phases %standard-phases
2789 (delete 'build))))))
2790
2791 (define-public rust-winapi-build
2792 (package
2793 (name "rust-winapi-build")
2794 (version "0.1.1")
2795 (source
2796 (origin
2797 (method url-fetch)
2798 (uri (crate-uri "winapi-build" version))
2799 (file-name (string-append name "-" version ".tar.gz"))
2800 (sha256
2801 (base32
2802 "1g4rqsgjky0a7530qajn2bbfcrl2v0zb39idgdws9b1l7gp5wc9d"))))
2803 (build-system cargo-build-system)
2804 (home-page "https://github.com/retep998/winapi-rs")
2805 (synopsis "Common code for build.rs in WinAPI -sys crates")
2806 (description
2807 "Common code for build.rs in WinAPI -sys crates.")
2808 (license license:expat)))
2809
2810 (define-public rust-winapi-i686-pc-windows-gnu
2811 (package
2812 (name "rust-winapi-i686-pc-windows-gnu")
2813 (version "0.4.0")
2814 (source
2815 (origin
2816 (method url-fetch)
2817 (uri (crate-uri "winapi-i686-pc-windows-gnu" version))
2818 (file-name (string-append name "-" version ".tar.gz"))
2819 (sha256
2820 (base32
2821 "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"))))
2822 (build-system cargo-build-system)
2823 (home-page "https://github.com/retep998/winapi-rs")
2824 (synopsis "Import libraries for the i686-pc-windows-gnu target")
2825 (description "This crate provides import libraries for the
2826 i686-pc-windows-gnu target. Please don't use this crate directly, depend on
2827 @code{winapi} instead.")
2828 (license (list license:asl2.0
2829 license:expat))))
2830
2831 (define-public rust-winapi-util
2832 (package
2833 (name "rust-winapi-util")
2834 (version "0.1.2")
2835 (source
2836 (origin
2837 (method url-fetch)
2838 (uri (crate-uri "winapi-util" version))
2839 (file-name (string-append name "-" version ".tar.gz"))
2840 (sha256
2841 (base32
2842 "1j839dc6y8vszvrsb7yk0qvs0w6asnahxzbyans37vnsw6vbls3i"))))
2843 (build-system cargo-build-system)
2844 (arguments
2845 `(#:cargo-inputs (("rust-winapi" ,rust-winapi))))
2846 (home-page "https://github.com/BurntSushi/winapi-util")
2847 (synopsis "Dumping ground for high level safe wrappers over winapi")
2848 (description
2849 "This package provides a dumping ground for high level safe wrappers over
2850 winapi.")
2851 (license (list license:unlicense
2852 license:expat))))
2853
2854 (define-public rust-winapi-x86-64-pc-windows-gnu
2855 (package
2856 (name "rust-winapi-x86-64-pc-windows-gnu")
2857 (version "0.4.0")
2858 (source
2859 (origin
2860 (method url-fetch)
2861 (uri (crate-uri "winapi-x86_64-pc-windows-gnu" version))
2862 (file-name (string-append name "-" version ".tar.gz"))
2863 (sha256
2864 (base32
2865 "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"))))
2866 (build-system cargo-build-system)
2867 (home-page "https://github.com/retep998/winapi-rs")
2868 (synopsis "Import libraries for the x86_64-pc-windows-gnu target")
2869 (description "This package provides import libraries for the
2870 x86_64-pc-windows-gnu target. Please don't use this crate directly, depend on
2871 @code{winapi} instead.")
2872 (license (list license:asl2.0
2873 license:expat))))
2874
2875 (define-public rust-wincolor
2876 (package
2877 (name "rust-wincolor")
2878 (version "1.0.2")
2879 (source
2880 (origin
2881 (method url-fetch)
2882 (uri (crate-uri "wincolor" version))
2883 (file-name (string-append name "-" version ".tar.gz"))
2884 (sha256
2885 (base32
2886 "1agaf3hcav113i86912ajnw6jxcy4rvkrgyf8gdj8kc031mh3xcn"))))
2887 (build-system cargo-build-system)
2888 (arguments
2889 `(#:cargo-inputs
2890 (("rust-winapi" ,rust-winapi)
2891 ("rust-winapi-util" ,rust-winapi-util))))
2892 (home-page "https://github.com/BurntSushi/termcolor/tree/master/wincolor")
2893 (synopsis "Windows API for controlling text color in a Windows console")
2894 (description
2895 "This package provides a simple Windows specific API for controlling text
2896 color in a Windows console.")
2897 (license (list license:unlicense
2898 license:expat))))
2899
2900 (define-public rust-winutil
2901 (package
2902 (name "rust-winutil")
2903 (version "0.1.1")
2904 (source
2905 (origin
2906 (method url-fetch)
2907 (uri (crate-uri "winutil" version))
2908 (file-name (string-append name "-" version ".tar.gz"))
2909 (sha256
2910 (base32
2911 "0vkyl3fbbf05n5ph5yz8sfaccrk9x3qsr25560w6w68ldf5i7bvx"))))
2912 (build-system cargo-build-system)
2913 (arguments
2914 `(#:cargo-inputs
2915 (("rust-winapi" ,rust-winapi))
2916 ;; This unmaintained crate cannot find winapi when built directly.
2917 #:tests? #f
2918 #:phases
2919 (modify-phases %standard-phases
2920 (delete 'build))))
2921 (home-page "https://bitbucket.org/DaveLancaster/winutil")
2922 (synopsis "Library wrapping a handful of useful winapi functions")
2923 (description
2924 "A simple library wrapping a handful of useful winapi functions.")
2925 (license license:expat)))
2926
2927 (define-public rust-ws2-32-sys
2928 (package
2929 (name "rust-ws2-32-sys")
2930 (version "0.2.1")
2931 (source
2932 (origin
2933 (method url-fetch)
2934 (uri (crate-uri "ws2_32-sys" version))
2935 (file-name (string-append name "-" version ".tar.gz"))
2936 (sha256
2937 (base32
2938 "0ppscg5qfqaw0gzwv2a4nhn5bn01ff9iwn6ysqnzm4n8s3myz76m"))))
2939 (build-system cargo-build-system)
2940 (arguments
2941 `(#:cargo-inputs
2942 (("rust-winapi" ,rust-winapi-0.2)
2943 ("rust-winapi-build" ,rust-winapi-build))
2944 #:phases
2945 (modify-phases %standard-phases
2946 (add-after 'unpack 'fix-Cargo-toml
2947 (lambda _
2948 (substitute* "Cargo.toml"
2949 ((", path =.* }") "}\n"))
2950 #t)))))
2951 (home-page "https://github.com/retep998/winapi-rs")
2952 (synopsis "Function definitions for the Windows API library ws2_32")
2953 (description
2954 "Contains function definitions for the Windows API library ws2_32.")
2955 (license license:expat)))
2956
2957 (define-public rust-xdg
2958 (package
2959 (name "rust-xdg")
2960 (version "2.2.0")
2961 (source
2962 (origin
2963 (method url-fetch)
2964 (uri (crate-uri "xdg" version))
2965 (file-name (string-append name "-" version ".tar.gz"))
2966 (sha256
2967 (base32
2968 "0mws8a0fr3cqk5nh7aq9lmkmhzghvasqy4mhw6nnza06l4d6i2fh"))))
2969 (build-system cargo-build-system)
2970 (home-page "https://github.com/whitequark/rust-xdg")
2971 (synopsis "Store and retrieve files according to XDG specification")
2972 (description
2973 "This package provides a library for storing and retrieving files according
2974 to XDG Base Directory specification")
2975 (license (list license:asl2.0
2976 license:expat))))