Merge branch 'master' into core-updates
[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 compression)
28 #:use-module (gnu packages curl)
29 #:use-module (gnu packages gcc)
30 #:use-module (gnu packages jemalloc)
31 #:use-module (gnu packages llvm)
32 #:use-module (gnu packages maths)
33 #:use-module (gnu packages pkg-config)
34 #:use-module (gnu packages ssh)
35 #:use-module (gnu packages tls)
36 #:use-module (gnu packages version-control)
37 #:use-module (gnu packages web))
38
39 ;;;
40 ;;; Please: Try to add new module packages in alphabetic order.
41 ;;;
42
43 (define-public rust-adler32
44 (package
45 (name "rust-adler32")
46 (version "1.0.3")
47 (source
48 (origin
49 (method url-fetch)
50 (uri (crate-uri "adler32" version))
51 (file-name
52 (string-append name "-" version ".tar.gz"))
53 (sha256
54 (base32
55 "0p7fxlnks9l7p7rwfqi7aqgnk2bps5zc0rjiw00mdw19nnbjjlky"))))
56 (build-system cargo-build-system)
57 (arguments
58 `(#:cargo-development-inputs (("rust-rand" ,rust-rand))))
59 (home-page "https://github.com/remram44/adler32-rs")
60 (synopsis "Implementation of the Adler32 rolling hash algorithm")
61 (description
62 "This library is an implementation of the Adler32 rolling hash algorithm in
63 the Rust programming language.")
64 (license (list license:bsd-3
65 license:zlib))))
66
67 (define-public rust-ansi-term
68 (package
69 (name "rust-ansi-term")
70 (version "0.11.0")
71 (source
72 (origin
73 (method url-fetch)
74 (uri (crate-uri "ansi_term" version))
75 (file-name (string-append name "-" version ".tar.gz"))
76 (sha256
77 (base32
78 "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf"))))
79 (build-system cargo-build-system)
80 (arguments
81 `(#:cargo-inputs
82 (("rust-winapi" ,rust-winapi))
83 #:phases
84 (modify-phases %standard-phases
85 (add-after 'unpack 'fix-tests
86 ;; https://github.com/ogham/rust-ansi-term/commit/5ff6af6f38790abcb3aafee1239286c10ef69576.patch
87 (lambda _
88 (substitute* "src/debug.rs"
89 (("^ *Blue") " Blue,")
90 (("underline: false") "underline: false,"))
91 #t)))))
92 (home-page "https://github.com/ogham/rust-ansi-term")
93 (synopsis "Library for ANSI terminal colours and styles")
94 (description
95 "This is a library for controlling colours and formatting, such as red bold
96 text or blue underlined text, on ANSI terminals.")
97 (license license:expat)))
98
99 (define-public rust-antidote
100 (package
101 (name "rust-antidote")
102 (version "1.0.0")
103 (source
104 (origin
105 (method url-fetch)
106 (uri (crate-uri "antidote" version))
107 (file-name (string-append name "-" version ".tar.gz"))
108 (sha256
109 (base32
110 "19g2sw2qa2ibnh4x7j1snk46593jgx6y7rnvva496ynq61af5z9l"))))
111 (build-system cargo-build-system)
112 (home-page "https://github.com/sfackler/rust-antidote")
113 (synopsis "Poison-free Mutex and RwLock types")
114 (description
115 "These types expose identical APIs to the standard library @code{Mutex} and
116 @code{RwLock} except that they do not return @code{PoisonError}s.")
117 (license (list license:asl2.0
118 license:expat))))
119
120 (define-public rust-atty
121 (package
122 (name "rust-atty")
123 (version "0.2.13")
124 (source
125 (origin
126 (method url-fetch)
127 (uri (crate-uri "atty" version))
128 (file-name (string-append name "-" version ".tar.gz"))
129 (sha256
130 (base32
131 "140sswp1bwqwc4zk80bxkbnfb3g936hgrb77g9g0k1zcld3wc0qq"))))
132 (build-system cargo-build-system)
133 (arguments
134 `(#:cargo-inputs
135 (("rust-libc" ,rust-libc)
136 ("rust-winapi" ,rust-winapi))
137 #:tests? #f)) ; tests fail in our sandbox
138 (home-page "https://github.com/softprops/atty")
139 (synopsis "A simple interface for querying atty")
140 (description
141 "This package provides a simple interface for querying atty.")
142 (license license:expat)))
143
144 (define-public rust-autocfg
145 (package
146 (name "rust-autocfg")
147 (version "0.1.5")
148 (source
149 (origin
150 (method url-fetch)
151 (uri (crate-uri "autocfg" version))
152 (file-name (string-append name "-" version ".tar.gz"))
153 (sha256
154 (base32
155 "0asl6fnc35yk5l2rxwhp25v128jgm45dp754h9z8x51b6n90w4r2"))))
156 (build-system cargo-build-system)
157 (home-page "https://github.com/cuviper/autocfg")
158 (synopsis "Automatic cfg for Rust compiler features")
159 (description "Rust library for build scripts to automatically configure
160 code based on compiler support. Code snippets are dynamically tested to see
161 if the @code{rustc} will accept them, rather than hard-coding specific version
162 support.")
163 (license (list license:asl2.0
164 license:expat))))
165
166 (define-public rust-backtrace-sys
167 (package
168 (name "rust-backtrace-sys")
169 (version "0.1.31")
170 (source
171 (origin
172 (method url-fetch)
173 (uri (crate-uri "backtrace-sys" version))
174 (file-name (string-append name "-" version ".tar.gz"))
175 (sha256
176 (base32
177 "0as2pk77br4br04daywhivpi1ixxb8y2c7f726kj849dxys31a42"))))
178 (build-system cargo-build-system)
179 (arguments
180 `(#:cargo-inputs
181 (("rust-compiler-builtins"
182 ,rust-compiler-builtins)
183 ("rust-libc" ,rust-libc)
184 ("rust-rustc-std-workspace-core"
185 ,rust-rustc-std-workspace-core))
186 #:cargo-development-inputs
187 (("rust-cc" ,rust-cc))))
188 (home-page "https://github.com/rust-lang/backtrace-rs")
189 (synopsis "Bindings to the libbacktrace gcc library")
190 (description
191 "This package provides bindings to the libbacktrace gcc library.")
192 (license (list license:asl2.0
193 license:expat))))
194
195 (define-public rust-base-x
196 (package
197 (name "rust-base-x")
198 (version "0.2.5")
199 (source
200 (origin
201 (method url-fetch)
202 (uri (crate-uri "base-x" version))
203 (file-name (string-append name "-" version ".tar.gz"))
204 (sha256
205 (base32
206 "0hv4y5cdhv6bk0ghk2434clw8v4mmk5cc9lsh6qrpri92zlfmx3n"))))
207 (build-system cargo-build-system)
208 (arguments
209 `(#:cargo-development-inputs
210 (("rust-bencher" ,rust-bencher)
211 ("rust-json" ,rust-json)
212 ("rust-rand" ,rust-rand-0.3))))
213 (home-page "https://github.com/OrKoN/base-x-rs")
214 (synopsis "Encode/decode any base")
215 (description "This library provides for encoding and decoding any base.")
216 (license license:expat)))
217
218 (define-public rust-bencher
219 (package
220 (name "rust-bencher")
221 (version "0.1.5")
222 (source
223 (origin
224 (method url-fetch)
225 (uri (crate-uri "bencher" version))
226 (file-name (string-append name "-" version ".tar.gz"))
227 (sha256
228 (base32
229 "1x8p2xblgqssay8cdykp5pkfc0np0jk5bs5cx4f5av097aav9zbx"))))
230 (build-system cargo-build-system)
231 (home-page "https://github.com/bluss/bencher/")
232 (synopsis "Port of the libtest benchmark runner to Rust stable")
233 (description "This package provides a port of the libtest (unstable Rust)
234 benchmark runner to Rust stable releases. Supports running benchmarks and
235 filtering based on the name. Benchmark execution works exactly the same way
236 and no more (caveat: black_box is still missing!).")
237 (license (list license:asl2.0
238 license:expat))))
239
240 (define-public rust-bitflags
241 (package
242 (name "rust-bitflags")
243 (version "1.1.0")
244 (source
245 (origin
246 (method url-fetch)
247 (uri (crate-uri "bitflags" version))
248 (file-name (string-append name "-" version ".tar.gz"))
249 (sha256
250 (base32
251 "1zc1qb1hwsnl2d8rhzicsv9kqd5b2hwbrscrcfw5as4sfr35659x"))))
252 (build-system cargo-build-system)
253 (home-page "https://github.com/bitflags/bitflags")
254 (synopsis "Macro to generate structures which behave like bitflags")
255 (description "This package provides a macro to generate structures which
256 behave like a set of bitflags.")
257 (license (list license:asl2.0
258 license:expat))))
259
260 (define-public rust-blas-sys
261 (package
262 (name "rust-blas-sys")
263 (version "0.7.1")
264 (source
265 (origin
266 (method url-fetch)
267 (uri (crate-uri "blas-sys" version))
268 (file-name (string-append name "-" version ".tar.gz"))
269 (sha256
270 (base32
271 "0h14zjycwc76v15h8qll9z1xiryvmpvsb5gam97pqpdjrrwv5c8k"))))
272 (build-system cargo-build-system)
273 (arguments
274 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
275 (home-page "https://github.com/blas-lapack-rs/blas-sys")
276 (synopsis "Bindings to BLAS (Fortran)")
277 (description
278 "Ths package provides bindings to BLAS (Fortran).")
279 (license (list license:asl2.0
280 license:expat))))
281
282 (define-public rust-cargon
283 (package
284 (name "rust-cargon")
285 (version "0.0.1")
286 (source
287 (origin
288 (method url-fetch)
289 (uri (crate-uri "cargon" version))
290 (file-name (string-append name "-" version ".tar.gz"))
291 (sha256
292 (base32
293 "1cszlab7jk736p0lb50ag4l9nv72m7j41bwrmygl0lr4iz0350w2"))))
294 (build-system cargo-build-system)
295 (arguments
296 `(#:cargo-inputs
297 (("rust-gcc" ,rust-gcc))))
298 (home-page "https://github.com/bryant/argon2rs")
299 (synopsis "Thin wrapper around the Argon2 C library")
300 (description
301 "This package provides a thin wrapper around the Argon2 C library. It is
302 used in argon2rs' bench suite.")
303 (license license:wtfpl2)))
304
305 (define-public rust-cblas-sys
306 (package
307 (name "rust-cblas-sys")
308 (version "0.1.4")
309 (source
310 (origin
311 (method url-fetch)
312 (uri (crate-uri "cblas-sys" version))
313 (file-name (string-append name "-" version ".tar.gz"))
314 (sha256
315 (base32
316 "0rgsn3klhhh09d8qf3b87zl4rwk93l2g0qzh9hhb0lff5kcfrzmn"))))
317 (build-system cargo-build-system)
318 (arguments
319 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
320 (home-page "https://github.com/blas-lapack-rs/cblas-sys")
321 (synopsis "Bindings to CBLAS (C)")
322 (description
323 "The package provides bindings to CBLAS (C).")
324 (license (list license:asl2.0
325 license:expat))))
326
327 (define-public rust-cc
328 (package
329 (name "rust-cc")
330 (version "1.0.41")
331 (source
332 (origin
333 (method url-fetch)
334 (uri (crate-uri "cc" version))
335 (file-name (string-append name "-" version ".tar.gz"))
336 (sha256
337 (base32
338 "1zxzd559dbbf1iwdzmkj7czapzccs17kqqmsj9ayijpdix5rrbld"))))
339 (build-system cargo-build-system)
340 (arguments
341 `(;#:cargo-inputs
342 ;(("rust-rayon" ,rust-rayon))
343 #:cargo-development-inputs
344 (("rust-tempdir" ,rust-tempdir))
345 #:phases
346 (modify-phases %standard-phases
347 (add-after 'unpack 'remove-optional-deps
348 (lambda _
349 (substitute* "Cargo.toml.orig"
350 ((".*optional.*") "\n")
351 ((".*features.*") "")
352 ((".*parallel.*") ""))
353 (delete-file "Cargo.toml")
354 (copy-file "Cargo.toml.orig" "Cargo.toml")
355 #t)))
356 #:tests? #f)) ; Tests require cc-test from git repo.
357 (home-page "https://github.com/alexcrichton/cc-rs")
358 (synopsis "Invoke the native C compiler")
359 (description
360 "This package provides a build-time dependency for Cargo build scripts to
361 assist in invoking the native C compiler to compile native C code into a static
362 archive to be linked into Rustcode.")
363 (license (list license:asl2.0
364 license:expat))))
365
366 (define-public rust-cfg-if
367 (package
368 (name "rust-cfg-if")
369 (version "0.1.9")
370 (source
371 (origin
372 (method url-fetch)
373 (uri (crate-uri "cfg-if" version))
374 (file-name (string-append name "-" version ".tar.gz"))
375 (sha256
376 (base32
377 "0csygklgz3ybpr0670rkip49zh76m43ar3k7xgypkzbzrwycx1ml"))))
378 (build-system cargo-build-system)
379 (home-page "https://github.com/alexcrichton/cfg-if")
380 (synopsis "Define an item depending on parameters")
381 (description "This package provides a macro to ergonomically define an item
382 depending on a large number of #[cfg] parameters. Structured like an
383 @code{if-else} chain, the first matching branch is the item that gets emitted.")
384 (license (list license:asl2.0
385 license:expat))))
386
387 (define-public rust-clang-sys
388 (package
389 (name "rust-clang-sys")
390 (version "0.28.1")
391 (source
392 (origin
393 (method url-fetch)
394 (uri (crate-uri "clang-sys" version))
395 (file-name (string-append name "-" version ".tar.gz"))
396 (sha256
397 (base32
398 "0ls8zcqi5bmmrvrk3b6r1ym4wlivinbv590d2dvg2xn9f44mbpl1"))))
399 (build-system cargo-build-system)
400 (arguments
401 `(#:cargo-inputs
402 (("rust-glob" ,rust-glob)
403 ("rust-libc" ,rust-libc)
404 ("rust-libloading" ,rust-libloading))
405 #:cargo-development-inputs
406 (("rust-glob" ,rust-glob))
407 #:phases
408 (modify-phases %standard-phases
409 (add-after 'unpack 'set-environmental-variable
410 (lambda* (#:key inputs #:allow-other-keys)
411 (let ((clang (assoc-ref inputs "libclang")))
412 (setenv "LIBCLANG_PATH"
413 (string-append clang "/lib")))
414 #t)))))
415 (inputs
416 `(("libclang" ,clang)))
417 (home-page "https://github.com/KyleMayes/clang-sys")
418 (synopsis "Rust bindings for libclang")
419 (description
420 "This package provides Rust bindings for @code{libclang}.")
421 (license license:asl2.0)))
422
423 (define-public rust-clang-sys-0.26
424 (package
425 (inherit rust-clang-sys)
426 (name "rust-clang-sys")
427 (version "0.26.4")
428 (source
429 (origin
430 (method url-fetch)
431 (uri (crate-uri "clang-sys" version))
432 (file-name (string-append name "-" version ".tar.gz"))
433 (sha256
434 (base32
435 "1r50dwy5hj5gq07dn0qf8222d07qv0970ymx0j8n9779yayc3w3f"))))
436 (arguments
437 `(#:cargo-inputs
438 (("rust-glob" ,rust-glob-0.2)
439 ("rust-libc" ,rust-libc)
440 ("rust-libloading" ,rust-libloading))
441 #:cargo-development-inputs
442 (("rust-glob" ,rust-glob-0.2))
443 #:phases
444 (modify-phases %standard-phases
445 (add-after 'unpack 'set-environmental-variable
446 (lambda* (#:key inputs #:allow-other-keys)
447 (let ((clang (assoc-ref inputs "libclang")))
448 (setenv "LIBCLANG_PATH"
449 (string-append clang "/lib")))
450 #t)))))))
451
452 (define-public rust-clicolors-control
453 (package
454 (name "rust-clicolors-control")
455 (version "1.0.0")
456 (source
457 (origin
458 (method url-fetch)
459 (uri (crate-uri "clicolors-control" version))
460 (file-name (string-append name "-" version ".tar.gz"))
461 (sha256
462 (base32
463 "1y80cgarxhrd1bz5yjm81r444v6flvy36aaxrrsac0yhfd6gvavk"))))
464 (build-system cargo-build-system)
465 (arguments
466 `(#:cargo-inputs
467 (("rust-atty" ,rust-atty)
468 ("rust-lazy-static" ,rust-lazy-static)
469 ("rust-libc" ,rust-libc)
470 ("rust-winapi" ,rust-winapi))))
471 (home-page "https://github.com/mitsuhiko/clicolors-control")
472 (synopsis "Common utility library to control CLI colorization")
473 (description
474 "This package provides a common utility library to control CLI
475 colorization.")
476 (license license:expat)))
477
478 (define-public rust-clippy
479 (package
480 (name "rust-clippy")
481 (version "0.0.302")
482 (source
483 (origin
484 (method url-fetch)
485 (uri (crate-uri "clippy" version))
486 (file-name
487 (string-append name "-" version ".tar.gz"))
488 (sha256
489 (base32
490 "1562x3sq9mgmc8j39gd34wqm7ybrdvpmj7cc1n450gwsawayw4fr"))))
491 (build-system cargo-build-system)
492 (arguments
493 `(#:cargo-inputs
494 (("rust-term" ,rust-term))))
495 (home-page "https://github.com/rust-lang/rust-clippy")
496 (synopsis
497 "A bunch of helpful lints to avoid common pitfalls in Rust.")
498 (description
499 "This package provides a bunch of helpful lints to avoid common pitfalls in Rust.")
500 (license (list license:asl2.0
501 license:expat))))
502
503 (define-public rust-cloudabi
504 (package
505 (name "rust-cloudabi")
506 (version "0.0.3")
507 (source
508 (origin
509 (method url-fetch)
510 (uri (crate-uri "cloudabi" version))
511 (file-name (string-append name "-" version ".tar.gz"))
512 (sha256
513 (base32
514 "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x"))))
515 (build-system cargo-build-system)
516 (arguments
517 `(#:cargo-inputs
518 (("rust-bitflags" ,rust-bitflags))))
519 (home-page "https://nuxi.nl/cloudabi/")
520 (synopsis "Low level interface to CloudABI")
521 (description
522 "Low level interface to CloudABI. Contains all syscalls and related types.")
523 (license license:bsd-2)))
524
525 (define-public rust-cmake
526 (package
527 (name "rust-cmake")
528 (version "0.1.42")
529 (source
530 (origin
531 (method url-fetch)
532 (uri (crate-uri "cmake" version))
533 (file-name (string-append name "-" version ".tar.gz"))
534 (sha256
535 (base32
536 "0qkwibkvx5xjazvv9v8gvdlpky2jhjxvcz014nrixgzqfyv2byw1"))))
537 (build-system cargo-build-system)
538 (arguments
539 `(#:cargo-inputs (("rust-cc" ,rust-cc))))
540 (home-page "https://github.com/alexcrichton/cmake-rs")
541 (synopsis "Rust build dependency for running cmake")
542 (description
543 "This package provides a build dependency for running @code{cmake} to build
544 a native library. The CMake executable is assumed to be @code{cmake} unless the
545 CMAKE environmental variable is set.")
546 (license (list license:asl2.0
547 license:expat))))
548
549 ;; This package requires features which are unavailable
550 ;; on the stable releases of Rust.
551 (define-public rust-compiler-builtins
552 (package
553 (name "rust-compiler-builtins")
554 (version "0.1.19")
555 (source
556 (origin
557 (method url-fetch)
558 (uri (crate-uri "compiler_builtins" version))
559 (file-name (string-append name "-" version ".tar.gz"))
560 (sha256
561 (base32
562 "1fpabpmg8paj4r5a37vmidh1jx1b7a6ilxm4s3xsxczx27ybjcjf"))))
563 (build-system cargo-build-system)
564 (arguments
565 `(#:cargo-inputs
566 (("rust-cc" ,rust-cc)
567 ("rust-rustc-std-workspace-core"
568 ,rust-rustc-std-workspace-core))))
569 (home-page "https://github.com/rust-lang-nursery/compiler-builtins")
570 (synopsis "Compiler intrinsics used by the Rust compiler")
571 (description
572 "This package provides compiler intrinsics used by the Rust compiler. This
573 package is primarily useful when building the @code{core} crate yourself and you
574 need compiler-rt intrinsics.")
575 (properties `((hidden? . #t)))
576 (license (list license:asl2.0
577 license:expat))))
578
579 (define-public rust-constant-time-eq
580 (package
581 (name "rust-constant-time-eq")
582 (version "0.1.4")
583 (source
584 (origin
585 (method url-fetch)
586 (uri (crate-uri "constant_time_eq" version))
587 (file-name (string-append name "-" version ".tar.gz"))
588 (sha256
589 (base32
590 "083icpr9xb72rrdxw3p4068dcspn6ai22jy7rhl2a8grfz448nlr"))))
591 (build-system cargo-build-system)
592 (home-page "https://github.com/cesarb/constant_time_eq")
593 (synopsis
594 "Compares two equal-sized byte strings in constant time")
595 (description
596 "This package compares two equal-sized byte strings in constant time.
597 It is inspired by the Linux kernel's @code{crypto_memneq}.")
598 (license license:cc0)))
599
600 (define-public rust-core-foundation-sys
601 (package
602 (name "rust-core-foundation-sys")
603 (version "0.6.2")
604 (source
605 (origin
606 (method url-fetch)
607 (uri (crate-uri "core-foundation-sys" version))
608 (file-name (string-append name "-" version ".tar.gz"))
609 (sha256
610 (base32
611 "0fzsw1j9g1x598yhwklg59l15hwzc0pyvs01w9fg2kin4598mjp7"))))
612 (build-system cargo-build-system)
613 (home-page "https://github.com/servo/core-foundation-rs")
614 (synopsis "Bindings to Core Foundation for OS X")
615 (description
616 "Bindings to Core Foundation for OS X.")
617 (license (list license:asl2.0
618 license:expat))))
619
620 (define-public rust-curl-sys
621 (package
622 (name "rust-curl-sys")
623 (version "0.4.20")
624 (source
625 (origin
626 (method url-fetch)
627 (uri (crate-uri "curl-sys" version))
628 (file-name (string-append name "-" version ".tar.gz"))
629 (sha256
630 (base32
631 "02542zmvl3fpdqf7ai4cqnamm4albx9j645dkjx5qr1myq8ax42y"))))
632 (build-system cargo-build-system)
633 (arguments
634 `(#:cargo-inputs
635 (("rust-libc" ,rust-libc)
636 ("rust-libnghttp2-sys" ,rust-libnghttp2-sys)
637 ("rust-libz-sys" ,rust-libz-sys)
638 ("rust-openssl-sys" ,rust-openssl-sys)
639 ("rust-winapi" ,rust-winapi))
640 #:cargo-development-inputs
641 (("rust-cc" ,rust-cc)
642 ("rust-pkg-config" ,rust-pkg-config)
643 ("rust-openssl-src" ,rust-openssl-src)
644 ("rust-vcpkg" ,rust-vcpkg))
645 #:phases
646 (modify-phases %standard-phases
647 (add-after 'unpack 'find-openssl
648 (lambda* (#:key inputs #:allow-other-keys)
649 (let ((openssl (assoc-ref inputs "openssl")))
650 (setenv "OPENSSL_DIR" openssl))
651 #t)))))
652 (native-inputs
653 `(("pkg-config" ,pkg-config)))
654 (inputs
655 `(("curl" ,curl)
656 ("nghttp2" ,nghttp2)
657 ("openssl" ,openssl)
658 ("zlib" ,zlib)))
659 (home-page "https://github.com/alexcrichton/curl-rust")
660 (synopsis "Native bindings to the libcurl library")
661 (description
662 "This package provides native bindings to the @code{libcurl} library.")
663 (license license:expat)))
664
665 (define-public rust-data-encoding
666 (package
667 (name "rust-data-encoding")
668 (version "2.1.2")
669 (source
670 (origin
671 (method url-fetch)
672 (uri (crate-uri "data-encoding" version))
673 (file-name (string-append name "-" version ".tar.gz"))
674 (sha256
675 (base32
676 "15xd6afhsjl08285piwczrafmckpp8i29padj8v12xhahshprx7l"))))
677 (build-system cargo-build-system)
678 (home-page "https://github.com/ia0/data-encoding")
679 (synopsis "Efficient and customizable data-encoding functions")
680 (description
681 "This library provides encodings for many different common cases, including
682 hexadecimal, bas32, and base64.")
683 (license license:expat)))
684
685 (define-public rust-defmac
686 (package
687 (name "rust-defmac")
688 (version "0.2.0")
689 (source
690 (origin
691 (method url-fetch)
692 (uri (crate-uri "defmac" version))
693 (file-name (string-append name "-" version ".tar.gz"))
694 (sha256
695 (base32
696 "01ff3jdmcc5waffkwllndnx5hsn414r7x1rq4ib73n7awsyzxkxv"))))
697 (build-system cargo-build-system)
698 (home-page "https://github.com/bluss/defmac")
699 (synopsis "Macro to define lambda-like macros inline")
700 (description "A macro to define lambda-like macros inline.")
701 (license (list license:asl2.0
702 license:expat))))
703
704 (define-public rust-defmac-0.1
705 (package
706 (inherit rust-defmac)
707 (name "rust-defmac")
708 (version "0.1.3")
709 (source
710 (origin
711 (method url-fetch)
712 (uri (crate-uri "defmac" version))
713 (file-name (string-append name "-" version ".tar.gz"))
714 (sha256
715 (base32
716 "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
717
718 (define-public rust-dirs
719 (package
720 (name "rust-dirs")
721 (version "1.0.3")
722 (source
723 (origin
724 (method url-fetch)
725 (uri (crate-uri "dirs" version))
726 (file-name (string-append name "-" version ".tar.gz"))
727 (sha256
728 (base32
729 "02vigc566z5i6n9wr2x8sch39qp4arn89xhhrh18fhpm3jfc0ygn"))))
730 (build-system cargo-build-system)
731 (arguments
732 `(#:cargo-inputs
733 (("rust-libc" ,rust-libc)
734 ("rust-winapi" ,rust-winapi))))
735 (home-page "https://github.com/soc/dirs-rs")
736 (synopsis "Abstractions for standard locations for various platforms")
737 (description
738 "This package provides a tiny low-level library that provides
739 platform-specific standard locations of directories for config, cache and other
740 data on Linux, Windows, macOS and Redox by leveraging the mechanisms defined by
741 the XDG base/user directory specifications on Linux, the Known Folder API on
742 Windows, and the Standard Directory guidelines on macOS.")
743 (license (list license:expat license:asl2.0))))
744
745 (define-public rust-discard
746 (package
747 (name "rust-discard")
748 (version "1.0.4")
749 (source
750 (origin
751 (method url-fetch)
752 (uri (crate-uri "discard" version))
753 (file-name (string-append name "-" version ".tar.gz"))
754 (sha256
755 (base32
756 "1h67ni5bxvg95s91wgicily4ix7lcw7cq0a5gy9njrybaibhyb91"))))
757 (build-system cargo-build-system)
758 (home-page "https://github.com/Pauan/rust-discard")
759 (synopsis "Allow for intentionally leaking memory")
760 (description "There are situations where you need to intentionally leak some
761 memory but not other memory. This package provides a discard trait which allows
762 for intentionally leaking memory")
763 (license license:expat)))
764
765 (define-public rust-doc-comment
766 (package
767 (name "rust-doc-comment")
768 (version "0.3.1")
769 (source
770 (origin
771 (method url-fetch)
772 (uri (crate-uri "doc-comment" version))
773 (file-name (string-append name "-" version ".tar.gz"))
774 (sha256
775 (base32
776 "15rsqxgarfpb1yim9sbp9yfgj7p2dq6v51c6bq1a62paii9ylgcj"))))
777 (build-system cargo-build-system)
778 (home-page "https://github.com/GuillaumeGomez/doc-comment")
779 (synopsis "Macro to generate doc comments")
780 (description "This package provides a way to generate doc comments
781 from macros.")
782 (license license:expat)))
783
784 (define-public rust-dtoa
785 (package
786 (name "rust-dtoa")
787 (version "0.4.4")
788 (source
789 (origin
790 (method url-fetch)
791 (uri (crate-uri "dtoa" version))
792 (file-name (string-append name "-" version ".tar.gz"))
793 (sha256
794 (base32
795 "0phbm7i0dpn44gzi07683zxaicjap5064w62pidci4fhhciv8mza"))))
796 (build-system cargo-build-system)
797 (home-page "https://github.com/dtolnay/dtoa")
798 (synopsis "Fast functions for printing floating-point primitives")
799 (description "This crate provides fast functions for printing
800 floating-point primitives to an @code{io::Write}.")
801 (license (list license:asl2.0
802 license:expat))))
803
804 (define-public rust-dtoa-0.2
805 (package
806 (inherit rust-dtoa)
807 (name "rust-dtoa")
808 (version "0.2.2")
809 (source
810 (origin
811 (method url-fetch)
812 (uri (crate-uri "dtoa" version))
813 (file-name (string-append name "-" version ".tar.gz"))
814 (sha256
815 (base32
816 "0g96cap6si1g6wi62hsdk2fnj3sf5vd4i97zj6163j8hhnsl3n0d"))))))
817
818 (define-public rust-fallible-iterator
819 (package
820 (name "rust-fallible-iterator")
821 (version "0.2.0")
822 (source
823 (origin
824 (method url-fetch)
825 (uri (crate-uri "fallible-iterator" version))
826 (file-name (string-append name "-" version ".tar.gz"))
827 (sha256
828 (base32
829 "1xq759lsr8gqss7hva42azn3whgrbrs2sd9xpn92c5ickxm1fhs4"))))
830 (build-system cargo-build-system)
831 (home-page "https://github.com/sfackler/rust-fallible-iterator")
832 (synopsis "Fallible iterator traits")
833 (description "If the @code{std} or @code{alloc} features are enabled, this
834 crate provides implementations for @code{Box}, @code{Vec}, @code{BTreeMap}, and
835 @code{BTreeSet}. If the @code{std} feature is enabled, this crate additionally
836 provides implementations for @code{HashMap} and @code{HashSet}.")
837 (license (list license:asl2.0
838 license:expat))))
839
840 (define-public rust-filetime
841 (package
842 (name "rust-filetime")
843 (version "0.2.7")
844 (source
845 (origin
846 (method url-fetch)
847 (uri (crate-uri "filetime" version))
848 (file-name (string-append name "-" version ".tar.gz"))
849 (sha256
850 (base32
851 "0sflihq2l77xjrza7yjalnxsc7dxzg25rhzcfbd9vmyfah5kimvb"))))
852 (build-system cargo-build-system)
853 (arguments
854 `(#:cargo-inputs
855 (("rust-cfg-if" ,rust-cfg-if)
856 ("rust-libc" ,rust-libc)
857 ("rust-redox-syscall" ,rust-redox-syscall)
858 ("rust-winapi" ,rust-winapi))
859 #:cargo-development-inputs
860 (("rust-tempdir" ,rust-tempdir))))
861 (home-page "https://github.com/alexcrichton/filetime")
862 (synopsis "Platform-agnostic accessors of timestamps in File metadata")
863 (description
864 "This library contains a helper library for inspecting and setting the
865 various timestamps of files in Rust. This library takes into account
866 cross-platform differences in terms of where the timestamps are located, what
867 they are called, and how to convert them into a platform-independent
868 representation.")
869 (license (list license:asl2.0
870 license:expat))))
871
872 (define-public rust-findshlibs
873 (package
874 (name "rust-findshlibs")
875 (version "0.5.0")
876 (source
877 (origin
878 (method url-fetch)
879 (uri (crate-uri "findshlibs" version))
880 (file-name (string-append name "-" version ".tar.gz"))
881 (sha256
882 (base32
883 "1n2vagn0q5yim32hxkwi1cjgp3yn1dm45p7z8nw6lapywihhs9mi"))))
884 (build-system cargo-build-system)
885 (arguments
886 `(#:cargo-inputs
887 (("rust-lazy-static" ,rust-lazy-static)
888 ("rust-libc" ,rust-libc))))
889 (home-page "https://github.com/gimli-rs/findshlibs")
890 (synopsis "Find the set of shared libraries loaded in the current process")
891 (description
892 "Find the set of shared libraries loaded in the current process with a
893 cross platform API.")
894 (license (list license:asl2.0
895 license:expat))))
896
897 (define-public rust-fixedbitset
898 (package
899 (name "rust-fixedbitset")
900 (version "0.1.9")
901 (source
902 (origin
903 (method url-fetch)
904 (uri (crate-uri "fixedbitset" version))
905 (file-name (string-append name "-" version ".tar.gz"))
906 (sha256
907 (base32
908 "0czam11mi80dbyhf4rd4lz0ihcf7vkfchrdcrn45wbs0h40dxm46"))))
909 (build-system cargo-build-system)
910 (home-page "https://github.com/petgraph/fixedbitset")
911 (synopsis "FixedBitSet is a simple bitset collection")
912 (description "FixedBitSet is a simple bitset collection.")
913 (license (list license:asl2.0
914 license:expat))))
915
916 (define-public rust-fnv
917 (package
918 (name "rust-fnv")
919 (version "1.0.6")
920 (source
921 (origin
922 (method url-fetch)
923 (uri (crate-uri "fnv" version))
924 (file-name (string-append name "-" version ".tar.gz"))
925 (sha256
926 (base32
927 "1ww56bi1r5b8id3ns9j3qxbi7w5h005rzhiryy0zi9h97raqbb9g"))))
928 (build-system cargo-build-system)
929 (home-page "https://github.com/servo/rust-fnv")
930 (synopsis "implementation of the Fowler-Noll-Vo hash function")
931 (description "The @code{fnv} hash function is a custom @code{Hasher}
932 implementation that is more efficient for smaller hash keys.")
933 (license (list license:asl2.0
934 license:expat))))
935
936 (define-public rust-foreign-types-shared
937 (package
938 (name "rust-foreign-types-shared")
939 (version "0.2.0")
940 (source
941 (origin
942 (method url-fetch)
943 (uri (crate-uri "foreign-types-shared" version))
944 (file-name (string-append name "-" version ".tar.gz"))
945 (sha256
946 (base32
947 "0kanxlif1vp0ffh2r9l610jqbkmb3183yqykxq1z5w1vay2rn7y6"))))
948 (build-system cargo-build-system)
949 (home-page "https://github.com/sfackler/foreign-types")
950 (synopsis "An internal crate used by foreign-types")
951 (description
952 "An internal crate used by foreign-types.")
953 (license (list license:asl2.0
954 license:expat))))
955
956 (define-public rust-fs-extra
957 (package
958 (name "rust-fs-extra")
959 (version "1.1.0")
960 (source
961 (origin
962 (method url-fetch)
963 (uri (crate-uri "fs_extra" version))
964 (file-name (string-append name "-" version ".tar.gz"))
965 (sha256
966 (base32
967 "0x6675wdhsx277k1k1235jwcv38naf20d8kwrk948ds26hh4lajz"))))
968 (build-system cargo-build-system)
969 (home-page "https://github.com/webdesus/fs_extra")
970 (synopsis "Extra filesystem methods")
971 (description "Expanding opportunities standard library @code{std::fs} and
972 @code{std::io}. Recursively copy folders with recept information about
973 process and much more.")
974 (license license:expat)))
975
976 (define-public rust-fuchsia-cprng
977 (package
978 (name "rust-fuchsia-cprng")
979 (version "0.1.1")
980 (source
981 (origin
982 (method url-fetch)
983 (uri (crate-uri "fuchsia-cprng" version))
984 (file-name (string-append name "-" version ".tar.gz"))
985 (sha256
986 (base32
987 "1fnkqrbz7ixxzsb04bsz9p0zzazanma8znfdqjvh39n14vapfvx0"))))
988 (build-system cargo-build-system)
989 (arguments
990 `(#:tests? #f)) ; tests require zircon
991 (home-page "https://fuchsia.googlesource.com/fuchsia/+/master/garnet/public/rust/fuchsia-cprng")
992 (synopsis "Fuchsia cryptographically secure pseudorandom number generator")
993 (description "Rust crate for the Fuchsia cryptographically secure
994 pseudorandom number generator")
995 (license license:bsd-3)))
996
997 (define-public rust-fuchsia-zircon
998 (package
999 (name "rust-fuchsia-zircon")
1000 (version "0.3.3")
1001 (source
1002 (origin
1003 (method url-fetch)
1004 (uri (crate-uri "fuchsia-zircon" version))
1005 (file-name (string-append name "-" version ".tar.gz"))
1006 (sha256
1007 (base32
1008 "10jxc5ks1x06gpd0xg51kcjrxr35nj6qhx2zlc5n7bmskv3675rf"))))
1009 (build-system cargo-build-system)
1010 (arguments
1011 `(#:cargo-inputs
1012 (("rust-bitflags" ,rust-bitflags)
1013 ("rust-fuchsia-zircon-sys" ,rust-fuchsia-zircon-sys))
1014 #:tests? #f)) ; tests require zircon
1015 (home-page "https://fuchsia.googlesource.com/garnet/")
1016 (synopsis "Rust bindings for the Zircon kernel")
1017 (description "Rust bindings for the Zircon kernel.")
1018 (license license:bsd-3)))
1019
1020 (define-public rust-fuchsia-zircon-sys
1021 (package
1022 (name "rust-fuchsia-zircon-sys")
1023 (version "0.3.3")
1024 (source
1025 (origin
1026 (method url-fetch)
1027 (uri (crate-uri "fuchsia-zircon-sys" version))
1028 (file-name (string-append name "-" version ".tar.gz"))
1029 (sha256
1030 (base32
1031 "19zp2085qsyq2bh1gvcxq1lb8w6v6jj9kbdkhpdjrl95fypakjix"))))
1032 (build-system cargo-build-system)
1033 (arguments
1034 `(#:tests? #f)) ; tests require zircon
1035 (home-page "https://fuchsia.googlesource.com/garnet/")
1036 (synopsis "Low-level Rust bindings for the Zircon kernel")
1037 (description "Low-level Rust bindings for the Zircon kernel.")
1038 (license license:bsd-3)))
1039
1040 (define-public rust-futures
1041 (package
1042 (name "rust-futures")
1043 (version "0.1.28")
1044 (source
1045 (origin
1046 (method url-fetch)
1047 (uri (crate-uri "futures" version))
1048 (file-name (string-append name "-" version ".tar.gz"))
1049 (sha256
1050 (base32
1051 "0saq8ffjw1pwf1pzhw3kq1z7dfq6wpd8x93dnni6vbkc799kkp25"))))
1052 (build-system cargo-build-system)
1053 (home-page "https://github.com/rust-lang-nursery/futures-rs")
1054 (synopsis "Implementation of zero-cost futures in Rust")
1055 (description "An implementation of @code{futures} and @code{streams}
1056 featuring zero allocations, composability, and iterator-like interfaces.")
1057 (license (list license:asl2.0
1058 license:expat))))
1059
1060 (define-public rust-futures-core-preview
1061 (package
1062 (name "rust-futures-core-preview")
1063 (version "0.3.0-alpha.17")
1064 (source
1065 (origin
1066 (method url-fetch)
1067 (uri (crate-uri "futures-core-preview" version))
1068 (file-name (string-append name "-" version ".tar.gz"))
1069 (sha256
1070 (base32
1071 "1xaq8m609k6cz8xydwhwp8xxyxigabcw1w9ngycfy0bnkg7iq52b"))))
1072 (build-system cargo-build-system)
1073 (arguments
1074 '(#:tests? #f)) ; The only tests are doc tests, which fail.
1075 (home-page "https://rust-lang-nursery.github.io/futures-rs/")
1076 (synopsis "Core traits and types in for the @code{futures} library.")
1077 (description "This crate provides the core traits and types in for the
1078 @code{futures} library.")
1079 (license (list license:asl2.0
1080 license:expat))))
1081
1082 (define-public rust-futures-cpupool
1083 (package
1084 (name "rust-futures-cpupool")
1085 (version "0.1.8")
1086 (source
1087 (origin
1088 (method url-fetch)
1089 (uri (crate-uri "futures-cpupool" version))
1090 (file-name (string-append name "-" version ".tar.gz"))
1091 (sha256
1092 (base32
1093 "1r32456gpblzfvnkf60545v8acqk7gh5zhyhi1jn669k9gicv45b"))))
1094 (build-system cargo-build-system)
1095 (arguments
1096 `(#:cargo-inputs
1097 (("rust-futures" ,rust-futures)
1098 ("rust-num-cpus" ,rust-num-cpus))))
1099 (home-page "https://github.com/rust-lang-nursery/futures-rs")
1100 (synopsis "Implementation of thread pools which hand out futures")
1101 (description
1102 "An implementation of thread pools which hand out futures to the results of
1103 the computation on the threads themselves.")
1104 (license (list license:asl2.0
1105 license:expat))))
1106
1107 (define-public rust-futures-io-preview
1108 (package
1109 (name "rust-futures-io-preview")
1110 (version "0.3.0-alpha.17")
1111 (source
1112 (origin
1113 (method url-fetch)
1114 (uri (crate-uri "futures-io-preview" version))
1115 (file-name (string-append name "-" version ".tar.gz"))
1116 (sha256
1117 (base32
1118 "0fhvwhdb8ywjjbfng0ra1r8yyc9yzpyxg9sv3spb3f7w0lk40bh8"))))
1119 (build-system cargo-build-system)
1120 (home-page "https://rust-lang-nursery.github.io/futures-rs/")
1121 (synopsis "Async read and write traits for the futures library")
1122 (description "This crate provides the @code{AsyncRead} and
1123 @code{AsyncWrite} traits for the @code{futures-rs} library.")
1124 (license (list license:asl2.0
1125 license:expat))))
1126
1127 (define-public rust-futures-sink-preview
1128 (package
1129 (name "rust-futures-sink-preview")
1130 (version "0.3.0-alpha.17")
1131 (source
1132 (origin
1133 (method url-fetch)
1134 (uri (crate-uri "futures-sink-preview" version))
1135 (file-name (string-append name "-" version ".tar.gz"))
1136 (sha256
1137 (base32
1138 "1r4d0gy73hdxkh5g1lrhl1kjnwp6mywjgcj70v0z78b921da42a3"))))
1139 (build-system cargo-build-system)
1140 (arguments
1141 `(#:cargo-inputs
1142 (("rust-futures-core-preview" ,rust-futures-core-preview))))
1143 (home-page "https://rust-lang-nursery.github.io/futures-rs/")
1144 (synopsis "Asynchronous `Sink` trait for the futures-rs library")
1145 (description
1146 "This package provides the asynchronous @code{Sink} trait for the
1147 futures-rs library.")
1148 (license (list license:asl2.0
1149 license:expat))))
1150
1151 (define-public rust-gcc
1152 (package
1153 (inherit rust-cc)
1154 (name "rust-gcc")
1155 (version "0.3.55")
1156 (source
1157 (origin
1158 (method url-fetch)
1159 (uri (crate-uri "gcc" version))
1160 (file-name (string-append name "-" version ".tar.gz"))
1161 (sha256
1162 (base32
1163 "1hng1sajn4r67hndvhjysswz8niayjwvcj42zphpxzhbz89kjpwg"))))
1164 (build-system cargo-build-system)
1165 (arguments
1166 `(;#:cargo-inputs
1167 ;(("rust-rayon" ,rust-rayon))
1168 #:cargo-development-inputs
1169 (("rust-tempdir" ,rust-tempdir))
1170 #:phases
1171 (modify-phases %standard-phases
1172 (add-after 'unpack 'remove-optional-deps
1173 (lambda _
1174 (substitute* "Cargo.toml.orig"
1175 ((".*optional.*") "\n")
1176 ((".*features.*") "")
1177 ((".*parallel.*") ""))
1178 (delete-file "Cargo.toml")
1179 (copy-file "Cargo.toml.orig" "Cargo.toml")
1180 #t)))
1181 #:tests? #f))
1182 (home-page "https://github.com/alexcrichton/cc-rs")
1183 (synopsis "Library to compile C/C++ code into a Rust library/application")
1184 (description
1185 "This package provides a build-time dependency for Cargo build scripts to
1186 assist in invoking the native C compiler to compile native C code into a static
1187 archive to be linked into Rustcode.")
1188 (license (list license:asl2.0
1189 license:expat))))
1190
1191 (define-public rust-getopts
1192 (package
1193 (name "rust-getopts")
1194 (version "0.2.17")
1195 (source
1196 (origin
1197 (method url-fetch)
1198 (uri (crate-uri "getopts" version))
1199 (file-name (string-append name "-" version ".tar.gz"))
1200 (sha256
1201 (base32
1202 "018yhq97zgcrcxwhj3pxh31h83704sgaiijdnpl0r1ir366c005r"))))
1203 (build-system cargo-build-system)
1204 (arguments
1205 `(#:cargo-development-inputs
1206 (("rust-log" ,rust-log))))
1207 (home-page "https://github.com/rust-lang-nursery/getopts")
1208 (synopsis "Rust library for option parsing for CLI utilities")
1209 (description "This library provides getopts-like option parsing.")
1210 (license (list license:asl2.0
1211 license:expat))))
1212
1213 (define-public rust-glob
1214 (package
1215 (name "rust-glob")
1216 (version "0.3.0")
1217 (source
1218 (origin
1219 (method url-fetch)
1220 (uri (crate-uri "glob" version))
1221 (file-name (string-append name "-" version ".tar.gz"))
1222 (sha256
1223 (base32
1224 "0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv"))))
1225 (build-system cargo-build-system)
1226 (arguments
1227 `(#:cargo-development-inputs
1228 (("rust-tempdir" ,rust-tempdir))
1229 #:phases
1230 (modify-phases %standard-phases
1231 (add-after 'unpack 'fix-tests
1232 ;; This test assumes /root exists but is unreadable by the user.
1233 (lambda _
1234 (substitute* "src/lib.rs"
1235 (("cfg\\(all\\(unix,.*") "cfg(windows)]\n"))
1236 #t)))))
1237 (home-page "https://github.com/rust-lang-nursery/glob")
1238 (synopsis "Match file paths against Unix shell style patterns")
1239 (description
1240 "This package provides support for matching file paths against Unix
1241 shell style patterns.")
1242 (license (list license:asl2.0
1243 license:expat))))
1244
1245 (define-public rust-glob-0.2
1246 (package
1247 (inherit rust-glob)
1248 (name "rust-glob")
1249 (version "0.2.11")
1250 (source
1251 (origin
1252 (method url-fetch)
1253 (uri (crate-uri "glob" version))
1254 (file-name (string-append name "-" version ".tar.gz"))
1255 (sha256
1256 (base32
1257 "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb"))))
1258 (arguments
1259 `(#:cargo-development-inputs
1260 (("rust-tempdir" ,rust-tempdir))
1261 #:phases
1262 (modify-phases %standard-phases
1263 (add-after 'unpack 'fix-tests
1264 ;; This test assumes /root exists but is unreadable by the user.
1265 (lambda _
1266 (substitute* "src/lib.rs"
1267 (("cfg\\(unix") "cfg(windows"))
1268 #t)))))))
1269
1270 (define-public rust-heapsize
1271 (package
1272 (name "rust-heapsize")
1273 (version "0.4.2")
1274 (source
1275 (origin
1276 (method url-fetch)
1277 (uri (crate-uri "heapsize" version))
1278 (file-name (string-append name "-" version ".tar.gz"))
1279 (sha256
1280 (base32
1281 "0q94q9ppqjgrw71swiyia4hgby2cz6dldp7ij57nkvhd6zmfcy8n"))))
1282 (build-system cargo-build-system)
1283 (arguments
1284 `(#:cargo-inputs (("rust-winapi" ,rust-winapi))
1285 ;; Tests assume rust is built with jemalloc.
1286 ;; https://github.com/servo/heapsize/issues/74
1287 #:cargo-test-flags '("--features" "flexible-tests")))
1288 (home-page "https://github.com/servo/heapsize")
1289 (synopsis "Measure the total runtime size of an object on the heap")
1290 (description
1291 "Infrastructure for measuring the total runtime size of an object on the
1292 heap.")
1293 (license (list license:asl2.0
1294 license:expat))))
1295
1296 (define-public rust-heapsize-0.3
1297 (package
1298 (inherit rust-heapsize)
1299 (name "rust-heapsize")
1300 (version "0.3.9")
1301 (source
1302 (origin
1303 (method url-fetch)
1304 (uri (crate-uri "heapsize" version))
1305 (file-name (string-append name "-" version ".tar.gz"))
1306 (sha256
1307 (base32
1308 "0dmwc37vgsdjzk10443dj4f23439i9gch28jcwzmry3chrwx8v2m"))))
1309 (arguments
1310 `(#:cargo-inputs (("rust-kernel32-sys" ,rust-kernel32-sys))
1311 #:tests? #f)))) ;; No flexible-tests feature flags on this release.
1312
1313 ;; This package makes use of removed features
1314 (define-public rust-heapsize-plugin
1315 (package
1316 (name "rust-heapsize-plugin")
1317 (version "0.1.6")
1318 (source
1319 (origin
1320 (method url-fetch)
1321 (uri (crate-uri "heapsize_plugin" version))
1322 (file-name (string-append name "-" version ".tar.gz"))
1323 (sha256
1324 (base32
1325 "1i72isf699q9jl167g2kg4xd6h3cd05rc79zaph58aqjy0g0m9y9"))))
1326 (build-system cargo-build-system)
1327 (arguments
1328 `(#:cargo-development-inputs (("rust-heapsize" ,rust-heapsize-0.3))
1329 #:phases
1330 (modify-phases %standard-phases
1331 (add-after 'unpack 'fix-Cargo-toml
1332 (lambda _
1333 (substitute* "Cargo.toml"
1334 (("path = \"..\", ") ""))
1335 #t)))))
1336 (home-page "https://github.com/servo/heapsize")
1337 (synopsis "Measure runtime size of an object on the heap")
1338 (description
1339 "This package automatically generates infrastructure for measuring the
1340 total runtime size of an object on the heap")
1341 (properties `((hidden? . #t)))
1342 (license license:mpl2.0)))
1343
1344 (define-public rust-hex
1345 (package
1346 (name "rust-hex")
1347 (version "0.3.2")
1348 (source
1349 (origin
1350 (method url-fetch)
1351 (uri (crate-uri "hex" version))
1352 (file-name (string-append name "-" version ".tar.gz"))
1353 (sha256
1354 (base32
1355 "0xsdcjiik5j750j67zk42qdnmm4ahirk3gmkmcqgq7qls2jjcl40"))))
1356 (build-system cargo-build-system)
1357 (home-page "https://github.com/KokaKiwi/rust-hex")
1358 (synopsis "Encode and decode data to/from hexadecimals")
1359 (description "This crate allows for encoding and decoding data into/from
1360 hexadecimal representation.")
1361 (license (list license:asl2.0
1362 license:expat))))
1363
1364 (define-public rust-hostname
1365 (package
1366 (name "rust-hostname")
1367 (version "0.1.5")
1368 (source
1369 (origin
1370 (method url-fetch)
1371 (uri (crate-uri "hostname" version))
1372 (file-name (string-append name "-" version ".tar.gz"))
1373 (sha256
1374 (base32
1375 "0kprf862qaa7lwdms6aw7f3275h0j2rwhs9nz5784pm8hdmb9ki1"))))
1376 (build-system cargo-build-system)
1377 (arguments
1378 `(#:cargo-inputs
1379 (("rust-libc" ,rust-libc)
1380 ("rust-winutil" ,rust-winutil))))
1381 (home-page "https://github.com/fengcen/hostname")
1382 (synopsis "Get hostname for Rust")
1383 (description
1384 "Get hostname for Rust.")
1385 (license license:expat)))
1386
1387 (define-public rust-iovec
1388 (package
1389 (name "rust-iovec")
1390 (version "0.1.2")
1391 (source
1392 (origin
1393 (method url-fetch)
1394 (uri (crate-uri "iovec" version))
1395 (file-name (string-append name "-" version ".tar.gz"))
1396 (sha256
1397 (base32
1398 "025vi072m22299z3fg73qid188z2iip7k41ba6v5v5yhwwby9rnv"))))
1399 (build-system cargo-build-system)
1400 (arguments
1401 `(#:cargo-inputs
1402 (("rust-libc" ,rust-libc)
1403 ("rust-winapi" ,rust-winapi-0.2))))
1404 (home-page "https://github.com/carllerche/iovec")
1405 (synopsis "Portable buffer type for scatter/gather I/O operations")
1406 (description
1407 "Portable buffer type for scatter/gather I/O operations.")
1408 (license (list license:asl2.0
1409 license:expat))))
1410
1411 (define-public rust-itoa
1412 (package
1413 (name "rust-itoa")
1414 (version "0.4.4")
1415 (source
1416 (origin
1417 (method url-fetch)
1418 (uri (crate-uri "itoa" version))
1419 (file-name (string-append name "-" version ".tar.gz"))
1420 (sha256
1421 (base32
1422 "0zvg2d9qv3avhf3d8ggglh6fdyw8kkwqg3r4622ly5yhxnvnc4jh"))))
1423 (build-system cargo-build-system)
1424 (home-page "https://github.com/dtolnay/itoa")
1425 (synopsis "Fast functions for printing integer primitives")
1426 (description "This crate provides fast functions for printing integer
1427 primitives to an @code{io::Write}.")
1428 (license (list license:asl2.0
1429 license:expat))))
1430
1431 (define-public rust-itoa-0.1
1432 (package
1433 (inherit rust-itoa)
1434 (name "rust-itoa")
1435 (version "0.1.1")
1436 (source
1437 (origin
1438 (method url-fetch)
1439 (uri (crate-uri "itoa" version))
1440 (file-name (string-append name "-" version ".tar.gz"))
1441 (sha256
1442 (base32
1443 "18g7p2hrb3dk84z3frfgmszfc9hjb4ps9vp99qlb1kmf9gm8hc5f"))))))
1444
1445 (define-public rust-jemalloc-sys
1446 (package
1447 (name "rust-jemalloc-sys")
1448 (version "0.3.2")
1449 (source
1450 (origin
1451 (method url-fetch)
1452 (uri (crate-uri "jemalloc-sys" version))
1453 (file-name (string-append name "-" version ".tar.gz"))
1454 (sha256
1455 (base32
1456 "0ify9vlql01qhfxlj7d4p9jvcp90mj2h69nkbq7slccvbhzryfqd"))))
1457 (build-system cargo-build-system)
1458 (arguments
1459 `(#:cargo-inputs
1460 (("rust-libc" ,rust-libc)
1461 ("rust-cc" ,rust-cc)
1462 ("rust-fs-extra" ,rust-fs-extra))
1463 #:phases
1464 (modify-phases %standard-phases
1465 (add-after 'unpack 'override-jemalloc
1466 (lambda* (#:key inputs #:allow-other-keys)
1467 (let ((jemalloc (assoc-ref inputs "jemalloc")))
1468 (delete-file-recursively "jemalloc")
1469 (setenv "JEMALLOC_OVERRIDE"
1470 (string-append jemalloc "/lib/libjemalloc_pic.a")))
1471 #t)))))
1472 (inputs
1473 `(("jemalloc" ,jemalloc)))
1474 (home-page "https://github.com/gnzlbg/jemallocator")
1475 (synopsis "Rust FFI bindings to jemalloc")
1476 (description "This package provides Rust FFI bindings to jemalloc.")
1477 (license (list license:asl2.0
1478 license:expat))))
1479
1480 (define-public rust-json
1481 (package
1482 (name "rust-json")
1483 (version "0.11.14")
1484 (source
1485 (origin
1486 (method url-fetch)
1487 (uri (crate-uri "json" version))
1488 (file-name (string-append name "-" version ".tar.gz"))
1489 (sha256
1490 (base32
1491 "1hj8c6xj5c2aqqszi8naaflmcdbya1i9byyjrq4iybxjb4q91mq1"))))
1492 (build-system cargo-build-system)
1493 (home-page "https://github.com/maciejhirsz/json-rust")
1494 (synopsis "JSON implementation in Rust")
1495 (description "This crate provides a JSON implementation in Rust, reducing
1496 friction with idiomatic Rust structs to ease interopability.")
1497 (license (list license:asl2.0
1498 license:expat))))
1499
1500 (define-public rust-kernel32-sys
1501 (package
1502 (name "rust-kernel32-sys")
1503 (version "0.2.2")
1504 (source
1505 (origin
1506 (method url-fetch)
1507 (uri (crate-uri "kernel32-sys" version))
1508 (file-name (string-append name "-" version ".tar.gz"))
1509 (sha256
1510 (base32
1511 "1389av0601a9yz8dvx5zha9vmkd6ik7ax0idpb032d28555n41vm"))))
1512 (build-system cargo-build-system)
1513 (arguments
1514 `(#:cargo-inputs
1515 (("rust-winapi" ,rust-winapi-0.2)
1516 ("rust-winapi-build" ,rust-winapi-build))
1517 #:phases
1518 (modify-phases %standard-phases
1519 (add-after 'unpack 'fix-Cargo-toml
1520 (lambda _
1521 (substitute* "Cargo.toml"
1522 ((", path =.* }") "}\n"))
1523 #t)))))
1524 (home-page "https://github.com/retep998/winapi-rs")
1525 (synopsis "Function definitions for the Windows API library kernel32")
1526 (description "Contains function definitions for the Windows API library
1527 kernel32.")
1528 (license license:expat)))
1529
1530 (define-public rust-language-tags
1531 (package
1532 (name "rust-language-tags")
1533 (version "0.2.2")
1534 (source
1535 (origin
1536 (method url-fetch)
1537 (uri (crate-uri "language-tags" version))
1538 (file-name (string-append name "-" version ".tar.gz"))
1539 (sha256
1540 (base32
1541 "16hrjdpa827carq5x4b8zhas24d8kg4s16m6nmmn1kb7cr5qh7d9"))))
1542 (build-system cargo-build-system)
1543 (arguments
1544 `(#:cargo-inputs
1545 (("rust-heapsize" ,rust-heapsize-0.3))
1546 #:cargo-development-inputs
1547 (("rust-heapsize-plugin" ,rust-heapsize-plugin))))
1548 (home-page "https://github.com/pyfisch/rust-language-tags")
1549 (synopsis "Language tags for Rust")
1550 (description
1551 "Language tags can be used identify human languages, scripts e.g. Latin
1552 script, countries and other regions. They are commonly used in HTML and HTTP
1553 @code{Content-Language} and @code{Accept-Language} header fields. This package
1554 currently supports parsing (fully conformant parser), formatting and comparing
1555 language tags.")
1556 (license license:expat)))
1557
1558 (define-public rust-lazy-static
1559 (package
1560 (name "rust-lazy-static")
1561 (version "1.3.0")
1562 (source
1563 (origin
1564 (method url-fetch)
1565 (uri (crate-uri "lazy_static" version))
1566 (file-name (string-append name "-" version ".tar.gz"))
1567 (sha256
1568 (base32
1569 "052ac27w189hrf1j3hz7sga46rp84zl2hqnzyihxv78mgzr2jmxw"))))
1570 (build-system cargo-build-system)
1571 (arguments
1572 `(#:cargo-inputs (("rust-spin" ,rust-spin))))
1573 (home-page "https://github.com/rust-lang-nursery/lazy-static.rs")
1574 (synopsis "Macro for declaring lazily evaluated statics in Rust")
1575 (description
1576 "This package provides a macro for declaring lazily evaluated statics in
1577 Rust. Using this macro, it is possible to have @code{static}s that require code
1578 to be executed at runtime in order to be initialized. This includes anything
1579 requiring heap allocations, like vectors or hash maps, as well as anything that
1580 requires non-const function calls to be computed.")
1581 (license (list license:asl2.0
1582 license:expat))))
1583
1584 (define-public rust-libc
1585 (package
1586 (name "rust-libc")
1587 (version "0.2.62")
1588 (source
1589 (origin
1590 (method url-fetch)
1591 (uri (crate-uri "libc" version))
1592 (file-name
1593 (string-append name "-" version ".tar.gz"))
1594 (sha256
1595 (base32
1596 "1fh69kpjg8hqff36kdczx7sax98gk4qs4ws1dwvjz0rgip0d5z1l"))))
1597 (build-system cargo-build-system)
1598 (arguments
1599 `(#:cargo-inputs
1600 (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core))))
1601 (home-page "https://github.com/rust-lang/libc")
1602 (synopsis "Raw FFI bindings to platform libraries like libc")
1603 (description
1604 "libc provides all of the definitions necessary to easily
1605 interoperate with C code (or \"C-like\" code) on each of the platforms
1606 that Rust supports. This includes type definitions (e.g., c_int),
1607 constants (e.g., EINVAL) as well as function headers (e.g., malloc).
1608
1609 This crate exports all underlying platform types, functions, and
1610 constants under the crate root, so all items are accessible as
1611 @samp{libc::foo}. The types and values of all the exported APIs match
1612 the platform that libc is compiled for.")
1613 (license (list license:expat
1614 license:asl2.0))))
1615
1616 (define-public rust-libgit2-sys
1617 (package
1618 (name "rust-libgit2-sys")
1619 (version "0.8.2")
1620 (source
1621 (origin
1622 (method url-fetch)
1623 (uri (crate-uri "libgit2-sys" version))
1624 (file-name (string-append name "-" version ".tar.gz"))
1625 (sha256
1626 (base32
1627 "0y2mibmx7wy91s2kmb2gfb29mrqlqaxpy5wcwr8s1lwws7b9w5sc")) ))
1628 (build-system cargo-build-system)
1629 (arguments
1630 `(#:cargo-inputs
1631 (("rust-libc" ,rust-libc)
1632 ("rust-libssh2-sys" ,rust-libssh2-sys)
1633 ("rust-libz-sys" ,rust-libz-sys)
1634 ("rust-openssl-sys" ,rust-openssl-sys))
1635 #:cargo-development-inputs
1636 (("rust-cc" ,rust-cc)
1637 ("rust-pkg-config" ,rust-pkg-config))
1638 #:phases
1639 (modify-phases %standard-phases
1640 (add-after 'unpack 'find-openssl
1641 (lambda* (#:key inputs #:allow-other-keys)
1642 (let ((openssl (assoc-ref inputs "openssl")))
1643 (setenv "OPENSSL_DIR" openssl))
1644 (delete-file-recursively "libgit2")
1645 (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1")
1646 (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1")
1647 #t)))))
1648 (native-inputs
1649 `(("pkg-config" ,pkg-config)))
1650 (inputs
1651 `(("libgit2" ,libgit2)
1652 ("openssl" ,openssl)
1653 ("zlib" ,zlib)))
1654 (home-page "https://github.com/rust-lang/git2-rs")
1655 (synopsis "Native bindings to the libgit2 library")
1656 (description
1657 "This package provides native rust bindings to the @code{libgit2} library.")
1658 (license (list license:asl2.0
1659 license:expat))))
1660
1661 (define-public rust-libgit2-sys-0.7
1662 (package
1663 (inherit rust-libgit2-sys)
1664 (name "rust-libgit2-sys")
1665 (version "0.7.11")
1666 (source
1667 (origin
1668 (method url-fetch)
1669 (uri (crate-uri "libgit2-sys" version))
1670 (file-name (string-append name "-" version ".tar.gz"))
1671 (sha256
1672 (base32
1673 "1wcvg2qqra2aviasvqcscl8gb2rnjnd6h998wy5dlmf2bnriqi28"))))
1674 (build-system cargo-build-system)
1675 (arguments
1676 `(#:cargo-inputs
1677 (("rust-curl-sys" ,rust-curl-sys)
1678 ("rust-libc" ,rust-libc)
1679 ("rust-libssh2-sys" ,rust-libssh2-sys)
1680 ("rust-libz-sys" ,rust-libz-sys)
1681 ("rust-openssl-sys" ,rust-openssl-sys))
1682 #:cargo-development-inputs
1683 (("rust-cc" ,rust-cc)
1684 ("rust-pkg-config" ,rust-pkg-config))))
1685 (inputs
1686 `(("curl" ,curl)
1687 ,@(package-inputs rust-libgit2-sys)))))
1688
1689 (define-public rust-libloading
1690 (package
1691 (name "rust-libloading")
1692 (version "0.5.2")
1693 (source
1694 (origin
1695 (method url-fetch)
1696 (uri (crate-uri "libloading" version))
1697 (file-name (string-append name "-" version ".tar.gz"))
1698 (sha256
1699 (base32
1700 "0lyply8rcqc8agajzxs7bq6ivba9dnn1i68kgb9z2flnfjh13cgj"))))
1701 (build-system cargo-build-system)
1702 (arguments
1703 `(#:cargo-inputs
1704 (("rust-cc" ,rust-cc)
1705 ("rust-winapi" ,rust-winapi))))
1706 (home-page "https://github.com/nagisa/rust_libloading/")
1707 (synopsis "Rust library for loading dynamic libraries")
1708 (description
1709 "A memory-safer wrapper around system dynamic library loading primitives.
1710 The most important safety guarantee by this library is prevention of
1711 dangling-Symbols that may occur after a Library is unloaded. Using this library
1712 allows loading dynamic libraries (also known as shared libraries) as well as use
1713 functions and static variables these libraries contain.")
1714 (license license:isc)))
1715
1716 (define-public rust-libssh2-sys
1717 (package
1718 (name "rust-libssh2-sys")
1719 (version "0.2.12")
1720 (source
1721 (origin
1722 (method url-fetch)
1723 (uri (crate-uri "libssh2-sys" version))
1724 (file-name (string-append name "-" version ".tar.gz"))
1725 (sha256
1726 (base32
1727 "1zb6gsw795nq848nk5x2smzpfnn1s15wjlzjnvr8ihlz2l5x2549"))))
1728 (build-system cargo-build-system)
1729 (arguments
1730 `(#:cargo-inputs
1731 (("rust-libc" ,rust-libc)
1732 ("rust-libz-sys" ,rust-libz-sys)
1733 ("rust-openssl-sys" ,rust-openssl-sys))
1734 #:cargo-development-inputs
1735 (("rust-cc" ,rust-cc)
1736 ("rust-openssl-src" ,rust-openssl-src)
1737 ("rust-pkg-config" ,rust-pkg-config)
1738 ("rust-vcpkg" ,rust-vcpkg))
1739 #:phases
1740 (modify-phases %standard-phases
1741 (add-after 'unpack 'find-openssl
1742 (lambda* (#:key inputs #:allow-other-keys)
1743 (let ((openssl (assoc-ref inputs "openssl")))
1744 (setenv "OPENSSL_DIR" openssl))
1745 (delete-file-recursively "libssh2")
1746 (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1")
1747 #t)))))
1748 (native-inputs
1749 `(("pkg-config" ,pkg-config)))
1750 (inputs
1751 `(("libssh2" ,libssh2)
1752 ("openssl" ,openssl)
1753 ("zlib" ,zlib)))
1754 (home-page "https://github.com/alexcrichton/ssh2-rs")
1755 (synopsis "Native bindings to the libssh2 library")
1756 (description
1757 "This package provides native rust bindings to the @code{libssh2} library.")
1758 (license (list license:asl2.0
1759 license:expat))))
1760
1761
1762 (define-public rust-lock-api
1763 (package
1764 (name "rust-lock-api")
1765 (version "0.1.5")
1766 (source
1767 (origin
1768 (method url-fetch)
1769 (uri (crate-uri "lock_api" version))
1770 (file-name (string-append name "-" version ".tar.gz"))
1771 (sha256
1772 (base32
1773 "0b24q9mh258xa52ap636q1sxz0j5vrnp0hwbbh7ddjka3wwz3sv2"))))
1774 (build-system cargo-build-system)
1775 (arguments
1776 `(#:cargo-inputs
1777 (("rust-owning-ref" ,rust-owning-ref)
1778 ("rust-scopeguard" ,rust-scopeguard-0.3))))
1779 (home-page "https://github.com/Amanieu/parking_lot")
1780 (synopsis "Wrappers to create fully-featured Mutex and RwLock types")
1781 (description
1782 "This package provides wrappers to create fully-featured @code{Mutex} and
1783 @code{RwLock} types. It is compatible with @code{no_std}.")
1784 (license (list license:asl2.0
1785 license:expat))))
1786
1787 (define-public rust-log
1788 (package
1789 (name "rust-log")
1790 (version "0.3.8")
1791 (source
1792 (origin
1793 (method url-fetch)
1794 (uri (crate-uri "log" version))
1795 (file-name (string-append name "-" version ".tar.gz"))
1796 (sha256
1797 (base32
1798 "0nsn28syc49vvjhxcfc8261rd1frhjc0r4bn9v3mqvps3ra7f3w8"))))
1799 (build-system cargo-build-system)
1800 (home-page "https://github.com/rust-lang-nursery/log")
1801 (synopsis "Lightweight logging")
1802 (description
1803 "This package provides a lightweight logging facade for Rust")
1804 (license (list license:asl2.0
1805 license:expat))))
1806
1807 (define-public rust-lzma-sys
1808 (package
1809 (name "rust-lzma-sys")
1810 (version "0.1.15")
1811 (source
1812 (origin
1813 (method url-fetch)
1814 (uri (crate-uri "lzma-sys" version))
1815 (file-name (string-append name "-" version ".tar.gz"))
1816 (sha256
1817 (base32
1818 "14gyj256yh0wm77jbvmlc39v7lfn0navpfrja4alczarzlc8ir2k"))))
1819 (build-system cargo-build-system)
1820 (arguments
1821 `(#:cargo-inputs
1822 (("rust-cc" ,rust-cc)
1823 ("rust-libc" ,rust-libc)
1824 ("rust-pkg-config" ,rust-pkg-config))
1825 #:phases
1826 (modify-phases %standard-phases
1827 (add-after 'unpack 'unbundle-xz
1828 (lambda* (#:key inputs #:allow-other-keys)
1829 (let ((xz (assoc-ref inputs "xz")))
1830 (delete-file-recursively "xz-5.2"))
1831 #t)))))
1832 (inputs
1833 `(("pkg-config" ,pkg-config)
1834 ("xz" ,xz)))
1835 (home-page "https://github.com/alexcrichton/xz2-rs")
1836 (synopsis "Bindings to liblzma for lzma and xz stream encoding/decoding")
1837 (description
1838 "This package contains the raw bindings to liblzma which contains an
1839 implementation of LZMA and xz stream encoding/decoding.")
1840 (license (list license:asl2.0
1841 license:expat))))
1842
1843 (define-public rust-maplit
1844 (package
1845 (name "rust-maplit")
1846 (version "1.0.1")
1847 (source
1848 (origin
1849 (method url-fetch)
1850 (uri (crate-uri "maplit" version))
1851 (file-name (string-append name "-" version ".tar.gz"))
1852 (sha256
1853 (base32
1854 "0hsczmvd6zkqgzqdjp5hfyg7f339n68w83n4pxvnsszrzssbdjq8"))))
1855 (build-system cargo-build-system)
1856 (home-page "https://github.com/bluss/maplit")
1857 (synopsis "Collection of Map macros")
1858 (description "This crate provides a collection of @code{literal} macros for
1859 @code{HashMap}, @code{HashSet}, @code{BTreeMap}, and @code{BTreeSet.}")
1860 (license (list license:asl2.0
1861 license:expat))))
1862
1863 (define-public rust-matches
1864 (package
1865 (name "rust-matches")
1866 (version "0.1.8")
1867 (source
1868 (origin
1869 (method url-fetch)
1870 (uri (crate-uri "matches" version))
1871 (file-name (string-append name "-" version ".tar.gz"))
1872 (sha256
1873 (base32
1874 "020axl4q7rk9vz90phs7f8jas4imxal9y9kxl4z4v7a6719mrz3z"))))
1875 (build-system cargo-build-system)
1876 (home-page "https://github.com/SimonSapin/rust-std-candidates")
1877 (synopsis "Macro to evaluate whether an expression matches a pattern.")
1878 (description "This package provides a macro to evaluate, as a boolean,
1879 whether an expression matches a pattern.")
1880 (license license:expat)))
1881
1882 (define-public rust-md5
1883 (package
1884 (name "rust-md5")
1885 (version "0.6.1")
1886 (source
1887 (origin
1888 (method url-fetch)
1889 (uri (crate-uri "md5" version))
1890 (file-name (string-append name "-" version ".tar.gz"))
1891 (sha256
1892 (base32
1893 "17b2xm4h4cvxsdjsf3kdrzqv2za60kak961xzi5kmw6g6djcssvy"))))
1894 (build-system cargo-build-system)
1895 (home-page "https://github.com/stainless-steel/md5")
1896 (synopsis "MD5 hash function in Rust")
1897 (description "The package provides the MD5 hash function.")
1898 (license (list license:asl2.0
1899 license:expat))))
1900
1901 (define-public rust-memmap
1902 (package
1903 (name "rust-memmap")
1904 (version "0.7.0")
1905 (source
1906 (origin
1907 (method url-fetch)
1908 (uri (crate-uri "memmap" version))
1909 (file-name (string-append name "-" version ".tar.gz"))
1910 (sha256
1911 (base32
1912 "0ns7kkd1h4pijdkwfvw4qlbbmqmlmzwlq3g2676dcl5vwyazv1b5"))))
1913 (build-system cargo-build-system)
1914 (arguments
1915 `(#:cargo-inputs
1916 (("rust-libc" ,rust-libc)
1917 ("rust-winapi" ,rust-winapi))
1918 #:cargo-development-inputs
1919 (("rust-tempdir" ,rust-tempdir))))
1920 (home-page "https://github.com/danburkert/memmap-rs")
1921 (synopsis "Rust library for cross-platform memory mapped IO")
1922 (description
1923 "This package provides a cross-platform Rust API for memory-mapped
1924 file IO.")
1925 (license (list license:asl2.0
1926 license:expat))))
1927
1928 (define-public rust-memmap-0.6
1929 (package
1930 (inherit rust-memmap)
1931 (name "rust-memmap")
1932 (version "0.6.2")
1933 (source
1934 (origin
1935 (method url-fetch)
1936 (uri (crate-uri "memmap" version))
1937 (file-name (string-append name "-" version ".tar.gz"))
1938 (sha256
1939 (base32
1940 "1zy6s0ni0lx9rjzq3gq2zz9r8zgjmbp02332g3gsj4fyhv4s5zz2"))))
1941 (arguments
1942 `(#:cargo-inputs
1943 (("rust-libc" ,rust-libc)
1944 ("rust-winapi" ,rust-winapi))
1945 #:cargo-development-inputs
1946 (("rust-tempdir" ,rust-tempdir))))))
1947
1948 (define-public rust-mime
1949 (package
1950 (name "rust-mime")
1951 (version "0.3.13")
1952 (source
1953 (origin
1954 (method url-fetch)
1955 (uri (crate-uri "mime" version))
1956 (file-name (string-append name "-" version ".tar.gz"))
1957 (sha256
1958 (base32
1959 "09clbyvdkwflp8anwjhqdib0sw8191gphcchdp80nc8ayhhwl9ry"))))
1960 (build-system cargo-build-system)
1961 (arguments
1962 `(#:cargo-inputs
1963 (("rust-unicase" ,rust-unicase))))
1964 (home-page "https://github.com/hyperium/mime")
1965 (synopsis "Strongly Typed Mimes")
1966 (description
1967 "Support MIME (HTTP Media Types) as strong types in Rust.")
1968 (license (list license:asl2.0
1969 license:expat))))
1970
1971 (define-public rust-miniz-oxide
1972 (package
1973 (name "rust-miniz-oxide")
1974 (version "0.3.2")
1975 (source
1976 (origin
1977 (method url-fetch)
1978 (uri (crate-uri "miniz_oxide" version))
1979 (file-name (string-append name "-" version ".tar.gz"))
1980 (sha256
1981 (base32
1982 "041s41l5w7z8pkp93pdzn8rngxr93q4wxp034pr0cvc7bgway23i"))))
1983 (build-system cargo-build-system)
1984 (arguments
1985 `(#:cargo-inputs
1986 (("rust-adler32" ,rust-adler32))
1987 #:phases
1988 (modify-phases %standard-phases
1989 (add-after 'unpack 'fix-tests
1990 (lambda _
1991 (substitute* "tests/test.rs"
1992 (("../miniz/miniz.c") "Cargo.toml"))
1993 #t)))))
1994 (home-page "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide")
1995 (synopsis "Pure rust replacement for the miniz DEFLATE/zlib encoder/decoder")
1996 (description
1997 "A pure rust replacement for the miniz DEFLATE/zlib encoder/decoder. Using
1998 @code{flate2} with the @code{rust_backend} feature provides an easy to use
1999 streaming API for miniz_oxide.")
2000 (license license:expat)))
2001
2002 (define-public rust-miniz-sys
2003 (package
2004 (name "rust-miniz-sys")
2005 (version "0.1.12")
2006 (source
2007 (origin
2008 (method url-fetch)
2009 (uri (crate-uri "miniz-sys" version))
2010 (file-name (string-append name "-" version ".tar.gz"))
2011 (sha256
2012 (base32
2013 "00l2r4anm8g35x0js2zfdnwfbrih9m43vphdpb77c5ga3kjkm7hy"))))
2014 (build-system cargo-build-system)
2015 (arguments
2016 `(#:cargo-inputs
2017 (("rust-cc" ,rust-cc)
2018 ("rust-libc" ,rust-libc))))
2019 (home-page "https://github.com/alexcrichton/flate2-rs")
2020 (synopsis "Bindings to the miniz.c library")
2021 (description
2022 "This package provides bindings to the @code{miniz.c} library.")
2023 (license (list license:asl2.0
2024 license:expat))))
2025
2026 (define-public rust-miow
2027 (package
2028 (name "rust-miow")
2029 (version "0.3.3")
2030 (source
2031 (origin
2032 (method url-fetch)
2033 (uri (crate-uri "miow" version))
2034 (file-name (string-append name "-" version ".tar.gz"))
2035 (sha256
2036 (base32
2037 "09ljvx6wg30f2xlv7b7hhpkw7k312n3hjgmrbhwzhz9x03ra0sir"))))
2038 (build-system cargo-build-system)
2039 (arguments
2040 `(#:cargo-inputs
2041 (("rust-socket2" ,rust-socket2)
2042 ("rust-winapi" ,rust-winapi))
2043 #:cargo-development-inputs
2044 (("rust-rand" ,rust-rand))))
2045 (home-page "https://github.com/alexcrichton/miow")
2046 (synopsis "Rust I/O library for Windows")
2047 (description
2048 "This package provides a zero overhead I/O library for Windows, focusing on
2049 IOCP and Async I/O abstractions.")
2050 (license (list license:asl2.0
2051 license:expat))))
2052
2053 (define-public rust-miow-0.2
2054 (package
2055 (inherit rust-miow)
2056 (name "rust-miow")
2057 (version "0.2.1")
2058 (source
2059 (origin
2060 (method url-fetch)
2061 (uri (crate-uri "miow" version))
2062 (file-name (string-append name "-" version ".tar.gz"))
2063 (sha256
2064 (base32
2065 "06g9b8sqlh5gxakwqq4rrib07afwanfnxgxajrldwcgk3hxjy7wc"))))
2066 (arguments
2067 `(#:cargo-inputs
2068 (("rust-kernel32-sys" ,rust-kernel32-sys)
2069 ("rust-net2" ,rust-net2)
2070 ("rust-winapi" ,rust-winapi-0.2)
2071 ("rust-ws2-32-sys" ,rust-ws2-32-sys))
2072 #:cargo-development-inputs
2073 (("rust-rand" ,rust-rand-0.3))))))
2074
2075 (define-public rust-modifier
2076 (package
2077 (name "rust-modifier")
2078 (version "0.1.0")
2079 (source
2080 (origin
2081 (method url-fetch)
2082 (uri (crate-uri "modifier" version))
2083 (file-name (string-append name "-" version ".tar.gz"))
2084 (sha256
2085 (base32
2086 "0n3fmgli1nsskl0whrfzm1gk0rmwwl6pw1q4nb9sqqmn5h8wkxa1"))))
2087 (build-system cargo-build-system)
2088 (home-page "https://github.com/reem/rust-modifier")
2089 (synopsis
2090 "Chaining APIs for both self -> Self and &mut self methods.")
2091 (description
2092 "Chaining APIs for both self -> Self and &mut self methods.")
2093 (license license:expat)))
2094
2095 (define-public rust-net2
2096 (package
2097 (name "rust-net2")
2098 (version "0.2.33")
2099 (source
2100 (origin
2101 (method url-fetch)
2102 (uri (crate-uri "net2" version))
2103 (file-name (string-append name "-" version ".tar.gz"))
2104 (sha256
2105 (base32
2106 "126g3fgfxp06zimc1l9iyxnn9cif1hjsg7sd81nlls5nnyghsma2"))))
2107 (build-system cargo-build-system)
2108 (arguments
2109 `(#:cargo-inputs
2110 (("rust-cfg-if" ,rust-cfg-if)
2111 ("rust-libc" ,rust-libc)
2112 ("rust-winapi" ,rust-winapi))))
2113 (home-page "https://github.com/rust-lang-nursery/net2-rs")
2114 (synopsis "Extensions to the standard library's networking types")
2115 (description
2116 "This library contains extensions to the standard library's networking
2117 types as proposed in RFC 1158.")
2118 (license (list license:asl2.0
2119 license:expat))))
2120
2121 (define-public rust-netlib-src
2122 (package
2123 (name "rust-netlib-src")
2124 (version "0.7.4")
2125 (source
2126 (origin
2127 (method url-fetch)
2128 (uri (crate-uri "netlib-src" version))
2129 (file-name (string-append name "-" version ".tar.gz"))
2130 (sha256
2131 (base32
2132 "112hwfw1zzdj10h3j213xxqjrq38iygb3nb3ijay65ycmrg819s4"))))
2133 (build-system cargo-build-system)
2134 (arguments
2135 `(#:cargo-development-inputs
2136 (("rust-cmake" ,rust-cmake)
2137 ("rust-libc" ,rust-libc))
2138 #:phases
2139 (modify-phases %standard-phases
2140 (add-after 'unpack 'use-system-lapack
2141 (lambda _
2142 (delete-file-recursively "source")
2143 (substitute* "Cargo.toml"
2144 (("default .*")
2145 "default = [\"system\"]\n"))
2146 #t)))))
2147 (inputs
2148 `(("gfortran:lib" ,gfortran "lib")
2149 ("lapack" ,lapack)))
2150 (home-page "https://github.com/blas-lapack-rs/netlib-src")
2151 (synopsis "Source of BLAS and LAPACK via Netlib")
2152 (description
2153 "The package provides a source of BLAS and LAPACK via Netlib.")
2154 (license (list license:asl2.0
2155 license:expat))))
2156
2157 (define-public rust-libnghttp2-sys
2158 (package
2159 (name "rust-libnghttp2-sys")
2160 (version "0.1.2")
2161 (source
2162 (origin
2163 (method url-fetch)
2164 (uri (crate-uri "libnghttp2-sys" version))
2165 (file-name (string-append name "-" version ".tar.gz"))
2166 (sha256
2167 (base32
2168 "0qr4lyh7righx9n22c7amlcpk906rn1jnb2zd6gdfpa3yi24s982"))))
2169 (build-system cargo-build-system)
2170 (arguments
2171 `(#:cargo-inputs
2172 (("rust-libc" ,rust-libc))
2173 #:cargo-development-inputs
2174 (("rust-cc" ,rust-cc))))
2175 (inputs
2176 `(("nghttp2" ,nghttp2)))
2177 (home-page "https://github.com/alexcrichton/nghttp2-rs")
2178 (synopsis "FFI bindings for libnghttp2 (nghttp2)")
2179 (description
2180 "This package provides FFI bindings for libnghttp2 (nghttp2).")
2181 (license (list license:asl2.0
2182 license:expat))))
2183
2184 (define-public rust-libz-sys
2185 (package
2186 (name "rust-libz-sys")
2187 (version "1.0.25")
2188 (source
2189 (origin
2190 (method url-fetch)
2191 (uri (crate-uri "libz-sys" version))
2192 (file-name (string-append name "-" version ".tar.gz"))
2193 (sha256
2194 (base32
2195 "1gjycyl2283525abks98bhxa4r259m617xfm5z52p3p3c8ry9d9f"))))
2196 (build-system cargo-build-system)
2197 (arguments
2198 `(#:cargo-inputs
2199 (("rust-libc" ,rust-libc)
2200 ("rust-cc" ,rust-cc)
2201 ("rust-pkg-config" ,rust-pkg-config)
2202 ("rust-vcpkg" ,rust-vcpkg))
2203 #:phases
2204 (modify-phases %standard-phases
2205 (add-after 'unpack 'delete-vendored-zlib
2206 (lambda _
2207 (delete-file-recursively "src/zlib")
2208 #t)))))
2209 (inputs
2210 `(("pkg-config" ,pkg-config)
2211 ("zlib" ,zlib)))
2212 (home-page "https://github.com/rust-lang/libz-sys")
2213 (synopsis "Bindings to the system libz library")
2214 (description
2215 "This package provides bindings to the system @code{libz} library (also
2216 known as zlib).")
2217 (license (list license:asl2.0
2218 license:expat))))
2219
2220 (define-public rust-nodrop
2221 (package
2222 (name "rust-nodrop")
2223 (version "0.1.13")
2224 (source
2225 (origin
2226 (method url-fetch)
2227 (uri (crate-uri "nodrop" version))
2228 (file-name (string-append name "-" version ".tar.gz"))
2229 (sha256
2230 (base32
2231 "0if9ifn6rvar5jirx4b3qh4sl5kjkmcifycvzhxa9j3crkfng5ig"))))
2232 (build-system cargo-build-system)
2233 (arguments
2234 `(#:cargo-inputs
2235 (("rust-nodrop-union" ,rust-nodrop-union))))
2236 (home-page "https://github.com/bluss/arrayvec")
2237 (synopsis "Wrapper type to inhibit drop (destructor)")
2238 (description "This package provides a wrapper type to inhibit drop
2239 (destructor). Use @code{std::mem::ManuallyDrop} instead!")
2240 (license (list license:asl2.0
2241 license:expat))))
2242
2243 ;; This package requires features which are unavailable
2244 ;; on the stable releases of Rust.
2245 (define-public rust-nodrop-union
2246 (package
2247 (name "rust-nodrop-union")
2248 (version "0.1.10")
2249 (source
2250 (origin
2251 (method url-fetch)
2252 (uri (crate-uri "nodrop-union" version))
2253 (file-name (string-append name "-" version ".tar.gz"))
2254 (sha256
2255 (base32
2256 "0jsnkdn9l8jlmb9h4wssi76sxnyxwnyi00p6y1p2gdq7c1gdw2b7"))))
2257 (build-system cargo-build-system)
2258 (home-page "https://github.com/bluss/arrayvec")
2259 (synopsis "Wrapper type to inhibit drop (destructor)")
2260 (description "This package provides a wrapper type to inhibit drop
2261 (destructor). Implementation crate for nodrop, the untagged unions
2262 implementation (which is unstable / requires nightly).")
2263 (properties '((hidden? . #t)))
2264 (license (list license:asl2.0
2265 license:expat))))
2266
2267 (define-public rust-num-cpus
2268 (package
2269 (name "rust-num-cpus")
2270 (version "1.10.1")
2271 (source
2272 (origin
2273 (method url-fetch)
2274 (uri (crate-uri "num_cpus" version))
2275 (file-name (string-append name "-" version ".tar.gz"))
2276 (sha256
2277 (base32
2278 "0wrj3zvj6h3q26sqj9zxpd59frjb54n7jhjwf307clq31ic47vxw"))))
2279 (build-system cargo-build-system)
2280 (arguments
2281 `(#:cargo-inputs
2282 (("rust-libc" ,rust-libc))
2283 #:cargo-development-inputs
2284 (("rust-doc-comment" ,rust-doc-comment))))
2285 (home-page "https://github.com/seanmonstar/num_cpus")
2286 (synopsis "Get the number of CPUs on a machine")
2287 (description
2288 "Get the number of CPUs on a machine.")
2289 (license (list license:asl2.0
2290 license:expat))))
2291
2292 (define-public rust-num-integer
2293 (package
2294 (name "rust-num-integer")
2295 (version "0.1.41")
2296 (source
2297 (origin
2298 (method url-fetch)
2299 (uri (crate-uri "num-integer" version))
2300 (file-name
2301 (string-append name "-" version ".tar.gz"))
2302 (sha256
2303 (base32
2304 "02dwjjpfbi16c71fq689s4sw3ih52cvfzr5z5gs6qpr5z0g58pmq"))))
2305 (build-system cargo-build-system)
2306 (arguments
2307 `(#:cargo-inputs
2308 (("rust-autocfg" ,rust-autocfg)
2309 ("rust-num-traits" ,rust-num-traits))))
2310 (home-page "https://github.com/rust-num/num-integer")
2311 (synopsis "Integer traits and functions")
2312 (description "Integer traits and functions.")
2313 ;; Dual licensed.
2314 (license (list license:asl2.0
2315 license:expat))))
2316
2317 (define-public rust-num-iter
2318 (package
2319 (name "rust-num-iter")
2320 (version "0.1.39")
2321 (source
2322 (origin
2323 (method url-fetch)
2324 (uri (crate-uri "num-iter" version))
2325 (file-name (string-append name "-" version ".tar.gz"))
2326 (sha256
2327 (base32
2328 "0bhk2qbr3261r6zvfc58lz4spfqjhvdripxgz5mks5rd85r55gbn"))))
2329 (build-system cargo-build-system)
2330 (arguments
2331 `(#:cargo-inputs
2332 (("rust-num-integer" ,rust-num-integer)
2333 ("rust-num-traits" ,rust-num-traits))
2334 #:cargo-development-inputs
2335 (("rust-autocfg" ,rust-autocfg))))
2336 (home-page "https://github.com/rust-num/num-iter")
2337 (synopsis "External iterators for generic mathematics")
2338 (description
2339 "This crate provides external iterators for generic mathematics.")
2340 (license (list license:asl2.0
2341 license:expat))))
2342
2343 (define-public rust-num-traits
2344 (package
2345 (name "rust-num-traits")
2346 (version "0.2.8")
2347 (source
2348 (origin
2349 (method url-fetch)
2350 (uri (crate-uri "num-traits" version))
2351 (file-name
2352 (string-append name "-" version ".tar.gz"))
2353 (sha256
2354 (base32
2355 "0clvrm34rrqc8p6gq5ps5fcgws3kgq5knh7nlqxf2ayarwks9abb"))))
2356 (build-system cargo-build-system)
2357 (arguments
2358 `(#:cargo-inputs
2359 (("rust-autocfg" ,rust-autocfg))))
2360 (home-page "https://github.com/rust-num/num-traits")
2361 (synopsis "Numeric traits for generic mathematics")
2362 (description "Numeric traits for generic mathematics.")
2363 ;; Dual licensed.
2364 (license (list license:asl2.0
2365 license:expat))))
2366
2367 (define-public rust-num-traits-0.1
2368 (package
2369 (inherit rust-num-traits)
2370 (name "rust-num-traits")
2371 (version "0.1.43")
2372 (source
2373 (origin
2374 (method url-fetch)
2375 (uri (crate-uri "num-traits" version))
2376 (file-name (string-append name "-" version ".tar.gz"))
2377 (sha256
2378 (base32
2379 "0c9whknf2dm74a3cqirafy6gj83a76gl56g4v3g19k6lkwz13rcj"))))
2380 (build-system cargo-build-system)
2381 (arguments
2382 `(#:cargo-inputs
2383 (("rust-num-traits" ,rust-num-traits))))))
2384
2385 (define-public rust-openssl-probe
2386 (package
2387 (name "rust-openssl-probe")
2388 (version "0.1.2")
2389 (source
2390 (origin
2391 (method url-fetch)
2392 (uri (crate-uri "openssl-probe" version))
2393 (file-name (string-append name "-" version ".tar.gz"))
2394 (sha256
2395 (base32
2396 "1pijrdifgsdwd45b08c2g0dsmnhz7c3kmagb70839ngrd7d29bvp"))))
2397 (build-system cargo-build-system)
2398 (home-page "https://github.com/alexcrichton/openssl-probe")
2399 (synopsis "Find SSL certificate locations")
2400 (description
2401 "This package provides a tool to find SSL certificate locations on the
2402 system for OpenSSL.")
2403 (license (list license:asl2.0
2404 license:expat))))
2405
2406 (define-public rust-openssl-src
2407 (package
2408 (name "rust-openssl-src")
2409 (version "111.6.0+1.1.1d")
2410 (source
2411 (origin
2412 (method url-fetch)
2413 (uri (crate-uri "openssl-src" version))
2414 (file-name (string-append name "-" version ".tar.gz"))
2415 (sha256
2416 (base32
2417 "172xh95hp7aygahah1940kg1dnx60c5m80cwj5hgi8x7x0fxmhmr"))))
2418 (build-system cargo-build-system)
2419 (arguments
2420 `(#:cargo-inputs (("rust-cc" ,rust-cc))))
2421 (home-page "https://github.com/alexcrichton/openssl-src-rs")
2422 (synopsis "Source of OpenSSL for rust crates")
2423 (description
2424 "This package contains the source of OpenSSL and logic to build it.")
2425 (license (list license:asl2.0
2426 license:expat))))
2427
2428 (define-public rust-openssl-sys
2429 (package
2430 (name "rust-openssl-sys")
2431 (version "0.9.49")
2432 (source
2433 (origin
2434 (method url-fetch)
2435 (uri (crate-uri "openssl-sys" version))
2436 (file-name (string-append name "-" version ".tar.gz"))
2437 (sha256
2438 (base32
2439 "1168vivyqbzaxl48bvv9r1x714c03f5c1za8pv5x8fyj9gjxkypl"))))
2440 (build-system cargo-build-system)
2441 (arguments
2442 `(#:cargo-inputs
2443 (("rust-autocfg" ,rust-autocfg)
2444 ("rust-libc" ,rust-libc))
2445 #:cargo-development-inputs
2446 (("rust-autocfg" ,rust-autocfg)
2447 ("rust-cc" ,rust-cc)
2448 ("rust-openssl-src" ,rust-openssl-src)
2449 ("rust-pkg-config" ,rust-pkg-config)
2450 ("rust-vcpkg" ,rust-vcpkg))
2451 #:phases
2452 (modify-phases %standard-phases
2453 (add-after 'unpack 'find-openssl
2454 (lambda* (#:key inputs #:allow-other-keys)
2455 (let ((openssl (assoc-ref inputs "openssl")))
2456 (setenv "OPENSSL_DIR" openssl))
2457 #t)))))
2458 (inputs
2459 `(("openssl" ,openssl)
2460 ("pkg-config" ,pkg-config)))
2461 (home-page "https://github.com/sfackler/rust-openssl")
2462 (synopsis "FFI bindings to OpenSSL")
2463 (description
2464 "This package provides FFI bindings to OpenSSL for use in rust crates.")
2465 (license license:expat)))
2466
2467 (define-public rust-owning-ref
2468 (package
2469 (name "rust-owning-ref")
2470 (version "0.4.0")
2471 (source
2472 (origin
2473 (method url-fetch)
2474 (uri (crate-uri "owning_ref" version))
2475 (file-name (string-append name "-" version ".tar.gz"))
2476 (sha256
2477 (base32
2478 "04zgwy77lin8qz398s6g44467pd6kjhbrlqifkia5rkr47mbi929"))))
2479 (build-system cargo-build-system)
2480 (arguments
2481 `(#:cargo-inputs
2482 (("rust-stable-deref-trait" ,rust-stable-deref-trait))))
2483 (home-page "https://github.com/Kimundi/owning-ref-rs")
2484 (synopsis "Create references that carry their owner with them")
2485 (description
2486 "This package provides a library for creating references that carry their
2487 owner with them. This can sometimes be useful because Rust borrowing rules
2488 normally prevent moving a type that has been borrowed from.")
2489 (license license:expat)))
2490
2491 (define-public rust-parity-wasm
2492 (package
2493 (name "rust-parity-wasm")
2494 (version "0.40.1")
2495 (source
2496 (origin
2497 (method url-fetch)
2498 (uri (crate-uri "parity-wasm" version))
2499 (file-name (string-append name "-" version ".tar.gz"))
2500 (sha256
2501 (base32
2502 "1p84f0k36q05j18jy66n122lyali794cj78hbxgy9wj6si84plqd"))))
2503 (build-system cargo-build-system)
2504 (arguments
2505 `(#:cargo-development-inputs
2506 (("rust-time" ,rust-time))
2507 #:tests? #f)) ; Test files are not included in release.
2508 (home-page "https://github.com/paritytech/parity-wasm")
2509 (synopsis "Low-level WebAssembly format library")
2510 (description
2511 "This package provides a WebAssembly binary format serialization,
2512 deserialization, and interpreter in Rust.")
2513 (license (list license:asl2.0
2514 license:expat))))
2515
2516 (define-public rust-peeking-take-while
2517 (package
2518 (name "rust-peeking-take-while")
2519 (version "0.1.2")
2520 (source
2521 (origin
2522 (method url-fetch)
2523 (uri (crate-uri "peeking_take_while" version))
2524 (file-name (string-append name "-" version ".tar.gz"))
2525 (sha256
2526 (base32
2527 "16bhqr6rdyrp12zv381cxaaqqd0pwysvm1q8h2ygihvypvfprc8r"))))
2528 (build-system cargo-build-system)
2529 (home-page "https://github.com/fitzgen/peeking_take_while")
2530 (synopsis "Provides the peeking_take_while iterator adaptor method")
2531 (description
2532 "Like @code{Iterator::take_while}, but calls the predicate on a peeked
2533 value. This allows you to use @code{Iterator::by_ref} and
2534 @code{Iterator::take_while} together, and still get the first value for which
2535 the @code{take_while} predicate returned false after dropping the @code{by_ref}.")
2536 (license (list license:asl2.0
2537 license:expat))))
2538
2539 (define-public rust-percent-encoding
2540 (package
2541 (name "rust-percent-encoding")
2542 (version "2.1.0")
2543 (source
2544 (origin
2545 (method url-fetch)
2546 (uri (crate-uri "percent-encoding" version))
2547 (file-name (string-append name "-" version ".tar.gz"))
2548 (sha256
2549 (base32
2550 "0bp3zrsk3kr47fbpipyczidbbx4g54lzxdm77ni1i3qws10mdzfl"))))
2551 (build-system cargo-build-system)
2552 (home-page "https://github.com/servo/rust-url/")
2553 (synopsis "Percent encoding and decoding")
2554 (description "This crate provides percent encoding and decoding.")
2555 (license (list license:asl2.0
2556 license:expat))))
2557
2558 (define-public rust-percent-encoding-1
2559 (package
2560 (inherit rust-percent-encoding)
2561 (name "rust-percent-encoding")
2562 (version "1.0.1")
2563 (source
2564 (origin
2565 (method url-fetch)
2566 (uri (crate-uri "percent-encoding" version))
2567 (file-name (string-append name "-" version ".tar.gz"))
2568 (sha256
2569 (base32
2570 "0cgq08v1fvr6bs5fvy390cz830lq4fak8havdasdacxcw790s09i"))))))
2571
2572 (define-public rust-permutohedron
2573 (package
2574 (name "rust-permutohedron")
2575 (version "0.2.4")
2576 (source
2577 (origin
2578 (method url-fetch)
2579 (uri (crate-uri "permutohedron" version))
2580 (file-name (string-append name "-" version ".tar.gz"))
2581 (sha256
2582 (base32
2583 "0b1pzh48j86v46wxngch6k1kx9cdw3jr3lwa86gd6jd4bmxzz1xn"))))
2584 (build-system cargo-build-system)
2585 (home-page "https://github.com/bluss/permutohedron")
2586 (synopsis "Generate permutations of sequences")
2587 (description
2588 "Generate permutations of sequences. Either lexicographical order
2589 permutations, or a minimal swaps permutation sequence implemented using Heap's
2590 algorithm.")
2591 (license (list license:asl2.0
2592 license:expat))))
2593
2594 (define-public rust-pico-sys
2595 (package
2596 (name "rust-pico-sys")
2597 (version "0.0.1")
2598 (source
2599 (origin
2600 (method url-fetch)
2601 (uri (crate-uri "pico-sys" version))
2602 (file-name (string-append name "-" version ".tar.gz"))
2603 (sha256
2604 (base32
2605 "1q5pg0ms6szz6b5h26h4k40zb76zbwwjgyigac4wly9qngdj4yl5"))))
2606 (build-system cargo-build-system)
2607 (arguments
2608 `(#:cargo-inputs
2609 (("rust-gcc" ,rust-gcc)
2610 ("rust-libc" ,rust-libc))))
2611 (home-page "https://github.com/reem/rust-pico-sys")
2612 (synopsis "Bindings to the PicoHTTPParser")
2613 (description
2614 "This package provides bindings to the PicoHTTPParser.")
2615 (license license:expat)))
2616
2617 (define-public rust-pin-utils
2618 (package
2619 (name "rust-pin-utils")
2620 (version "0.1.0-alpha.4")
2621 (source
2622 (origin
2623 (method url-fetch)
2624 (uri (crate-uri "pin-utils" version))
2625 (file-name (string-append name "-" version ".tar.gz"))
2626 (sha256
2627 (base32
2628 "11xmyx00n4m37d546by2rxb8ryxs12v55cc172i3yak1rqccd52q"))))
2629 (build-system cargo-build-system)
2630 (home-page "https://github.com/rust-lang-nursery/pin-utils")
2631 (synopsis "Utilities for pinning")
2632 (description "This crate provides utilities for pinning values on the stack.")
2633 (license (list license:asl2.0
2634 license:expat))))
2635
2636 (define-public rust-pkg-config
2637 (package
2638 (name "rust-pkg-config")
2639 (version "0.3.14")
2640 (source
2641 (origin
2642 (method url-fetch)
2643 (uri (crate-uri "pkg-config" version))
2644 (file-name (string-append name "-" version ".tar.gz"))
2645 (sha256
2646 (base32
2647 "135ia995lqzr0gxpk85h0bjxf82kj6hbxdx924sh9jdln6r8wvk7"))))
2648 (build-system cargo-build-system)
2649 (arguments
2650 `(#:cargo-development-inputs
2651 (("rust-lazy-static" ,rust-lazy-static))))
2652 (inputs
2653 `(("pkg-config" ,pkg-config)))
2654 (home-page "https://github.com/rust-lang/pkg-config-rs")
2655 (synopsis "Library to run the pkg-config system tool")
2656 (description
2657 "A library to run the pkg-config system tool at build time in order to be
2658 used in Cargo build scripts.")
2659 (license (list license:asl2.0
2660 license:expat))))
2661
2662 (define-public rust-plain
2663 (package
2664 (name "rust-plain")
2665 (version "0.2.3")
2666 (source
2667 (origin
2668 (method url-fetch)
2669 (uri (crate-uri "plain" version))
2670 (file-name (string-append name "-" version ".tar.gz"))
2671 (sha256
2672 (base32
2673 "19n1xbxb4wa7w891268bzf6cbwq4qvdb86bik1z129qb0xnnnndl"))))
2674 (build-system cargo-build-system)
2675 (home-page "https://github.com/randomites/plain")
2676 (synopsis "Rust library that allows reinterpreting data safely")
2677 (description "This package provides a small Rust library that allows users
2678 to reinterpret data of certain types safely.")
2679 (license (list license:asl2.0
2680 license:expat))))
2681
2682 (define-public rust-plugin
2683 (package
2684 (name "rust-plugin")
2685 (version "0.2.6")
2686 (source
2687 (origin
2688 (method url-fetch)
2689 (uri (crate-uri "plugin" version))
2690 (file-name (string-append name "-" version ".tar.gz"))
2691 (sha256
2692 (base32
2693 "1q7nghkpvxxr168y2jnzh3w7qc9vfrby9n7ygy3xpj0bj71hsshs"))))
2694 (build-system cargo-build-system)
2695 (arguments
2696 `(#:cargo-inputs
2697 (("rust-typemap" ,rust-typemap))
2698 #:cargo-development-inputs
2699 (("rust-void" ,rust-void))))
2700 (home-page "https://github.com/reem/rust-plugin")
2701 (synopsis "Lazily evaluated, order-independent plugins for extensible types")
2702 (description
2703 "Lazily evaluated, order-independent plugins for extensible types.")
2704 (license license:expat)))
2705
2706 (define-public rust-pocket-resources
2707 (package
2708 (name "rust-pocket-resources")
2709 (version "0.3.2")
2710 (source
2711 (origin
2712 (method url-fetch)
2713 (uri (crate-uri "pocket-resources" version))
2714 (file-name (string-append name "-" version ".tar.gz"))
2715 (sha256
2716 (base32
2717 "1n2i5vmi8fdbw89wm5nz1ws1z9f1qax911p6ksg4scmdg23z6df1"))))
2718 (build-system cargo-build-system)
2719 (home-page "https://github.com/tomaka/pocket-resources")
2720 (synopsis "Include resources in your applications")
2721 (description "This crate allows you to include resources in your
2722 applications.")
2723 (license license:expat)))
2724
2725 (define-public rust-ppv-lite86
2726 (package
2727 (name "rust-ppv-lite86")
2728 (version "0.2.5")
2729 (source
2730 (origin
2731 (method url-fetch)
2732 (uri (crate-uri "ppv-lite86" version))
2733 (file-name (string-append name "-" version ".tar.gz"))
2734 (sha256
2735 (base32
2736 "06snnv338w341nicfqba2jgln5dsla72ndkgrw7h1dfdb3vgkjz3"))))
2737 (build-system cargo-build-system)
2738 (home-page "https://github.com/cryptocorrosion/cryptocorrosion")
2739 (synopsis "Implementation of the crypto-simd API for x86")
2740 (description "This crate provides an implementation of the crypto-simd API
2741 for x86.")
2742 (license (list license:asl2.0
2743 license:expat))))
2744
2745 (define-public rust-proc-macro2
2746 (package
2747 (name "rust-proc-macro2")
2748 (version "0.4.30")
2749 (source
2750 (origin
2751 (method url-fetch)
2752 (uri (crate-uri "proc-macro2" version))
2753 (file-name
2754 (string-append name "-" version ".tar.gz"))
2755 (sha256
2756 (base32
2757 "0nd71fl24sys066jrha6j7i34nfkjv44yzw8yww9742wmc8j0gfg"))))
2758 (build-system cargo-build-system)
2759 (arguments
2760 `(#:cargo-inputs (("rust-unicode-xid" ,rust-unicode-xid-0.1))
2761 #:cargo-development-inputs (("rust-quote" ,rust-quote))))
2762 (home-page "https://github.com/alexcrichton/proc-macro2")
2763 (synopsis "Stable implementation of the upcoming new `proc_macro` API")
2764 (description "This package provides a stable implementation of the upcoming new
2765 `proc_macro` API. Comes with an option, off by default, to also reimplement itself
2766 in terms of the upstream unstable API.")
2767 ;; Dual licensed.
2768 (license (list license:asl2.0 license:expat))))
2769
2770 (define-public rust-quick-error
2771 (package
2772 (name "rust-quick-error")
2773 (version "1.2.2")
2774 (source
2775 (origin
2776 (method url-fetch)
2777 (uri (crate-uri "quick-error" version))
2778 (file-name (string-append name "-" version ".tar.gz"))
2779 (sha256
2780 (base32
2781 "1w6kgwwv7p7zr0yyg5rb315lkk24bimywklwx7fsvsbwi10bjx4j"))))
2782 (build-system cargo-build-system)
2783 (home-page "https://github.com/tailhook/quick-error")
2784 (synopsis "Macro which makes error types pleasant to write")
2785 (description "This crate provides a macro which makes error types pleasant
2786 to write.")
2787 (license (list license:asl2.0
2788 license:expat))))
2789
2790 (define-public rust-quote
2791 (package
2792 (name "rust-quote")
2793 (version "0.6.12")
2794 (source
2795 (origin
2796 (method url-fetch)
2797 (uri (crate-uri "quote" version))
2798 (file-name
2799 (string-append name "-" version ".tar.gz"))
2800 (sha256
2801 (base32
2802 "1nw0klza45hf127kfyrpxsxd5jw2l6h21qxalil3hkr7bnf7kx7s"))))
2803 (build-system cargo-build-system)
2804 (arguments
2805 `(#:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2))))
2806 (home-page "https://github.com/dtolnay/quote")
2807 (synopsis "Quasi-quoting macro quote!(...)")
2808 (description "Quasi-quoting macro quote!(...)")
2809 ;; Dual licensed.
2810 (license (list license:asl2.0 license:expat))))
2811
2812 (define-public rust-rand
2813 (package
2814 (name "rust-rand")
2815 (version "0.4.3")
2816 (source
2817 (origin
2818 (method url-fetch)
2819 (uri (crate-uri "rand" version))
2820 (file-name (string-append name "-" version ".tar.gz"))
2821 (sha256
2822 (base32
2823 "1gfgnqfj2pyh27dcb720jpawskllwnbvxh816ddyykv269xz8ml3"))))
2824 (build-system cargo-build-system)
2825 (arguments
2826 `(#:cargo-inputs
2827 (("rust-fuchsia-zircon" ,rust-fuchsia-zircon)
2828 ("rust-libc" ,rust-libc)
2829 ("rust-winapi" ,rust-winapi))))
2830 (home-page "https://crates.io/crates/rand")
2831 (synopsis "Random number generators and other randomness functionality")
2832 (description
2833 "Rand provides utilities to generate random numbers, to convert them to
2834 useful types and distributions, and some randomness-related algorithms.")
2835 (license (list license:asl2.0
2836 license:expat))))
2837
2838 (define-public rust-rand-0.3
2839 (package
2840 (inherit rust-rand)
2841 (name "rust-rand")
2842 (version "0.3.23")
2843 (source
2844 (origin
2845 (method url-fetch)
2846 (uri (crate-uri "rand" version))
2847 (file-name (string-append name "-" version ".tar.gz"))
2848 (sha256
2849 (base32
2850 "0v679h38pjjqj5h4md7v2slsvj6686qgcn7p9fbw3h43iwnk1b34"))))
2851 (arguments
2852 `(#:cargo-inputs
2853 (("rust-libc" ,rust-libc)
2854 ("rust-rand" ,rust-rand))))))
2855
2856 (define-public rust-rawpointer
2857 (package
2858 (name "rust-rawpointer")
2859 (version "0.1.0")
2860 (source
2861 (origin
2862 (method url-fetch)
2863 (uri (crate-uri "rawpointer" version))
2864 (file-name (string-append name "-" version ".tar.gz"))
2865 (sha256
2866 (base32
2867 "06ghpm9y7gacks78s3maakha07kbnwrxif5q37r2l7z1sali3b7b"))))
2868 (build-system cargo-build-system)
2869 (home-page "https://github.com/bluss/rawpointer/")
2870 (synopsis "Extra methods for raw pointers")
2871 (description "Extra methods for raw pointers. For example
2872 @code{.post_inc()} and @code{.pre_dec()} (c.f. @code{ptr++} and @code{--ptr})
2873 and @code{ptrdistance}.")
2874 (license (list license:asl2.0
2875 license:expat))))
2876
2877 ;; This package requires features which are unavailable
2878 ;; on the stable releases of Rust.
2879 (define-public rust-redox-syscall ; guix upstreamable
2880 (package
2881 (name "rust-redox-syscall")
2882 (version "0.1.56")
2883 (source
2884 (origin
2885 (method url-fetch)
2886 (uri (crate-uri "redox_syscall" version))
2887 (file-name (string-append name "-" version ".tar.gz"))
2888 (sha256
2889 (base32
2890 "110y7dyfm2vci4x5vk7gr0q551dvp31npl99fnsx2fb17wzwcf94"))))
2891 (build-system cargo-build-system)
2892 (home-page "https://gitlab.redox-os.org/redox-os/syscall")
2893 (synopsis "Rust library to access raw Redox system calls")
2894 (description "This package provides a Rust library to access raw Redox
2895 system calls.")
2896 (properties '((hidden? . #t)))
2897 (license license:expat)))
2898
2899 (define-public rust-regex-syntax
2900 (package
2901 (name "rust-regex-syntax")
2902 (version "0.6.10")
2903 (source
2904 (origin
2905 (method url-fetch)
2906 (uri (crate-uri "regex-syntax" version))
2907 (file-name (string-append name "-" version ".tar.gz"))
2908 (sha256
2909 (base32
2910 "0p47lf38yj2g2fnmvnraccqlxwk35zr76hlnqi8yva932nzqam6d"))))
2911 (build-system cargo-build-system)
2912 (arguments
2913 `(#:cargo-inputs
2914 (("rust-ucd-util" ,rust-ucd-util))))
2915 (home-page "https://github.com/rust-lang/regex")
2916 (synopsis "Regular expression parser")
2917 (description
2918 "This package provides a regular expression parser.")
2919 (license (list license:asl2.0
2920 license:expat))))
2921
2922 (define-public rust-remove-dir-all
2923 (package
2924 (name "rust-remove-dir-all")
2925 (version "0.5.2")
2926 (source
2927 (origin
2928 (method url-fetch)
2929 (uri (crate-uri "remove_dir_all" version))
2930 (file-name (string-append name "-" version ".tar.gz"))
2931 (sha256
2932 (base32
2933 "0bkrlyg26mgizpiy1yb2hhpgscxcag8r5fnckqsvk25608vzm0sa"))))
2934 (build-system cargo-build-system)
2935 (arguments
2936 `(#:cargo-inputs
2937 (("rust-winapi" ,rust-winapi))
2938 #:cargo-development-inputs
2939 (("rust-doc-comment" ,rust-doc-comment))
2940 #:phases
2941 (modify-phases %standard-phases
2942 (add-after 'unpack 'fix-source
2943 ;; The test phase expects there to be a README.md in the root directory.
2944 (lambda _
2945 (invoke "touch" "README.md"))))))
2946 (home-page "https://github.com/XAMPPRocky/remove_dir_all")
2947 (synopsis "Implementation of remove_dir_all for Windows")
2948 (description
2949 "This package provides a safe, reliable implementation of
2950 @code{remove_dir_all} for Windows")
2951 (license (list license:asl2.0
2952 license:expat))))
2953
2954 (define-public rust-resolv-conf
2955 (package
2956 (name "rust-resolv-conf")
2957 (version "0.6.2")
2958 (source
2959 (origin
2960 (method url-fetch)
2961 (uri (crate-uri "resolv-conf" version))
2962 (file-name (string-append name "-" version ".tar.gz"))
2963 (sha256
2964 (base32
2965 "1jvdsmksdf6yiipm3aqahyv8n1cjd7wqc8sa0p0gzsax3fmb8qxj"))))
2966 (build-system cargo-build-system)
2967 (arguments
2968 `(#:cargo-inputs
2969 (("rust-quick-error" ,rust-quick-error)
2970 ("rust-hostname" ,rust-hostname))
2971 #:cargo-test-flags '("--release" "--lib" "--examples"))) ; doc tests fail
2972 (home-page "https://github.com/tailhook/resolv-conf")
2973 (synopsis "/etc/resolv.conf parser")
2974 (description
2975 "An /etc/resolv.conf parser crate for Rust.")
2976 (license (list license:asl2.0
2977 license:expat))))
2978
2979 (define-public rust-rustc-demangle
2980 (package
2981 (name "rust-rustc-demangle")
2982 (version "0.1.16")
2983 (source
2984 (origin
2985 (method url-fetch)
2986 (uri (crate-uri "rustc-demangle" version))
2987 (file-name (string-append name "-" version ".tar.gz"))
2988 (sha256
2989 (base32
2990 "10qp42sl1wrdbgbbh8rnay2grm976z7hqgz32c4y09l1c071qsac"))))
2991 (build-system cargo-build-system)
2992 (arguments
2993 `(#:cargo-inputs
2994 (("rust-compiler-builtins"
2995 ,rust-compiler-builtins)
2996 ("rust-rustc-std-workspace-core"
2997 ,rust-rustc-std-workspace-core))))
2998 (home-page "https://github.com/alexcrichton/rustc-demangle")
2999 (synopsis "Rust compiler symbol demangling")
3000 (description
3001 "This package demanges the symbols from the Rust compiler.")
3002 (license (list license:asl2.0
3003 license:expat))))
3004
3005 (define-public rust-rustc-hash
3006 (package
3007 (name "rust-rustc-hash")
3008 (version "1.0.0")
3009 (source
3010 (origin
3011 (method url-fetch)
3012 (uri (crate-uri "rustc-hash" version))
3013 (file-name (string-append name "-" version ".tar.gz"))
3014 (sha256
3015 (base32
3016 "114bf72466bl63i5hh8fgqfnhihs0w1m9c9jz505095agfixnvg0"))))
3017 (build-system cargo-build-system)
3018 (home-page "https://github.com/rust-lang-nursery/rustc-hash")
3019 (synopsis "Speedy, non-cryptographic hash used in rustc")
3020 (description
3021 "This package provides a speedy, non-cryptographic hash used in rustc.")
3022 (license (list license:asl2.0
3023 license:expat))))
3024
3025 (define-public rust-rustc-serialize
3026 (package
3027 (name "rust-rustc-serialize")
3028 (version "0.3.24")
3029 (source
3030 (origin
3031 (method url-fetch)
3032 (uri (crate-uri "rustc-serialize" version))
3033 (file-name (string-append name "-" version ".tar.gz"))
3034 (sha256
3035 (base32
3036 "1nkg3vasg7nk80ffkazizgiyv3hb1l9g3d8h17cajbkx538jiwfw"))))
3037 (build-system cargo-build-system)
3038 (arguments
3039 `(#:cargo-development-inputs
3040 (("rust-rand" ,rust-rand-0.3))))
3041 (home-page "https://github.com/rust-lang-deprecated/rustc-serialize")
3042 (synopsis "Generic serialization/deserialization support")
3043 (description
3044 "This package provides generic serialization/deserialization support
3045 corresponding to the @code{derive(RustcEncodable, RustcDecodable)} mode in the
3046 compiler. Also includes support for hex, base64, and json encoding and
3047 decoding.")
3048 (license (list license:asl2.0
3049 license:expat))))
3050
3051 (define-public rust-rustc-std-workspace-core
3052 (package
3053 (name "rust-rustc-std-workspace-core")
3054 (version "1.0.0")
3055 (source
3056 (origin
3057 (method url-fetch)
3058 (uri (crate-uri "rustc-std-workspace-core" version))
3059 (file-name (string-append name "-" version ".tar.gz"))
3060 (sha256
3061 (base32
3062 "1309xhwyai9xpz128xrfjqkmnkvgjwddznmj7brbd8i8f58zamhr"))))
3063 (build-system cargo-build-system)
3064 (home-page "https://crates.io/crates/rustc-std-workspace-core")
3065 (synopsis "Explicitly empty crate for rust-lang/rust integration")
3066 (description "This crate provides an explicitly empty crate for
3067 rust-lang/rust integration.")
3068 (license (list license:asl2.0
3069 license:expat))))
3070
3071 (define-public rust-safemem
3072 (package
3073 (name "rust-safemem")
3074 (version "0.3.2")
3075 (source
3076 (origin
3077 (method url-fetch)
3078 (uri (crate-uri "safemem" version))
3079 (file-name (string-append name "-" version ".tar.gz"))
3080 (sha256
3081 (base32
3082 "1l1ljkm4lpyryrv2ndaxi1f7z1f3v9bwy1rzl9f9mbhx04iq9c6j"))))
3083 (build-system cargo-build-system)
3084 (home-page "https://github.com/abonander/safemem")
3085 (synopsis "Safe wrappers for memory-accessing functions")
3086 (description
3087 "Safe wrappers for memory-accessing functions, like @code{std::ptr::copy()}.")
3088 (license (list license:asl2.0
3089 license:expat))))
3090
3091 (define-public rust-same-file
3092 (package
3093 (name "rust-same-file")
3094 (version "1.0.5")
3095 (source
3096 (origin
3097 (method url-fetch)
3098 (uri (crate-uri "same-file" version))
3099 (file-name (string-append name "-" version ".tar.gz"))
3100 (sha256
3101 (base32
3102 "08a4zy10pjindf2rah320s6shgswk13mqw7s61m8i1y1xpf8spjq"))))
3103 (build-system cargo-build-system)
3104 (arguments
3105 `(#:cargo-inputs
3106 (("rust-winapi-util" ,rust-winapi-util))))
3107 (home-page "https://github.com/BurntSushi/same-file")
3108 (synopsis "Determine whether two file paths point to the same file")
3109 (description
3110 "This package provides a simple crate for determining whether two file
3111 paths point to the same file.")
3112 (license (list license:unlicense
3113 license:expat))))
3114
3115 (define-public rust-schannel
3116 (package
3117 (name "rust-schannel")
3118 (version "0.1.15")
3119 (source
3120 (origin
3121 (method url-fetch)
3122 (uri (crate-uri "schannel" version))
3123 (file-name (string-append name "-" version ".tar.gz"))
3124 (sha256
3125 (base32
3126 "0f9k4pm8yc3z0n1n8hazvnrvg52f0sfxjc91bhf3r76rb3rapxpj"))))
3127 (build-system cargo-build-system)
3128 (arguments
3129 `(#:cargo-inputs
3130 (("rust-lazy-static" ,rust-lazy-static)
3131 ("rust-winapi" ,rust-winapi))))
3132 (home-page "https://github.com/steffengy/schannel-rs")
3133 (synopsis "Rust bindings to the Windows SChannel APIs")
3134 (description
3135 "Rust bindings to the Windows SChannel APIs providing TLS client and
3136 server functionality.")
3137 (license license:expat)))
3138
3139 (define-public rust-scoped-threadpool
3140 (package
3141 (name "rust-scoped-threadpool")
3142 (version "0.1.9")
3143 (source
3144 (origin
3145 (method url-fetch)
3146 (uri (crate-uri "scoped_threadpool" version))
3147 (file-name (string-append name "-" version ".tar.gz"))
3148 (sha256
3149 (base32
3150 "1a26d3lk40s9mrf4imhbik7caahmw2jryhhb6vqv6fplbbgzal8x"))))
3151 (build-system cargo-build-system)
3152 (arguments
3153 `(#:cargo-development-inputs
3154 (("rust-lazy-static" ,rust-lazy-static))))
3155 (home-page "https://github.com/Kimundi/scoped-threadpool-rs")
3156 (synopsis "library for scoped and cached threadpools")
3157 (description
3158 "This crate provides a stable, safe and scoped threadpool. It can be used
3159 to execute a number of short-lived jobs in parallel without the need to respawn
3160 the underlying threads. Jobs are runnable by borrowing the pool for a given
3161 scope, during which an arbitrary number of them can be executed. These jobs can
3162 access data of any lifetime outside of the pools scope, which allows working on
3163 non-'static references in parallel.")
3164 (license (list license:asl2.0
3165 license:expat))))
3166
3167 (define-public rust-scoped-tls
3168 (package
3169 (name "rust-scoped-tls")
3170 (version "1.0.0")
3171 (source
3172 (origin
3173 (method url-fetch)
3174 (uri (crate-uri "scoped-tls" version))
3175 (file-name (string-append name "-" version ".tar.gz"))
3176 (sha256
3177 (base32
3178 "1hj8lifzvivdb1z02lfnzkshpvk85nkgzxsy2hc0zky9wf894spa"))))
3179 (build-system cargo-build-system)
3180 (home-page "https://github.com/alexcrichton/scoped-tls")
3181 (synopsis "Rust library providing the old standard library's scoped_thread_local")
3182 (description "This crate provides a library implementation of the standard
3183 library's old @code{scoped_thread_local!} macro for providing scoped access to
3184 @dfn{thread local storage} (TLS) so any type can be stored into TLS.")
3185 (license (list license:asl2.0
3186 license:expat))))
3187
3188 (define-public rust-scoped-tls-0.1
3189 (package
3190 (inherit rust-scoped-tls)
3191 (name "rust-scoped-tls")
3192 (version "0.1.2")
3193 (source
3194 (origin
3195 (method url-fetch)
3196 (uri (crate-uri "scoped-tls" version))
3197 (file-name (string-append name "-" version ".tar.gz"))
3198 (sha256
3199 (base32
3200 "0a2bn9d2mb07c6l16sadijy4p540g498zddfxyiq4rsqpwrglbrk"))))))
3201
3202 (define-public rust-scopeguard
3203 (package
3204 (name "rust-scopeguard")
3205 (version "1.0.0")
3206 (source
3207 (origin
3208 (method url-fetch)
3209 (uri (crate-uri "scopeguard" version))
3210 (file-name (string-append name "-" version ".tar.gz"))
3211 (sha256
3212 (base32
3213 "03aay84r1f6w87ckbpj6cc4rnsxkxcfs13n5ynxjia0qkgjiabml"))))
3214 (build-system cargo-build-system)
3215 (home-page "https://github.com/bluss/scopeguard")
3216 (synopsis "Scope guard which will run a closure even out of scope")
3217 (description "This package provides a RAII scope guard that will run a
3218 given closure when it goes out of scope, even if the code between panics
3219 (assuming unwinding panic). Defines the macros @code{defer!},
3220 @code{defer_on_unwind!}, @code{defer_on_success!} as shorthands for guards
3221 with one of the implemented strategies.")
3222 (license (list license:asl2.0
3223 license:expat))))
3224
3225 (define-public rust-scopeguard-0.3
3226 (package
3227 (inherit rust-scopeguard)
3228 (name "rust-scopeguard")
3229 (version "0.3.3")
3230 (source
3231 (origin
3232 (method url-fetch)
3233 (uri (crate-uri "scopeguard" version))
3234 (file-name
3235 (string-append name "-" version ".tar.gz"))
3236 (sha256
3237 (base32
3238 "09sy9wbqp409pkwmqni40qmwa99ldqpl48pp95m1xw8sc19qy9cl"))))))
3239
3240 (define-public rust-security-framework-sys
3241 (package
3242 (name "rust-security-framework-sys")
3243 (version "0.3.1")
3244 (source
3245 (origin
3246 (method url-fetch)
3247 (uri (crate-uri "security-framework-sys" version))
3248 (file-name (string-append name "-" version ".tar.gz"))
3249 (sha256
3250 (base32
3251 "0mlsakq9kmqyc0fg2hcbgm6rjk55mb0rhjw2wid3hqdzkjcghdln"))))
3252 (build-system cargo-build-system)
3253 (arguments
3254 `(#:cargo-inputs
3255 (("rust-core-foundation-sys"
3256 ,rust-core-foundation-sys))))
3257 (home-page "https://lib.rs/crates/security-framework-sys")
3258 (synopsis "Apple `Security.framework` low-level FFI bindings")
3259 (description
3260 "Apple `Security.framework` low-level FFI bindings.")
3261 (license (list license:asl2.0
3262 license:expat))))
3263
3264 (define-public rust-semver-parser
3265 (package
3266 (name "rust-semver-parser")
3267 (version "0.9.0")
3268 (source
3269 (origin
3270 (method url-fetch)
3271 (uri (crate-uri "semver-parser" version))
3272 (file-name (string-append name "-" version ".tar.gz"))
3273 (sha256
3274 (base32
3275 "1ahqhvgpzhcsd28id7xnrjv4419i9yyalhm7d7zi430qx0hi2vml"))))
3276 (build-system cargo-build-system)
3277 (home-page "https://github.com/steveklabnik/semver-parser")
3278 (synopsis "Parsing of the semver spec")
3279 (description "This package provides for parsing of the semver spec.")
3280 (license (list license:asl2.0
3281 license:expat))))
3282
3283 (define-public rust-semver-parser-0.7
3284 (package
3285 (inherit rust-semver-parser)
3286 (name "rust-semver-parser")
3287 (version "0.7.0")
3288 (source
3289 (origin
3290 (method url-fetch)
3291 (uri (crate-uri "semver-parser" version))
3292 (file-name (string-append name "-" version ".tar.gz"))
3293 (sha256
3294 (base32
3295 "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
3296
3297 (define-public rust-shlex
3298 (package
3299 (name "rust-shlex")
3300 (version "0.1.1")
3301 (source
3302 (origin
3303 (method url-fetch)
3304 (uri (crate-uri "shlex" version))
3305 (file-name (string-append name "-" version ".tar.gz"))
3306 (sha256
3307 (base32
3308 "1lmv6san7g8dv6jdfp14m7bdczq9ss7j7bgsfqyqjc3jnjfippvz"))))
3309 (build-system cargo-build-system)
3310 (home-page "https://github.com/comex/rust-shlex")
3311 (synopsis "Split a string into shell words, like Python's shlex")
3312 (description "This crate provides a method to split a string into shell
3313 words, like Python's shlex.")
3314 (license (list license:asl2.0
3315 license:expat))))
3316
3317 (define-public rust-slab
3318 (package
3319 (name "rust-slab")
3320 (version "0.4.2")
3321 (source
3322 (origin
3323 (method url-fetch)
3324 (uri (crate-uri "slab" version))
3325 (file-name (string-append name "-" version ".tar.gz"))
3326 (sha256
3327 (base32
3328 "1y59xsa27jk84sxzswjk60xcjf8b4fm5960jwpznrrcmasyva4f1"))))
3329 (build-system cargo-build-system)
3330 (home-page "https://github.com/carllerche/slab")
3331 (synopsis "Pre-allocated storage for a uniform data type")
3332 (description "This create provides a pre-allocated storage for a uniform
3333 data type.")
3334 (license license:expat)))
3335
3336 (define-public rust-socket2
3337 (package
3338 (name "rust-socket2")
3339 (version "0.3.11")
3340 (source
3341 (origin
3342 (method url-fetch)
3343 (uri (crate-uri "socket2" version))
3344 (file-name (string-append name "-" version ".tar.gz"))
3345 (sha256
3346 (base32
3347 "11bdcz04i106g4q7swkll0qxrb4287srqd2k3aq2q6i22zjlvdz8"))))
3348 (build-system cargo-build-system)
3349 (arguments
3350 `(#:cargo-inputs
3351 (("rust-cfg-if" ,rust-cfg-if)
3352 ("rust-libc" ,rust-libc)
3353 ("rust-redox-syscall" ,rust-redox-syscall)
3354 ("rust-winapi" ,rust-winapi))
3355 #:cargo-development-inputs
3356 (("rust-tempdir" ,rust-tempdir))
3357 #:tests? #f)) ; Tests expect network connectivity.
3358 (home-page "https://github.com/alexcrichton/socket2-rs")
3359 (synopsis "Networking sockets in Rust")
3360 (description
3361 "This package provides utilities for handling networking sockets with a
3362 maximal amount of configuration possible intended.")
3363 (license (list license:asl2.0
3364 license:expat))))
3365
3366 (define-public rust-sourcefile
3367 (package
3368 (name "rust-sourcefile")
3369 (version "0.1.4")
3370 (source
3371 (origin
3372 (method url-fetch)
3373 (uri (crate-uri "sourcefile" version))
3374 (file-name (string-append name "-" version ".tar.gz"))
3375 (sha256
3376 (base32
3377 "1lwa6973zs4bgj29my7agfjgk4nw9hp6j7dfnr13nid85fw7rxsb"))))
3378 (build-system cargo-build-system)
3379 (arguments
3380 `(#:cargo-development-inputs
3381 (("rust-tempfile" ,rust-tempfile))))
3382 (home-page "https://github.com/derekdreery/sourcefile-rs")
3383 (synopsis "Concatenate source from multiple files")
3384 (description
3385 "A library for concatenating source from multiple files, whilst keeping
3386 track of where each new file and line starts.")
3387 (license (list license:asl2.0
3388 license:expat))))
3389
3390 (define-public rust-spin
3391 (package
3392 (name "rust-spin")
3393 (version "0.5.0")
3394 (source
3395 (origin
3396 (method url-fetch)
3397 (uri (crate-uri "spin" version))
3398 (file-name (string-append name "-" version ".tar.gz"))
3399 (sha256
3400 (base32
3401 "0m9clchsj0rf13bggsgvbv9haiy0f6rhvnvkpvkk8720a5pkydj4"))))
3402 (build-system cargo-build-system)
3403 (home-page "https://github.com/mvdnes/spin-rs")
3404 (synopsis "Synchronization primitives based on spinning")
3405 (description "This crate provides synchronization primitives based on
3406 spinning. They may contain data, are usable without @code{std},and static
3407 initializers are available.")
3408 (license license:expat)))
3409
3410 (define-public rust-stable-deref-trait
3411 (package
3412 (name "rust-stable-deref-trait")
3413 (version "1.1.1")
3414 (source
3415 (origin
3416 (method url-fetch)
3417 (uri (crate-uri "stable_deref_trait" version))
3418 (file-name (string-append name "-" version ".tar.gz"))
3419 (sha256
3420 (base32
3421 "1j2lkgakksmz4vc5hfawcch2ipiskrhjs1sih0f3br7s7rys58fv"))))
3422 (build-system cargo-build-system)
3423 (home-page "https://github.com/storyyeller/stable_deref_trait0")
3424 (synopsis "Defines an unsafe marker trait, StableDeref")
3425 (description
3426 "This crate defines an unsafe marker trait, StableDeref, for container
3427 types which deref to a fixed address which is valid even when the containing
3428 type is moved. For example, Box, Vec, Rc, Arc and String implement this trait.
3429 Additionally, it defines CloneStableDeref for types like Rc where clones deref
3430 to the same address.")
3431 (license (list license:asl2.0
3432 license:expat))))
3433
3434 (define-public rust-stacker
3435 (package
3436 (name "rust-stacker")
3437 (version "0.1.5")
3438 (source
3439 (origin
3440 (method url-fetch)
3441 (uri (crate-uri "stacker" version))
3442 (file-name (string-append name "-" version ".tar.gz"))
3443 (sha256
3444 (base32
3445 "0js0axz5nla1mkr2dm2vrv9rj964ng1lrv4l43sqlnfgawplhygv"))))
3446 (build-system cargo-build-system)
3447 (arguments
3448 `(#:cargo-inputs
3449 (("rust-cfg-if" ,rust-cfg-if)
3450 ("rust-libc" ,rust-libc)
3451 ("rust-winapi" ,rust-winapi)
3452 ("rust-cc" ,rust-cc))))
3453 (home-page "https://github.com/rust-lang/stacker")
3454 (synopsis "Manual segmented stacks for Rust")
3455 (description
3456 "This package provides a stack growth library useful when implementing
3457 deeply recursive algorithms that may accidentally blow the stack.")
3458 (license (list license:asl2.0
3459 license:expat))))
3460
3461 (define-public rust-static-assertions
3462 (package
3463 (name "rust-static-assertions")
3464 (version "0.3.4")
3465 (source
3466 (origin
3467 (method url-fetch)
3468 (uri (crate-uri "static-assertions" version))
3469 (file-name (string-append name "-" version ".tar.gz"))
3470 (sha256
3471 (base32
3472 "1lw33i89888yb3x29c6dv4mrkg3534n0rlg3r7qzh4p58xmv6gkz"))))
3473 (build-system cargo-build-system)
3474 (home-page "https://github.com/nvzqz/static-assertions-rs")
3475 (synopsis "Compile-time assertions for rust")
3476 (description
3477 "This package provides compile-time assertions to ensure that invariants
3478 are met.")
3479 (license (list license:expat license:asl2.0))))
3480
3481 (define-public rust-stdweb-internal-runtime
3482 (package
3483 (name "rust-stdweb-internal-runtime")
3484 (version "0.1.4")
3485 (source
3486 (origin
3487 (method url-fetch)
3488 (uri (crate-uri "stdweb-internal-runtime" version))
3489 (file-name (string-append name "-" version ".tar.gz"))
3490 (sha256
3491 (base32
3492 "1nhpyra7glbwcpakhpj5a3d7h7kx1ynif473nzshmk226m91f8ym"))))
3493 (build-system cargo-build-system)
3494 (home-page "https://github.com/koute/stdweb")
3495 (synopsis "Internal runtime for the @code{stdweb} crate")
3496 (description "This crate provides internal runtime for the @code{stdweb}
3497 crate.")
3498 (license (list license:asl2.0
3499 license:expat))))
3500
3501 (define-public rust-stdweb-internal-test-macro
3502 (package
3503 (name "rust-stdweb-internal-test-macro")
3504 (version "0.1.0")
3505 (source
3506 (origin
3507 (method url-fetch)
3508 (uri (crate-uri "stdweb-internal-test-macro" version))
3509 (file-name (string-append name "-" version ".tar.gz"))
3510 (sha256
3511 (base32
3512 "12rrm7p77xnm3xacgn3rgniiyyjb4gq7902wpbljsvbx045z69l2"))))
3513 (build-system cargo-build-system)
3514 (arguments
3515 `(#:cargo-inputs
3516 (("rust-proc-macro2" ,rust-proc-macro2)
3517 ("rust-quote" ,rust-quote))))
3518 (home-page "https://github.com/koute/stdweb")
3519 (synopsis "Internal crate of the `stdweb` crate")
3520 (description
3521 "Internal crate of the @code{stdweb} crate.")
3522 (license (list license:asl2.0
3523 license:expat))))
3524
3525 (define-public rust-streaming-stats
3526 (package
3527 (name "rust-streaming-stats")
3528 (version "0.2.2")
3529 (source
3530 (origin
3531 (method url-fetch)
3532 (uri (crate-uri "streaming-stats" version))
3533 (file-name (string-append name "-" version ".tar.gz"))
3534 (sha256
3535 (base32
3536 "0l7xz4g6709s80zqpvlhrg0qhgz64r94cwhmfsg8xhabgznbp2px"))))
3537 (build-system cargo-build-system)
3538 (arguments
3539 `(#:cargo-inputs
3540 (("rust-num-traits" ,rust-num-traits))))
3541 (home-page "https://github.com/BurntSushi/rust-stats")
3542 (synopsis "Compute basic statistics on streams")
3543 (description
3544 "Experimental crate for computing basic statistics on streams.")
3545 (license (list license:unlicense
3546 license:expat))))
3547
3548 (define-public rust-strsim
3549 (package
3550 (name "rust-strsim")
3551 (version "0.9.2")
3552 (source
3553 (origin
3554 (method url-fetch)
3555 (uri (crate-uri "strsim" version))
3556 (file-name (string-append name "-" version ".tar.gz"))
3557 (sha256
3558 (base32
3559 "1xphwhf86yxxmcpvm4mikj8ls41f6nf7gqyjm98b74mfk81h6b03"))))
3560 (build-system cargo-build-system)
3561 (home-page "https://github.com/dguo/strsim-rs")
3562 (synopsis "Rust implementations of string similarity metrics")
3563 (description "This crate includes implementations of string similarity
3564 metrics. It includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro,
3565 and Jaro-Winkler.")
3566 (license license:expat)))
3567
3568 (define-public rust-strsim-0.8
3569 (package
3570 (inherit rust-strsim)
3571 (name "rust-strsim")
3572 (version "0.8.0")
3573 (source
3574 (origin
3575 (method url-fetch)
3576 (uri (crate-uri "strsim" version))
3577 (file-name (string-append name "-" version ".tar.gz"))
3578 (sha256
3579 (base32
3580 "0sjsm7hrvjdifz661pjxq5w4hf190hx53fra8dfvamacvff139cf"))))))
3581
3582 (define-public rust-synstructure-test-traits
3583 (package
3584 (name "rust-synstructure-test-traits")
3585 (version "0.1.0")
3586 (source
3587 (origin
3588 (method url-fetch)
3589 (uri (crate-uri "synstructure_test_traits" version))
3590 (file-name (string-append name "-" version ".tar.gz"))
3591 (sha256
3592 (base32
3593 "1b3fs2b9kc1gy9dilaxqjbdl4z0mlrbbxjzkprdx953rif1c3q66"))))
3594 (build-system cargo-build-system)
3595 (home-page "https://crates.io/crates/synstructure_test_traits")
3596 (synopsis "Helper test traits for synstructure doctests")
3597 (description
3598 "This package provides helper test traits for synstructure doctests.")
3599 (license license:expat)))
3600
3601 (define-public rust-tar
3602 (package
3603 (name "rust-tar")
3604 (version "0.4.26")
3605 (source
3606 (origin
3607 (method url-fetch)
3608 (uri (crate-uri "tar" version))
3609 (file-name (string-append name "-" version ".tar.gz"))
3610 (sha256
3611 (base32
3612 "1lr6v3cpkfxd2lk5ll2jd8wr1xdskwj35smnh5sfb8xvzzxnn6dk"))))
3613 (build-system cargo-build-system)
3614 (arguments
3615 `(#:cargo-inputs
3616 (("rust-filetime" ,rust-filetime)
3617 ("rust-libc" ,rust-libc)
3618 ("rust-redox-syscall" ,rust-redox-syscall)
3619 ("rust-xattr" ,rust-xattr))
3620 #:cargo-development-inputs
3621 (("rust-tempdir" ,rust-tempdir))
3622 #:tests? #f)) ; Test archives are not distributed in the crate tarball.
3623 (home-page "https://github.com/alexcrichton/tar-rs")
3624 (synopsis "Tar file reading/writing for Rust")
3625 (description
3626 "This package provides a Rust implementation of a TAR file reader and
3627 writer. This library does not currently handle compression, but it is abstract
3628 over all I/O readers and writers. Additionally, great lengths are taken to
3629 ensure that the entire contents are never required to be entirely resident in
3630 memory all at once.")
3631 (license (list license:asl2.0
3632 license:expat))))
3633
3634 (define-public rust-tempdir
3635 (package
3636 (name "rust-tempdir")
3637 (version "0.3.7")
3638 (source
3639 (origin
3640 (method url-fetch)
3641 (uri (crate-uri "tempdir" version))
3642 (file-name (string-append name "-" version ".tar.gz"))
3643 (sha256
3644 (base32
3645 "1n5n86zxpgd85y0mswrp5cfdisizq2rv3la906g6ipyc03xvbwhm"))))
3646 (build-system cargo-build-system)
3647 (arguments
3648 `(#:cargo-inputs
3649 (("rust-rand" ,rust-rand)
3650 ("rust-remove-dir-all" ,rust-remove-dir-all))))
3651 (home-page "https://github.com/rust-lang-deprecated/tempdir")
3652 (synopsis "Temporary directory management for Rust")
3653 (description
3654 "This package provides a library for managing a temporary directory and
3655 deleting all contents when it's dropped.")
3656 (license (list license:asl2.0
3657 license:expat))))
3658
3659 (define-public rust-tempfile
3660 (package
3661 (name "rust-tempfile")
3662 (version "3.0.2")
3663 (source
3664 (origin
3665 (method url-fetch)
3666 (uri (crate-uri "tempfile" version))
3667 (file-name (string-append name "-" version ".tar.gz"))
3668 (sha256
3669 (base32
3670 "0ny1cdbcsrmwjpy4k9366xm6p0jqkrmrvr0cln2djxspp1inyxs7"))))
3671 (build-system cargo-build-system)
3672 (arguments
3673 `(#:cargo-inputs
3674 (("rust-libc" ,rust-libc)
3675 ("rust-rand" ,rust-rand)
3676 ("rust-redox-syscall" ,rust-redox-syscall)
3677 ("rust-remove-dir-all" ,rust-remove-dir-all)
3678 ("rust-winapi" ,rust-winapi))))
3679 (home-page "http://stebalien.com/projects/tempfile-rs")
3680 (synopsis "Library for managing temporary files and directories")
3681 (description
3682 "This package provides a library for managing temporary files and
3683 directories.")
3684 (license (list license:asl2.0
3685 license:expat))))
3686
3687 (define-public rust-term
3688 (package
3689 (name "rust-term")
3690 (version "0.4.6")
3691 (source
3692 (origin
3693 (method url-fetch)
3694 (uri (crate-uri "term" version))
3695 (file-name (string-append name "-" version ".tar.gz"))
3696 (sha256
3697 (base32
3698 "1wbh8ngqkqr3f6wz902yplf60bd5yapnckvrkgmzp5nffi7n8qzs"))))
3699 (build-system cargo-build-system)
3700 (arguments
3701 `(#:cargo-inputs
3702 (("rust-kernel32-sys" ,rust-kernel32-sys)
3703 ("rust-winapi" ,rust-winapi))))
3704 (home-page "https://github.com/Stebalien/term")
3705 (synopsis "Terminal formatting library")
3706 (description
3707 "This package provides a terminal formatting library in rust.")
3708 (license (list license:asl2.0
3709 license:expat))))
3710
3711 (define-public rust-termcolor
3712 (package
3713 (name "rust-termcolor")
3714 (version "1.0.5")
3715 (source
3716 (origin
3717 (method url-fetch)
3718 (uri (crate-uri "termcolor" version))
3719 (file-name (string-append name "-" version ".tar.gz"))
3720 (sha256
3721 (base32
3722 "0vjfsn1a8zvqhnrbygrz1id6yckwv1dncw3w4zj65qdx0f00kmln"))))
3723 (build-system cargo-build-system)
3724 (arguments
3725 `(#:cargo-inputs
3726 (("rust-wincolor" ,rust-wincolor))))
3727 (home-page "https://github.com/BurntSushi/termcolor")
3728 (synopsis "Library for writing colored text to a terminal")
3729 (description "This package provides a simple cross platform library for
3730 writing colored text to a terminal.")
3731 (license (list license:unlicense
3732 license:expat))))
3733
3734 (define-public rust-termios
3735 (package
3736 (name "rust-termios")
3737 (version "0.3.1")
3738 (source
3739 (origin
3740 (method url-fetch)
3741 (uri (crate-uri "termios" version))
3742 (file-name (string-append name "-" version ".tar.gz"))
3743 (sha256
3744 (base32
3745 "09any1p4jp4bphvb5ikagnvwjc3xn2djchy96nkpa782xb2j1dkj"))))
3746 (build-system cargo-build-system)
3747 (arguments
3748 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
3749 (home-page "https://github.com/dcuddeback/termios-rs")
3750 (synopsis "Safe bindings for the termios library")
3751 (description
3752 "The termios crate provides safe bindings for the Rust programming language
3753 to the terminal I/O interface implemented by Unix operating systems. The safe
3754 bindings are a small wrapper around the raw C functions, which converts integer
3755 return values to @code{std::io::Result} to indicate success or failure.")
3756 (license license:expat)))
3757
3758 (define-public rust-thread-id
3759 (package
3760 (name "rust-thread-id")
3761 (version "3.3.0")
3762 (source
3763 (origin
3764 (method url-fetch)
3765 (uri (crate-uri "thread-id" version))
3766 (file-name (string-append name "-" version ".tar.gz"))
3767 (sha256
3768 (base32
3769 "1h90v19fjz3x9b25ywh68z5yf2zsmm6h5zb4rl302ckbsp4z9yy7"))))
3770 (build-system cargo-build-system)
3771 (arguments
3772 `(#:cargo-inputs
3773 (("rust-libc" ,rust-libc)
3774 ("rust-redox-syscall" ,rust-redox-syscall)
3775 ("rust-winapi" ,rust-winapi))))
3776 (home-page "https://github.com/ruuda/thread-id")
3777 (synopsis "Get a unique ID for the current thread in Rust")
3778 (description
3779 "For diagnostics and debugging it can often be useful to get an ID that is
3780 different for every thread.")
3781 (license (list license:asl2.0
3782 license:expat))))
3783
3784 (define-public rust-thread-local
3785 (package
3786 (name "rust-thread-local")
3787 (version "0.3.6")
3788 (source
3789 (origin
3790 (method url-fetch)
3791 (uri (crate-uri "thread_local" version))
3792 (file-name (string-append name "-" version ".tar.gz"))
3793 (sha256
3794 (base32
3795 "06rzik99p8c5js8238yhc8rk6np543ylb1dy9nrw5v80j0r3xdf6"))))
3796 (build-system cargo-build-system)
3797 (arguments
3798 `(#:cargo-inputs
3799 (("rust-lazy-static" ,rust-lazy-static))))
3800 (home-page "https://github.com/Amanieu/thread_local-rs")
3801 (synopsis "Per-object thread-local storage")
3802 (description "Per-object thread-local storage")
3803 (license (list license:asl2.0
3804 license:expat))))
3805
3806 (define-public rust-threadpool
3807 (package
3808 (name "rust-threadpool")
3809 (version "1.7.1")
3810 (source
3811 (origin
3812 (method url-fetch)
3813 (uri (crate-uri "threadpool" version))
3814 (file-name (string-append name "-" version ".tar.gz"))
3815 (sha256
3816 (base32
3817 "0rd89n1q7vy47w4c32cnynibffv9kj3jy3dwr0536n9lbw5ckw72"))))
3818 (build-system cargo-build-system)
3819 (arguments
3820 `(#:cargo-inputs
3821 (("rust-num-cpus" ,rust-num-cpus))))
3822 (home-page "https://github.com/rust-threadpool/rust-threadpool")
3823 (synopsis "Thread pool for running jobs on a fixed set of worker threads")
3824 (description
3825 "This package provides a thread pool for running a number of jobs on a
3826 fixed set of worker threads.")
3827 (license (list license:asl2.0
3828 license:expat))))
3829
3830 (define-public rust-time
3831 (package
3832 (name "rust-time")
3833 (version "0.1.39")
3834 (source
3835 (origin
3836 (method url-fetch)
3837 (uri (crate-uri "time" version))
3838 (file-name (string-append name "-" version ".tar.gz"))
3839 (sha256
3840 (base32
3841 "161hqx0gw722ikydanpahky447vaxqncwmkj66rny282vzqpalx1"))))
3842 (build-system cargo-build-system)
3843 (arguments
3844 `(#:cargo-inputs
3845 (("rust-libc" ,rust-libc)
3846 ("rust-redox-syscall" ,rust-redox-syscall)
3847 ("rust-rustc-serialize" ,rust-rustc-serialize)
3848 ("rust-winapi" ,rust-winapi))
3849 #:cargo-development-inputs
3850 (("rust-log" ,rust-log)
3851 ("rust-winapi" ,rust-winapi))
3852 #:tests? #f)) ; Tests have difficulty with the timezones.
3853 (home-page "https://github.com/rust-lang-deprecated/time")
3854 (synopsis "Simple time handling in Rust")
3855 (description
3856 "This package provides utilities for working with time-related functions
3857 in Rust.")
3858 (license (list license:asl2.0
3859 license:expat))))
3860
3861 (define-public rust-tokio-mock-task
3862 (package
3863 (name "rust-tokio-mock-task")
3864 (version "0.1.1")
3865 (source
3866 (origin
3867 (method url-fetch)
3868 (uri (crate-uri "tokio-mock-task" version))
3869 (file-name (string-append name "-" version ".tar.gz"))
3870 (sha256
3871 (base32
3872 "1y7q83qfk9ljjfvs82b453pmz9x1v3d6kr4x55j8mal01s6790dw"))))
3873 (build-system cargo-build-system)
3874 (arguments
3875 `(#:cargo-inputs (("rust-futures" ,rust-futures))))
3876 (home-page "https://github.com/carllerche/tokio-mock-task")
3877 (synopsis "Mock a Tokio task")
3878 (description "Mock a Tokio task")
3879 (license license:expat)))
3880
3881 (define-public rust-tracing-core
3882 (package
3883 (name "rust-tracing-core")
3884 (version "0.1.2")
3885 (source
3886 (origin
3887 (method url-fetch)
3888 (uri (crate-uri "tracing-core" version))
3889 (file-name (string-append name "-" version ".tar.gz"))
3890 (sha256
3891 (base32
3892 "01fa73wzw2m5ybi3kkd52dgrw97mgc3i6inmhwys46ab28giwnxi"))))
3893 (build-system cargo-build-system)
3894 (arguments
3895 `(#:cargo-inputs
3896 (("rust-lazy-static" ,rust-lazy-static))))
3897 (home-page "https://tokio.rs")
3898 (synopsis "Core primitives for application-level tracing")
3899 (description
3900 "Core primitives for application-level tracing.")
3901 (license (list license:asl2.0
3902 license:expat))))
3903
3904 (define-public rust-traitobject
3905 (package
3906 (name "rust-traitobject")
3907 (version "0.1.0")
3908 (source
3909 (origin
3910 (method url-fetch)
3911 (uri (crate-uri "traitobject" version))
3912 (file-name (string-append name "-" version ".tar.gz"))
3913 (sha256
3914 (base32
3915 "0yb0n8822mr59j200fyr2fxgzzgqljyxflx9y8bdy3rlaqngilgg"))))
3916 (build-system cargo-build-system)
3917 (home-page "https://github.com/reem/rust-traitobject")
3918 (synopsis "Unsafe helpers for dealing with raw trait objects")
3919 (description "Unsafe helpers for dealing with raw trait objects.")
3920 (license (list license:asl2.0
3921 license:expat))))
3922
3923 (define-public rust-try-from
3924 (package
3925 (name "rust-try-from")
3926 (version "0.3.2")
3927 (source
3928 (origin
3929 (method url-fetch)
3930 (uri (crate-uri "try_from" version))
3931 (file-name (string-append name "-" version ".tar.gz"))
3932 (sha256
3933 (base32
3934 "12wdd4ja7047sd3rx70hv2056hyc8gcdllcx3a41g1rnw64kng98"))))
3935 (build-system cargo-build-system)
3936 (arguments
3937 `(#:cargo-inputs
3938 (("rust-cfg-if" ,rust-cfg-if))))
3939 (home-page "https://github.com/derekjw/try_from")
3940 (synopsis "TryFrom and TryInto traits for failable conversions")
3941 (description
3942 "TryFrom and TryInto traits for failable conversions that return a Result.")
3943 (license license:expat)))
3944
3945 (define-public rust-try-lock
3946 (package
3947 (name "rust-try-lock")
3948 (version "0.2.2")
3949 (source
3950 (origin
3951 (method url-fetch)
3952 (uri (crate-uri "try-lock" version))
3953 (file-name (string-append name "-" version ".tar.gz"))
3954 (sha256
3955 (base32
3956 "10p36rx6pqi9d0zr876xa8vksx2m66ha45myakl50rn08dxyn176"))))
3957 (build-system cargo-build-system)
3958 (home-page "https://github.com/seanmonstar/try-lock")
3959 (synopsis "Lightweight atomic lock")
3960 (description
3961 "This package provides a lightweight atomic lock.")
3962 (license license:expat)))
3963
3964 (define-public rust-typeable
3965 (package
3966 (name "rust-typeable")
3967 (version "0.1.2")
3968 (source
3969 (origin
3970 (method url-fetch)
3971 (uri (crate-uri "typeable" version))
3972 (file-name (string-append name "-" version ".tar.gz"))
3973 (sha256
3974 (base32
3975 "11w8dywgnm32hb291izjvh4zjd037ccnkk77ahk63l913zwzc40l"))))
3976 (build-system cargo-build-system)
3977 (home-page "https://github.com/reem/rust-typeable")
3978 (synopsis "Exposes Typeable, for getting TypeIds at runtime")
3979 (description "Exposes Typeable, for getting TypeIds at runtime.")
3980 (license license:expat)))
3981
3982 (define-public rust-typemap
3983 (package
3984 (name "rust-typemap")
3985 (version "0.3.3")
3986 (source
3987 (origin
3988 (method url-fetch)
3989 (uri (crate-uri "typemap" version))
3990 (file-name (string-append name "-" version ".tar.gz"))
3991 (sha256
3992 (base32
3993 "1xm1gbvz9qisj1l6d36hrl9pw8imr8ngs6qyanjnsad3h0yfcfv5"))))
3994 (build-system cargo-build-system)
3995 (arguments
3996 `(#:cargo-inputs
3997 (("rust-unsafe-any" ,rust-unsafe-any))))
3998 (home-page "https://github.com/reem/rust-typemap")
3999 (synopsis "Typesafe store for many value types")
4000 (description
4001 "A typesafe store for many value types.")
4002 (license license:expat)))
4003
4004 (define-public rust-typenum
4005 (package
4006 (name "rust-typenum")
4007 (version "1.10.0")
4008 (source
4009 (origin
4010 (method url-fetch)
4011 (uri (crate-uri "typenum" version))
4012 (file-name (string-append name "-" version ".tar.gz"))
4013 (sha256
4014 (base32
4015 "0sc1jirllfhdi52z1xv9yqzxzpk6v7vadd13n7wvs1wnjipn6bb1"))))
4016 (build-system cargo-build-system)
4017 (home-page "https://github.com/paholg/typenum")
4018 (synopsis "Rust library for type-level numbers evaluated at compile time")
4019 (description "Typenum is a Rust library for type-level numbers evaluated at
4020 compile time. It currently supports bits, unsigned integers, and signed
4021 integers. It also provides a type-level array of type-level numbers, but its
4022 implementation is incomplete.")
4023 (license (list license:asl2.0
4024 license:expat))))
4025
4026 (define-public rust-ucd-trie
4027 (package
4028 (name "rust-ucd-trie")
4029 (version "0.1.2")
4030 (source
4031 (origin
4032 (method url-fetch)
4033 (uri (crate-uri "ucd-trie" version))
4034 (file-name (string-append name "-" version ".tar.gz"))
4035 (sha256
4036 (base32
4037 "1hh6kyzh5xygwy96wfmsf8v8czlzhps2lgbcyhj1xzy1w1xys04g"))))
4038 (build-system cargo-build-system)
4039 (arguments
4040 `(#:cargo-development-inputs
4041 (("rust-lazy-static" ,rust-lazy-static))))
4042 (home-page "https://github.com/BurntSushi/ucd-generate")
4043 (synopsis "Trie for storing Unicode codepoint sets and maps")
4044 (description
4045 "This package provides a trie for storing Unicode codepoint sets and maps.")
4046 (license (list license:asl2.0
4047 license:expat))))
4048
4049 (define-public rust-ucd-util
4050 (package
4051 (name "rust-ucd-util")
4052 (version "0.1.5")
4053 (source
4054 (origin
4055 (method url-fetch)
4056 (uri (crate-uri "ucd-util" version))
4057 (file-name (string-append name "-" version ".tar.gz"))
4058 (sha256
4059 (base32
4060 "0x088q5z0m09a2jqcfgsnq955y8syn1mgn35cl78qinkxm4kp6zs"))))
4061 (build-system cargo-build-system)
4062 (home-page "https://github.com/BurntSushi/ucd-generate")
4063 (synopsis "library for working with the Unicode character database")
4064 (description "This package provides a small utility library for working
4065 with the Unicode character database.")
4066 (license (list license:asl2.0
4067 license:expat))))
4068
4069 (define-public rust-unicase
4070 (package
4071 (name "rust-unicase")
4072 (version "2.4.0")
4073 (source
4074 (origin
4075 (method url-fetch)
4076 (uri (crate-uri "unicase" version))
4077 (file-name (string-append name "-" version ".tar.gz"))
4078 (sha256
4079 (base32
4080 "1xmpmkakhhblq7dzab1kwyv925kv7fqjkjsxjspg6ix9n88makm8"))))
4081 (build-system cargo-build-system)
4082 (arguments
4083 `(#:cargo-inputs (("rust-version-check" ,rust-version-check-0.1))))
4084 (home-page "https://github.com/seanmonstar/unicase")
4085 (synopsis "Case-insensitive wrapper around strings")
4086 (description
4087 "A case-insensitive wrapper around strings.")
4088 (license (list license:asl2.0
4089 license:expat))))
4090
4091 (define-public rust-unicode-width
4092 (package
4093 (name "rust-unicode-width")
4094 (version "0.1.5")
4095 (source
4096 (origin
4097 (method url-fetch)
4098 (uri (crate-uri "unicode-width" version))
4099 (file-name (string-append name "-" version ".tar.gz"))
4100 (sha256
4101 (base32
4102 "09k5lipygardwy0660jhls08fsgknrazzivmn804gps53hiqc8w8"))))
4103 (build-system cargo-build-system)
4104 (home-page "https://github.com/unicode-rs/unicode-width")
4105 (synopsis "Determine displayed width according to Unicode rules")
4106 (description "This crate allows you to determine displayed width of
4107 @code{char} and @code{str} types according to Unicode Standard Annex #11 rules.")
4108 (license (list license:asl2.0
4109 license:expat))))
4110
4111 (define-public rust-unicode-xid
4112 (package
4113 (name "rust-unicode-xid")
4114 (version "0.2.0")
4115 (source
4116 (origin
4117 (method url-fetch)
4118 (uri (crate-uri "unicode-xid" version))
4119 (file-name
4120 (string-append name "-" version ".tar.gz"))
4121 (sha256
4122 (base32
4123 "0z09fn515xm7zyr0mmdyxa9mx2f7azcpv74pqmg611iralwpcvl2"))))
4124 (build-system cargo-build-system)
4125 (home-page
4126 "https://github.com/unicode-rs/unicode-xid")
4127 (synopsis "Determine Unicode XID related properties")
4128 (description "Determine whether characters have the XID_Start
4129 or XID_Continue properties according to Unicode Standard Annex #31.")
4130 ;; Dual licensed.
4131 (license (list license:asl2.0 license:expat))))
4132
4133 (define-public rust-unicode-xid-0.1
4134 (package
4135 (inherit rust-unicode-xid)
4136 (name "rust-unicode-xid")
4137 (version "0.1.0")
4138 (source
4139 (origin
4140 (method url-fetch)
4141 (uri (crate-uri "unicode-xid" version))
4142 (file-name (string-append name "-" version ".tar.gz"))
4143 (sha256
4144 (base32
4145 "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw"))))))
4146
4147 (define-public rust-unindent
4148 (package
4149 (name "rust-unindent")
4150 (version "0.1.3")
4151 (source
4152 (origin
4153 (method url-fetch)
4154 (uri (crate-uri "unindent" version))
4155 (file-name (string-append name "-" version ".tar.gz"))
4156 (sha256
4157 (base32
4158 "1x21ilf78aqcq9xzb9b7i628wm10rhk0jp0chlv06rkc690l8jw3"))))
4159 (build-system cargo-build-system)
4160 (home-page "https://github.com/dtolnay/indoc")
4161 (synopsis "Remove a column of leading whitespace from a string")
4162 (description "This crate allows you to remove a column of leading
4163 whitespace from a string.")
4164 (license (list license:asl2.0
4165 license:expat))))
4166
4167 (define-public rust-unreachable
4168 (package
4169 (name "rust-unreachable")
4170 (version "1.0.0")
4171 (source
4172 (origin
4173 (method url-fetch)
4174 (uri (crate-uri "unreachable" version))
4175 (file-name (string-append name "-" version ".tar.gz"))
4176 (sha256
4177 (base32
4178 "0mps2il4xy2mjqc3appas27hhn2xmvixc3bzzhfrjj74gy3i0a1q"))))
4179 (build-system cargo-build-system)
4180 (arguments
4181 `(#:cargo-inputs (("rust-void" ,rust-void))))
4182 (home-page "https://github.com/reem/rust-unreachable")
4183 (synopsis "Unreachable code optimization hint in rust")
4184 (description
4185 "This package provides an unreachable code optimization hint in rust.")
4186 (license (list license:asl2.0
4187 license:expat))))
4188
4189 (define-public rust-unsafe-any
4190 (package
4191 (name "rust-unsafe-any")
4192 (version "0.4.2")
4193 (source
4194 (origin
4195 (method url-fetch)
4196 (uri (crate-uri "unsafe-any" version))
4197 (file-name (string-append name "-" version ".tar.gz"))
4198 (sha256
4199 (base32
4200 "0zwwphsqkw5qaiqmjwngnfpv9ym85qcsyj7adip9qplzjzbn00zk"))))
4201 (build-system cargo-build-system)
4202 (arguments
4203 `(#:cargo-inputs
4204 (("rust-traitobject" ,rust-traitobject))))
4205 (home-page "https://tokio.rs")
4206 (synopsis "Traits and implementations for unchecked downcasting")
4207 (description
4208 "Traits and implementations for unchecked downcasting.")
4209 (license license:expat)))
4210
4211 (define-public rust-untrusted
4212 (package
4213 (name "rust-untrusted")
4214 (version "0.7.0")
4215 (source
4216 (origin
4217 (method url-fetch)
4218 (uri (crate-uri "untrusted" version))
4219 (file-name (string-append name "-" version ".tar.gz"))
4220 (sha256
4221 (base32
4222 "1kmfykcwif6ashkwg54gcnhxj03kpba2i9vc7z5rpr0xlgvrwdk0"))))
4223 (build-system cargo-build-system)
4224 (home-page "https://github.com/briansmith/untrusted")
4225 (synopsis "Zero-allocation parsing of untrusted inputs in Rust")
4226 (description
4227 "Safe, fast, zero-panic, zero-crashing, zero-allocation parsing of
4228 untrusted inputs in Rust.")
4229 (license license:isc)))
4230
4231 (define-public rust-vcpkg
4232 (package
4233 (name "rust-vcpkg")
4234 (version "0.2.7")
4235 (source
4236 (origin
4237 (method url-fetch)
4238 (uri (crate-uri "vcpkg" version))
4239 (file-name (string-append name "-" version ".tar.gz"))
4240 (sha256
4241 (base32
4242 "15dzk1b96q946v9aisbd1bbhi33n93wvgziwh1shmscn1xflbp9k"))))
4243 (build-system cargo-build-system)
4244 (arguments
4245 `(#:cargo-development-inputs
4246 (("rust-lazy-static" ,rust-lazy-static)
4247 ("rust-tempdir" ,rust-tempdir))
4248 #:tests? #f)) ; tests try to link libmysql, graphite2, harfbuzz
4249 (home-page "https://github.com/mcgoo/vcpkg-rs")
4250 (synopsis "Find native dependencies in a vcpkg tree at build time")
4251 (description
4252 "This package provides a library to find native dependencies in a
4253 @code{vcpkg} tree at build time in order to be used in Cargo build scripts.")
4254 (license (list license:asl2.0
4255 license:expat))))
4256
4257 (define-public rust-version-check
4258 (package
4259 (name "rust-version-check")
4260 (version "0.9.1")
4261 (source
4262 (origin
4263 (method url-fetch)
4264 (uri (crate-uri "version_check" version))
4265 (file-name (string-append name "-" version ".tar.gz"))
4266 (sha256
4267 (base32
4268 "1kikqlnggii1rvnxrbls55sc46lxvinz5k3giscgncjj4p87b1q7"))))
4269 (build-system cargo-build-system)
4270 (home-page "https://github.com/SergioBenitez/version_check")
4271 (synopsis "Check that the installed rustc meets some version requirements")
4272 (description
4273 "This tiny crate checks that the running or installed rustc meets some
4274 version requirements. The version is queried by calling the Rust compiler with
4275 @code{--version}. The path to the compiler is determined first via the
4276 @code{RUSTC} environment variable. If it is not set, then @code{rustc} is used.
4277 If that fails, no determination is made, and calls return None.")
4278 (license (list license:asl2.0
4279 license:expat))))
4280
4281 (define-public rust-version-check-0.1
4282 (package
4283 (inherit rust-version-check)
4284 (name "rust-version-check")
4285 (version "0.1.5")
4286 (source
4287 (origin
4288 (method url-fetch)
4289 (uri (crate-uri "version_check" version))
4290 (file-name (string-append name "-" version ".tar.gz"))
4291 (sha256
4292 (base32
4293 "1pf91pvj8n6akh7w6j5ypka6aqz08b3qpzgs0ak2kjf4frkiljwi"))))))
4294
4295 (define-public rust-void
4296 (package
4297 (name "rust-void")
4298 (version "1.0.2")
4299 (source
4300 (origin
4301 (method url-fetch)
4302 (uri (crate-uri "void" version))
4303 (file-name (string-append name "-" version ".tar.gz"))
4304 (sha256
4305 (base32
4306 "0zc8f0ksxvmhvgx4fdg0zyn6vdnbxd2xv9hfx4nhzg6kbs4f80ka"))))
4307 (build-system cargo-build-system)
4308 (home-page "https://github.com/reem/rust-void")
4309 (synopsis "Void type for use in statically impossible cases")
4310 (description
4311 "The uninhabited void type for use in statically impossible cases.")
4312 (license license:expat)))
4313
4314 (define-public rust-walkdir
4315 (package
4316 (name "rust-walkdir")
4317 (version "2.2.9")
4318 (source
4319 (origin
4320 (method url-fetch)
4321 (uri (crate-uri "walkdir" version))
4322 (file-name (string-append name "-" version ".tar.gz"))
4323 (sha256
4324 (base32
4325 "07ppalpvxkf8cnqr64np422792y4z5bs9m8b4nrflh5rm17wjn4n"))))
4326 (build-system cargo-build-system)
4327 (arguments
4328 `(#:cargo-inputs
4329 (("rust-same-file" ,rust-same-file)
4330 ("rust-winapi" ,rust-winapi)
4331 ("rust-winapi-util" ,rust-winapi-util))
4332 #:cargo-development-inputs
4333 (("rust-doc-comment" ,rust-doc-comment))))
4334 (home-page "https://github.com/BurntSushi/walkdir")
4335 (synopsis "Recursively walk a directory")
4336 (description "Recursively walk a directory.")
4337 (license (list license:unlicense
4338 license:expat))))
4339
4340 (define-public rust-wasi
4341 (package
4342 (name "rust-wasi")
4343 (version "0.5.0")
4344 (source
4345 (origin
4346 (method url-fetch)
4347 (uri (crate-uri "wasi" version))
4348 (file-name
4349 (string-append name "-" version ".tar.gz"))
4350 (sha256
4351 (base32
4352 "1ir3pd4phdfml0cbziw9bqp7mnk0vfp9biy8bh25lln6raml4m7x"))))
4353 (build-system cargo-build-system)
4354 (home-page "https://github.com/CraneStation/rust-wasi")
4355 (synopsis "Experimental WASI API bindings for Rust")
4356 (description "This package contains experimental WASI API bindings
4357 in Rust.")
4358 (license license:asl2.0)))
4359
4360 (define-public rust-wasm-bindgen-shared
4361 (package
4362 (name "rust-wasm-bindgen-shared")
4363 (version "0.2.48")
4364 (source
4365 (origin
4366 (method url-fetch)
4367 (uri (crate-uri "wasm-bindgen-shared" version))
4368 (file-name (string-append name "-" version ".tar.gz"))
4369 (sha256
4370 (base32
4371 "08rnfhjyk0f6liv8n4rdsvhx7r02glkhcbj2lp9lcbkbfpad9hnr"))))
4372 (build-system cargo-build-system)
4373 (home-page "https://rustwasm.github.io/wasm-bindgen/")
4374 (synopsis "Shared support between wasm-bindgen and wasm-bindgen cli")
4375 (description "This package provides shared support between
4376 @code{wasm-bindgen} and @code{wasm-bindgen} cli, an internal dependency.")
4377 (license (list license:asl2.0
4378 license:expat))))
4379
4380 (define-public rust-wasm-bindgen-test-macro
4381 (package
4382 (name "rust-wasm-bindgen-test-macro")
4383 (version "0.2.48")
4384 (source
4385 (origin
4386 (method url-fetch)
4387 (uri (crate-uri "wasm-bindgen-test-macro" version))
4388 (file-name (string-append name "-" version ".tar.gz"))
4389 (sha256
4390 (base32
4391 "0n28mr6vncf1k1qr2b5bvfxq4jvqkjdzq0z0ab6w2f5d6v8q3q3l"))))
4392 (build-system cargo-build-system)
4393 (arguments
4394 `(#:cargo-inputs
4395 (("rust-proc-macro2" ,rust-proc-macro2)
4396 ("rust-quote" ,rust-quote))))
4397 (home-page "https://github.com/rustwasm/wasm-bindgen")
4398 (synopsis "Internal testing macro for wasm-bindgen")
4399 (description
4400 "This library contains the internal testing macro for wasm-bindgen.")
4401 (license (list license:asl2.0
4402 license:expat))))
4403
4404 (define-public rust-widestring
4405 (package
4406 (name "rust-widestring")
4407 (version "0.4.0")
4408 (source
4409 (origin
4410 (method url-fetch)
4411 (uri (crate-uri "widestring" version))
4412 (file-name (string-append name "-" version ".tar.gz"))
4413 (sha256
4414 (base32
4415 "1dhx6dndjsz1y7c9w06922412kdxyrrkqblvggm76mh8z17hxz7g"))))
4416 (build-system cargo-build-system)
4417 (arguments
4418 `(#:cargo-development-inputs
4419 (("rust-winapi" ,rust-winapi))))
4420 (home-page "https://github.com/starkat99/widestring-rs")
4421 (synopsis "Wide string Rust FFI library")
4422 (description
4423 "A wide string Rust FFI library for converting to and from wide strings,
4424 such as those often used in Windows API or other FFI libraries. Both UTF-16 and
4425 UTF-32 types are provided, including support for malformed encoding.")
4426 (license (list license:asl2.0
4427 license:expat))))
4428
4429 (define-public rust-winapi
4430 (package
4431 (name "rust-winapi")
4432 (version "0.3.8")
4433 (source
4434 (origin
4435 (method url-fetch)
4436 (uri (crate-uri "winapi" version))
4437 (file-name (string-append name "-" version ".tar.gz"))
4438 (sha256
4439 (base32
4440 "1ii9j9lzrhwri0902652awifzx9fpayimbp6hfhhc296xcg0k4w0"))))
4441 (build-system cargo-build-system)
4442 (arguments
4443 `(#:cargo-inputs
4444 (("rust-winapi-i686-pc-windows-gnu"
4445 ,rust-winapi-i686-pc-windows-gnu)
4446 ("rust-winapi-x86-64-pc-windows-gnu"
4447 ,rust-winapi-x86-64-pc-windows-gnu))))
4448 (home-page "https://github.com/retep998/winapi-rs")
4449 (synopsis "Raw FFI bindings for all of Windows API.")
4450 (description
4451 "Raw FFI bindings for all of Windows API.")
4452 (license (list license:asl2.0
4453 license:expat))))
4454
4455 (define-public rust-winapi-0.2
4456 (package
4457 (inherit rust-winapi)
4458 (name "rust-winapi")
4459 (version "0.2.8")
4460 (source
4461 (origin
4462 (method url-fetch)
4463 (uri (crate-uri "winapi" version))
4464 (file-name (string-append name "-" version ".tar.gz"))
4465 (sha256
4466 (base32
4467 "0yh816lh6lf56dpsgxy189c2ai1z3j8mw9si6izqb6wsjkbcjz8n"))))
4468 ;; We do not want to package 48 -sys crates for a package we do not want.
4469 ;; They are all dev dependencies, so we skip building and testing.
4470 (arguments
4471 `(#:tests? #f
4472 #:phases
4473 (modify-phases %standard-phases
4474 (delete 'build))))))
4475
4476 (define-public rust-winapi-build
4477 (package
4478 (name "rust-winapi-build")
4479 (version "0.1.1")
4480 (source
4481 (origin
4482 (method url-fetch)
4483 (uri (crate-uri "winapi-build" version))
4484 (file-name (string-append name "-" version ".tar.gz"))
4485 (sha256
4486 (base32
4487 "1g4rqsgjky0a7530qajn2bbfcrl2v0zb39idgdws9b1l7gp5wc9d"))))
4488 (build-system cargo-build-system)
4489 (home-page "https://github.com/retep998/winapi-rs")
4490 (synopsis "Common code for build.rs in WinAPI -sys crates")
4491 (description
4492 "Common code for build.rs in WinAPI -sys crates.")
4493 (license license:expat)))
4494
4495 (define-public rust-winapi-i686-pc-windows-gnu
4496 (package
4497 (name "rust-winapi-i686-pc-windows-gnu")
4498 (version "0.4.0")
4499 (source
4500 (origin
4501 (method url-fetch)
4502 (uri (crate-uri "winapi-i686-pc-windows-gnu" version))
4503 (file-name (string-append name "-" version ".tar.gz"))
4504 (sha256
4505 (base32
4506 "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"))))
4507 (build-system cargo-build-system)
4508 (home-page "https://github.com/retep998/winapi-rs")
4509 (synopsis "Import libraries for the i686-pc-windows-gnu target")
4510 (description "This crate provides import libraries for the
4511 i686-pc-windows-gnu target. Please don't use this crate directly, depend on
4512 @code{winapi} instead.")
4513 (license (list license:asl2.0
4514 license:expat))))
4515
4516 (define-public rust-winapi-util
4517 (package
4518 (name "rust-winapi-util")
4519 (version "0.1.2")
4520 (source
4521 (origin
4522 (method url-fetch)
4523 (uri (crate-uri "winapi-util" version))
4524 (file-name (string-append name "-" version ".tar.gz"))
4525 (sha256
4526 (base32
4527 "1j839dc6y8vszvrsb7yk0qvs0w6asnahxzbyans37vnsw6vbls3i"))))
4528 (build-system cargo-build-system)
4529 (arguments
4530 `(#:cargo-inputs (("rust-winapi" ,rust-winapi))))
4531 (home-page "https://github.com/BurntSushi/winapi-util")
4532 (synopsis "Dumping ground for high level safe wrappers over winapi")
4533 (description
4534 "This package provides a dumping ground for high level safe wrappers over
4535 winapi.")
4536 (license (list license:unlicense
4537 license:expat))))
4538
4539 (define-public rust-winapi-x86-64-pc-windows-gnu
4540 (package
4541 (name "rust-winapi-x86-64-pc-windows-gnu")
4542 (version "0.4.0")
4543 (source
4544 (origin
4545 (method url-fetch)
4546 (uri (crate-uri "winapi-x86_64-pc-windows-gnu" version))
4547 (file-name (string-append name "-" version ".tar.gz"))
4548 (sha256
4549 (base32
4550 "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"))))
4551 (build-system cargo-build-system)
4552 (home-page "https://github.com/retep998/winapi-rs")
4553 (synopsis "Import libraries for the x86_64-pc-windows-gnu target")
4554 (description "This package provides import libraries for the
4555 x86_64-pc-windows-gnu target. Please don't use this crate directly, depend on
4556 @code{winapi} instead.")
4557 (license (list license:asl2.0
4558 license:expat))))
4559
4560 (define-public rust-wincolor
4561 (package
4562 (name "rust-wincolor")
4563 (version "1.0.2")
4564 (source
4565 (origin
4566 (method url-fetch)
4567 (uri (crate-uri "wincolor" version))
4568 (file-name (string-append name "-" version ".tar.gz"))
4569 (sha256
4570 (base32
4571 "1agaf3hcav113i86912ajnw6jxcy4rvkrgyf8gdj8kc031mh3xcn"))))
4572 (build-system cargo-build-system)
4573 (arguments
4574 `(#:cargo-inputs
4575 (("rust-winapi" ,rust-winapi)
4576 ("rust-winapi-util" ,rust-winapi-util))))
4577 (home-page "https://github.com/BurntSushi/termcolor/tree/master/wincolor")
4578 (synopsis "Windows API for controlling text color in a Windows console")
4579 (description
4580 "This package provides a simple Windows specific API for controlling text
4581 color in a Windows console.")
4582 (license (list license:unlicense
4583 license:expat))))
4584
4585 (define-public rust-winutil
4586 (package
4587 (name "rust-winutil")
4588 (version "0.1.1")
4589 (source
4590 (origin
4591 (method url-fetch)
4592 (uri (crate-uri "winutil" version))
4593 (file-name (string-append name "-" version ".tar.gz"))
4594 (sha256
4595 (base32
4596 "0vkyl3fbbf05n5ph5yz8sfaccrk9x3qsr25560w6w68ldf5i7bvx"))))
4597 (build-system cargo-build-system)
4598 (arguments
4599 `(#:cargo-inputs
4600 (("rust-winapi" ,rust-winapi))
4601 ;; This unmaintained crate cannot find winapi when built directly.
4602 #:tests? #f
4603 #:phases
4604 (modify-phases %standard-phases
4605 (delete 'build))))
4606 (home-page "https://bitbucket.org/DaveLancaster/winutil")
4607 (synopsis "Library wrapping a handful of useful winapi functions")
4608 (description
4609 "A simple library wrapping a handful of useful winapi functions.")
4610 (license license:expat)))
4611
4612 (define-public rust-ws2-32-sys
4613 (package
4614 (name "rust-ws2-32-sys")
4615 (version "0.2.1")
4616 (source
4617 (origin
4618 (method url-fetch)
4619 (uri (crate-uri "ws2_32-sys" version))
4620 (file-name (string-append name "-" version ".tar.gz"))
4621 (sha256
4622 (base32
4623 "0ppscg5qfqaw0gzwv2a4nhn5bn01ff9iwn6ysqnzm4n8s3myz76m"))))
4624 (build-system cargo-build-system)
4625 (arguments
4626 `(#:cargo-inputs
4627 (("rust-winapi" ,rust-winapi-0.2)
4628 ("rust-winapi-build" ,rust-winapi-build))
4629 #:phases
4630 (modify-phases %standard-phases
4631 (add-after 'unpack 'fix-Cargo-toml
4632 (lambda _
4633 (substitute* "Cargo.toml"
4634 ((", path =.* }") "}\n"))
4635 #t)))))
4636 (home-page "https://github.com/retep998/winapi-rs")
4637 (synopsis "Function definitions for the Windows API library ws2_32")
4638 (description
4639 "Contains function definitions for the Windows API library ws2_32.")
4640 (license license:expat)))
4641
4642 (define-public rust-xattr
4643 (package
4644 (name "rust-xattr")
4645 (version "0.2.2")
4646 (source
4647 (origin
4648 (method url-fetch)
4649 (uri (crate-uri "xattr" version))
4650 (file-name (string-append name "-" version ".tar.gz"))
4651 (sha256
4652 (base32
4653 "0k556fb6f5jc907975j9c8iynl2fqz3rf0w6fiig83i4yi0kfk14"))))
4654 (build-system cargo-build-system)
4655 (arguments
4656 `(#:cargo-inputs
4657 (("rust-libc" ,rust-libc))
4658 #:cargo-development-inputs
4659 (("rust-tempfile" ,rust-tempfile))
4660 #:tests? #f)) ; Tests assume read access to /var.
4661 (home-page "https://github.com/Stebalien/xattr")
4662 (synopsis "Unix extended filesystem attributes")
4663 (description
4664 "This package provide a small library for setting, getting, and listing
4665 extended attributes.")
4666 (license (list license:asl2.0
4667 license:expat))))
4668
4669 (define-public rust-xdg
4670 (package
4671 (name "rust-xdg")
4672 (version "2.2.0")
4673 (source
4674 (origin
4675 (method url-fetch)
4676 (uri (crate-uri "xdg" version))
4677 (file-name (string-append name "-" version ".tar.gz"))
4678 (sha256
4679 (base32
4680 "0mws8a0fr3cqk5nh7aq9lmkmhzghvasqy4mhw6nnza06l4d6i2fh"))))
4681 (build-system cargo-build-system)
4682 (home-page "https://github.com/whitequark/rust-xdg")
4683 (synopsis "Store and retrieve files according to XDG specification")
4684 (description
4685 "This package provides a library for storing and retrieving files according
4686 to XDG Base Directory specification")
4687 (license (list license:asl2.0
4688 license:expat))))