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>
7 ;;; This file is part of GNU Guix.
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.
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.
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/>.
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))
35 ;;; Please: Try to add new module packages in alphabetic order.
38 (define-public rust-adler32
45 (uri (crate-uri "adler32" version))
47 (string-append name "-" version ".tar.gz"))
50 "0p7fxlnks9l7p7rwfqi7aqgnk2bps5zc0rjiw00mdw19nnbjjlky"))))
51 (build-system cargo-build-system)
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")
57 "This library is an implementation of the Adler32 rolling hash algorithm in
58 the Rust programming language.")
59 (license (list license:bsd-3
62 (define-public rust-ansi-term
64 (name "rust-ansi-term")
69 (uri (crate-uri "ansi_term" version))
70 (file-name (string-append name "-" version ".tar.gz"))
73 "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf"))))
74 (build-system cargo-build-system)
77 (("rust-winapi" ,rust-winapi))
79 (modify-phases %standard-phases
80 (add-after 'unpack 'fix-tests
81 ;; https://github.com/ogham/rust-ansi-term/commit/5ff6af6f38790abcb3aafee1239286c10ef69576.patch
83 (substitute* "src/debug.rs"
84 (("^ *Blue") " Blue,")
85 (("underline: false") "underline: false,"))
87 (home-page "https://github.com/ogham/rust-ansi-term")
88 (synopsis "Library for ANSI terminal colours and styles")
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)))
94 (define-public rust-antidote
96 (name "rust-antidote")
101 (uri (crate-uri "antidote" version))
102 (file-name (string-append name "-" version ".tar.gz"))
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")
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
115 (define-public rust-atty
122 (uri (crate-uri "atty" version))
123 (file-name (string-append name "-" version ".tar.gz"))
126 "140sswp1bwqwc4zk80bxkbnfb3g936hgrb77g9g0k1zcld3wc0qq"))))
127 (build-system cargo-build-system)
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")
136 "This package provides a simple interface for querying atty.")
137 (license license:expat)))
139 (define-public rust-autocfg
141 (name "rust-autocfg")
146 (uri (crate-uri "autocfg" version))
147 (file-name (string-append name "-" version ".tar.gz"))
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
158 (license (list license:asl2.0
161 (define-public rust-base-x
168 (uri (crate-uri "base-x" version))
169 (file-name (string-append name "-" version ".tar.gz"))
172 "0hv4y5cdhv6bk0ghk2434clw8v4mmk5cc9lsh6qrpri92zlfmx3n"))))
173 (build-system cargo-build-system)
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)))
184 (define-public rust-bencher
186 (name "rust-bencher")
191 (uri (crate-uri "bencher" version))
192 (file-name (string-append name "-" version ".tar.gz"))
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
206 (define-public rust-bitflags
208 (name "rust-bitflags")
213 (uri (crate-uri "bitflags" version))
214 (file-name (string-append name "-" version ".tar.gz"))
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
226 (define-public rust-blas-sys
228 (name "rust-blas-sys")
233 (uri (crate-uri "blas-sys" version))
234 (file-name (string-append name "-" version ".tar.gz"))
237 "0h14zjycwc76v15h8qll9z1xiryvmpvsb5gam97pqpdjrrwv5c8k"))))
238 (build-system cargo-build-system)
240 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
241 (home-page "https://github.com/blas-lapack-rs/blas-sys")
242 (synopsis "Bindings to BLAS (Fortran)")
244 "Ths package provides bindings to BLAS (Fortran).")
245 (license (list license:asl2.0
248 (define-public rust-cargon
255 (uri (crate-uri "cargon" version))
256 (file-name (string-append name "-" version ".tar.gz"))
259 "1cszlab7jk736p0lb50ag4l9nv72m7j41bwrmygl0lr4iz0350w2"))))
260 (build-system cargo-build-system)
263 (("rust-gcc" ,rust-gcc))))
264 (home-page "https://github.com/bryant/argon2rs")
265 (synopsis "Thin wrapper around the Argon2 C library")
267 "This package provides a thin wrapper around the Argon2 C library. It is
268 used in argon2rs' bench suite.")
269 (license license:wtfpl2)))
271 (define-public rust-cblas-sys
273 (name "rust-cblas-sys")
278 (uri (crate-uri "cblas-sys" version))
279 (file-name (string-append name "-" version ".tar.gz"))
282 "0rgsn3klhhh09d8qf3b87zl4rwk93l2g0qzh9hhb0lff5kcfrzmn"))))
283 (build-system cargo-build-system)
285 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
286 (home-page "https://github.com/blas-lapack-rs/cblas-sys")
287 (synopsis "Bindings to CBLAS (C)")
289 "The package provides bindings to CBLAS (C).")
290 (license (list license:asl2.0
293 (define-public rust-cc
300 (uri (crate-uri "cc" version))
301 (file-name (string-append name "-" version ".tar.gz"))
304 "1zxzd559dbbf1iwdzmkj7czapzccs17kqqmsj9ayijpdix5rrbld"))))
305 (build-system cargo-build-system)
308 ;(("rust-rayon" ,rust-rayon))
309 #:cargo-development-inputs
310 (("rust-tempdir" ,rust-tempdir))
312 (modify-phases %standard-phases
313 (add-after 'unpack 'remove-optional-deps
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")
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")
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
332 (define-public rust-cfg-if
339 (uri (crate-uri "cfg-if" version))
340 (file-name (string-append name "-" version ".tar.gz"))
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
353 (define-public rust-clang-sys
355 (name "rust-clang-sys")
360 (uri (crate-uri "clang-sys" version))
361 (file-name (string-append name "-" version ".tar.gz"))
364 "0ls8zcqi5bmmrvrk3b6r1ym4wlivinbv590d2dvg2xn9f44mbpl1"))))
365 (build-system cargo-build-system)
368 (("rust-glob" ,rust-glob)
369 ("rust-libc" ,rust-libc)
370 ("rust-libloading" ,rust-libloading))
371 #:cargo-development-inputs
372 (("rust-glob" ,rust-glob))
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")))
382 `(("libclang" ,clang)))
383 (home-page "https://github.com/KyleMayes/clang-sys")
384 (synopsis "Rust bindings for libclang")
386 "This package provides Rust bindings for @code{libclang}.")
387 (license license:asl2.0)))
389 (define-public rust-clicolors-control
391 (name "rust-clicolors-control")
396 (uri (crate-uri "clicolors-control" version))
397 (file-name (string-append name "-" version ".tar.gz"))
400 "1y80cgarxhrd1bz5yjm81r444v6flvy36aaxrrsac0yhfd6gvavk"))))
401 (build-system cargo-build-system)
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")
411 "This package provides a common utility library to control CLI
413 (license license:expat)))
415 (define-public rust-cloudabi
417 (name "rust-cloudabi")
422 (uri (crate-uri "cloudabi" version))
423 (file-name (string-append name "-" version ".tar.gz"))
426 "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x"))))
427 (build-system cargo-build-system)
430 (("rust-bitflags" ,rust-bitflags))))
431 (home-page "https://nuxi.nl/cloudabi/")
432 (synopsis "Low level interface to CloudABI")
434 "Low level interface to CloudABI. Contains all syscalls and related types.")
435 (license license:bsd-2)))
437 (define-public rust-cmake
444 (uri (crate-uri "cmake" version))
445 (file-name (string-append name "-" version ".tar.gz"))
448 "0qkwibkvx5xjazvv9v8gvdlpky2jhjxvcz014nrixgzqfyv2byw1"))))
449 (build-system cargo-build-system)
451 `(#:cargo-inputs (("rust-cc" ,rust-cc))))
452 (home-page "https://github.com/alexcrichton/cmake-rs")
453 (synopsis "Rust build dependency for running cmake")
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
461 ;; This package requires features which are unavailable
462 ;; on the stable releases of Rust.
463 (define-public rust-compiler-builtins
465 (name "rust-compiler-builtins")
470 (uri (crate-uri "compiler_builtins" version))
471 (file-name (string-append name "-" version ".tar.gz"))
474 "1fpabpmg8paj4r5a37vmidh1jx1b7a6ilxm4s3xsxczx27ybjcjf"))))
475 (build-system cargo-build-system)
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")
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
491 (define-public rust-constant-time-eq
493 (name "rust-constant-time-eq")
498 (uri (crate-uri "constant_time_eq" version))
499 (file-name (string-append name "-" version ".tar.gz"))
502 "083icpr9xb72rrdxw3p4068dcspn6ai22jy7rhl2a8grfz448nlr"))))
503 (build-system cargo-build-system)
504 (home-page "https://github.com/cesarb/constant_time_eq")
506 "Compares two equal-sized byte strings in constant time")
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)))
512 (define-public rust-core-foundation-sys
514 (name "rust-core-foundation-sys")
519 (uri (crate-uri "core-foundation-sys" version))
520 (file-name (string-append name "-" version ".tar.gz"))
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")
528 "Bindings to Core Foundation for OS X.")
529 (license (list license:asl2.0
532 (define-public rust-data-encoding
534 (name "rust-data-encoding")
539 (uri (crate-uri "data-encoding" version))
540 (file-name (string-append name "-" version ".tar.gz"))
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")
548 "This library provides encodings for many different common cases, including
549 hexadecimal, bas32, and base64.")
550 (license license:expat)))
552 (define-public rust-defmac
559 (uri (crate-uri "defmac" version))
560 (file-name (string-append name "-" version ".tar.gz"))
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
571 (define-public rust-defmac-0.1
573 (inherit rust-defmac)
579 (uri (crate-uri "defmac" version))
580 (file-name (string-append name "-" version ".tar.gz"))
583 "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
585 (define-public rust-discard
587 (name "rust-discard")
592 (uri (crate-uri "discard" version))
593 (file-name (string-append name "-" version ".tar.gz"))
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)))
605 (define-public rust-doc-comment
607 (name "rust-doc-comment")
612 (uri (crate-uri "doc-comment" version))
613 (file-name (string-append name "-" version ".tar.gz"))
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
622 (license license:expat)))
624 (define-public rust-dtoa
631 (uri (crate-uri "dtoa" version))
632 (file-name (string-append name "-" version ".tar.gz"))
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
644 (define-public rust-fallible-iterator
646 (name "rust-fallible-iterator")
651 (uri (crate-uri "fallible-iterator" version))
652 (file-name (string-append name "-" version ".tar.gz"))
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
666 (define-public rust-filetime
668 (name "rust-filetime")
673 (uri (crate-uri "filetime" version))
674 (file-name (string-append name "-" version ".tar.gz"))
677 "0sflihq2l77xjrza7yjalnxsc7dxzg25rhzcfbd9vmyfah5kimvb"))))
678 (build-system cargo-build-system)
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")
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
695 (license (list license:asl2.0
698 (define-public rust-findshlibs
700 (name "rust-findshlibs")
705 (uri (crate-uri "findshlibs" version))
706 (file-name (string-append name "-" version ".tar.gz"))
709 "1n2vagn0q5yim32hxkwi1cjgp3yn1dm45p7z8nw6lapywihhs9mi"))))
710 (build-system cargo-build-system)
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")
718 "Find the set of shared libraries loaded in the current process with a
719 cross platform API.")
720 (license (list license:asl2.0
723 (define-public rust-fixedbitset
725 (name "rust-fixedbitset")
730 (uri (crate-uri "fixedbitset" version))
731 (file-name (string-append name "-" version ".tar.gz"))
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
742 (define-public rust-fnv
749 (uri (crate-uri "fnv" version))
750 (file-name (string-append name "-" version ".tar.gz"))
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
762 (define-public rust-foreign-types-shared
764 (name "rust-foreign-types-shared")
769 (uri (crate-uri "foreign-types-shared" version))
770 (file-name (string-append name "-" version ".tar.gz"))
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")
778 "An internal crate used by foreign-types.")
779 (license (list license:asl2.0
782 (define-public rust-fs-extra
784 (name "rust-fs-extra")
789 (uri (crate-uri "fs_extra" version))
790 (file-name (string-append name "-" version ".tar.gz"))
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)))
802 (define-public rust-fuchsia-cprng
804 (name "rust-fuchsia-cprng")
809 (uri (crate-uri "fuchsia-cprng" version))
810 (file-name (string-append name "-" version ".tar.gz"))
813 "1fnkqrbz7ixxzsb04bsz9p0zzazanma8znfdqjvh39n14vapfvx0"))))
814 (build-system cargo-build-system)
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)))
823 (define-public rust-fuchsia-zircon
825 (name "rust-fuchsia-zircon")
830 (uri (crate-uri "fuchsia-zircon" version))
831 (file-name (string-append name "-" version ".tar.gz"))
834 "10jxc5ks1x06gpd0xg51kcjrxr35nj6qhx2zlc5n7bmskv3675rf"))))
835 (build-system cargo-build-system)
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)))
846 (define-public rust-fuchsia-zircon-sys
848 (name "rust-fuchsia-zircon-sys")
853 (uri (crate-uri "fuchsia-zircon-sys" version))
854 (file-name (string-append name "-" version ".tar.gz"))
857 "19zp2085qsyq2bh1gvcxq1lb8w6v6jj9kbdkhpdjrl95fypakjix"))))
858 (build-system cargo-build-system)
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)))
866 (define-public rust-futures
868 (name "rust-futures")
873 (uri (crate-uri "futures" version))
874 (file-name (string-append name "-" version ".tar.gz"))
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
886 (define-public rust-futures-cpupool
888 (name "rust-futures-cpupool")
893 (uri (crate-uri "futures-cpupool" version))
894 (file-name (string-append name "-" version ".tar.gz"))
897 "1r32456gpblzfvnkf60545v8acqk7gh5zhyhi1jn669k9gicv45b"))))
898 (build-system cargo-build-system)
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")
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
911 (define-public rust-futures-io-preview
913 (name "rust-futures-io-preview")
914 (version "0.3.0-alpha.17")
918 (uri (crate-uri "futures-io-preview" version))
919 (file-name (string-append name "-" version ".tar.gz"))
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
931 (define-public rust-gcc
939 (uri (crate-uri "gcc" version))
940 (file-name (string-append name "-" version ".tar.gz"))
943 "1hng1sajn4r67hndvhjysswz8niayjwvcj42zphpxzhbz89kjpwg"))))
944 (build-system cargo-build-system)
947 ;(("rust-rayon" ,rust-rayon))
948 #:cargo-development-inputs
949 (("rust-tempdir" ,rust-tempdir))
951 (modify-phases %standard-phases
952 (add-after 'unpack 'remove-optional-deps
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")
962 (home-page "https://github.com/alexcrichton/cc-rs")
963 (synopsis "Library to compile C/C++ code into a Rust library/application")
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
971 (define-public rust-getopts
973 (name "rust-getopts")
978 (uri (crate-uri "getopts" version))
979 (file-name (string-append name "-" version ".tar.gz"))
982 "018yhq97zgcrcxwhj3pxh31h83704sgaiijdnpl0r1ir366c005r"))))
983 (build-system cargo-build-system)
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
993 (define-public rust-glob
1000 (uri (crate-uri "glob" version))
1001 (file-name (string-append name "-" version ".tar.gz"))
1004 "0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv"))))
1005 (build-system cargo-build-system)
1007 `(#:cargo-development-inputs
1008 (("rust-tempdir" ,rust-tempdir))
1010 (modify-phases %standard-phases
1011 (add-after 'unpack 'fix-tests
1012 ;; This test assumes /root exists but is unreadable by the user.
1014 (substitute* "src/lib.rs"
1015 (("cfg\\(all\\(unix,.*") "cfg(windows)]\n"))
1017 (home-page "https://github.com/rust-lang-nursery/glob")
1018 (synopsis "Match file paths against Unix shell style patterns")
1020 "This package provides support for matching file paths against Unix
1021 shell style patterns.")
1022 (license (list license:asl2.0
1025 (define-public rust-glob-0.2
1033 (uri (crate-uri "glob" version))
1034 (file-name (string-append name "-" version ".tar.gz"))
1037 "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb"))))
1039 `(#:cargo-development-inputs
1040 (("rust-tempdir" ,rust-tempdir))
1042 (modify-phases %standard-phases
1043 (add-after 'unpack 'fix-tests
1044 ;; This test assumes /root exists but is unreadable by the user.
1046 (substitute* "src/lib.rs"
1047 (("cfg\\(unix") "cfg(windows"))
1050 (define-public rust-heapsize
1052 (name "rust-heapsize")
1057 (uri (crate-uri "heapsize" version))
1058 (file-name (string-append name "-" version ".tar.gz"))
1061 "0q94q9ppqjgrw71swiyia4hgby2cz6dldp7ij57nkvhd6zmfcy8n"))))
1062 (build-system cargo-build-system)
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")
1071 "Infrastructure for measuring the total runtime size of an object on the
1073 (license (list license:asl2.0
1076 (define-public rust-heapsize-0.3
1078 (inherit rust-heapsize)
1079 (name "rust-heapsize")
1084 (uri (crate-uri "heapsize" version))
1085 (file-name (string-append name "-" version ".tar.gz"))
1088 "0dmwc37vgsdjzk10443dj4f23439i9gch28jcwzmry3chrwx8v2m"))))
1090 `(#:cargo-inputs (("rust-kernel32-sys" ,rust-kernel32-sys))
1091 #:tests? #f)))) ;; No flexible-tests feature flags on this release.
1093 ;; This package makes use of removed features
1094 (define-public rust-heapsize-plugin
1096 (name "rust-heapsize-plugin")
1101 (uri (crate-uri "heapsize_plugin" version))
1102 (file-name (string-append name "-" version ".tar.gz"))
1105 "1i72isf699q9jl167g2kg4xd6h3cd05rc79zaph58aqjy0g0m9y9"))))
1106 (build-system cargo-build-system)
1108 `(#:cargo-development-inputs (("rust-heapsize" ,rust-heapsize-0.3))
1110 (modify-phases %standard-phases
1111 (add-after 'unpack 'fix-Cargo-toml
1113 (substitute* "Cargo.toml"
1114 (("path = \"..\", ") ""))
1116 (home-page "https://github.com/servo/heapsize")
1117 (synopsis "Measure runtime size of an object on the heap")
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)))
1124 (define-public rust-hex
1131 (uri (crate-uri "hex" version))
1132 (file-name (string-append name "-" version ".tar.gz"))
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
1144 (define-public rust-hostname
1146 (name "rust-hostname")
1151 (uri (crate-uri "hostname" version))
1152 (file-name (string-append name "-" version ".tar.gz"))
1155 "0kprf862qaa7lwdms6aw7f3275h0j2rwhs9nz5784pm8hdmb9ki1"))))
1156 (build-system cargo-build-system)
1159 (("rust-libc" ,rust-libc)
1160 ("rust-winutil" ,rust-winutil))))
1161 (home-page "https://github.com/fengcen/hostname")
1162 (synopsis "Get hostname for Rust")
1164 "Get hostname for Rust.")
1165 (license license:expat)))
1167 (define-public rust-iovec
1174 (uri (crate-uri "iovec" version))
1175 (file-name (string-append name "-" version ".tar.gz"))
1178 "025vi072m22299z3fg73qid188z2iip7k41ba6v5v5yhwwby9rnv"))))
1179 (build-system cargo-build-system)
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")
1187 "Portable buffer type for scatter/gather I/O operations.")
1188 (license (list license:asl2.0
1191 (define-public rust-itoa
1198 (uri (crate-uri "itoa" version))
1199 (file-name (string-append name "-" version ".tar.gz"))
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
1211 (define-public rust-jemalloc-sys
1213 (name "rust-jemalloc-sys")
1218 (uri (crate-uri "jemalloc-sys" version))
1219 (file-name (string-append name "-" version ".tar.gz"))
1222 "0ify9vlql01qhfxlj7d4p9jvcp90mj2h69nkbq7slccvbhzryfqd"))))
1223 (build-system cargo-build-system)
1226 (("rust-libc" ,rust-libc)
1227 ("rust-cc" ,rust-cc)
1228 ("rust-fs-extra" ,rust-fs-extra))
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")))
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
1246 (define-public rust-json
1253 (uri (crate-uri "json" version))
1254 (file-name (string-append name "-" version ".tar.gz"))
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
1266 (define-public rust-kernel32-sys
1268 (name "rust-kernel32-sys")
1273 (uri (crate-uri "kernel32-sys" version))
1274 (file-name (string-append name "-" version ".tar.gz"))
1277 "1389av0601a9yz8dvx5zha9vmkd6ik7ax0idpb032d28555n41vm"))))
1278 (build-system cargo-build-system)
1281 (("rust-winapi" ,rust-winapi-0.2)
1282 ("rust-winapi-build" ,rust-winapi-build))
1284 (modify-phases %standard-phases
1285 (add-after 'unpack 'fix-Cargo-toml
1287 (substitute* "Cargo.toml"
1288 ((", path =.* }") "}\n"))
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
1294 (license license:expat)))
1296 (define-public rust-language-tags
1298 (name "rust-language-tags")
1303 (uri (crate-uri "language-tags" version))
1304 (file-name (string-append name "-" version ".tar.gz"))
1307 "16hrjdpa827carq5x4b8zhas24d8kg4s16m6nmmn1kb7cr5qh7d9"))))
1308 (build-system cargo-build-system)
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")
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
1322 (license license:expat)))
1324 (define-public rust-lazy-static
1326 (name "rust-lazy-static")
1331 (uri (crate-uri "lazy_static" version))
1332 (file-name (string-append name "-" version ".tar.gz"))
1335 "052ac27w189hrf1j3hz7sga46rp84zl2hqnzyihxv78mgzr2jmxw"))))
1336 (build-system cargo-build-system)
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")
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
1350 (define-public rust-libc
1357 (uri (crate-uri "libc" version))
1359 (string-append name "-" version ".tar.gz"))
1362 "1fh69kpjg8hqff36kdczx7sax98gk4qs4ws1dwvjz0rgip0d5z1l"))))
1363 (build-system cargo-build-system)
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")
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).
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
1382 (define-public rust-libloading
1384 (name "rust-libloading")
1389 (uri (crate-uri "libloading" version))
1390 (file-name (string-append name "-" version ".tar.gz"))
1393 "0lyply8rcqc8agajzxs7bq6ivba9dnn1i68kgb9z2flnfjh13cgj"))))
1394 (build-system cargo-build-system)
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")
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)))
1409 (define-public rust-log
1416 (uri (crate-uri "log" version))
1417 (file-name (string-append name "-" version ".tar.gz"))
1420 "0nsn28syc49vvjhxcfc8261rd1frhjc0r4bn9v3mqvps3ra7f3w8"))))
1421 (build-system cargo-build-system)
1422 (home-page "https://github.com/rust-lang-nursery/log")
1423 (synopsis "Lightweight logging")
1425 "This package provides a lightweight logging facade for Rust")
1426 (license (list license:asl2.0
1429 (define-public rust-lzma-sys
1431 (name "rust-lzma-sys")
1436 (uri (crate-uri "lzma-sys" version))
1437 (file-name (string-append name "-" version ".tar.gz"))
1440 "14gyj256yh0wm77jbvmlc39v7lfn0navpfrja4alczarzlc8ir2k"))))
1441 (build-system cargo-build-system)
1444 (("rust-cc" ,rust-cc)
1445 ("rust-libc" ,rust-libc)
1446 ("rust-pkg-config" ,rust-pkg-config))
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"))
1455 `(("pkg-config" ,pkg-config)
1457 (home-page "https://github.com/alexcrichton/xz2-rs")
1458 (synopsis "Bindings to liblzma for lzma and xz stream encoding/decoding")
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
1465 (define-public rust-maplit
1467 (name "rust-maplit")
1472 (uri (crate-uri "maplit" version))
1473 (file-name (string-append name "-" version ".tar.gz"))
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
1485 (define-public rust-matches
1487 (name "rust-matches")
1492 (uri (crate-uri "matches" version))
1493 (file-name (string-append name "-" version ".tar.gz"))
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)))
1504 (define-public rust-md5
1511 (uri (crate-uri "md5" version))
1512 (file-name (string-append name "-" version ".tar.gz"))
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
1523 (define-public rust-memmap
1525 (name "rust-memmap")
1530 (uri (crate-uri "memmap" version))
1531 (file-name (string-append name "-" version ".tar.gz"))
1534 "0ns7kkd1h4pijdkwfvw4qlbbmqmlmzwlq3g2676dcl5vwyazv1b5"))))
1535 (build-system cargo-build-system)
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")
1545 "This package provides a cross-platform Rust API for memory-mapped
1547 (license (list license:asl2.0
1550 (define-public rust-memmap-0.6
1552 (inherit rust-memmap)
1553 (name "rust-memmap")
1558 (uri (crate-uri "memmap" version))
1559 (file-name (string-append name "-" version ".tar.gz"))
1562 "1zy6s0ni0lx9rjzq3gq2zz9r8zgjmbp02332g3gsj4fyhv4s5zz2"))))
1565 (("rust-libc" ,rust-libc)
1566 ("rust-winapi" ,rust-winapi))
1567 #:cargo-development-inputs
1568 (("rust-tempdir" ,rust-tempdir))))))
1570 (define-public rust-mime
1577 (uri (crate-uri "mime" version))
1578 (file-name (string-append name "-" version ".tar.gz"))
1581 "09clbyvdkwflp8anwjhqdib0sw8191gphcchdp80nc8ayhhwl9ry"))))
1582 (build-system cargo-build-system)
1585 (("rust-unicase" ,rust-unicase))))
1586 (home-page "https://github.com/hyperium/mime")
1587 (synopsis "Strongly Typed Mimes")
1589 "Support MIME (HTTP Media Types) as strong types in Rust.")
1590 (license (list license:asl2.0
1593 (define-public rust-miniz-oxide
1595 (name "rust-miniz-oxide")
1600 (uri (crate-uri "miniz_oxide" version))
1601 (file-name (string-append name "-" version ".tar.gz"))
1604 "041s41l5w7z8pkp93pdzn8rngxr93q4wxp034pr0cvc7bgway23i"))))
1605 (build-system cargo-build-system)
1608 (("rust-adler32" ,rust-adler32))
1610 (modify-phases %standard-phases
1611 (add-after 'unpack 'fix-tests
1613 (substitute* "tests/test.rs"
1614 (("../miniz/miniz.c") "Cargo.toml"))
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")
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)))
1624 (define-public rust-miniz-sys
1626 (name "rust-miniz-sys")
1631 (uri (crate-uri "miniz-sys" version))
1632 (file-name (string-append name "-" version ".tar.gz"))
1635 "00l2r4anm8g35x0js2zfdnwfbrih9m43vphdpb77c5ga3kjkm7hy"))))
1636 (build-system cargo-build-system)
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")
1644 "This package provides bindings to the @code{miniz.c} library.")
1645 (license (list license:asl2.0
1648 (define-public rust-miow
1655 (uri (crate-uri "miow" version))
1656 (file-name (string-append name "-" version ".tar.gz"))
1659 "09ljvx6wg30f2xlv7b7hhpkw7k312n3hjgmrbhwzhz9x03ra0sir"))))
1660 (build-system cargo-build-system)
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")
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
1675 (define-public rust-miow-0.2
1683 (uri (crate-uri "miow" version))
1684 (file-name (string-append name "-" version ".tar.gz"))
1687 "06g9b8sqlh5gxakwqq4rrib07afwanfnxgxajrldwcgk3hxjy7wc"))))
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))))))
1697 (define-public rust-modifier
1699 (name "rust-modifier")
1704 (uri (crate-uri "modifier" version))
1705 (file-name (string-append name "-" version ".tar.gz"))
1708 "0n3fmgli1nsskl0whrfzm1gk0rmwwl6pw1q4nb9sqqmn5h8wkxa1"))))
1709 (build-system cargo-build-system)
1710 (home-page "https://github.com/reem/rust-modifier")
1712 "Chaining APIs for both self -> Self and &mut self methods.")
1714 "Chaining APIs for both self -> Self and &mut self methods.")
1715 (license license:expat)))
1717 (define-public rust-net2
1724 (uri (crate-uri "net2" version))
1725 (file-name (string-append name "-" version ".tar.gz"))
1728 "126g3fgfxp06zimc1l9iyxnn9cif1hjsg7sd81nlls5nnyghsma2"))))
1729 (build-system cargo-build-system)
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")
1738 "This library contains extensions to the standard library's networking
1739 types as proposed in RFC 1158.")
1740 (license (list license:asl2.0
1743 (define-public rust-netlib-src
1745 (name "rust-netlib-src")
1750 (uri (crate-uri "netlib-src" version))
1751 (file-name (string-append name "-" version ".tar.gz"))
1754 "112hwfw1zzdj10h3j213xxqjrq38iygb3nb3ijay65ycmrg819s4"))))
1755 (build-system cargo-build-system)
1757 `(#:cargo-development-inputs
1758 (("rust-cmake" ,rust-cmake)
1759 ("rust-libc" ,rust-libc))
1761 (modify-phases %standard-phases
1762 (add-after 'unpack 'use-system-lapack
1764 (delete-file-recursively "source")
1765 (substitute* "Cargo.toml"
1767 "default = [\"system\"]\n"))
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")
1775 "The package provides a source of BLAS and LAPACK via Netlib.")
1776 (license (list license:asl2.0
1779 (define-public rust-nodrop
1781 (name "rust-nodrop")
1786 (uri (crate-uri "nodrop" version))
1787 (file-name (string-append name "-" version ".tar.gz"))
1790 "0if9ifn6rvar5jirx4b3qh4sl5kjkmcifycvzhxa9j3crkfng5ig"))))
1791 (build-system cargo-build-system)
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
1802 ;; This package requires features which are unavailable
1803 ;; on the stable releases of Rust.
1804 (define-public rust-nodrop-union
1806 (name "rust-nodrop-union")
1811 (uri (crate-uri "nodrop-union" version))
1812 (file-name (string-append name "-" version ".tar.gz"))
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
1826 (define-public rust-num-cpus
1828 (name "rust-num-cpus")
1833 (uri (crate-uri "num_cpus" version))
1834 (file-name (string-append name "-" version ".tar.gz"))
1837 "0wrj3zvj6h3q26sqj9zxpd59frjb54n7jhjwf307clq31ic47vxw"))))
1838 (build-system cargo-build-system)
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")
1847 "Get the number of CPUs on a machine.")
1848 (license (list license:asl2.0
1851 (define-public rust-num-integer
1853 (name "rust-num-integer")
1858 (uri (crate-uri "num-integer" version))
1860 (string-append name "-" version ".tar.gz"))
1863 "02dwjjpfbi16c71fq689s4sw3ih52cvfzr5z5gs6qpr5z0g58pmq"))))
1864 (build-system cargo-build-system)
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.")
1873 (license (list license:asl2.0
1876 (define-public rust-num-iter
1878 (name "rust-num-iter")
1883 (uri (crate-uri "num-iter" version))
1884 (file-name (string-append name "-" version ".tar.gz"))
1887 "0bhk2qbr3261r6zvfc58lz4spfqjhvdripxgz5mks5rd85r55gbn"))))
1888 (build-system cargo-build-system)
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")
1898 "This crate provides external iterators for generic mathematics.")
1899 (license (list license:asl2.0
1902 (define-public rust-num-traits
1904 (name "rust-num-traits")
1909 (uri (crate-uri "num-traits" version))
1911 (string-append name "-" version ".tar.gz"))
1914 "0clvrm34rrqc8p6gq5ps5fcgws3kgq5knh7nlqxf2ayarwks9abb"))))
1915 (build-system cargo-build-system)
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.")
1923 (license (list license:asl2.0
1926 (define-public rust-openssl-probe
1928 (name "rust-openssl-probe")
1933 (uri (crate-uri "openssl-probe" version))
1934 (file-name (string-append name "-" version ".tar.gz"))
1937 "1pijrdifgsdwd45b08c2g0dsmnhz7c3kmagb70839ngrd7d29bvp"))))
1938 (build-system cargo-build-system)
1939 (home-page "https://github.com/alexcrichton/openssl-probe")
1940 (synopsis "Find SSL certificate locations")
1942 "This package provides a tool to find SSL certificate locations on the
1943 system for OpenSSL.")
1944 (license (list license:asl2.0
1947 (define-public rust-owning-ref
1949 (name "rust-owning-ref")
1954 (uri (crate-uri "owning_ref" version))
1955 (file-name (string-append name "-" version ".tar.gz"))
1958 "04zgwy77lin8qz398s6g44467pd6kjhbrlqifkia5rkr47mbi929"))))
1959 (build-system cargo-build-system)
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")
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)))
1971 (define-public rust-parity-wasm
1973 (name "rust-parity-wasm")
1978 (uri (crate-uri "parity-wasm" version))
1979 (file-name (string-append name "-" version ".tar.gz"))
1982 "1p84f0k36q05j18jy66n122lyali794cj78hbxgy9wj6si84plqd"))))
1983 (build-system cargo-build-system)
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")
1991 "This package provides a WebAssembly binary format serialization,
1992 deserialization, and interpreter in Rust.")
1993 (license (list license:asl2.0
1996 (define-public rust-peeking-take-while
1998 (name "rust-peeking-take-while")
2003 (uri (crate-uri "peeking_take_while" version))
2004 (file-name (string-append name "-" version ".tar.gz"))
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")
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
2019 (define-public rust-percent-encoding
2021 (name "rust-percent-encoding")
2026 (uri (crate-uri "percent-encoding" version))
2027 (file-name (string-append name "-" version ".tar.gz"))
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
2038 (define-public rust-permutohedron
2040 (name "rust-permutohedron")
2045 (uri (crate-uri "permutohedron" version))
2046 (file-name (string-append name "-" version ".tar.gz"))
2049 "0b1pzh48j86v46wxngch6k1kx9cdw3jr3lwa86gd6jd4bmxzz1xn"))))
2050 (build-system cargo-build-system)
2051 (home-page "https://github.com/bluss/permutohedron")
2052 (synopsis "Generate permutations of sequences")
2054 "Generate permutations of sequences. Either lexicographical order
2055 permutations, or a minimal swaps permutation sequence implemented using Heap's
2057 (license (list license:asl2.0
2060 (define-public rust-pico-sys
2062 (name "rust-pico-sys")
2067 (uri (crate-uri "pico-sys" version))
2068 (file-name (string-append name "-" version ".tar.gz"))
2071 "1q5pg0ms6szz6b5h26h4k40zb76zbwwjgyigac4wly9qngdj4yl5"))))
2072 (build-system cargo-build-system)
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")
2080 "This package provides bindings to the PicoHTTPParser.")
2081 (license license:expat)))
2083 (define-public rust-pin-utils
2085 (name "rust-pin-utils")
2086 (version "0.1.0-alpha.4")
2090 (uri (crate-uri "pin-utils" version))
2091 (file-name (string-append name "-" version ".tar.gz"))
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
2102 (define-public rust-pkg-config
2104 (name "rust-pkg-config")
2109 (uri (crate-uri "pkg-config" version))
2110 (file-name (string-append name "-" version ".tar.gz"))
2113 "135ia995lqzr0gxpk85h0bjxf82kj6hbxdx924sh9jdln6r8wvk7"))))
2114 (build-system cargo-build-system)
2116 `(#:cargo-development-inputs
2117 (("rust-lazy-static" ,rust-lazy-static))))
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")
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
2128 (define-public rust-plain
2135 (uri (crate-uri "plain" version))
2136 (file-name (string-append name "-" version ".tar.gz"))
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
2148 (define-public rust-plugin
2150 (name "rust-plugin")
2155 (uri (crate-uri "plugin" version))
2156 (file-name (string-append name "-" version ".tar.gz"))
2159 "1q7nghkpvxxr168y2jnzh3w7qc9vfrby9n7ygy3xpj0bj71hsshs"))))
2160 (build-system cargo-build-system)
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")
2169 "Lazily evaluated, order-independent plugins for extensible types.")
2170 (license license:expat)))
2172 (define-public rust-pocket-resources
2174 (name "rust-pocket-resources")
2179 (uri (crate-uri "pocket-resources" version))
2180 (file-name (string-append name "-" version ".tar.gz"))
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
2189 (license license:expat)))
2191 (define-public rust-ppv-lite86
2193 (name "rust-ppv-lite86")
2198 (uri (crate-uri "ppv-lite86" version))
2199 (file-name (string-append name "-" version ".tar.gz"))
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
2208 (license (list license:asl2.0
2211 (define-public rust-proc-macro2
2213 (name "rust-proc-macro2")
2218 (uri (crate-uri "proc-macro2" version))
2220 (string-append name "-" version ".tar.gz"))
2223 "0nd71fl24sys066jrha6j7i34nfkjv44yzw8yww9742wmc8j0gfg"))))
2224 (build-system cargo-build-system)
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.")
2234 (license (list license:asl2.0 license:expat))))
2236 (define-public rust-quick-error
2238 (name "rust-quick-error")
2243 (uri (crate-uri "quick-error" version))
2244 (file-name (string-append name "-" version ".tar.gz"))
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
2253 (license (list license:asl2.0
2256 (define-public rust-quote
2263 (uri (crate-uri "quote" version))
2265 (string-append name "-" version ".tar.gz"))
2268 "1nw0klza45hf127kfyrpxsxd5jw2l6h21qxalil3hkr7bnf7kx7s"))))
2269 (build-system cargo-build-system)
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!(...)")
2276 (license (list license:asl2.0 license:expat))))
2278 (define-public rust-rand
2285 (uri (crate-uri "rand" version))
2286 (file-name (string-append name "-" version ".tar.gz"))
2289 "1gfgnqfj2pyh27dcb720jpawskllwnbvxh816ddyykv269xz8ml3"))))
2290 (build-system cargo-build-system)
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")
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
2304 (define-public rust-rand-0.3
2312 (uri (crate-uri "rand" version))
2313 (file-name (string-append name "-" version ".tar.gz"))
2316 "0v679h38pjjqj5h4md7v2slsvj6686qgcn7p9fbw3h43iwnk1b34"))))
2319 (("rust-libc" ,rust-libc)
2320 ("rust-rand" ,rust-rand))))))
2322 (define-public rust-rawpointer
2324 (name "rust-rawpointer")
2329 (uri (crate-uri "rawpointer" version))
2330 (file-name (string-append name "-" version ".tar.gz"))
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
2343 ;; This package requires features which are unavailable
2344 ;; on the stable releases of Rust.
2345 (define-public rust-redox-syscall ; guix upstreamable
2347 (name "rust-redox-syscall")
2352 (uri (crate-uri "redox_syscall" version))
2353 (file-name (string-append name "-" version ".tar.gz"))
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
2362 (properties '((hidden? . #t)))
2363 (license license:expat)))
2365 (define-public rust-regex-syntax
2367 (name "rust-regex-syntax")
2372 (uri (crate-uri "regex-syntax" version))
2373 (file-name (string-append name "-" version ".tar.gz"))
2376 "0p47lf38yj2g2fnmvnraccqlxwk35zr76hlnqi8yva932nzqam6d"))))
2377 (build-system cargo-build-system)
2380 (("rust-ucd-util" ,rust-ucd-util))))
2381 (home-page "https://github.com/rust-lang/regex")
2382 (synopsis "Regular expression parser")
2384 "This package provides a regular expression parser.")
2385 (license (list license:asl2.0
2388 (define-public rust-remove-dir-all
2390 (name "rust-remove-dir-all")
2395 (uri (crate-uri "remove_dir_all" version))
2396 (file-name (string-append name "-" version ".tar.gz"))
2399 "0bkrlyg26mgizpiy1yb2hhpgscxcag8r5fnckqsvk25608vzm0sa"))))
2400 (build-system cargo-build-system)
2403 (("rust-winapi" ,rust-winapi))
2404 #:cargo-development-inputs
2405 (("rust-doc-comment" ,rust-doc-comment))
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.
2411 (invoke "touch" "README.md"))))))
2412 (home-page "https://github.com/XAMPPRocky/remove_dir_all")
2413 (synopsis "Implementation of remove_dir_all for Windows")
2415 "This package provides a safe, reliable implementation of
2416 @code{remove_dir_all} for Windows")
2417 (license (list license:asl2.0
2420 (define-public rust-resolv-conf
2422 (name "rust-resolv-conf")
2427 (uri (crate-uri "resolv-conf" version))
2428 (file-name (string-append name "-" version ".tar.gz"))
2431 "1jvdsmksdf6yiipm3aqahyv8n1cjd7wqc8sa0p0gzsax3fmb8qxj"))))
2432 (build-system cargo-build-system)
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")
2441 "An /etc/resolv.conf parser crate for Rust.")
2442 (license (list license:asl2.0
2445 (define-public rust-rustc-demangle
2447 (name "rust-rustc-demangle")
2452 (uri (crate-uri "rustc-demangle" version))
2453 (file-name (string-append name "-" version ".tar.gz"))
2456 "10qp42sl1wrdbgbbh8rnay2grm976z7hqgz32c4y09l1c071qsac"))))
2457 (build-system cargo-build-system)
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")
2467 "This package demanges the symbols from the Rust compiler.")
2468 (license (list license:asl2.0
2471 (define-public rust-rustc-serialize
2473 (name "rust-rustc-serialize")
2478 (uri (crate-uri "rustc-serialize" version))
2479 (file-name (string-append name "-" version ".tar.gz"))
2482 "1nkg3vasg7nk80ffkazizgiyv3hb1l9g3d8h17cajbkx538jiwfw"))))
2483 (build-system cargo-build-system)
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")
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
2494 (license (list license:asl2.0
2497 (define-public rust-rustc-std-workspace-core
2499 (name "rust-rustc-std-workspace-core")
2504 (uri (crate-uri "rustc-std-workspace-core" version))
2505 (file-name (string-append name "-" version ".tar.gz"))
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
2517 (define-public rust-safemem
2519 (name "rust-safemem")
2524 (uri (crate-uri "safemem" version))
2525 (file-name (string-append name "-" version ".tar.gz"))
2528 "1l1ljkm4lpyryrv2ndaxi1f7z1f3v9bwy1rzl9f9mbhx04iq9c6j"))))
2529 (build-system cargo-build-system)
2530 (home-page "https://github.com/abonander/safemem")
2531 (synopsis "Safe wrappers for memory-accessing functions")
2533 "Safe wrappers for memory-accessing functions, like @code{std::ptr::copy()}.")
2534 (license (list license:asl2.0
2537 (define-public rust-same-file
2539 (name "rust-same-file")
2544 (uri (crate-uri "same-file" version))
2545 (file-name (string-append name "-" version ".tar.gz"))
2548 "08a4zy10pjindf2rah320s6shgswk13mqw7s61m8i1y1xpf8spjq"))))
2549 (build-system cargo-build-system)
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")
2556 "This package provides a simple crate for determining whether two file
2557 paths point to the same file.")
2558 (license (list license:unlicense
2561 (define-public rust-schannel
2563 (name "rust-schannel")
2568 (uri (crate-uri "schannel" version))
2569 (file-name (string-append name "-" version ".tar.gz"))
2572 "0f9k4pm8yc3z0n1n8hazvnrvg52f0sfxjc91bhf3r76rb3rapxpj"))))
2573 (build-system cargo-build-system)
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")
2581 "Rust bindings to the Windows SChannel APIs providing TLS client and
2582 server functionality.")
2583 (license license:expat)))
2585 (define-public rust-scoped-threadpool
2587 (name "rust-scoped-threadpool")
2592 (uri (crate-uri "scoped_threadpool" version))
2593 (file-name (string-append name "-" version ".tar.gz"))
2596 "1a26d3lk40s9mrf4imhbik7caahmw2jryhhb6vqv6fplbbgzal8x"))))
2597 (build-system cargo-build-system)
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")
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
2613 (define-public rust-scoped-tls
2615 (name "rust-scoped-tls")
2620 (uri (crate-uri "scoped-tls" version))
2621 (file-name (string-append name "-" version ".tar.gz"))
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
2634 (define-public rust-scoped-tls-0.1
2636 (inherit rust-scoped-tls)
2637 (name "rust-scoped-tls")
2642 (uri (crate-uri "scoped-tls" version))
2643 (file-name (string-append name "-" version ".tar.gz"))
2646 "0a2bn9d2mb07c6l16sadijy4p540g498zddfxyiq4rsqpwrglbrk"))))))
2648 (define-public rust-scopeguard
2650 (name "rust-scopeguard")
2655 (uri (crate-uri "scopeguard" version))
2656 (file-name (string-append name "-" version ".tar.gz"))
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
2671 (define-public rust-scopeguard-0.3
2673 (inherit rust-scopeguard)
2674 (name "rust-scopeguard")
2679 (uri (crate-uri "scopeguard" version))
2681 (string-append name "-" version ".tar.gz"))
2684 "09sy9wbqp409pkwmqni40qmwa99ldqpl48pp95m1xw8sc19qy9cl"))))))
2686 (define-public rust-security-framework-sys
2688 (name "rust-security-framework-sys")
2693 (uri (crate-uri "security-framework-sys" version))
2694 (file-name (string-append name "-" version ".tar.gz"))
2697 "0mlsakq9kmqyc0fg2hcbgm6rjk55mb0rhjw2wid3hqdzkjcghdln"))))
2698 (build-system cargo-build-system)
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")
2706 "Apple `Security.framework` low-level FFI bindings.")
2707 (license (list license:asl2.0
2710 (define-public rust-semver-parser
2712 (name "rust-semver-parser")
2717 (uri (crate-uri "semver-parser" version))
2718 (file-name (string-append name "-" version ".tar.gz"))
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
2729 (define-public rust-semver-parser-0.7
2731 (inherit rust-semver-parser)
2732 (name "rust-semver-parser")
2737 (uri (crate-uri "semver-parser" version))
2738 (file-name (string-append name "-" version ".tar.gz"))
2741 "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
2743 (define-public rust-shlex
2750 (uri (crate-uri "shlex" version))
2751 (file-name (string-append name "-" version ".tar.gz"))
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
2763 (define-public rust-slab
2770 (uri (crate-uri "slab" version))
2771 (file-name (string-append name "-" version ".tar.gz"))
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
2780 (license license:expat)))
2782 (define-public rust-socket2
2784 (name "rust-socket2")
2789 (uri (crate-uri "socket2" version))
2790 (file-name (string-append name "-" version ".tar.gz"))
2793 "11bdcz04i106g4q7swkll0qxrb4287srqd2k3aq2q6i22zjlvdz8"))))
2794 (build-system cargo-build-system)
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")
2807 "This package provides utilities for handling networking sockets with a
2808 maximal amount of configuration possible intended.")
2809 (license (list license:asl2.0
2812 (define-public rust-sourcefile
2814 (name "rust-sourcefile")
2819 (uri (crate-uri "sourcefile" version))
2820 (file-name (string-append name "-" version ".tar.gz"))
2823 "1lwa6973zs4bgj29my7agfjgk4nw9hp6j7dfnr13nid85fw7rxsb"))))
2824 (build-system cargo-build-system)
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")
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
2836 (define-public rust-spin
2843 (uri (crate-uri "spin" version))
2844 (file-name (string-append name "-" version ".tar.gz"))
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)))
2856 (define-public rust-stable-deref-trait
2858 (name "rust-stable-deref-trait")
2863 (uri (crate-uri "stable_deref_trait" version))
2864 (file-name (string-append name "-" version ".tar.gz"))
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")
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
2880 (define-public rust-stacker
2882 (name "rust-stacker")
2887 (uri (crate-uri "stacker" version))
2888 (file-name (string-append name "-" version ".tar.gz"))
2891 "0js0axz5nla1mkr2dm2vrv9rj964ng1lrv4l43sqlnfgawplhygv"))))
2892 (build-system cargo-build-system)
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")
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
2907 (define-public rust-stdweb-internal-runtime
2909 (name "rust-stdweb-internal-runtime")
2914 (uri (crate-uri "stdweb-internal-runtime" version))
2915 (file-name (string-append name "-" version ".tar.gz"))
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}
2924 (license (list license:asl2.0
2927 (define-public rust-stdweb-internal-test-macro
2929 (name "rust-stdweb-internal-test-macro")
2934 (uri (crate-uri "stdweb-internal-test-macro" version))
2935 (file-name (string-append name "-" version ".tar.gz"))
2938 "12rrm7p77xnm3xacgn3rgniiyyjb4gq7902wpbljsvbx045z69l2"))))
2939 (build-system cargo-build-system)
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")
2947 "Internal crate of the @code{stdweb} crate.")
2948 (license (list license:asl2.0
2951 (define-public rust-streaming-stats
2953 (name "rust-streaming-stats")
2958 (uri (crate-uri "streaming-stats" version))
2959 (file-name (string-append name "-" version ".tar.gz"))
2962 "0l7xz4g6709s80zqpvlhrg0qhgz64r94cwhmfsg8xhabgznbp2px"))))
2963 (build-system cargo-build-system)
2966 (("rust-num-traits" ,rust-num-traits))))
2967 (home-page "https://github.com/BurntSushi/rust-stats")
2968 (synopsis "Compute basic statistics on streams")
2970 "Experimental crate for computing basic statistics on streams.")
2971 (license (list license:unlicense
2974 (define-public rust-strsim
2976 (name "rust-strsim")
2981 (uri (crate-uri "strsim" version))
2982 (file-name (string-append name "-" version ".tar.gz"))
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,
2992 (license license:expat)))
2994 (define-public rust-synstructure-test-traits
2996 (name "rust-synstructure-test-traits")
3001 (uri (crate-uri "synstructure_test_traits" version))
3002 (file-name (string-append name "-" version ".tar.gz"))
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")
3010 "This package provides helper test traits for synstructure doctests.")
3011 (license license:expat)))
3013 (define-public rust-tar
3020 (uri (crate-uri "tar" version))
3021 (file-name (string-append name "-" version ".tar.gz"))
3024 "1lr6v3cpkfxd2lk5ll2jd8wr1xdskwj35smnh5sfb8xvzzxnn6dk"))))
3025 (build-system cargo-build-system)
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")
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
3046 (define-public rust-tempdir
3048 (name "rust-tempdir")
3053 (uri (crate-uri "tempdir" version))
3054 (file-name (string-append name "-" version ".tar.gz"))
3057 "1n5n86zxpgd85y0mswrp5cfdisizq2rv3la906g6ipyc03xvbwhm"))))
3058 (build-system cargo-build-system)
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")
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
3071 (define-public rust-tempfile
3073 (name "rust-tempfile")
3078 (uri (crate-uri "tempfile" version))
3079 (file-name (string-append name "-" version ".tar.gz"))
3082 "0ny1cdbcsrmwjpy4k9366xm6p0jqkrmrvr0cln2djxspp1inyxs7"))))
3083 (build-system cargo-build-system)
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")
3094 "This package provides a library for managing temporary files and
3096 (license (list license:asl2.0
3099 (define-public rust-termcolor
3101 (name "rust-termcolor")
3106 (uri (crate-uri "termcolor" version))
3107 (file-name (string-append name "-" version ".tar.gz"))
3110 "0vjfsn1a8zvqhnrbygrz1id6yckwv1dncw3w4zj65qdx0f00kmln"))))
3111 (build-system cargo-build-system)
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
3122 (define-public rust-termios
3124 (name "rust-termios")
3129 (uri (crate-uri "termios" version))
3130 (file-name (string-append name "-" version ".tar.gz"))
3133 "09any1p4jp4bphvb5ikagnvwjc3xn2djchy96nkpa782xb2j1dkj"))))
3134 (build-system cargo-build-system)
3136 `(#:cargo-inputs (("rust-libc" ,rust-libc))))
3137 (home-page "https://github.com/dcuddeback/termios-rs")
3138 (synopsis "Safe bindings for the termios library")
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)))
3146 (define-public rust-thread-id
3148 (name "rust-thread-id")
3153 (uri (crate-uri "thread-id" version))
3154 (file-name (string-append name "-" version ".tar.gz"))
3157 "1h90v19fjz3x9b25ywh68z5yf2zsmm6h5zb4rl302ckbsp4z9yy7"))))
3158 (build-system cargo-build-system)
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")
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
3172 (define-public rust-thread-local
3174 (name "rust-thread-local")
3179 (uri (crate-uri "thread_local" version))
3180 (file-name (string-append name "-" version ".tar.gz"))
3183 "06rzik99p8c5js8238yhc8rk6np543ylb1dy9nrw5v80j0r3xdf6"))))
3184 (build-system cargo-build-system)
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
3194 (define-public rust-threadpool
3196 (name "rust-threadpool")
3201 (uri (crate-uri "threadpool" version))
3202 (file-name (string-append name "-" version ".tar.gz"))
3205 "0rd89n1q7vy47w4c32cnynibffv9kj3jy3dwr0536n9lbw5ckw72"))))
3206 (build-system cargo-build-system)
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")
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
3218 (define-public rust-time
3225 (uri (crate-uri "time" version))
3226 (file-name (string-append name "-" version ".tar.gz"))
3229 "161hqx0gw722ikydanpahky447vaxqncwmkj66rny282vzqpalx1"))))
3230 (build-system cargo-build-system)
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")
3244 "This package provides utilities for working with time-related functions
3246 (license (list license:asl2.0
3249 (define-public rust-tokio-mock-task
3251 (name "rust-tokio-mock-task")
3256 (uri (crate-uri "tokio-mock-task" version))
3257 (file-name (string-append name "-" version ".tar.gz"))
3260 "1y7q83qfk9ljjfvs82b453pmz9x1v3d6kr4x55j8mal01s6790dw"))))
3261 (build-system cargo-build-system)
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)))
3269 (define-public rust-tracing-core
3271 (name "rust-tracing-core")
3276 (uri (crate-uri "tracing-core" version))
3277 (file-name (string-append name "-" version ".tar.gz"))
3280 "01fa73wzw2m5ybi3kkd52dgrw97mgc3i6inmhwys46ab28giwnxi"))))
3281 (build-system cargo-build-system)
3284 (("rust-lazy-static" ,rust-lazy-static))))
3285 (home-page "https://tokio.rs")
3286 (synopsis "Core primitives for application-level tracing")
3288 "Core primitives for application-level tracing.")
3289 (license (list license:asl2.0
3292 (define-public rust-traitobject
3294 (name "rust-traitobject")
3299 (uri (crate-uri "traitobject" version))
3300 (file-name (string-append name "-" version ".tar.gz"))
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
3311 (define-public rust-try-from
3313 (name "rust-try-from")
3318 (uri (crate-uri "try_from" version))
3319 (file-name (string-append name "-" version ".tar.gz"))
3322 "12wdd4ja7047sd3rx70hv2056hyc8gcdllcx3a41g1rnw64kng98"))))
3323 (build-system cargo-build-system)
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")
3330 "TryFrom and TryInto traits for failable conversions that return a Result.")
3331 (license license:expat)))
3333 (define-public rust-try-lock
3335 (name "rust-try-lock")
3340 (uri (crate-uri "try-lock" version))
3341 (file-name (string-append name "-" version ".tar.gz"))
3344 "10p36rx6pqi9d0zr876xa8vksx2m66ha45myakl50rn08dxyn176"))))
3345 (build-system cargo-build-system)
3346 (home-page "https://github.com/seanmonstar/try-lock")
3347 (synopsis "Lightweight atomic lock")
3349 "This package provides a lightweight atomic lock.")
3350 (license license:expat)))
3352 (define-public rust-typeable
3354 (name "rust-typeable")
3359 (uri (crate-uri "typeable" version))
3360 (file-name (string-append name "-" version ".tar.gz"))
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)))
3370 (define-public rust-typemap
3372 (name "rust-typemap")
3377 (uri (crate-uri "typemap" version))
3378 (file-name (string-append name "-" version ".tar.gz"))
3381 "1xm1gbvz9qisj1l6d36hrl9pw8imr8ngs6qyanjnsad3h0yfcfv5"))))
3382 (build-system cargo-build-system)
3385 (("rust-unsafe-any" ,rust-unsafe-any))))
3386 (home-page "https://github.com/reem/rust-typemap")
3387 (synopsis "Typesafe store for many value types")
3389 "A typesafe store for many value types.")
3390 (license license:expat)))
3392 (define-public rust-typenum
3394 (name "rust-typenum")
3399 (uri (crate-uri "typenum" version))
3400 (file-name (string-append name "-" version ".tar.gz"))
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
3414 (define-public rust-ucd-trie
3416 (name "rust-ucd-trie")
3421 (uri (crate-uri "ucd-trie" version))
3422 (file-name (string-append name "-" version ".tar.gz"))
3425 "1hh6kyzh5xygwy96wfmsf8v8czlzhps2lgbcyhj1xzy1w1xys04g"))))
3426 (build-system cargo-build-system)
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")
3433 "This package provides a trie for storing Unicode codepoint sets and maps.")
3434 (license (list license:asl2.0
3437 (define-public rust-ucd-util
3439 (name "rust-ucd-util")
3444 (uri (crate-uri "ucd-util" version))
3445 (file-name (string-append name "-" version ".tar.gz"))
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
3457 (define-public rust-unicase
3459 (name "rust-unicase")
3464 (uri (crate-uri "unicase" version))
3465 (file-name (string-append name "-" version ".tar.gz"))
3468 "1xmpmkakhhblq7dzab1kwyv925kv7fqjkjsxjspg6ix9n88makm8"))))
3469 (build-system cargo-build-system)
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")
3475 "A case-insensitive wrapper around strings.")
3476 (license (list license:asl2.0
3479 (define-public rust-unicode-width
3481 (name "rust-unicode-width")
3486 (uri (crate-uri "unicode-width" version))
3487 (file-name (string-append name "-" version ".tar.gz"))
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
3499 (define-public rust-unicode-xid
3501 (name "rust-unicode-xid")
3506 (uri (crate-uri "unicode-xid" version))
3508 (string-append name "-" version ".tar.gz"))
3511 "0z09fn515xm7zyr0mmdyxa9mx2f7azcpv74pqmg611iralwpcvl2"))))
3512 (build-system cargo-build-system)
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.")
3519 (license (list license:asl2.0 license:expat))))
3521 (define-public rust-unicode-xid-0.1
3523 (inherit rust-unicode-xid)
3524 (name "rust-unicode-xid")
3529 (uri (crate-uri "unicode-xid" version))
3530 (file-name (string-append name "-" version ".tar.gz"))
3533 "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw"))))))
3535 (define-public rust-unindent
3537 (name "rust-unindent")
3542 (uri (crate-uri "unindent" version))
3543 (file-name (string-append name "-" version ".tar.gz"))
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
3555 (define-public rust-unsafe-any
3557 (name "rust-unsafe-any")
3562 (uri (crate-uri "unsafe-any" version))
3563 (file-name (string-append name "-" version ".tar.gz"))
3566 "0zwwphsqkw5qaiqmjwngnfpv9ym85qcsyj7adip9qplzjzbn00zk"))))
3567 (build-system cargo-build-system)
3570 (("rust-traitobject" ,rust-traitobject))))
3571 (home-page "https://tokio.rs")
3572 (synopsis "Traits and implementations for unchecked downcasting")
3574 "Traits and implementations for unchecked downcasting.")
3575 (license license:expat)))
3577 (define-public rust-untrusted
3579 (name "rust-untrusted")
3584 (uri (crate-uri "untrusted" version))
3585 (file-name (string-append name "-" version ".tar.gz"))
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")
3593 "Safe, fast, zero-panic, zero-crashing, zero-allocation parsing of
3594 untrusted inputs in Rust.")
3595 (license license:isc)))
3597 (define-public rust-vcpkg
3604 (uri (crate-uri "vcpkg" version))
3605 (file-name (string-append name "-" version ".tar.gz"))
3608 "15dzk1b96q946v9aisbd1bbhi33n93wvgziwh1shmscn1xflbp9k"))))
3609 (build-system cargo-build-system)
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")
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
3623 (define-public rust-version-check
3625 (name "rust-version-check")
3630 (uri (crate-uri "version_check" version))
3631 (file-name (string-append name "-" version ".tar.gz"))
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")
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
3647 (define-public rust-version-check-0.1
3649 (inherit rust-version-check)
3650 (name "rust-version-check")
3655 (uri (crate-uri "version_check" version))
3656 (file-name (string-append name "-" version ".tar.gz"))
3659 "1pf91pvj8n6akh7w6j5ypka6aqz08b3qpzgs0ak2kjf4frkiljwi"))))))
3661 (define-public rust-void
3668 (uri (crate-uri "void" version))
3669 (file-name (string-append name "-" version ".tar.gz"))
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")
3677 "The uninhabited void type for use in statically impossible cases.")
3678 (license license:expat)))
3680 (define-public rust-walkdir
3682 (name "rust-walkdir")
3687 (uri (crate-uri "walkdir" version))
3688 (file-name (string-append name "-" version ".tar.gz"))
3691 "07ppalpvxkf8cnqr64np422792y4z5bs9m8b4nrflh5rm17wjn4n"))))
3692 (build-system cargo-build-system)
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
3706 (define-public rust-wasi
3713 (uri (crate-uri "wasi" version))
3715 (string-append name "-" version ".tar.gz"))
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
3724 (license license:asl2.0)))
3726 (define-public rust-wasm-bindgen-shared
3728 (name "rust-wasm-bindgen-shared")
3733 (uri (crate-uri "wasm-bindgen-shared" version))
3734 (file-name (string-append name "-" version ".tar.gz"))
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
3746 (define-public rust-wasm-bindgen-test-macro
3748 (name "rust-wasm-bindgen-test-macro")
3753 (uri (crate-uri "wasm-bindgen-test-macro" version))
3754 (file-name (string-append name "-" version ".tar.gz"))
3757 "0n28mr6vncf1k1qr2b5bvfxq4jvqkjdzq0z0ab6w2f5d6v8q3q3l"))))
3758 (build-system cargo-build-system)
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")
3766 "This library contains the internal testing macro for wasm-bindgen.")
3767 (license (list license:asl2.0
3770 (define-public rust-widestring
3772 (name "rust-widestring")
3777 (uri (crate-uri "widestring" version))
3778 (file-name (string-append name "-" version ".tar.gz"))
3781 "1dhx6dndjsz1y7c9w06922412kdxyrrkqblvggm76mh8z17hxz7g"))))
3782 (build-system cargo-build-system)
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")
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
3795 (define-public rust-winapi
3797 (name "rust-winapi")
3802 (uri (crate-uri "winapi" version))
3803 (file-name (string-append name "-" version ".tar.gz"))
3806 "1ii9j9lzrhwri0902652awifzx9fpayimbp6hfhhc296xcg0k4w0"))))
3807 (build-system cargo-build-system)
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.")
3817 "Raw FFI bindings for all of Windows API.")
3818 (license (list license:asl2.0
3821 (define-public rust-winapi-0.2
3823 (inherit rust-winapi)
3824 (name "rust-winapi")
3829 (uri (crate-uri "winapi" version))
3830 (file-name (string-append name "-" version ".tar.gz"))
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.
3839 (modify-phases %standard-phases
3840 (delete 'build))))))
3842 (define-public rust-winapi-build
3844 (name "rust-winapi-build")
3849 (uri (crate-uri "winapi-build" version))
3850 (file-name (string-append name "-" version ".tar.gz"))
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")
3858 "Common code for build.rs in WinAPI -sys crates.")
3859 (license license:expat)))
3861 (define-public rust-winapi-i686-pc-windows-gnu
3863 (name "rust-winapi-i686-pc-windows-gnu")
3868 (uri (crate-uri "winapi-i686-pc-windows-gnu" version))
3869 (file-name (string-append name "-" version ".tar.gz"))
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
3882 (define-public rust-winapi-util
3884 (name "rust-winapi-util")
3889 (uri (crate-uri "winapi-util" version))
3890 (file-name (string-append name "-" version ".tar.gz"))
3893 "1j839dc6y8vszvrsb7yk0qvs0w6asnahxzbyans37vnsw6vbls3i"))))
3894 (build-system cargo-build-system)
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")
3900 "This package provides a dumping ground for high level safe wrappers over
3902 (license (list license:unlicense
3905 (define-public rust-winapi-x86-64-pc-windows-gnu
3907 (name "rust-winapi-x86-64-pc-windows-gnu")
3912 (uri (crate-uri "winapi-x86_64-pc-windows-gnu" version))
3913 (file-name (string-append name "-" version ".tar.gz"))
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
3926 (define-public rust-wincolor
3928 (name "rust-wincolor")
3933 (uri (crate-uri "wincolor" version))
3934 (file-name (string-append name "-" version ".tar.gz"))
3937 "1agaf3hcav113i86912ajnw6jxcy4rvkrgyf8gdj8kc031mh3xcn"))))
3938 (build-system cargo-build-system)
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")
3946 "This package provides a simple Windows specific API for controlling text
3947 color in a Windows console.")
3948 (license (list license:unlicense
3951 (define-public rust-winutil
3953 (name "rust-winutil")
3958 (uri (crate-uri "winutil" version))
3959 (file-name (string-append name "-" version ".tar.gz"))
3962 "0vkyl3fbbf05n5ph5yz8sfaccrk9x3qsr25560w6w68ldf5i7bvx"))))
3963 (build-system cargo-build-system)
3966 (("rust-winapi" ,rust-winapi))
3967 ;; This unmaintained crate cannot find winapi when built directly.
3970 (modify-phases %standard-phases
3972 (home-page "https://bitbucket.org/DaveLancaster/winutil")
3973 (synopsis "Library wrapping a handful of useful winapi functions")
3975 "A simple library wrapping a handful of useful winapi functions.")
3976 (license license:expat)))
3978 (define-public rust-ws2-32-sys
3980 (name "rust-ws2-32-sys")
3985 (uri (crate-uri "ws2_32-sys" version))
3986 (file-name (string-append name "-" version ".tar.gz"))
3989 "0ppscg5qfqaw0gzwv2a4nhn5bn01ff9iwn6ysqnzm4n8s3myz76m"))))
3990 (build-system cargo-build-system)
3993 (("rust-winapi" ,rust-winapi-0.2)
3994 ("rust-winapi-build" ,rust-winapi-build))
3996 (modify-phases %standard-phases
3997 (add-after 'unpack 'fix-Cargo-toml
3999 (substitute* "Cargo.toml"
4000 ((", path =.* }") "}\n"))
4002 (home-page "https://github.com/retep998/winapi-rs")
4003 (synopsis "Function definitions for the Windows API library ws2_32")
4005 "Contains function definitions for the Windows API library ws2_32.")
4006 (license license:expat)))
4008 (define-public rust-xattr
4015 (uri (crate-uri "xattr" version))
4016 (file-name (string-append name "-" version ".tar.gz"))
4019 "0k556fb6f5jc907975j9c8iynl2fqz3rf0w6fiig83i4yi0kfk14"))))
4020 (build-system cargo-build-system)
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")
4030 "This package provide a small library for setting, getting, and listing
4031 extended attributes.")
4032 (license (list license:asl2.0
4035 (define-public rust-xdg
4042 (uri (crate-uri "xdg" version))
4043 (file-name (string-append name "-" version ".tar.gz"))
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")
4051 "This package provides a library for storing and retrieving files according
4052 to XDG Base Directory specification")
4053 (license (list license:asl2.0