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