Subject: Re: [bug#38640] [PATCH] Add ripgrep and many rust dependencies

From: Nicolò Balzarotti <[email-masked]>
Date: Mon, 16 Dec 2019 22:04:40 +0100

John Soo <[email-masked]> writes:

> Hi Guix,

Hello John!

> I have missed using the rust tools I use outside of Guix. Ripgrep was the
> first one I could build thanks to the work on the rust build system.
>
The same applies for me :)

> Of course, it required adding over 200 dependencies.
>
> Some of these have cyclic dependencies, as you all know. What I understand
> is that the rust community is OK with including cyclic dependencies as test
> dependencies.  I am actually seeing how useful that is. Consider the system
> tests in the guix repository. Certainly that would require including guix
> as a dependency to guix.
>
> I also left the cargo inputs and dev inputs commented out just in case
> someone wants to put them back in the future and to give a sense of the
> topological order of the patches.
>
> Having imported ripgrep some months ago, some of these dependencies will
> require updates, but I did not want to break the working version of ripgrep
> at the end of the line.  Otherwise I have fixed the other lint errors and I
> have been using ripgrep for several months.
I feel your pain, I'm doing the same with julia packages, where every
week at least 10 of them are updated making diffucult to create a patch
that is up to the day.

I just tried your set of patches and I can confirm that ripgrep is
working (and is fast! I really missed it)! Long live to ripgrep!

Looking at them quickly, I noticed the following have the "a" in add lowercase:

- [PATCH 160/206] gnu: add rust-flamer-0.3.
- [PATCH 073/206] gnu: add rust-tokio-sync-0.1.

Also:
- rust-miniz-oxide-c-api-0.2: defined but not used
  - contains an undefined reference to rust-libc-0.2.58
- rust-futures-channel-preview-0.3: home moved to
  https://rust-lang.github.io/futures-rs/
- [email-masked]: all the source URIs are unreachable
- descriptions not ending in dot:
  - rust-stdweb-internal-macros-0.2
  - rust-base64-0.10
  - rust-bit-set-0.5
  - rust-blobby-0.1
  - rust-block-buffer-0.7
  - rust-byte-tools-0.3
  - rust-c2-chacha-0.2
  - rust-cast-0.2
  - rust-cexpr-0.3
  - rust-chrono-0.4
  - rust-console-0.7
  - rust-crc32fast-1.2
  - rust-criterion-0.2
  - rust-crossbeam-0.7
  - rust-crossbeam-channel-0.3
  - rust-crossbeam-deque-0.7
  - rust-crossbeam-queue-0.1
  - rust-crossbeam-utils-0.6
  - rust-cpp-demangle-0.2
  - rust-demo-hack-impl-0.0
  - rust-digest-0.8
  - rust-discard-1.0
  - rust-encoding-0.2
  - rust-encoding-index-*
  - rust-encoding-rs-0.8
  - rust-encoding-rs-io-0.1
  - rust-erased-serde-0.3
  - rust-failure-derive-0.1
  - rust-fake-simd-0.1
  - rust-flame-0.2
  - rust-foreign-types-macros-0.1
  - rust-foreign-types-shared-0.1
  - rust-fuchsia-cprng-0.1
  - rust-generic-array-0.13
  - rust-heapsize-plugin-0.1
  - rust-hex-literal-impl-0.2
  - rust-insta-0.8
  - rust-jemallocator-0.3
  - rust-miniz-oxide-c-api-0.2
  - rust-mio-0.6
  - rust-linked-hash-map-0.5
  - rust-num-complex-0.2
  - rust-opaque-debug-0.2
  - rust-openssl-0.10
  - rust-packed-simd-0.3
  - rust-pest-*
  (and others)

> - John

Thanks! Nicolò

> From 52de12d45c542a13c7aee7e37de125b1742a939a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 20:48:30 -0800
> Subject: [PATCH 001/206] gnu: Add rust-serde-test-1.0.
>
> * gnu/packages/crates-io.scm (rust-serde-test-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 23918de386..346cf7ebb7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3330,6 +3330,27 @@ with one of the implemented strategies.")
>      (properties '((hidden? . #t)))
>      (license (list license:expat license:asl2.0))))
>  
> +(define-public rust-serde-test-1.0
> +  (package
> +    (name "rust-serde-test")
> +    (version "1.0.101")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "serde_test" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1ii81dkyd3qmh8q3wjiwlpq6xfby2b0m5wf1f7clg93a7h4qjn3f"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://serde.rs")
> +    (synopsis
> +     "Token De/Serializer for testing De/Serialize implementations")
> +    (description
> +     "Token De/Serializer for testing De/Serialize implementations")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-shlex-0.1
>    (package
>      (name "rust-shlex")
> -- 
> 2.24.0
>
> From e95de640464bf4ae4022400c1c02310e3830b548 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:10:31 -0800
> Subject: [PATCH 003/206] gnu: Add rust-bstr-0.2.
>
> * gnu/packages/crates-io.scm (rust-bstr-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index ec0e7b50d0..a9c4efd957 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -244,6 +244,38 @@ behave like a set of bitflags.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-bstr-0.2
> +  (package
> +    (name "rust-bstr")
> +    (version "0.2.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bstr" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0prq6yk3da0k5bg2czcgg1i4ynsq1l59xc89ycsv6v7p08p5gh3c"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-memchr" ,rust-memchr)
> +    ;;     ("rust-regex-automata" ,rust-regex-automata)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck)
> +    ;;     ("rust-ucd-parse" ,rust-ucd-parse)
> +    ;;     ("rust-unicode-segmentation" ,rust-unicode-segmentation))))
> +    (home-page "https://github.com/BurntSushi/bstr")
> +    (synopsis
> +     "String type that is not required to be valid UTF-8")
> +    (description
> +     "This package provides a string type that is not required to be valid
> +UTF-8.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-bstr-0.1
>    (package
>      (name "rust-bstr")
> -- 
> 2.24.0
>
> From b37c3288ff41e518cbf9ac34d9766ef3bff9b927 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:25:02 -0800
> Subject: [PATCH 005/206] gnu: Add rust-regex-1.1.
>
> * gnu/packages/crates-io.scm (rust-regex-1.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f35fbabb5e..0c017e6002 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2975,6 +2975,40 @@ system calls.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-regex-1.1
> +  (package
> +    (name "rust-regex")
> +    (version "1.1.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "regex" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1pabajpp0wzb7dm2x32gy8w7k0mwykr6zsvzn0fgpr6pww40hbqb"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-aho-corasick" ,rust-aho-corasick)
> +    ;;     ("rust-memchr" ,rust-memchr)
> +    ;;     ("rust-regex-syntax" ,rust-regex-syntax)
> +    ;;     ("rust-thread-local" ,rust-thread-local)
> +    ;;     ("rust-utf8-ranges" ,rust-utf8-ranges))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-doc-comment" ,rust-doc-comment)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page "https://github.com/rust-lang/regex")
> +    (synopsis
> +     "Regular expressions for Rust")
> +    (description
> +     "An implementation of regular expressions for Rust.  This implementation
> +uses finite automata and guarantees linear time matching on all inputs.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-regex-syntax-0.6
>    (package
>      (name "rust-regex-syntax")
> -- 
> 2.24.0
>
> From 8a82ed4b0728744cc598f6756a9544f2fb9561be Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:14:19 -0800
> Subject: [PATCH 004/206] gnu: Add rust-globset-0.4.
>
> * gnu/packages/crates-io.scm (rust-globset-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a9c4efd957..f35fbabb5e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1182,6 +1182,39 @@ shell style patterns.")
>           (base32
>            "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb"))))))
>  
> +(define-public rust-globset-0.4
> +  (package
> +    (name "rust-globset")
> +    (version "0.4.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "globset" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1wnqxq91liknmr2w93wjq2spyxbrd1pmnhd4nbi3921dr35a4nlj"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-aho-corasick" ,rust-aho-corasick)
> +    ;;     ("rust-bstr" ,rust-bstr-0.2
> +    ;;      ("rust-fnv" ,rust-fnv)
> +    ;;      ("rust-log" ,rust-log-0.4)
> +    ;;      ("rust-regex" ,rust-regex))
> +    ;;     #:cargo-development-inputs
> +    ;;     (("rust-glob" ,rust-glob)))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep/tree/master/globset")
> +    (synopsis
> +     "Cross platform single glob and glob set matching")
> +    (description
> +     "Cross platform single glob and glob set matching.  Glob set matching is
> +the process of matching one or more glob patterns against a single candidate
> +path simultaneously, and returning all of the globs that matched.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-heapsize-0.4
>    (package
>      (name "rust-heapsize")
> -- 
> 2.24.0
>
> From 3949f17579cc08280efb5275bfb932fde06272fd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:05:36 -0800
> Subject: [PATCH 002/206] gnu: Add rust-bstr-0.1.
>
> * gnu/packages/crates-io.scm (rust-bstr-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 346cf7ebb7..ec0e7b50d0 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -244,6 +244,39 @@ behave like a set of bitflags.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-bstr-0.1
> +  (package
> +    (name "rust-bstr")
> +    (version "0.1.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bstr" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0nzi9vqhl56ws8gq39f3aj4qjrr4l3g5lbkkcj8xq1x4cb74wq2r"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-memchr" ,rust-memchr)
> +    ;;     ("rust-regex-automata" ,rust-regex-automata)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck)
> +    ;;     ("rust-ucd-parse" ,rust-ucd-parse)
> +    ;;     ("rust-unicode-segmentation" ,rust-unicode-segmentation))))
> +    (home-page "https://github.com/BurntSushi/bstr")
> +    (synopsis
> +     "String type that is not required to be valid UTF-8")
> +    (description
> +     "This package provides a string type that is not required to be valid
> +UTF-8.")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-cargon-0.0
>    (package
>      (name "rust-cargon")
> -- 
> 2.24.0
>
> From 7973fd0a7438d120520664312210adeb220b7c7f Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:29:49 -0800
> Subject: [PATCH 006/206] gnu: Add rust-grep-cli-0.1.
>
> * gnu/packages/crates-io.scm (rust-grep-cli-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0c017e6002..3fe5b2d9e3 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1215,6 +1215,39 @@ the process of matching one or more glob patterns against a single candidate
>  path simultaneously, and returning all of the globs that matched.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-grep-cli-0.1
> +  (package
> +    (name "rust-grep-cli")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep-cli" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "05a502x5m4fijwx7zj9icxna2dx86scm76ap80zr89pnvpbfk1hp"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-atty" ,rust-atty-0.2)
> +    ;;     ("rust-bstr" ,rust-bstr-0.2
> +    ;;      ("rust-globset" ,rust-globset-0.4)
> +    ;;      ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;      ("rust-log" ,rust-log-0.4)
> +    ;;      ("rust-regex" ,rust-regex-1.1)
> +    ;;      ("rust-same-file" ,rust-same-file-1.0)
> +    ;;      ("rust-termcolor" ,rust-termcolor-1.0)
> +    ;;      ("rust-winapi-util" ,rust-winapi-util-0.1)))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Utilities for search oriented command line applications")
> +    (description
> +     "Utilities for search oriented command line applications.")
> +    (license license:expat)))
> +
>  (define-public rust-heapsize-0.4
>    (package
>      (name "rust-heapsize")
> -- 
> 2.24.0
>
> From a96fae37e9e0bdf4690b1a83896f8ec50569bca9 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:49:36 -0800
> Subject: [PATCH 007/206] gnu: Add rust-pcre2-sys-0.2.
>
> * gnu/packages/crates-io.scm (rust-pcre2-sys-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3fe5b2d9e3..223a29d995 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2373,6 +2373,31 @@ deserialization, and interpreter in Rust.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-pcre2-sys-0.2
> +  (package
> +    (name "rust-pcre2-sys")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pcre2-sys" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0nwdvc43dkb89qmm5q8gw1zyll0wsfqw7kczpn23mljra3874v47"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-pkg-config" ,rust-pkg-config-0.3)
> +    ;;     ("rust-cc" ,rust-cc-1.0))))
> +    (home-page
> +     "https://github.com/BurntSushi/rust-pcre2")
> +    (synopsis "Low level bindings to PCRE2")
> +    (description "Low level bindings to PCRE2.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-peeking-take-while-0.1
>    (package
>      (name "rust-peeking-take-while")
> -- 
> 2.24.0
>
> From 1ef2ad36de57c0eb5d4a8e6c932e1192b4bf4700 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:00:54 -0800
> Subject: [PATCH 009/206] gnu: Add rust-memchr-2.2.
>
> * gnu/packages/crates-io.scm (rust-memchr-2.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 7f6ec9d105..12031b8f7f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1833,6 +1833,31 @@ whether an expression matches a pattern.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-memchr-2.2
> +  (package
> +    (name "rust-memchr")
> +    (version "2.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "memchr" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0f8wdra7yaggsr4jzlrvpd8yknnqhd990iijdr6llgc8gk2ppz1f"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-libc" ,rust-libc-0.2.58))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck))))
> +    (home-page
> +     "https://github.com/BurntSushi/rust-memchr")
> +    (synopsis "Safe interface to memchr")
> +    (description "Safe interface to memchr.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-memmap-0.7
>    (package
>      (name "rust-memmap")
> -- 
> 2.24.0
>
> From 936e72c3dc1e910bc0c4ea55f0fd9cf16ca02d3d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:02:08 -0800
> Subject: [PATCH 010/206] gnu: Add rust-memchr-1.0.
>
> * gnu/packages/crates-io.scm (rust-memchr-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 12031b8f7f..8ec3639606 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1858,6 +1858,21 @@ whether an expression matches a pattern.")
>      (description "Safe interface to memchr.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-memchr-1.0
> +  (package
> +    (inherit rust-memchr-2.2)
> +    (version "1.0.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "memchr" version))
> +       (file-name
> +        (string-append (package-name rust-memchr-2.2) "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0yjyja34pzhipdl855q3m21w1lyih4lw79x2dp3czwdla4pap3ql"))))
> +    (properties '((hidden? . #t)))))
> +
>  (define-public rust-memmap-0.7
>    (package
>      (name "rust-memmap")
> -- 
> 2.24.0
>
> From c01cd631e298551da6fe8b7b2f8da89fac22040c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 21:52:17 -0800
> Subject: [PATCH 008/206] gnu: Add rust-pcre2-0.2.
>
> * gnu/packages/crates-io.scm (rust-pcre2-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 223a29d995..7f6ec9d105 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2373,6 +2373,34 @@ deserialization, and interpreter in Rust.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-pcre2-0.2
> +  (package
> +    (name "rust-pcre2")
> +    (version "0.2.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pcre2" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "103i66a998g1fjrqf9sdyvi8qi83hwglz3pjdcq9n2r207hsagb0"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-pcre2-sys" ,rust-pcre2-sys-0.2)
> +    ;;     ("rust-thread-local" ,rust-thread-local-0.3))))
> +    (home-page
> +     "https://github.com/BurntSushi/rust-pcre2")
> +    (synopsis
> +     "High level wrapper library for PCRE2")
> +    (description
> +     "High level wrapper library for PCRE2.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-pcre2-sys-0.2
>    (package
>      (name "rust-pcre2-sys")
> -- 
> 2.24.0
>
> From aac729028ca4338bdb50dddc2514e5de5064c341 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:29:51 -0800
> Subject: [PATCH 011/206] gnu: Add rust-serde-bytes-0.11.
>
> * gnu/packages/crates-io.scm (rust-serde-bytes-0.11): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8ec3639606..aa3d2353fe 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3547,6 +3547,36 @@ with one of the implemented strategies.")
>      (properties '((hidden? . #t)))
>      (license (list license:expat license:asl2.0))))
>  
> +;; Circular dev dependency on bincode.
> +;; Probably not going away: https://github.com/rust-lang/cargo/issues/4242
> +(define-public rust-serde-bytes-0.11
> +  (package
> +    (name "rust-serde-bytes")
> +    (version "0.11.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "serde_bytes" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1bl45kf3c71xclv7wzk5525nswm4bgsnjd3s1s15f4k2a8whfnij"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page "https://github.com/serde-rs/bytes")
> +    (synopsis
> +     "Hanlde of integer arrays and vectors for Serde")
> +    (description
> +     "Optimized handling of @code{&[u8]} and @code{Vec<u8>} for Serde")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-serde-derive-1.0
>    (package
>      (name "rust-serde-derive")
> -- 
> 2.24.0
>
> From 95070a62e328e20714fd7100478bdeaee1a22d03 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:32:13 -0800
> Subject: [PATCH 012/206] gnu: Add rust-bincode-1.1.
>
> * gnu/packages/crates-io.scm (rust-bincode-1.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index aa3d2353fe..6337107475 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -202,6 +202,36 @@ and no more (caveat: black_box is still missing!).")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-bincode-1.1
> +  (package
> +    (name "rust-bincode")
> +    (version "1.1.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bincode" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1xx6bp39irvsndk6prnmmq8m1l9p6q2qj21j6mfks2y81pjsa14z"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-autocfg" ,rust-autocfg-0.1)
> +    ;;     ("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-bytes" ,rust-serde-bytes-0.11)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page "https://github.com/servo/bincode")
> +    (synopsis
> +     "Binary serialization/deserialization strategy")
> +    (description
> +     "This package provides a binary serialization/deserialization strategy
> +that uses Serde for transforming structs into bytes and vice versa!")
> +    (license license:expat)))
> +
>  (define-public rust-bitflags-1
>    (package
>      (name "rust-bitflags")
> -- 
> 2.24.0
>
> From 6a887987a30888703c1161c9381460e931f9c741 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:35:54 -0800
> Subject: [PATCH 013/206] gnu: Add rust-chrono-0.4.
>
> * gnu/packages/crates-io.scm (rust-chrono-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6337107475..28f8bb6392 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -404,6 +404,40 @@ archive to be linked into Rustcode.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-chrono-0.4
> +  (package
> +    (name "rust-chrono")
> +    (version "0.4.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "chrono" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1glam3iqhshbamzgf0npn7hgghski92r31lm7gg8841hnxc1zn3p"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-num-integer" ,rust-num-integer-0.1)
> +    ;;     ("rust-num-traits" ,rust-num-traits-0.2)
> +    ;;     ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-time" ,rust-time-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1)
> +    ;;     ("rust-doc-comment" ,rust-doc-comment-0.3)
> +    ;;     ("rust-num-iter" ,rust-num-iter-0.1)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page
> +     "https://github.com/chronotope/chrono")
> +    (synopsis "Date and time library for Rust")
> +    (description "Date and time library for Rust")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-cfg-if-0.1
>    (package
>      (name "rust-cfg-if")
> -- 
> 2.24.0
>
> From aa411c956ea753187b8f2ae0f73a2352c3101111 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:41:23 -0800
> Subject: [PATCH 015/206] gnu: Add rust-env-logger-0.6.
>
> * gnu/packages/crates-io.scm (rust-env-logger-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d9340785dc..fff69c8a3b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -848,6 +848,36 @@ floating-point primitives to an @code{io::Write}.")
>           (base32
>            "0g96cap6si1g6wi62hsdk2fnj3sf5vd4i97zj6163j8hhnsl3n0d"))))))
>  
> +(define-public rust-env-logger-0.6
> +  (package
> +    (name "rust-env-logger")
> +    (version "0.6.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "env_logger" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1lx2s5nk96xx4i3m4zc4ghqgi8kb07dsnyiv8jk2clhax42dxz5a"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-atty" ,rust-atty-0.2)
> +    ;;     ("rust-humantime" ,rust-humantime-1.2)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-termcolor" ,rust-termcolor-1.0))))
> +    (home-page
> +     "https://github.com/sebasmagri/env_logger/")
> +    (synopsis
> +     "Logging implementation for @code{log}")
> +    (description
> +     "This package provides a logging implementation for @code{log} which
> +is configured via an environment variable.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-fallible-iterator-0.2
>    (package
>      (name "rust-fallible-iterator")
> -- 
> 2.24.0
>
> From 1abd1ce95768bf078077bf9abd46c7d5d5dc6512 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:38:30 -0800
> Subject: [PATCH 014/206] gnu: Add rust-humantime-1.2.
>
> * gnu/packages/crates-io.scm (rust-humantime-1.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 28f8bb6392..d9340785dc 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1391,6 +1391,36 @@ hexadecimal representation.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-humantime-1.2
> +  (package
> +    (name "rust-humantime")
> +    (version "1.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "humantime" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "057ilhy6vc9iqhhby5ymh45m051pgxwq2z437gwkbnqhw7rfb9rw"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-quick-error" ,rust-quick-error-1.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-chrono" ,rust-chrono-0.4)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-time" ,rust-time-0.1))))
> +    (home-page
> +     "https://github.com/tailhook/humantime")
> +    (synopsis
> +     "Parser and formatter for Duration and SystemTime")
> +    (description
> +     "A parser and formatter for @code{std::time::{Duration,
> +SystemTime}}")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-hostname-0.1
>    (package
>      (name "rust-hostname")
> -- 
> 2.24.0
>
> From 016739d766aee3becafb6702570a692f57708745 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:47:53 -0800
> Subject: [PATCH 017/206] gnu: Add rust-quickcheck-0.8.
>
> * gnu/packages/crates-io.scm (rust-quickcheck-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0d4c655af2..f4c6068924 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2873,6 +2873,36 @@ to write.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +;; Many circular dependencies.
> +;; Dev dependencies are allowed to have them in crates.io.
> +(define-public rust-quickcheck-0.8
> +  (package
> +    (name "rust-quickcheck")
> +    (version "0.8.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "quickcheck" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0mkl4wnvvjk4m32aq3an4ayfyvnmbxnzcybfm7n3fbsndb1xjdcw"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-rand-core" ,rust-rand-core-0.5))))
> +    (home-page
> +     "https://github.com/BurntSushi/quickcheck")
> +    (synopsis
> +     "Automatic property based testing with shrinking")
> +    (description
> +     "Automatic property based testing with shrinking.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-quote-1.0
>    (package
>      (name "rust-quote")
> -- 
> 2.24.0
>
> From 52813a8f4f0a334aae8da90015b0f21d6a8622c5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:44:11 -0800
> Subject: [PATCH 016/206] gnu: Add rust-rand-core-0.5.
>
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index fff69c8a3b..0d4c655af2 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2976,6 +2976,33 @@ useful types and distributions, and some randomness-related algorithms.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rand-core-0.5
> +  (package
> +    (name "rust-rand-core")
> +    (version "0.5.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rand_core" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1jis94x9ri8xlxki2w2w5k29sjpfwgzkjylg7paganp74hrnhpk1"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-getrandom" ,rust-getrandom-0.1)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page "https://crates.io/crates/rand_core")
> +    (synopsis
> +     "Core random number generator traits and tools for implementation")
> +    (description
> +     "Core random number generator traits and tools for implementation.")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-rand-core-0.4
>    (package
>      (name "rust-rand-core")
> -- 
> 2.24.0
>
> From 55938798036d46db94f1bc35a08640b8587c8d11 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:50:39 -0800
> Subject: [PATCH 018/206] gnu: Add rust-byteorder-1.3.
>
> * gnu/packages/crates-io.scm (rust-byteorder-1.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f4c6068924..8909859fbf 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -339,6 +339,34 @@ UTF-8.")
>      (properties '((hidden? . #t)))
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-byteorder-1.3
> +  (package
> +    (name "rust-byteorder")
> +    (version "1.3.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "byteorder" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1xbwjlmq2ziqjmjvkqxdx1yh136xxhilxd40bky1w4d7hn4xvhx7"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-doc-comment" ,rust-doc-comment-0.3)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/BurntSushi/byteorder")
> +    (synopsis
> +     "Reading/writing numbers in big-endian and little-endian")
> +    (description
> +     "Library for reading/writing numbers in big-endian and
> +little-endian.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-cargon-0.0
>    (package
>      (name "rust-cargon")
> -- 
> 2.24.0
>
> From e6a65b87b8895a84a50af490842e503c2c61df0a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:53:24 -0800
> Subject: [PATCH 019/206] gnu: Add rust-grep-matcher-0.1.
>
> * gnu/packages/crates-io.scm (rust-grep-matcher-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8909859fbf..3860ddeb3b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1370,6 +1370,34 @@ path simultaneously, and returning all of the globs that matched.")
>       "Utilities for search oriented command line applications.")
>      (license license:expat)))
>  
> +(define-public rust-grep-matcher-0.1
> +  (package
> +    (name "rust-grep-matcher")
> +    (version "0.1.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep-matcher" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "03j26zygfgwyam66bl5g922gimrvp4yyzl8qvaykyklnf247bl3r"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-memchr" ,rust-memchr-2.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-regex" ,rust-regex-1.1))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Trait for regular expressions")
> +    (description
> +     "This package provides a trait for regular expressions, with a
> +focus on line oriented search.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-heapsize-0.4
>    (package
>      (name "rust-heapsize")
> -- 
> 2.24.0
>
> From a5c269c4fc29733c73a79ee1c6f6980bc60b1250 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 22:54:55 -0800
> Subject: [PATCH 020/206] gnu: Add rust-grep-pcre2-0.1.
>
> * gnu/packages/crates-io.scm (rust-grep-pcre2-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3860ddeb3b..bc176d43b9 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1398,6 +1398,30 @@ path simultaneously, and returning all of the globs that matched.")
>  focus on line oriented search.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-grep-pcre2-0.1
> +  (package
> +    (name "rust-grep-pcre2")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep-pcre2" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1wjc3gsan20gapga8nji6jcrmwn9n85q5zf2yfq6g50c7abkc2ql"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-grep-matcher" ,rust-grep-matcher-0.1)
> +    ;;     ("rust-pcre2" ,rust-pcre2-0.2))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis "Use PCRE2 with the grep crate")
> +    (description "Use PCRE2 with the grep crate.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-heapsize-0.4
>    (package
>      (name "rust-heapsize")
> -- 
> 2.24.0
>
> From 94095fdf5f27ae670e8a96e883a9a296ceae5e53 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:02:49 -0800
> Subject: [PATCH 021/206] gnu: Add rust-cast-0.2.
>
> * gnu/packages/crates-io.scm (rust-cast-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index bc176d43b9..f4829782eb 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -388,6 +388,30 @@ used in argon2rs' bench suite.")
>      (properties '((hidden? . #t)))
>      (license license:wtfpl2)))
>  
> +(define-public rust-cast-0.2
> +  (package
> +    (name "rust-cast")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "cast" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "09yl2700crxa4n860b080msij25klvs1kfzazhp2aihchvr16q4j"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page "https://github.com/japaric/cast.rs")
> +    (synopsis
> +     "Ergonomic, checked cast functions for primitive types")
> +    (description
> +     "Ergonomic, checked cast functions for primitive types")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-cblas-sys-0.1
>    (package
>      (name "rust-cblas-sys")
> -- 
> 2.24.0
>
> From f9e07527666831fded098b7f6b80d1b6cf3b92b1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:09:01 -0800
> Subject: [PATCH 022/206] gnu: Add rust-either-1.5.
>
> * gnu/packages/crates-io.scm (rust-either-1.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f4829782eb..44f72b2fa7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -900,6 +900,30 @@ floating-point primitives to an @code{io::Write}.")
>           (base32
>            "0g96cap6si1g6wi62hsdk2fnj3sf5vd4i97zj6163j8hhnsl3n0d"))))))
>  
> +(define-public rust-either-1.5
> +  (package
> +    (name "rust-either")
> +    (version "1.5.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "either" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0yyggfd5yq9hyyp0bd5jj0fgz3rwws42d19ri0znxwwqs3hcy9sm"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs (("rust-serde" ,rust-serde-1.0))))
> +    (home-page "https://github.com/bluss/either")
> +    (synopsis
> +     "Enum @code{Either} with variants @code{Left} and @code{Right}")
> +    (description
> +     "The enum @code{Either} with variants @code{Left} and
> +@code{Right} is a general purpose sum type with two cases.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-env-logger-0.6
>    (package
>      (name "rust-env-logger")
> -- 
> 2.24.0
>
> From 5d6c8115064de7672588eb43c891748fa79a7ef0 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:17:08 -0800
> Subject: [PATCH 024/206] gnu: Add rust-itertools-num-0.1.
>
> * gnu/packages/crates-io.scm (rust-itertools-num-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 4e49239bb7..aa2f55dbcd 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1649,6 +1649,35 @@ SystemTime}}")
>       "Extra iterator adaptors, iterator methods, free functions, and macros.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-itertools-num-0.1
> +  (package
> +    (name "rust-itertools-num")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "itertools-num" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1rr7ig9nkpampcas23s91x7yac6qdnwssq3nap522xbgkqps4wm8"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-num-traits" ,rust-num-traits-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-itertools" ,rust-itertools-0.8)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page
> +     "https://github.com/bluss/itertools-num")
> +    (synopsis
> +     "Numerical iterator tools")
> +    (description
> +     "Numerical iterator tools.  Extra iterators and iterator methods
> +and functions.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-itoa-0.4
>    (package
>      (name "rust-itoa")
> -- 
> 2.24.0
>
> From 9babac35a3a8e4831cf9cdb2e8865fd2eec6472c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:14:40 -0800
> Subject: [PATCH 023/206] gnu: Add rust-itertools-0.8.
>
> * gnu/packages/crates-io.scm (rust-itertools-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 44f72b2fa7..4e49239bb7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1620,6 +1620,35 @@ SystemTime}}")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-itertools-0.8
> +  (package
> +    (name "rust-itertools")
> +    (version "0.8.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "itertools" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0n2k13b6w4x2x6np2lykh9bj3b3z4hwh2r4cn3z2dgnfq7cng12v"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-either" ,rust-either-1.5))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-permutohedron" ,rust-permutohedron-0.2)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/rust-itertools/itertools")
> +    (synopsis
> +     "Extra iterator adaptors, iterator methods, free functions, and macros")
> +    (description
> +     "Extra iterator adaptors, iterator methods, free functions, and macros.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-itoa-0.4
>    (package
>      (name "rust-itoa")
> -- 
> 2.24.0
>
> From 7cd6583b78837539434b2b9975176e7be6f7e8fa Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:20:05 -0800
> Subject: [PATCH 025/206] gnu: Add rust-num-complex-0.2.
>
> * gnu/packages/crates-io.scm (rust-num-complex-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index aa2f55dbcd..dd1e344775 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2485,6 +2485,35 @@ implementation (which is unstable / requires nightly).")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-num-complex-0.2
> +  (package
> +    (name "rust-num-complex")
> +    (version "0.2.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "num-complex" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1z6zjdzx1g1hj4y132ddy83d3p3zvw06igbf59npxxrzzcqwzc7w"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-num-traits" ,rust-num-traits-0.2)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-autocfg" ,rust-autocfg-0.1))))
> +    (home-page
> +     "https://github.com/rust-num/num-complex")
> +    (synopsis
> +     "Complex numbers implementation for Rust")
> +    (description
> +     "Complex numbers implementation for Rust")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-num-cpus-1.10
>    (package
>      (name "rust-num-cpus")
> -- 
> 2.24.0
>
> From 9dbf3144fb9b5e86fa29330a6e1db18e038037d5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:39:01 -0800
> Subject: [PATCH 027/206] gnu: Add rust-arrayvec-0.4.
>
> * gnu/packages/crates-io.scm (rust-arrayvec-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index cdf4e79775..2e2efa6a32 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -96,6 +96,37 @@ text or blue underlined text, on ANSI terminals.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-arrayvec-0.4
> +  (package
> +    (name "rust-arrayvec")
> +    (version "0.4.10")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "arrayvec" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0wcch3ca9qvkixgdbd2afrv1xa27l83vpraf7frsh9l8pivgpiwj"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-nodrop" ,rust-nodrop-0.1)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bencher" ,rust-bencher-0.1)
> +    ;;     ("rust-matches" ,rust-matches-0.1)
> +    ;;     ("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page "https://github.com/bluss/arrayvec")
> +    (synopsis
> +     "Vector with fixed capacity")
> +    (description
> +     "This package provides a vector with fixed capacity, backed by an
> +array (it can be stored on the stack too).  Implements fixed capacity
> +ArrayVec and ArrayString.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-atty-0.2
>    (package
>      (name "rust-atty")
> -- 
> 2.24.0
>
> From baa0e03c7288c9a22ce6339451a3f17fb3cc3979 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 09:46:40 -0800
> Subject: [PATCH 029/206] gnu: Add rust-utf8-ranges-1.0.
>
> * gnu/packages/crates-io.scm (rust-utf8-ranges-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 32c763d58b..a6d099adc5 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5085,6 +5085,32 @@ untrusted inputs in Rust.")
>      (properties '((hidden? . #t)))
>      (license license:isc)))
>  
> +(define-public rust-utf8-ranges-1.0
> +  (package
> +    (name "rust-utf8-ranges")
> +    (version "1.0.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "utf8-ranges" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1ppzjsxmv1p1xfid8wwn07ciikk84k30frl28bwsny6za1vall4x"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-doc-comment" ,rust-doc-comment-0.3)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page
> +     "https://github.com/BurntSushi/utf8-ranges")
> +    (synopsis
> +     "Convert ranges of Unicode codepoints to UTF-8 byte ranges")
> +    (description
> +     "Convert ranges of Unicode codepoints to UTF-8 byte ranges.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-vcpkg-0.2
>    (package
>      (name "rust-vcpkg")
> -- 
> 2.24.0
>
> From 93ac04fa9d2b67b09dfc2b05250d4e75d48bb53a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:40:43 -0800
> Subject: [PATCH 028/206] gnu: Add rust-csv-core-0.1.
>
> * gnu/packages/crates-io.scm (rust-csv-core-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2e2efa6a32..32c763d58b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -770,6 +770,33 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Criterion's plotting library")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-csv-core-0.1
> +  (package
> +    (name "rust-csv-core")
> +    (version "0.1.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "csv-core" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0k5zs0x0qmmn27pa5kcg86lg84s29491fw5sh3zswxswnavasp4v"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-memchr" ,rust-memchr-2.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-arrayvec" ,rust-arrayvec-0.4))))
> +    (home-page
> +     "https://github.com/BurntSushi/rust-csv")
> +    (synopsis
> +     "Bare bones CSV parsing with no_std support")
> +    (description
> +     "Bare bones CSV parsing with no_std support.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-curl-sys-0.4
>    (package
>      (name "rust-curl-sys")
> -- 
> 2.24.0
>
> From 7045d81842766b844121ec8bf4dd2cbd351a4b7e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 09:50:53 -0800
> Subject: [PATCH 030/206] gnu: Add rust-regex-automata-0.1.
>
> * gnu/packages/crates-io.scm (rust-regex-automata-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a6d099adc5..a65db3493c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3618,6 +3618,40 @@ system calls.")
>  uses finite automata and guarantees linear time matching on all inputs.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-regex-automata-0.1
> +  (package
> +    (name "rust-regex-automata")
> +    (version "0.1.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "regex-automata" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "11hzn3rz02vdgvx3ykhrbzkvs5c5sm59fyi3xwljn9qc48br5l1y"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-regex-syntax" ,rust-regex-syntax-0.6)
> +    ;;     ("rust-utf8-ranges" ,rust-utf8-ranges-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-bytes" ,rust-serde-bytes-0.11)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-toml" ,rust-toml-0.5))))
> +    (home-page
> +     "https://github.com/BurntSushi/regex-automata")
> +    (synopsis
> +     "Automata construction and matching using regular expressions")
> +    (description
> +     "Automata construction and matching using regular expressions.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-regex-syntax-0.6
>    (package
>      (name "rust-regex-syntax")
> -- 
> 2.24.0
>
> From 98dfcdaf439a1f5a660a60ac24c886d0901b3433 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Fri, 13 Dec 2019 23:22:25 -0800
> Subject: [PATCH 026/206] gnu: Add rust-criterion-plot-0.3.
>
> * gnu/packages/crates-io.scm (rust-criterion-plot-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index dd1e344775..cdf4e79775 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -710,6 +710,35 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-criterion-plot-0.3
> +  (package
> +    (name "rust-criterion-plot")
> +    (version "0.3.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "criterion-plot" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "13pv09z4ryp70qyzablkibwa2mh6c2852qq1sjr9wjigvwnj3ybn"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-cast" ,rust-cast-0.2)
> +    ;;     ("rust-itertools" ,rust-itertools-0.8))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-itertools-num" ,rust-itertools-num-0.1)
> +    ;;     ("rust-num-complex" ,rust-num-complex-0.2)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/bheisler/criterion.rs")
> +    (synopsis "Criterion's plotting library")
> +    (description "Criterion's plotting library")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-curl-sys-0.4
>    (package
>      (name "rust-curl-sys")
> -- 
> 2.24.0
>
> From 0c61d07c4a6f54a624bd24f5bfaf838145ac12ba Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 09:58:51 -0800
> Subject: [PATCH 031/206] gnu: Add rust-futures-channel-preview-0.3.
>
> * gnu/packages/crates-io.scm (rust-futures-channel-preview-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a65db3493c..865dfb3082 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1273,6 +1273,31 @@ featuring zero allocations, composability, and iterator-like interfaces.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-futures-channel-preview-0.3
> +  (package
> +    (name "rust-futures-channel-preview")
> +    (version "0.3.0-alpha.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "futures-channel-preview" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1blgpikhw391lzrfqcgg4xsn5xc0dlybni77ka7f0vb08zaixir1"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-futures-core-preview" ,rust-futures-core-preview-0.3))))
> +    (home-page
> +     "https://rust-lang-nursery.github.io/futures-rs")
> +    (synopsis
> +     "Channels for asynchronous communication using futures-rs")
> +    (description
> +     "Channels for asynchronous communication using futures-rs.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-futures-core-preview-0.3
>    (package
>      (name "rust-futures-core-preview")
> -- 
> 2.24.0
>
> From c3844cd8bbe66d721123c643fc3d594870288b94 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 10:03:09 -0800
> Subject: [PATCH 032/206] gnu: Add rust-futures-executor-preview-0.3.
>
> * gnu/packages/crates-io.scm (rust-futures-executor-preview-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 865dfb3082..86ecdb9309 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1341,6 +1341,36 @@ the computation on the threads themselves.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-futures-executor-preview-0.3
> +  (package
> +    (name "rust-futures-executor-preview")
> +    (version "0.3.0-alpha.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "futures-executor-preview" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "053g5kf2qa1xhdkwp3d1grrizzy4683mpbb3y0vvm00hwl7jdfl7"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-futures-channel-preview" ,rust-futures-channel-preview-0.3)
> +    ;;     ("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
> +    ;;     ("rust-futures-util-preview" ,rust-futures-util-preview-0.3)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-pin-utils" ,rust-pin-utils-0.1))))
> +    (home-page
> +     "https://github.com/rust-lang/futures-rs")
> +    (synopsis
> +     "Executors for asynchronous tasks based on futures-rs")
> +    (description
> +     "Executors for asynchronous tasks based on the futures-rs
> +library.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-futures-io-preview-0.3
>    (package
>      (name "rust-futures-io-preview")
> -- 
> 2.24.0
>
> From 1edd37a53e7cfe2adcad0e4774c03c2194797a12 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 10:13:26 -0800
> Subject: [PATCH 033/206] gnu: Add rust-futures-select-macro-preview-0.3.
>
> * gnu/packages/crates-io.scm (rust-futures-select-macro-preview-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 86ecdb9309..1d3be2819b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1392,6 +1392,35 @@ library.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-futures-select-macro-preview-0.3
> +  (package
> +    (name "rust-futures-select-macro-preview")
> +    (version "0.3.0-alpha.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "futures-select-macro-preview" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1a90ivjzkgz7msiz5si05xzi8xwsk5gar1gkrbmrgqpgkliqd7a6"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
> +    ;;     ("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page
> +     "https://github.com/rust-lang/futures-rs")
> +    (synopsis
> +     "Handle the first Future to complete")
> +    (description
> +     "The @code{select!} macro for waiting on multiple different
> +@code{Future}s at once and handling the first one to complete.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-futures-sink-preview-0.3
>    (package
>      (name "rust-futures-sink-preview")
> -- 
> 2.24.0
>
> From bafceb0c743132fd69c63a6834324413e584ff4e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 10:28:48 -0800
> Subject: [PATCH 035/206] gnu: Add rust-demo-hack-0.0.
>
> * gnu/packages/crates-io.scm (rust-demo-hack-0.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8831820926..92fb649511 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -887,6 +887,30 @@ hexadecimal, base32, and base64.")
>           (base32
>            "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
>  
> +(define-public rust-demo-hack-0.0
> +  (package
> +    (name "rust-demo-hack")
> +    (version "0.0.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "demo-hack" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0m0114p1g0zzrdph5bg03i8m8p70vrwn3whs191jrbjcrmh5lmnp"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-demo-hack-impl" ,rust-demo-hack-impl-0.0)
> +    ;;     ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
> +    (home-page
> +     "https://github.com/dtolnay/proc-macro-hack")
> +    (synopsis "Demo of proc-macro-hack")
> +    (description "Demo of proc-macro-hack")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-dirs-1.0
>    (package
>      (name "rust-dirs")
> -- 
> 2.24.0
>
> From 4866b8791e796860f6496d35b180d3741e5dcdb1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 10:27:41 -0800
> Subject: [PATCH 034/206] gnu: Add rust-proc-macro-hack-0.5.
>
> * gnu/packages/crates-io.scm (rust-proc-macro-hack-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 1d3be2819b..8831820926 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3203,6 +3203,37 @@ for x86.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +;; Cyclic dependencies with rust-demo-hack.
> +(define-public rust-proc-macro-hack-0.5
> +  (package
> +    (name "rust-proc-macro-hack")
> +    (version "0.5.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "proc-macro-hack" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1www5lrvsk7pq04clgfmjlnnrshikgs1h51l17vrc7qy58bx878c"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-demo-hack" ,rust-demo-hack-0.0)
> +    ;;     ("rust-demo-hack-impl" ,rust-demo-hack-impl-0.0))))
> +    (home-page
> +     "https://github.com/dtolnay/proc-macro-hack")
> +    (synopsis
> +     "Procedural macros in expression position")
> +    (description
> +     "Procedural macros in expression position")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-proc-macro2-1.0
>    (package
>      (name "rust-proc-macro2")
> -- 
> 2.24.0
>
> From aa12f5fc0c8c9bbfab6ff68d6c0132d4ebc33ee8 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 10:29:29 -0800
> Subject: [PATCH 036/206] gnu: Add rust-demo-hack-impl-0.0.
>
> * gnu/packages/crates-io.scm (rust-demo-hack-impl-0.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 92fb649511..df1b5412b5 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -911,6 +911,31 @@ hexadecimal, base32, and base64.")
>      (description "Demo of proc-macro-hack")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-demo-hack-impl-0.0
> +  (package
> +    (name "rust-demo-hack-impl")
> +    (version "0.0.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "demo-hack-impl" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1f1fdl60xjas9wlmcl9v6f56vgm3mzwr019kcifav5464rx3w3ld"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page
> +     "https://github.com/dtolnay/proc-macro-hack")
> +    (synopsis "Demo of proc-macro-hack")
> +    (description "Demo of proc-macro-hack")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-dirs-1.0
>    (package
>      (name "rust-dirs")
> -- 
> 2.24.0
>
> From 682683010b0a14199a11596c7708ab21ce1846f1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 10:57:08 -0800
> Subject: [PATCH 037/206] gnu: Add rust-proc-macro-nested-0.1.
>
> * gnu/packages/crates-io.scm (rust-proc-macro-nested-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index df1b5412b5..3a2768c5b7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3283,6 +3283,28 @@ for x86.")
>       "Procedural macros in expression position")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-proc-macro-nested-0.1
> +  (package
> +    (name "rust-proc-macro-nested")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "proc-macro-nested" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0bmlksm8vl44wkwihmwr7jsjznhbg0n7aibcw1cs2jgjcp86x6in"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://github.com/dtolnay/proc-macro-hack")
> +    (synopsis
> +     "Support for nested proc-macro-hack invocations")
> +    (description
> +     "Support for nested proc-macro-hack invocations")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-proc-macro2-1.0
>    (package
>      (name "rust-proc-macro2")
> -- 
> 2.24.0
>
> From 1c484e18c1ce29adf1cd677329049e60cebe89de Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:04:41 -0800
> Subject: [PATCH 038/206] gnu: Add rust-bytes-0.4.
>
> * gnu/packages/crates-io.scm (rust-bytes-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3a2768c5b7..5f5ed2a797 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -398,6 +398,35 @@ UTF-8.")
>  little-endian.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-bytes-0.4
> +  (package
> +    (name "rust-bytes")
> +    (version "0.4.12")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bytes" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0768a55q2fsqdjsvcv98ndg9dq7w2g44dvq1avhwpxrdzbydyvr0"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-either" ,rust-either-1.5)
> +    ;;     ("rust-iovec" ,rust-iovec-0.1)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page "https://github.com/tokio-rs/bytes")
> +    (synopsis
> +     "Types and traits for working with bytes")
> +    (description
> +     "Types and traits for working with bytes")
> +    (license license:expat)))
> +
>  (define-public rust-cargon-0.0
>    (package
>      (name "rust-cargon")
> -- 
> 2.24.0
>
> From 0e609963a747c35a524b14c2443d0511c6accb2c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:41:29 -0800
> Subject: [PATCH 040/206] gnu: Add rust-mio-0.6.
>
> * gnu/packages/crates-io.scm (rust-mio-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 07c11ddbed..152e7a0af2 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2558,6 +2558,41 @@ streaming API for miniz_oxide.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-mio-0.6
> +  (package
> +    (name "rust-mio")
> +    (version "0.6.19")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "mio" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "08zzs227vrnyz5kvws6awzlgzb8zqpnihs71hkqlw07dlfb1kxc3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-fuchsia-zircon" ,rust-fuchsia-zircon-0.3)
> +    ;;     ("rust-fuchsia-zircon-sys" ,rust-fuchsia-zircon-sys-0.3)
> +    ;;     ("rust-iovec" ,rust-iovec-0.1)
> +    ;;     ("rust-kernel32-sys" ,rust-kernel32-sys-0.2)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-miow" ,rust-miow-0.2)
> +    ;;     ("rust-net2" ,rust-net2)
> +    ;;     ("rust-slab" ,rust-slab-0.4)
> +    ;;     ("rust-winapi" ,rust-winapi-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ("rust-tempdir" ,rust-tempdir-0.3))))
> +    (home-page "https://github.com/tokio-rs/mio")
> +    (synopsis "Lightweight non-blocking IO")
> +    (description "Lightweight non-blocking IO")
> +    (license license:expat)))
> +
>  (define-public rust-miow-0.3
>    (package
>      (name "rust-miow")
> -- 
> 2.24.0
>
> From 1ea1ce766527481f4e7ecf5d93e994ededab9ae5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:11:00 -0800
> Subject: [PATCH 039/206] gnu: Add rust-crossbeam-utils-0.6.
>
> * gnu/packages/crates-io.scm (rust-crossbeam-utils-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 5f5ed2a797..07c11ddbed 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -799,6 +799,33 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Criterion's plotting library")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-crossbeam-utils-0.6
> +  (package
> +    (name "rust-crossbeam-utils")
> +    (version "0.6.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crossbeam-utils" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0p5aa8k3wpsn17md4rx038ac2azm9354knbxdfvn7dd7yk76yc7q"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-utils")
> +    (synopsis "Utilities for concurrent programming")
> +    (description
> +     "Utilities for concurrent programming")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-csv-core-0.1
>    (package
>      (name "rust-csv-core")
> -- 
> 2.24.0
>
> From de8dfeaabfe99de79fcca2b00d978f289ec9da87 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:44:50 -0800
> Subject: [PATCH 041/206] gnu: Add rust-tokio-io-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-io-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 152e7a0af2..24cd61c7da 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5007,6 +5007,35 @@ in Rust.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +;; Cyclic dependencies with tokio and tokio-current-thread
> +(define-public rust-tokio-io-0.1
> +  (package
> +    (name "rust-tokio-io")
> +    (version "0.1.12")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-io" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "09jrz1hh4h1vj45qy09y7m7m8jsy1hl6g32clnky25mdim3dp42h"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-log" ,rust-log-0.4))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-tokio-current-thread" ,rust-tokio-current-thread-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis
> +     "Core I/O primitives for asynchronous I/O in Rust")
> +    (description
> +     "Core I/O primitives for asynchronous I/O in Rust.")
> +    (license license:expat)))
> +
>  (define-public rust-tokio-mock-task-0.1
>    (package
>      (name "rust-tokio-mock-task")
> -- 
> 2.24.0
>
> From 463c983d268b805de65672746efe39e64d1ee10a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:49:18 -0800
> Subject: [PATCH 042/206] gnu: Add rust-tokio-executor-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-executor-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 24cd61c7da..bde3710093 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5007,6 +5007,32 @@ in Rust.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +;; Cyclic dependency with rust-tokio.
> +(define-public rust-tokio-executor-0.1
> +  (package
> +    (name "rust-tokio-executor")
> +    (version "0.1.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-executor" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0pjmgpg58k3hf5q9w6xjljsv8xy66lf734qnfwsc0g3pq3349sl3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-futures" ,rust-futures-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-tokio" ,rust-tokio))))
> +    (home-page "https://github.com/tokio-rs/tokio")
> +    (synopsis "Future execution primitives")
> +    (description "Future execution primitives")
> +    (license license:expat)))
> +
>  ;; Cyclic dependencies with tokio and tokio-current-thread
>  (define-public rust-tokio-io-0.1
>    (package
> -- 
> 2.24.0
>
> From 88ca4c096356ef54a9da1e4b6a8accced84dfd9a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:52:41 -0800
> Subject: [PATCH 043/206] gnu: Add rust-tokio-codec-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-codec-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index bde3710093..58faf0379d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5007,6 +5007,33 @@ in Rust.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +;; Cyclic dependency with tokio-io
> +(define-public rust-tokio-codec-0.1
> +  (package
> +    (name "rust-tokio-codec")
> +    (version "0.1.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-codec" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "17y3hi3dd0bdfkrzshx9qhwcf49xv9iynszj7iwy3w4nmz71wl2w"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis
> +     "Utilities for encoding and decoding frames")
> +    (description
> +     "Utilities for encoding and decoding frames.")
> +    (license license:expat)))
> +
>  ;; Cyclic dependency with rust-tokio.
>  (define-public rust-tokio-executor-0.1
>    (package
> -- 
> 2.24.0
>
> From bf9498f1da8b6a8f7919699bfcd90f78eae671a2 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:55:23 -0800
> Subject: [PATCH 044/206] gnu: Add rust-tokio-current-thread-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-current-thread-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 58faf0379d..999a7bd986 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5034,6 +5034,32 @@ in Rust.")
>       "Utilities for encoding and decoding frames.")
>      (license license:expat)))
>  
> +(define-public rust-tokio-current-thread-0.1
> +  (package
> +    (name "rust-tokio-current-thread")
> +    (version "0.1.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-current-thread" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0hx4c8v88kk0ih8x5s564gsgwwf8n11kryvxm72l1f7isz51fqni"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-tokio-executor" ,rust-tokio-executor-0.1))))
> +    (home-page "https://github.com/tokio-rs/tokio")
> +    (synopsis
> +     "Manage many tasks concurrently on the current thread")
> +    (description
> +     "Single threaded executor which manage many tasks concurrently on
> +the current thread.")
> +    (license license:expat)))
> +
>  ;; Cyclic dependency with rust-tokio.
>  (define-public rust-tokio-executor-0.1
>    (package
> -- 
> 2.24.0
>
> From 04e5748c66feb26943cfeca8ba5243da3bd82648 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 11:59:20 -0800
> Subject: [PATCH 045/206] gnu: Add rust-futures-util-preview-0.3.
>
> * gnu/packages/crates-io.scm (rust-futures-util-preview-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 40 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 999a7bd986..689c1b119e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1548,6 +1548,46 @@ futures-rs library.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-futures-util-preview-0.3
> +  (package
> +    (name "rust-futures-util-preview")
> +    (version "0.3.0-alpha.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "futures-util-preview" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0kizm86wgr5qldyavskfi0r1msg6m4x2pkj0d4r04br2ig29i0dg"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-futures-channel-preview" ,rust-futures-channel-preview-0.3)
> +    ;;     ("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
> +    ;;     ("rust-futures-io-preview" ,rust-futures-io-preview-0.3)
> +    ;;     ("rust-futures-select-macro-preview"
> +    ;;      ,rust-futures-select-macro-preview-0.3)
> +    ;;     ("rust-futures-sink-preview" ,rust-futures-sink-preview-0.3)
> +    ;;     ("rust-memchr" ,rust-memchr-2.2)
> +    ;;     ("rust-pin-utils" ,rust-pin-utils-0.1)
> +    ;;     ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
> +    ;;     ("rust-proc-macro-nested" ,rust-proc-macro-nested-0.1)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-rand-core" ,rust-rand-core-0.5)
> +    ;;     ("rust-slab" ,rust-slab-0.4)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1))))
> +    (home-page
> +     "https://github.com/rust-lang/futures-rs")
> +    (synopsis
> +     "Utilities and extension traits for futures-rs library")
> +    (description
> +     "Common utilities and extension traits for the futures-rs
> +library.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-gcc-0.3
>    (package
>      (inherit rust-cc-1.0)
> -- 
> 2.24.0
>
> From c3aa8c1b7a0d6723c2f54910360ebedc9be5466c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 12:10:43 -0800
> Subject: [PATCH 046/206] gnu: Add rust-rand-xoshiro-0.3.
>
> * gnu/packages/crates-io.scm (rust-rand-xoshiro-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 689c1b119e..e20277b9bd 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3816,6 +3816,35 @@ useful types and distributions, and some randomness-related algorithms.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rand-xoshiro-0.3
> +  (package
> +    (name "rust-rand-xoshiro")
> +    (version "0.3.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rand_xoshiro" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "07w3qgrac8r356lz5vqff42rly6yd9vs3g5lx5pbn13rcmb05rqb"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-rand-core" ,rust-rand-core-0.5)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1))))
> +    (home-page
> +     "https://github.com/rust-random/rand")
> +    (synopsis
> +     "Xoshiro, xoroshiro and splitmix64 random number generators")
> +    (description
> +     "Xoshiro, xoroshiro and splitmix64 random number generators")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-rawpointer-0.1
>    (package
>      (name "rust-rawpointer")
> -- 
> 2.24.0
>
> From 008ad6d5182ecb628d27c01331ec6137cd0ba792 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 12:14:27 -0800
> Subject: [PATCH 047/206] gnu: Add rust-rand-xorshift-0.2.
>
> * gnu/packages/crates-io.scm (rust-rand-xorshift-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e20277b9bd..513363254e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3816,6 +3816,34 @@ useful types and distributions, and some randomness-related algorithms.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rand-xorshift-0.2
> +  (package
> +    (name "rust-rand-xorshift")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rand_xorshift" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1a6wy76lc5fimm1n9n8fzhp4cfjwfwxh4hx63bg3vlh1d2w1dm3p"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-rand-core" ,rust-rand-core-0.5)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1))))
> +    (home-page
> +     "https://crates.io/crates/rand_xorshift")
> +    (synopsis "Xorshift random number generator")
> +    (description
> +     "Xorshift random number generator")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-rand-xoshiro-0.3
>    (package
>      (name "rust-rand-xoshiro")
> -- 
> 2.24.0
>
> From 7d82414785d6091090976d0696a571dc8f2c4ac6 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 12:22:58 -0800
> Subject: [PATCH 048/206] gnu: Add rust-docopt-1.1.
>
> * gnu/packages/crates-io.scm (rust-docopt-1.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 513363254e..03587ddec6 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1057,6 +1057,31 @@ from macros.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-docopt-1.1
> +  (package
> +    (name "rust-docopt")
> +    (version "1.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "docopt" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0s9rcpmnnivs502q69lc1h1wrwapkq09ikgbfbgqf31idmc5llkz"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-strsim" ,rust-strsim-0.9))))
> +    (home-page "https://github.com/docopt/docopt.rs")
> +    (synopsis "Command line argument parsing")
> +    (description "Command line argument parsing.")
> +    (license `(,license:expat ,license:unlicense))))
> +
>  (define-public rust-dtoa-0.4
>    (package
>      (name "rust-dtoa")
> -- 
> 2.24.0
>
> From 3c4f7d5b433a89fcc6628fbc0baf2ac6a918c820 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:06:38 -0800
> Subject: [PATCH 050/206] gnu: Add rust-crossbeam-epoch-0.7.
>
> * gnu/packages/crates-io.scm (rust-crossbeam-epoch-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 012689bc28..d91eb2f888 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -799,6 +799,36 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Criterion's plotting library")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-crossbeam-epoch-0.7
> +  (package
> +    (name "rust-crossbeam-epoch")
> +    (version "0.7.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crossbeam-epoch" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1d408b9x82mdbnb405gw58v5mmdbj2rl28a1h7b9rmn25h8f7j84"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-arrayvec" ,rust-arrayvec-0.4)
> +    ;;     ("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-memoffset" ,rust-memoffset-0.2)
> +    ;;     ("rust-scopeguard" ,rust-scopeguard-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-epoch")
> +    (synopsis "Epoch-based garbage collection")
> +    (description "Epoch-based garbage collection")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-crossbeam-utils-0.6
>    (package
>      (name "rust-crossbeam-utils")
> -- 
> 2.24.0
>
> From 5a708903f5560ee37193dc834da2c386742bdd29 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:03:05 -0800
> Subject: [PATCH 049/206] gnu: Add rust-memoffset-0.2.
>
> * gnu/packages/crates-io.scm (rust-memoffset-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 03587ddec6..012689bc28 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2560,6 +2560,27 @@ file IO.")
>           (base32
>            "1zy6s0ni0lx9rjzq3gq2zz9r8zgjmbp02332g3gsj4fyhv4s5zz2"))))))
>  
> +(define-public rust-memoffset-0.2
> +  (package
> +    (name "rust-memoffset")
> +    (version "0.2.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "memoffset" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1cvm2z7dy138s302ii7wlzcxbka5a8yfl5pl5di7lbdnw9hw578g"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/Gilnaa/memoffset")
> +    (synopsis
> +     "offset_of functionality for Rust structs")
> +    (description
> +     "@code{offset_of} functionality for Rust structs.")
> +    (license license:expat)))
> +
>  (define-public rust-mime-0.3
>    (package
>      (name "rust-mime")
> -- 
> 2.24.0
>
> From 828b06d0c801b77e3985440370e00b6ce92dd46a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:33:55 -0800
> Subject: [PATCH 051/206] gnu: Add rust-ascii-0.9.
>
> * gnu/packages/crates-io.scm (rust-ascii-0.9): New variables.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d91eb2f888..76a32cbf35 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -127,6 +127,33 @@ array (it can be stored on the stack too).  Implements fixed capacity
>  ArrayVec and ArrayString.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-ascii-0.9
> +  (package
> +    (name "rust-ascii")
> +    (version "0.9.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "ascii" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0dck6rsjnxlczyjnncn8hf16bxj42m1vi6s2n32c1jg2ijd9dz55"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page
> +     "https://github.com/tomprogrammer/rust-ascii")
> +    (synopsis
> +     "ASCII-only equivalents to char, str and String")
> +    (description
> +     "ASCII-only equivalents to @code{char}, @code{str} and @code{String}.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-atty-0.2
>    (package
>      (name "rust-atty")
> -- 
> 2.24.0
>
> From 2bf2136c34ca3317ef39a3fa7c3aaeca61344e9c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:37:42 -0800
> Subject: [PATCH 052/206] gnu: Add rust-term-0.5.1.
>
> * gnu/packages/crates-io.scm (rust-term-0.5.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 76a32cbf35..9e310b5a77 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5034,6 +5034,21 @@ directories.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +;; Mostly for clippy
> +(define-public rust-term-0.5.1
> +  (package
> +    (inherit rust-term-0.4)
> +    (version "0.5.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "term" version))
> +       (file-name
> +        (string-append (package-name rust-term-0.4) "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0qbmqd8jbjlqr4608qdmvp6yin5ypifzi5s2xyhlw8g8s5ynfssy"))))))
> +
>  (define-public rust-termcolor-1.0
>    (package
>      (name "rust-termcolor")
> -- 
> 2.24.0
>
> From 49a93e1ca2c141a1c8cee5fa626dc21433e4cceb Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:40:19 -0800
> Subject: [PATCH 053/206] gnu: Add rust-clippy-0.0.
>
> * gnu/packages/crates-io.scm (rust-clippy-0.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9e310b5a77..435df613d0 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -686,6 +686,32 @@ colorization.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-clippy-0.0
> +  (package
> +    (name "rust-clippy")
> +    (version "0.0.302")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "clippy" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1562x3sq9mgmc8j39gd34wqm7ybrdvpmj7cc1n450gwsawayw4fr"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-term" ,rust-term-0.5.1))))
> +    (home-page
> +     "https://github.com/rust-lang/rust-clippy")
> +    (synopsis
> +     "Lints to avoid common pitfalls in Rust")
> +    (description
> +     "This package provides a bunch of helpful lints to avoid common
> +pitfalls in Rust.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-cloudabi-0.0
>    (package
>      (name "rust-cloudabi")
> -- 
> 2.24.0
>
> From 4514cfed22d034133b5f250c2fb3095ebea17aa4 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:44:58 -0800
> Subject: [PATCH 054/206] gnu: Add rust-encode-unicode-0.3.
>
> * gnu/packages/crates-io.scm (rust-encode-unicode-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 435df613d0..0f402f0de4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1224,6 +1224,35 @@ floating-point primitives to an @code{io::Write}.")
>  @code{Right} is a general purpose sum type with two cases.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-encode-unicode-0.3
> +  (package
> +    (name "rust-encode-unicode")
> +    (version "0.3.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encode_unicode" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1g8a8pixkxz6r927f4sc4r15qyc0szxdxb1732v8q7h0di4wkclh"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-ascii" ,rust-ascii-0.9)
> +    ;;     ("rust-clippy" ,rust-clippy-0.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3))))
> +    (home-page
> +     "https://github.com/tormol/encode_unicode")
> +    (synopsis
> +     "UTF-8 and UTF-16 support for char, u8 and u16")
> +    (description
> +     "UTF-8 and UTF-16 character types, iterators and related methods for
> +char, u8 and u16.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-env-logger-0.6
>    (package
>      (name "rust-env-logger")
> -- 
> 2.24.0
>
> From 205cd10dbbb25c87bc382615e3d67149bff0ad38 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 13:52:11 -0800
> Subject: [PATCH 055/206] gnu: Add rust-lock-api-0.2.
>
> * gnu/packages/crates-io.scm (rust-lock-api-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0f402f0de4..8b06e0fc00 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2468,6 +2468,34 @@ functions and static variables these libraries contain.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-lock-api-0.2
> +  (package
> +    (name "rust-lock-api")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "lock_api" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1zx7pksmgyggpczgw4qrr4vj2nkdk5lipgiysvr20slm552nv57d"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-owning-ref" ,rust-owning-ref-0.4)
> +    ;;     ("rust-scopeguard" ,rust-scopeguard-1.0)
> +    ;;     ("rust-serde" ,rust-serde-1.0))))
> +    (home-page
> +     "https://github.com/Amanieu/parking_lot")
> +    (synopsis
> +     "Wrappers to create fully-featured Mutex and RwLock types")
> +    (description
> +     "Wrappers to create fully-featured Mutex and RwLock types.  Compatible
> +with no_std.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-log-0.4
>    (package
>      (name "rust-log")
> -- 
> 2.24.0
>
> From 19094369f4c7bb7ca77355caee26afe594b3ebf7 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:09:35 -0800
> Subject: [PATCH 056/206] gnu: Add rust-semver-0.9.
>
> * gnu/packages/crates-io.scm (rust-semver-0.9): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8b06e0fc00..82f0f3d8d5 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4570,6 +4570,36 @@ with one of the implemented strategies.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-semver-0.9
> +  (package
> +    (name "rust-semver")
> +    (version "0.9.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "semver" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "00q4lkcj0rrgbhviv9sd4p6qmdsipkwkbra7rh11jrhq5kpvjzhx"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-semver-parser" ,rust-semver-parser-0.7)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-crates-index" ,rust-crates-index-0.13)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-tempdir" ,rust-tempdir-0.3))))
> +    (home-page "https://docs.rs/crate/semver")
> +    (synopsis
> +     "Semantic version parsing and comparison")
> +    (description
> +     "Semantic version parsing and comparison.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-semver-parser-0.9
>    (package
>      (name "rust-semver-parser")
> -- 
> 2.24.0
>
> From 47e07fe923ab627f9d977367e0a1863198b24b7e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:14:51 -0800
> Subject: [PATCH 058/206] gnu: Add rust-afl-0.4.
>
> * gnu/packages/crates-io.scm (rust-afl-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a226a40bb4..ef8f0a0bf8 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -53,6 +53,36 @@ the Rust programming language.")
>      (license (list license:bsd-3
>                     license:zlib))))
>  
> +(define-public rust-afl-0.4
> +  (package
> +    (name "rust-afl")
> +    (version "0.4.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "afl" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0g2chc18ji7qxi0d03n2ai140qdcww958v5si6rcjnnhmri1vyfb"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cc" ,rust-cc-1.0)
> +    ;;     ("rust-clap" ,rust-clap-2)
> +    ;;     ("rust-rustc-version" ,rust-rustc-version-0.2)
> +    ;;     ("rust-xdg" ,rust-xdg-2.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rustc-version" ,rust-rustc-version-0.2)
> +    ;;     ("rust-xdg" ,rust-xdg-2.2))))
> +    (home-page "https://github.com/rust-fuzz/afl.rs")
> +    (synopsis
> +     "Fuzzing Rust code with american-fuzzy-lop")
> +    (description
> +     "Fuzz Rust code with american-fuzzy-lop.")
> +    (license license:asl2.0)))
> +
>  (define-public rust-ansi-term-0.11
>    (package
>      (name "rust-ansi-term")
> -- 
> 2.24.0
>
> From 8b60c2010692dd4a2f4594dbb8792d6593789c42 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:12:48 -0800
> Subject: [PATCH 057/206] gnu: Add rust-rustc-version-0.2.
>
> * gnu/packages/crates-io.scm (rust-rustc-version-0.2): New version.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 82f0f3d8d5..a226a40bb4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4363,6 +4363,31 @@ rust-lang/rust integration.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rustc-version-0.2
> +  (package
> +    (name "rust-rustc-version")
> +    (version "0.2.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rustc_version" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "02h3x57lcr8l2pm0a645s9whdh33pn5cnrwvn5cb57vcrc53x3hk"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs (("rust-semver" ,rust-semver-0.9))))
> +    (home-page
> +     "https://github.com/Kimundi/rustc-version-rs")
> +    (synopsis
> +     "Library for querying the version of a installed rustc compiler")
> +    (description
> +     "This package provides a library for querying the version of a installed
> +rustc compiler")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-ryu-1.0
>    (package
>      (name "rust-ryu")
> -- 
> 2.24.0
>
> From ecf1839684cf888c16e319de1a0f5e8f58a036d5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:19:59 -0800
> Subject: [PATCH 059/206] gnu: Add rust-insta-0.8.
>
> * gnu/packages/crates-io.scm (rust-insta-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index ef8f0a0bf8..0f96379b08 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2082,6 +2082,41 @@ SystemTime}}")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-insta-0.8
> +  (package
> +    (name "rust-insta")
> +    (version "0.8.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "insta" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "17rvqw9xm61prncbqi3cplphr3l2dl85sljdpyr3fz2mqjgbdfwb"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-chrono" ,rust-chrono-0.4)
> +    ;;     ("rust-ci-info" ,rust-ci-info-0.3)
> +    ;;     ("rust-console" ,rust-console-0.7)
> +    ;;     ("rust-difference" ,rust-difference-2.0)
> +    ;;     ("rust-failure" ,rust-failure-0.1)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-pest" ,rust-pest-2.1)
> +    ;;     ("rust-pest-derive" ,rust-pest-derive-2.1)
> +    ;;     ("rust-ron" ,rust-ron-0.4)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-serde-yaml" ,rust-serde-yaml-0.8)
> +    ;;     ("rust-uuid" ,rust-uuid-0.7))))
> +    (home-page "https://github.com/mitsuhiko/insta")
> +    (synopsis "Snapshot testing library for Rust")
> +    (description
> +     "This package provides a snapshot testing library for Rust")
> +    (license license:asl2.0)))
> +
>  (define-public rust-iovec-0.1
>    (package
>      (name "rust-iovec")
> -- 
> 2.24.0
>
> From c8a0c85cdb6d8a37c32bf8682b4b95afb9563c9f Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:20:56 -0800
> Subject: [PATCH 060/206] gnu: Add rust-syn-0.15.
>
> * gnu/packages/crates-io.scm (rust-syn-0.15): New variable.
> ---
>  gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0f96379b08..9b9f48a76d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5127,6 +5127,38 @@ and Jaro-Winkler.")
>      (properties '((hidden? . #t)))
>      (license (list license:expat license:asl2.0))))
>  
> +(define-public rust-syn-0.15
> +  (package
> +    (name "rust-syn")
> +    (version "0.15.44")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "syn" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0070ycbh47yhxb5vxwa15vi2wpdkw3v1m14v4mjryz1568fqkbsa"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-unicode-xid" ,rust-unicode-xid-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-insta" ,rust-insta-0.8)
> +    ;;     ("rust-rayon" ,rust-rayon-1.1)
> +    ;;     ("rust-ref-cast" ,rust-ref-cast)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-termcolor" ,rust-termcolor-1.0)
> +    ;;     ("rust-walkdir" ,rust-walkdir-2.2))))
> +    (home-page "https://github.com/dtolnay/syn")
> +    (synopsis "Parser for Rust source code")
> +    (description "Parser for Rust source code")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-synstructure-test-traits-0.1
>    (package
>      (name "rust-synstructure-test-traits")
> -- 
> 2.24.0
>
> From cc1d8c40ea80435bb345a50b6cf176a395c167d5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:28:38 -0800
> Subject: [PATCH 063/206] gnu: Add rust-cpp-demangle-0.2.
>
> * gnu/packages/crates-io.scm (rust-cpp-demangle-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index df8d12c4c8..690553a04f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1056,6 +1056,35 @@ hexadecimal, base32, and base64.")
>           (base32
>            "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
>  
> +(define-public rust-cpp-demangle-0.2
> +  (package
> +    (name "rust-cpp-demangle")
> +    (version "0.2.12")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "cpp_demangle" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0a4hqsfc0sfdwy7pcr0rc1fjp2j47fxbkqfc2lfrbi4zlm5hq36k"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-afl" ,rust-afl-0.4)
> +    ;;     ("rust-cfg-if" ,rust-cfg-if-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-clap" ,rust-clap-2)
> +    ;;     ("rust-diff" ,rust-diff-0.1)
> +    ;;     ("rust-glob" ,rust-glob-0.3))))
> +    (home-page
> +     "https://github.com/gimli-rs/cpp_demangle")
> +    (synopsis "Demangle C++ symbols")
> +    (description
> +     "This package provides a crate for demangling C++ symbols")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-demo-hack-0.0
>    (package
>      (name "rust-demo-hack")
> -- 
> 2.24.0
>
> From 2a3817c357833ff0fc1d755cb72f1ddbef3fdeb0 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:24:57 -0800
> Subject: [PATCH 062/206] gnu: Add rust-diff-0.1.
>
> * gnu/packages/crates-io.scm (rust-diff-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6026404d4a..df8d12c4c8 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1105,6 +1105,32 @@ hexadecimal, base32, and base64.")
>      (description "Demo of proc-macro-hack")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-diff-0.1
> +  (package
> +    (name "rust-diff")
> +    (version "0.1.11")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "diff" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0fhavni46a2rib93ig5fgbqmm48ysms5sxzb3h9bp7vp2bwnjarw"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-speculate" ,rust-speculate-0.1))))
> +    (home-page
> +     "https://github.com/utkarshkukreti/diff.rs")
> +    (synopsis
> +     "LCS based slice and string diffing implementation")
> +    (description
> +     "An LCS based slice and string diffing implementation.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-dirs-1.0
>    (package
>      (name "rust-dirs")
> -- 
> 2.24.0
>
> From cb381b2c2a1477a2fde3817591f24625c50c681d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:22:23 -0800
> Subject: [PATCH 061/206] gnu: Add rust-speculate-0.1.
>
> * gnu/packages/crates-io.scm (rust-speculate-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9b9f48a76d..6026404d4a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4921,6 +4921,34 @@ track of where each new file and line starts.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-speculate-0.1
> +  (package
> +    (name "rust-speculate")
> +    (version "0.1.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "speculate" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ph01n3fqkmnfr1wd13dqsi4znv06xy6p4h3hqqdzk81r0r5vd1w"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15)
> +    ;;     ("rust-unicode-xid" ,rust-unicode-xid-0.1))))
> +    (home-page
> +     "https://github.com/utkarshkukreti/speculate.rs")
> +    (synopsis
> +     "RSpec inspired testing framework for Rust")
> +    (description
> +     "An RSpec inspired minimal testing framework for Rust.")
> +    (license license:expat)))
> +
>  (define-public rust-spin-0.5
>    (package
>      (name "rust-spin")
> -- 
> 2.24.0
>
> From 6d719ae70017da7c2455c9ea132788e665d1d85f Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 14:45:16 -0800
> Subject: [PATCH 064/206] gnu: Add rust-indexmap-1.0.
>
> * gnu/packages/crates-io.scm (rust-indexmap-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 41 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 690553a04f..0e6f69abf0 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2137,6 +2137,47 @@ SystemTime}}")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-indexmap-1.0
> +  (package
> +    (name "rust-indexmap")
> +    (version "1.0.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "indexmap" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "13f5k1kl2759y4xfy0vhays35fmrkmhqngbr2ny8smvrbz0ag0by"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-fnv" ,rust-fnv-1.0)
> +    ;;     ("rust-itertools" ,rust-itertools-0.8)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page "https://github.com/bluss/indexmap")
> +    (synopsis
> +     "Hash table with consistent order and fast iteration")
> +    (description
> +     "This package provides a hash table with consistent order and fast iteration.
> +
> +The indexmap is a hash table where the iteration order of the
> +key-value pairs is independent of the hash values of the keys.  It has
> +the usual hash table functionality, it preserves insertion order
> +except after removals, and it allows lookup of its elements by either
> +hash table key or numerical index.  A corresponding hash set type is
> +also provided.
> +
> +This crate was initially published under the name ordermap, but it was
> +renamed to indexmap.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-insta-0.8
>    (package
>      (name "rust-insta")
> -- 
> 2.24.0
>
> From ee165fffe80b47c5e57ffb2d2f88003b7324172d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:10:07 -0800
> Subject: [PATCH 065/206] gnu: Add rust-crossbeam-deque-0.7.
>
> * gnu/packages/crates-io.scm (rust-crossbeam-deque-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0e6f69abf0..2cf89c9499 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -882,6 +882,32 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Criterion's plotting library")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-crossbeam-deque-0.7
> +  (package
> +    (name "rust-crossbeam-deque")
> +    (version "0.7.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crossbeam-deque" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0was9x71cz5g1y3670cyy6jdmsdfg6k9mbf0ddz2k1mdd7hx535i"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-epoch" ,rust-crossbeam-epoch-0.7)
> +    ;;     ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-deque")
> +    (synopsis "Concurrent work-stealing deque")
> +    (description "Concurrent work-stealing deque")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-crossbeam-epoch-0.7
>    (package
>      (name "rust-crossbeam-epoch")
> -- 
> 2.24.0
>
> From 5fc955e31dfc61503ee970f0f05c69f33adc6ccb Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:13:29 -0800
> Subject: [PATCH 066/206] gnu: Add rust-crossbeam-queue-0.1.
>
> * gnu/packages/crates-io.scm (rust-crossbeam-queue-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2cf89c9499..ceb880b054 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -938,6 +938,33 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Epoch-based garbage collection")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-crossbeam-queue-0.1
> +  (package
> +    (name "rust-crossbeam-queue")
> +    (version "0.1.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crossbeam-queue" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0jsa9dbxnwqcxfws09vaschf92d4imlbbikmcn4ka8z7rzb9r5vw"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-utils")
> +    (synopsis "Concurrent queues")
> +    (description "Concurrent queues")
> +    (license `(,license:expat
> +               ,license:asl2.0
> +               ,license:bsd-2))))
> +
>  (define-public rust-crossbeam-utils-0.6
>    (package
>      (name "rust-crossbeam-utils")
> -- 
> 2.24.0
>
> From b2e3af1ab54651dfc009ec4e1a524bc8df9a3aa7 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:22:14 -0800
> Subject: [PATCH 068/206] gnu: Add rust-crossbeam-channel-0.3.
>
> * gnu/packages/crates-io.scm (rust-crossbeam-channel-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 92b8e49c66..4e39f32cf7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -882,6 +882,37 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Criterion's plotting library")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-crossbeam-channel-0.3
> +  (package
> +    (name "rust-crossbeam-channel")
> +    (version "0.3.8")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crossbeam-channel" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0azpymyk0ld4akrjfy69ck5pzfgz1f2gb3smm2ywld92vsjd23hg"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-smallvec" ,rust-smallvec-0.6))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-signal-hook" ,rust-signal-hook))))
> +    (home-page
> +     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-channel")
> +    (synopsis
> +     "Multi-producer multi-consumer channels for message passing")
> +    (description
> +     "Multi-producer multi-consumer channels for message passing")
> +    (license `(,license:expat
> +               ,license:asl2.0
> +               ,license:bsd-2))))
> +
>  (define-public rust-crossbeam-deque-0.7
>    (package
>      (name "rust-crossbeam-deque")
> -- 
> 2.24.0
>
> From ceb851c6ce10e36dfb593e6926bc26e24ed95674 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:19:18 -0800
> Subject: [PATCH 067/206] gnu: Add rust-smallvec-0.6.
>
> * gnu/packages/crates-io.scm (rust-smallvec-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index ceb880b054..92b8e49c66 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5026,6 +5026,34 @@ data type.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-smallvec-0.6
> +  (package
> +    (name "rust-smallvec")
> +    (version "0.6.10")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "smallvec" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1dyl43rgzny79jjpgzi07y0ly2ggx1xwsn64csxj0j91bsf6lq5b"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1))))
> +    (home-page
> +     "https://github.com/servo/rust-smallvec")
> +    (synopsis
> +     "Small vector optimization")
> +    (description
> +     "'Small vector' optimization: store up to a small number of items on the
> +stack")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-socket2-0.3
>    (package
>      (name "rust-socket2")
> -- 
> 2.24.0
>
> From 6f402ac6f73340570760b9ada50283c92bcf8a0d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:25:02 -0800
> Subject: [PATCH 069/206] gnu: Add rust-crossbeam-0.7.
>
> * gnu/packages/crates-io.scm (rust-crossbeam-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 4e39f32cf7..44674f3c59 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -882,6 +882,36 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (description "Criterion's plotting library")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-crossbeam-0.7
> +  (package
> +    (name "rust-crossbeam")
> +    (version "0.7.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crossbeam" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0g5jysq5x4gndc1v5sq9n3f1m97k7qihwdpigw6ar6knj14qm09d"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-crossbeam-channel" ,rust-crossbeam-channel-0.3)
> +    ;;     ("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7)
> +    ;;     ("rust-crossbeam-epoch" ,rust-crossbeam-epoch-0.7)
> +    ;;     ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1)
> +    ;;     ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/crossbeam-rs/crossbeam")
> +    (synopsis "Tools for concurrent programming")
> +    (description "Tools for concurrent programming")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-crossbeam-channel-0.3
>    (package
>      (name "rust-crossbeam-channel")
> -- 
> 2.24.0
>
> From b5506bfff598f333a225d32e940b4f2cf08238bd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:29:41 -0800
> Subject: [PATCH 070/206] gnu: Add rust-crc32fast-1.2.
>
> * gnu/packages/crates-io.scm (rust-crc32fast-1.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 44674f3c59..223171363c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -853,6 +853,35 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-crc32fast-1.2
> +  (package
> +    (name "rust-crc32fast")
> +    (version "1.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "crc32fast" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1c9dhkvf3brrzzplcijaywxi2w8wv5578i0ryhcm7x8dmzi5s4ms"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bencher" ,rust-bencher-0.1)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/srijs/rust-crc32fast")
> +    (synopsis
> +     "Fast, SIMD-accelerated CRC32 (IEEE) checksum computation")
> +    (description
> +     "Fast, SIMD-accelerated CRC32 (IEEE) checksum computation")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-criterion-plot-0.3
>    (package
>      (name "rust-criterion-plot")
> -- 
> 2.24.0
>
> From 33b1e492b941ee13821e33a377aa66c4eee80c20 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:36:17 -0800
> Subject: [PATCH 071/206] gnu: Add rust-miniz-oxide-0.2.
>
> * gnu/packages/crates-io.scm (rust-miniz-oxide-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 223171363c..0869fd1c34 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3067,6 +3067,32 @@ streaming API for miniz_oxide.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-miniz-oxide-0.2
> +  (package
> +    (name "rust-miniz-oxide")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "miniz_oxide" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "17f92krv9hhsyc38prpfyn99m2hqhr4fgszpsla66a6gcrnpbhxn"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs (("rust-adler32" ,rust-adler32))))
> +    (home-page
> +     "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide")
> +    (synopsis
> +     "DEFLATE compression and decompression library written in Rust")
> +    (description
> +     "DEFLATE compression and decompression library rewritten in Rust
> +based on miniz.")
> +    (properties '((hidden? . #t)))
> +    (license license:expat)))
> +
>  (define-public rust-miniz-sys-0.1
>    (package
>      (name "rust-miniz-sys")
> -- 
> 2.24.0
>
> From 9dffb1679924e9d71a1c283913e969d7b1d3a312 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:52:25 -0800
> Subject: [PATCH 073/206] gnu: add rust-tokio-sync-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-sync-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 94035281c3..41e6b84029 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5935,6 +5935,35 @@ the current thread.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-tokio-sync-0.1
> +  (package
> +    (name "rust-tokio-sync")
> +    (version "0.1.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-sync" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1ryalh7dcmnz46xj1va8aaw3if6vd4mj87r67dqvrqhpyf7j8qi1"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-fnv" ,rust-fnv-1.0)
> +    ;;     ("rust-futures" ,rust-futures-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ;; Does not exist anymore
> +    ;;     ;; ("rust-loom" ,rust-loom)
> +    ;;     ("rust-tokio" ,rust-tokio)
> +    ;;     ("rust-tokio-mock-task" ,rust-tokio-mock-task-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis "Synchronization utilities")
> +    (description "Synchronization utilities.")
> +    (license license:expat)))
> +
>  (define-public rust-toml-0.5
>    (package
>      (name "rust-toml")
> -- 
> 2.24.0
>
> From 176ecc61a4fba62dab920b1a39cac465ecbed405 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 15:39:58 -0800
> Subject: [PATCH 072/206] gnu: Add rust-miniz-oxide-c-api-0.2.
>
> * gnu/package/crates-io.scm (rust-miniz-oxide-c-api-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0869fd1c34..94035281c3 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3093,6 +3093,36 @@ based on miniz.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-miniz-oxide-c-api-0.2
> +  (package
> +    (name "rust-miniz-oxide-c-api")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "miniz_oxide_c_api" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1514mvlj8vl723xqxnww5cfqr2mhnqqqf18fn3df17yx8racly2v"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-crc32fast" ,rust-crc32fast-1.2)
> +        ("rust-libc" ,rust-libc-0.2.58)
> +        ("rust-miniz-oxide" ,rust-miniz-oxide-0.2))
> +       #:cargo-development-inputs
> +       (("rust-cc" ,rust-cc-1.0))))
> +    (home-page
> +     "https://github.com/Frommi/miniz_oxide/")
> +    (synopsis
> +     "DEFLATE compression and decompression API")
> +    (description
> +     "DEFLATE compression and decompression API designed to be Rust
> +drop-in replacement for miniz")
> +    (license license:expat)))
> +
>  (define-public rust-miniz-sys-0.1
>    (package
>      (name "rust-miniz-sys")
> -- 
> 2.24.0
>
> From 6f6c0a23748a6283e5d94b6aab7378033bcfdf3b Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:24:00 -0800
> Subject: [PATCH 074/206] gnu: Add rust-tokio-reactor-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-reactor-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 41e6b84029..0d8f719e1c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5935,6 +5935,44 @@ the current thread.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-tokio-reactor-0.1
> +  (package
> +    (name "rust-tokio-reactor")
> +    (version "0.1.9")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-reactor" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1khip64cn63xvayq1db68kxcnhgw3cb449a4n2lbw4p1qzx6pwba"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-mio" ,rust-mio-0.6)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-parking-lot" ,rust-parking-lot-0.7)
> +    ;;     ("rust-slab" ,rust-slab-0.4)
> +    ;;     ("rust-tokio-executor" ,rust-tokio-executor-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-sync" ,rust-tokio-sync-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-tokio" ,rust-tokio-0.1)
> +    ;;     ("rust-tokio-io-pool" ,rust-tokio-io-pool-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis
> +     "Event loop that drives Tokio I/O resources")
> +    (description
> +     "Event loop that drives Tokio I/O resources.")
> +    (license license:expat)))
> +
>  (define-public rust-tokio-sync-0.1
>    (package
>      (name "rust-tokio-sync")
> -- 
> 2.24.0
>
> From d8ba3eed8efcf55b5f71bbd49e121e2a864c6c30 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:32:33 -0800
> Subject: [PATCH 075/206] gnu: Add rust-tokio-tcp-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-tcp-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0d8f719e1c..97cd713ab6 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6002,6 +6002,36 @@ the current thread.")
>      (description "Synchronization utilities.")
>      (license license:expat)))
>  
> +(define-public rust-tokio-tcp-0.1
> +  (package
> +    (name "rust-tokio-tcp")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-tcp" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "06a15vg8bcd33ng3h9ldzlq7wl4jsw0p9qpy7v22ls5yah3b250x"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-iovec" ,rust-iovec-0.1)
> +    ;;     ("rust-mio" ,rust-mio-0.6)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-reactor" ,rust-tokio-reactor-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ("rust-tokio" ,rust-tokio-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis "TCP bindings for tokio")
> +    (description "TCP bindings for tokio.")
> +    (license license:expat)))
> +
>  (define-public rust-toml-0.5
>    (package
>      (name "rust-toml")
> -- 
> 2.24.0
>
> From 64d96643f6e2cb40bc4082b146b14a1866df5440 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:38:56 -0800
> Subject: [PATCH 076/206] gnu: Add rust-tokio-threadpool-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-threadpool-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 37 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 97cd713ab6..1bd2b47918 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6032,6 +6032,43 @@ the current thread.")
>      (description "TCP bindings for tokio.")
>      (license license:expat)))
>  
> +(define-public rust-tokio-threadpool-0.1
> +  (package
> +    (name "rust-tokio-threadpool")
> +    (version "0.1.14")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-threadpool" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1wkj3wixicsqvllm8w74b24knw6mdn00zslm8l9fm1p81gr8lmbj"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7)
> +    ;;     ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1)
> +    ;;     ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-slab" ,rust-slab-0.4)
> +    ;;     ("rust-tokio-executor" ,rust-tokio-executor-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ("rust-futures-cpupool" ,rust-futures-cpupool-0.1)
> +    ;;     ("rust-threadpool" ,rust-threadpool-1.7))))
> +    (home-page "https://github.com/tokio-rs/tokio")
> +    (synopsis
> +     "Task scheduler backed by a work-stealing thread pool")
> +    (description
> +     "This package provides a task scheduler backed by a work-stealing thread
> +pool.")
> +    (license license:expat)))
> +
>  (define-public rust-toml-0.5
>    (package
>      (name "rust-toml")
> -- 
> 2.24.0
>
> From 41fb4c5e1223d5e0f024d5d97c9e658b61cda185 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:42:14 -0800
> Subject: [PATCH 077/206] gnu: Add rust-flate2-1.0.
>
> * gnu/packages/crates-io.scm (rust-flate2-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 40 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 40 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 1bd2b47918..7e40a1a3fa 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1601,6 +1601,46 @@ cross platform API.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-flate2-1.0
> +  (package
> +    (name "rust-flate2")
> +    (version "1.0.9")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "flate2" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1n639gc7sbmrkir6pif608xqpwcv60kigmp5cn9x7m8892nk82am"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crc32fast" ,rust-crc32fast-1.2)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-libz-sys" ,rust-libz-sys-1.0)
> +    ;;     ("rust-miniz-sys" ,rust-miniz-sys-0.1)
> +    ;;     ("rust-miniz-oxide-c-api" ,rust-miniz-oxide-c-api-0.2)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
> +    ;;     ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1))))
> +    (home-page
> +     "https://github.com/alexcrichton/flate2-rs")
> +    (synopsis
> +     "Bindings to miniz.c for DEFLATE compression and decompression")
> +    (description
> +     "Bindings to miniz.c for DEFLATE compression and decompression exposed as
> +Reader/Writer streams.  Contains bindings for zlib, deflate, and gzip-based
> +streams.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-fnv-1.0
>    (package
>      (name "rust-fnv")
> -- 
> 2.24.0
>
> From dfb8f903508016ab6c2442009d3bac0db5cbc1b1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:46:04 -0800
> Subject: [PATCH 078/206] gnu: Add rust-stdweb-derive-0.5.
>
> * gnu/packages/crates-io.scm (rust-stdweb-derive-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 7e40a1a3fa..c838d5466f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5401,6 +5401,33 @@ are met.")
>      (properties '((hidden? . #t)))
>      (license (list license:expat license:asl2.0))))
>  
> +(define-public rust-stdweb-derive-0.5
> +  (package
> +    (name "rust-stdweb-derive")
> +    (version "0.5.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "stdweb-derive" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0c1rxx6rqcc4iic5hx320ki3vshpi8k58m5600iqzq4x2zcyn88f"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page "https://github.com/koute/stdweb")
> +    (synopsis "Derive macros for the stdweb crate")
> +    (description
> +     "Derive macros for the @code{stdweb} crate")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-stdweb-internal-runtime-0.1
>    (package
>      (name "rust-stdweb-internal-runtime")
> -- 
> 2.24.0
>
> From cd09665fffc92cd9a001646cb893d48c6b51139c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:52:22 -0800
> Subject: [PATCH 079/206] gnu: Add rust-foreign-types-shared-0.1.
>
> * gnu/packages/crates-io.scm (rust-foreign-types-shared-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index c838d5466f..fb597a611b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1683,6 +1683,29 @@ implementation that is more efficient for smaller hash keys.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-foreign-types-shared-0.1
> +  (package
> +    (name "rust-foreign-types-shared")
> +    (version "0.1.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "foreign-types-shared" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0jxgzd04ra4imjv8jgkmdq59kj8fsz6w4zxsbmlai34h26225c00"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://github.com/sfackler/foreign-types")
> +    (synopsis
> +     "An internal crate used by foreign-types")
> +    (description
> +     "An internal crate used by foreign-types")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-fs-extra-1.1
>    (package
>      (name "rust-fs-extra")
> -- 
> 2.24.0
>
> From 0d7e9d0b7b65691ada9629f7c78570bbb799fa85 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:55:35 -0800
> Subject: [PATCH 080/206] gnu: Add rust-foreign-types-macros-0.1.
>
> * gnu/packages/crates-io.scm (rust-foreign-types-macros-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index fb597a611b..3d0846884a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1662,6 +1662,34 @@ implementation that is more efficient for smaller hash keys.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-foreign-types-macros-0.1
> +  (package
> +    (name "rust-foreign-types-macros")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "foreign-types-macros" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "16yjigjcsklcwy2ad32l24k1nwm9n3bsnyhxc3z9whjbsrj60qk6"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page
> +     "https://github.com/sfackler/foreign-types")
> +    (synopsis
> +     "An internal crate used by foreign-types")
> +    (description
> +     "An internal crate used by foreign-types")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-foreign-types-shared-0.2
>    (package
>      (name "rust-foreign-types-shared")
> -- 
> 2.24.0
>
> From 7f744952a134bab45773690a4d93a5dc710fd87b Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:10:56 -0800
> Subject: [PATCH 082/206] gnu: Add rust-openssl-0.10.
>
> * gnu/packages/crates-io.scm (rust-openssl-0.10): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6e05f87aef..5ec906f2fd 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3693,6 +3693,37 @@ system for OpenSSL.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-openssl-0.10
> +  (package
> +    (name "rust-openssl")
> +    (version "0.10.26")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "openssl" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "11d505lwlrh5a0jc2l6q36gvsaqic3vizq5q860hiqcqkmwwag1s"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bitflags" ,rust-bitflags-1)
> +    ;;     ("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-foreign-types" ,rust-foreign-types-0.3)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-openssl-sys" ,rust-openssl-sys-0.9.49))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-hex" ,rust-hex-0.3)
> +    ;;     ("rust-tempdir" ,rust-tempdir-0.3))))
> +    (home-page
> +     "https://github.com/sfackler/rust-openssl")
> +    (synopsis "OpenSSL bindings")
> +    (description "OpenSSL bindings")
> +    (license license:asl2.0)))
> +
>  (define-public rust-openssl-sys-0.9
>    (package
>      (name "rust-openssl-sys")
> -- 
> 2.24.0
>
> From b116d426fb7dfb1d01439262018f756d461b7b17 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 16:59:46 -0800
> Subject: [PATCH 081/206] gnu: Add rust-foreign-types-0.3.
>
> * gnu/packages/crates-io.scm (rust-foreign-types-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3d0846884a..6e05f87aef 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1662,6 +1662,33 @@ implementation that is more efficient for smaller hash keys.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-foreign-types-0.3
> +  (package
> +    (name "rust-foreign-types")
> +    (version "0.3.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "foreign-types" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1cgk0vyd7r45cj769jym4a6s7vwshvd0z4bqrb92q1fwibmkkwzn"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-foreign-types-macros" ,rust-foreign-types-macros-0.1)
> +    ;;     ("rust-foreign-types-shared" ,rust-foreign-types-shared-0.1))))
> +    (home-page
> +     "https://github.com/sfackler/foreign-types")
> +    (synopsis
> +     "Framework for Rust wrappers over C APIs")
> +    (description
> +     "This package provides a framework for Rust wrappers over C
> +APIs.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-foreign-types-macros-0.1
>    (package
>      (name "rust-foreign-types-macros")
> -- 
> 2.24.0
>
> From e54804d925e2981ef10a408876986847e6ab09f3 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:13:52 -0800
> Subject: [PATCH 083/206] gnu: Add rust-sha1-0.6.
>
> * gnu/packages/crates-io.scm (rust-sha1-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 5ec906f2fd..6ff25c05da 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5280,6 +5280,35 @@ with one of the implemented strategies.")
>       "Token De/Serializer for testing De/Serialize implementations")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-sha1-0.6
> +  (package
> +    (name "rust-sha1")
> +    (version "0.6.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "sha1" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "03gs2q4m67rn2p8xcdfxhip6mpgahdwm12bnb3vh90ahv9grhy95"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-openssl" ,rust-openssl-0.10)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page
> +     "https://github.com/mitsuhiko/rust-sha1")
> +    (synopsis
> +     "Minimal implementation of SHA1 for Rust")
> +    (description
> +     "Minimal implementation of SHA1 for Rust.")
> +    (license license:bsd-3)))
> +
>  (define-public rust-shlex-0.1
>    (package
>      (name "rust-shlex")
> -- 
> 2.24.0
>
> From 1e7f15842243e25b5aa7bdac9a34dac5b364412a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:25:07 -0800
> Subject: [PATCH 085/206] gnu: Add rust-rayon-core-1.5.
>
> * gnu/packages/crates-io.scm (rust-rayon-core-1.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 4c9765264e..2b46682343 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4590,6 +4590,37 @@ and @code{ptrdistance}.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rayon-core-1.5
> +  (package
> +    (name "rust-rayon-core")
> +    (version "1.5.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rayon-core" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1ljva6blaf1wmzvg77h1i9pd0hsmsbbcmdk7sjbw7h2s8gw0vgpb"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7)
> +    ;;     ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1)
> +    ;;     ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-rand-xorshift" ,rust-rand-xorshift-0.2)
> +    ;;     ("rust-scoped-tls" ,rust-scoped-tls-1.0))))
> +    (home-page "https://github.com/rayon-rs/rayon")
> +    (synopsis "Core APIs for Rayon")
> +    (description "Core APIs for Rayon")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-rdrand-0.4
>    (package
>      (name "rust-rdrand")
> -- 
> 2.24.0
>
> From 65797c91878d9ee6051ef159ac4c963038431862 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:15:14 -0800
> Subject: [PATCH 084/206] gnu: Add rust-stdweb-internal-macros-0.2.
>
> * gnu/packages/crates-io.scm (rust-stdweb-internal-macros-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6ff25c05da..4c9765264e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5566,6 +5566,38 @@ are met.")
>       "Derive macros for the @code{stdweb} crate")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-stdweb-internal-macros-0.2
> +  (package
> +    (name "rust-stdweb-internal-macros")
> +    (version "0.2.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "stdweb-internal-macros" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1yjrmkc6sb1035avic383pa3avk2s9k3n17yjcza8yb9nw47v3z6"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-base-x" ,rust-base-x-0.2)
> +    ;;     ("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-sha1" ,rust-sha1-0.6)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page "https://github.com/koute/stdweb")
> +    (synopsis
> +     "Internal procedural macros for the stdweb crate")
> +    (description
> +     "Internal procedural macros for the stdweb crate")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-stdweb-internal-runtime-0.1
>    (package
>      (name "rust-stdweb-internal-runtime")
> -- 
> 2.24.0
>
> From 1f8dd8c223f4182bc83952657003b0ca5b9698ee Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:29:31 -0800
> Subject: [PATCH 086/206] gnu: Add rust-rayon-1.1.
>
> * gnu/packages/crates-io.scm (rust-rayon-1.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2b46682343..f0d2dedf6d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4590,6 +4590,40 @@ and @code{ptrdistance}.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rayon-1.1
> +  (package
> +    (name "rust-rayon")
> +    (version "1.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rayon" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "190hkbcdfvcphyyzkdg52zdia2y9d9yanpm072bmnzbn49p1ic54"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-deque" ,rust-crossbeam-deque-0.6)
> +    ;;     ("rust-either" ,rust-either-1.5)
> +    ;;     ("rust-rayon-core" ,rust-rayon-core-1.5))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-doc-comment" ,rust-doc-comment-0.3)
> +    ;;     ("rust-docopt" ,rust-docopt-1.1)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-rand-xorshift" ,rust-rand-xorshift-0.2)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page "https://github.com/rayon-rs/rayon")
> +    (synopsis
> +     "Simple work-stealing parallelism for Rust")
> +    (description
> +     "Simple work-stealing parallelism for Rust")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-rayon-core-1.5
>    (package
>      (name "rust-rayon-core")
> -- 
> 2.24.0
>
> From 59450f5bf9376974ab34d9e517d06301a30e8d3e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:31:06 -0800
> Subject: [PATCH 087/206] gnu: Add rust-csv-1.1.
>
> * gnu/packages/crates-io.scm (rust-csv-1.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f0d2dedf6d..ccb4518587 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1082,6 +1082,37 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>       "Utilities for concurrent programming")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-csv-1.1
> +  (package
> +    (name "rust-csv")
> +    (version "1.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "csv" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0qxvzq030hi915dszazv6a7f0apzzi7gn193ni0g2lzkawjxck55"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bstr" ,rust-bstr-0.2)
> +    ;;     ("rust-csv-core" ,rust-csv-core-0.1)
> +    ;;     ("rust-itoa" ,rust-itoa-0.4)
> +    ;;     ("rust-ryu" ,rust-ryu-1.0)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))))
> +    (home-page
> +     "https://github.com/BurntSushi/rust-csv")
> +    (synopsis
> +     "Fast CSV parsing with support for serde")
> +    (description
> +     "Fast CSV parsing with support for serde.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-csv-core-0.1
>    (package
>      (name "rust-csv-core")
> -- 
> 2.24.0
>
> From f3ea495d87c97b3711da0af04fef43012005a97b Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:33:58 -0800
> Subject: [PATCH 088/206] gnu: Add rust-tinytemplate-1.0.
>
> * gnu/packages/crates-io.scm (rust-tinytemplate-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index ccb4518587..e3b524a01d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6141,6 +6141,34 @@ in Rust.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-tinytemplate-1.0
> +  (package
> +    (name "rust-tinytemplate")
> +    (version "1.0.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tinytemplate" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "084w41m75i95sdid1wwlnav80jsl1ggyryl4nawxvb6amigvfx25"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-serde" ,rust-serde-1.0)
> +        ("rust-serde-json" ,rust-serde-json-1.0))
> +       #:cargo-development-inputs
> +       (("rust-criterion" ,rust-criterion-0.2)
> +        ("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page
> +     "https://github.com/bheisler/TinyTemplate")
> +    (synopsis "Simple, lightweight template engine")
> +    (description
> +     "Simple, lightweight template engine")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  ;; Cyclic dependency with tokio-io
>  (define-public rust-tokio-codec-0.1
>    (package
> -- 
> 2.24.0
>
> From 7cbc029d098d3445f6d5fda0ab7572b4bb03459d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:35:40 -0800
> Subject: [PATCH 089/206] gnu: Add rust-approx-0.3.
>
> * gnu/packages/crates-io.scm (rust-approx-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e3b524a01d..f7730db82d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -126,6 +126,32 @@ text or blue underlined text, on ANSI terminals.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-approx-0.3
> +  (package
> +    (name "rust-approx")
> +    (version "0.3.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "approx" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1hx580xjdxl3766js9b49rnbnmr8gw8c060809l43k9f0xshprph"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-num-complex" ,rust-num-complex-0.2)
> +    ;;     ("rust-num-traits" ,rust-num-traits-0.2))))
> +    (home-page
> +     "https://github.com/brendanzab/approx")
> +    (synopsis
> +     "Approximate floating point equality comparisons and assertions")
> +    (description
> +     "Approximate floating point equality comparisons and assertions.")
> +    (license license:asl2.0)))
> +
>  (define-public rust-arrayvec-0.4
>    (package
>      (name "rust-arrayvec")
> -- 
> 2.24.0
>
> From 2e58ed5e49641646e88e37ad70c287db86b7d147 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:38:47 -0800
> Subject: [PATCH 090/206] gnu: Add rust-criterion-0.2.
>
> * gnu/packages/crates-io.scm (rust-criterion-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 48 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 48 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f7730db82d..d15e514a17 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -908,6 +908,54 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>       "Fast, SIMD-accelerated CRC32 (IEEE) checksum computation")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-criterion-0.2
> +  (package
> +    (name "rust-criterion")
> +    (version "0.2.11")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "criterion" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1543wlpc4p1kz7sqqa7ylr8bkdr8l4f34hy4bxj7krpkahwhaqq3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-atty" ,rust-atty-0.2)
> +    ;;     ("rust-cast" ,rust-cast-0.2)
> +    ;;     ("rust-clap" ,rust-clap-2)
> +    ;;     ("rust-criterion-plot" ,rust-criterion-plot-0.3)
> +    ;;     ("rust-csv" ,rust-csv-1.1)
> +    ;;     ("rust-itertools" ,rust-itertools-0.8)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-num-traits" ,rust-num-traits-0.2)
> +    ;;     ("rust-rand-core" ,rust-rand-core-0.5)
> +    ;;     ("rust-rand-os" ,rust-rand-os-0.2)
> +    ;;     ("rust-rand-xoshiro" ,rust-rand-xoshiro-0.3)
> +    ;;     ("rust-rayon" ,rust-rayon-1.1)
> +    ;;     ("rust-rayon-core" ,rust-rayon-core-1.5)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-tinytemplate" ,rust-tinytemplate-1.0)
> +    ;;     ("rust-walkdir" ,rust-walkdir-2.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-approx" ,rust-approx-0.3)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-tempdir" ,rust-tempdir-0.3))))
> +    (home-page
> +     "https://bheisler.github.io/criterion.rs/book/index.html")
> +    (synopsis
> +     "Statistics-driven micro-benchmarking library")
> +    (description
> +     "Statistics-driven micro-benchmarking library")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-criterion-plot-0.3
>    (package
>      (name "rust-criterion-plot")
> -- 
> 2.24.0
>
> From 590f2a342ab5b35a7145a619cf0e6c21d0386dd6 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:45:51 -0800
> Subject: [PATCH 093/206] gnu: Add rust-base64-0.10.
>
> * gnu/packages/crates-io.scm (rust-base64-0.10): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 712b679487..e4ecb475a9 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -293,6 +293,34 @@ support.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-base64-0.10
> +  (package
> +    (name "rust-base64")
> +    (version "0.10.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "base64" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "13k6bvd3n6dm7jqn9x918w65dd9xhx454bqphbnv0bkd6n9dj98b"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-criterion" ,rust-criterion-0.2)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/marshallpierce/rust-base64")
> +    (synopsis
> +     "Encodes and decodes base64 as bytes or utf8")
> +    (description
> +     "Encodes and decodes base64 as bytes or utf8")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-bencher-0.1
>    (package
>      (name "rust-bencher")
> -- 
> 2.24.0
>
> From 5e5a9a89e91f2da00888404da18f1962d23c90e3 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:41:51 -0800
> Subject: [PATCH 092/206] gnu: Add rust-wasm-bindgen-backend-0.2.
>
> * gnu/packages/crates-io.scm (rust-wasm-bindgen-backend-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 650e90aea4..712b679487 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7068,6 +7068,37 @@ in Rust.")
>      (properties '((hidden? . #t)))
>      (license license:asl2.0)))
>  
> +(define-public rust-wasm-bindgen-backend-0.2
> +  (package
> +    (name "rust-wasm-bindgen-backend")
> +    (version "0.2.48")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wasm-bindgen-backend" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1qxqkbjkjg4pphhcr91nk95c0gizx77dyq24mmijqnwzxxqc30jx"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bumpalo" ,rust-bumpalo-2.5)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15)
> +    ;;     ("rust-wasm-bindgen-shared" ,rust-wasm-bindgen-shared-0.2))))
> +    (home-page
> +     "https://rustwasm.github.io/wasm-bindgen/")
> +    (synopsis
> +     "Backend code generation of the wasm-bindgen tool")
> +    (description
> +     "Backend code generation of the wasm-bindgen tool")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-wasm-bindgen-shared-0.2
>    (package
>      (name "rust-wasm-bindgen-shared")
> -- 
> 2.24.0
>
> From c94cbdd152ffed4581ec0015240a7ba7ce89a520 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:40:57 -0800
> Subject: [PATCH 091/206] gnu: Add rust-bumpalo-2.5.
>
> * gnu/packages/crates-io.scm (rust-bumpalo-2.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d15e514a17..650e90aea4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -453,6 +453,31 @@ UTF-8.")
>      (properties '((hidden? . #t)))
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-bumpalo-2.5
> +  (package
> +    (name "rust-bumpalo")
> +    (version "2.5.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bumpalo" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "018b5calz3895v04shk9bn7i73r4zf8yf7p1dqg92s3xya13vm1c"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-criterion" ,rust-criterion-0.2)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page "https://github.com/fitzgen/bumpalo")
> +    (synopsis
> +     "Fast bump allocation arena for Rust")
> +    (description
> +     "This package provides a fast bump allocation arena for Rust.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-byteorder-1.3
>    (package
>      (name "rust-byteorder")
> -- 
> 2.24.0
>
> From 78e0147194a2b7baee5364070977bd268dd97cc2 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:50:26 -0800
> Subject: [PATCH 094/206] gnu: Add rust-wasm-bindgen-macro-support-0.2.
>
> * gnu/packages/crates-io.scm (rust-wasm-bindgen-macro-support-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e4ecb475a9..4586172a93 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7127,6 +7127,37 @@ in Rust.")
>       "Backend code generation of the wasm-bindgen tool")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-wasm-bindgen-macro-support-0.2
> +  (package
> +    (name "rust-wasm-bindgen-macro-support")
> +    (version "0.2.48")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wasm-bindgen-macro-support" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1mxi6rj11k67sks88pfqiqylnijxmb1s0gcgpj8mzfj5gvkqzkwm"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15)
> +    ;;     ("rust-wasm-bindgen-backend" ,rust-wasm-bindgen-backend-0.2)
> +    ;;     ("rust-wasm-bindgen-shared" ,rust-wasm-bindgen-shared-0.2))))
> +    (home-page
> +     "https://rustwasm.github.io/wasm-bindgen/")
> +    (synopsis
> +     "The @code{#[wasm_bindgen]} macro")
> +    (description
> +     "The part of the implementation of the @code{#[wasm_bindgen]}
> +attribute that is not in the shared backend crate.")
> +    (properties '((hidden? . #t)))
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-wasm-bindgen-shared-0.2
>    (package
>      (name "rust-wasm-bindgen-shared")
> -- 
> 2.24.0
>
> From bdfc5d50a9a84f774485e2587a487f51b299c947 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:57:29 -0800
> Subject: [PATCH 096/206] gnu: Add rust-wasm-bindgen-0.2.
>
> * gnu/packages/crates-io.scm (rust-wasm-bindgen-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8c8789dd9a..754b459c7d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7125,6 +7125,33 @@ in Rust.")
>      (properties '((hidden? . #t)))
>      (license license:asl2.0)))
>  
> +(define-public rust-wasm-bindgen-0.2
> +  (package
> +    (name "rust-wasm-bindgen")
> +    (version "0.2.47")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wasm-bindgen" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0xsqz39v8nnlmiflybjpy7hvjdhmdb01j3zi0p5p6135rjc9j0i2"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-wasm-bindgen-macro"
> +    ;;      ,rust-wasm-bindgen-macro))))
> +    (home-page "https://rustwasm.github.io/")
> +    (synopsis
> +     "Easy support for interacting between JS and Rust")
> +    (description
> +     "Easy support for interacting between JS and Rust.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-wasm-bindgen-backend-0.2
>    (package
>      (name "rust-wasm-bindgen-backend")
> -- 
> 2.24.0
>
> From 6e6dac1bc2eb8927f3cb430eb6d0ef8b365456cb Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:04:31 -0800
> Subject: [PATCH 097/206] gnu: Add rust-console-error-panic-hook-0.1.
>
> * gnu/packages/crates-io.scm (rust-console-error-panic-hook-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 754b459c7d..079b749171 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -889,6 +889,33 @@ need compiler-rt intrinsics.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-console-error-panic-hook-0.1
> +  (package
> +    (name "rust-console-error-panic-hook")
> +    (version "0.1.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "console_error_panic_hook" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "04d2narcrzk9bnddz17rr2l819l82pr0h6d98s2w9q236n87dndq"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))))
> +    (home-page
> +     "https://github.com/rustwasm/console_error_panic_hook")
> +    (synopsis
> +     "Logs panics to console.error")
> +    (description
> +     "This package provides a panic hook for @code{wasm32-unknown-unknown}
> +that logs panics to @code{console.error}")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-constant-time-eq-0.1
>    (package
>      (name "rust-constant-time-eq")
> -- 
> 2.24.0
>
> From 2b8d5521f0eb68d16beebc3ed9783d2735adbf64 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:06:55 -0800
> Subject: [PATCH 098/206] gnu: Add rust-wasm-bindgen-futures-0.3.
>
> * gnu/packages/crates-io.scm (rust-wasm-bindgen-futures-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 079b749171..3f3a077f73 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7210,6 +7210,40 @@ in Rust.")
>       "Backend code generation of the wasm-bindgen tool")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-wasm-bindgen-futures-0.3
> +  (package
> +    (name "rust-wasm-bindgen-futures")
> +    (version "0.3.24")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wasm-bindgen-futures" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0bf9x6qfjczspc4zs605z1n4j15cdd8kk2z7rah0yggw8b6zl5nc"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-futures-channel-preview"
> +    ;;      ,rust-futures-channel-preview-0.3)
> +    ;;     ("rust-futures-util-preview" ,rust-futures-util-preview-0.3)
> +    ;;     ("rust-js-sys" ,rust-js-sys)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-wasm-bindgen-test"
> +    ;;      ,rust-wasm-bindgen-test-0.2))))
> +    (home-page
> +     "https://rustwasm.github.io/wasm-bindgen/")
> +    (synopsis
> +     "Bridging the gap between Rust Futures and JavaScript Promises")
> +    (description
> +     "Bridging the gap between Rust Futures and JavaScript Promises")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-wasm-bindgen-macro-support-0.2
>    (package
>      (name "rust-wasm-bindgen-macro-support")
> -- 
> 2.24.0
>
> From ed82b84ad90d260dd487a3a00b75f3d40d717dfd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 17:54:51 -0800
> Subject: [PATCH 095/206] gnu: Add rust-trybuild-1.0.
>
> * gnu/packages/crates-io.scm (rust-trybuild-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 4586172a93..8c8789dd9a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6662,6 +6662,35 @@ serializing Rust structures.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-trybuild-1.0
> +  (package
> +    (name "rust-trybuild")
> +    (version "1.0.9")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "trybuild" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0df6ipayif05xn61iavdb0dcshm9y6wmcd140pp7dl91mirygs7j"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-glob" ,rust-glob-0.3)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-termcolor" ,rust-termcolor-1.0)
> +    ;;     ("rust-toml" ,rust-toml-0.5))))
> +    (home-page "https://github.com/dtolnay/trybuild")
> +    (synopsis
> +     "Test harness for ui tests of compiler diagnostics")
> +    (description
> +     "Test harness for ui tests of compiler diagnostics")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-typeable-0.1
>    (package
>      (name "rust-typeable")
> -- 
> 2.24.0
>
> From 5407b6eeb7b9e8dcf5782c2606f494def143ac13 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:10:35 -0800
> Subject: [PATCH 099/206] gnu: Add rust-js-sys-0.3.
>
> * gnu/packages/crates-io.scm (rust-js-sys-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3f3a077f73..979b69b867 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2773,6 +2773,39 @@ primitives to an @code{io::Write}.")
>          (base32
>           "18g7p2hrb3dk84z3frfgmszfc9hjb4ps9vp99qlb1kmf9gm8hc5f"))))))
>  
> +(define-public rust-js-sys-0.3
> +  (package
> +    (name "rust-js-sys")
> +    (version "0.3.24")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "js-sys" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "045fgafggkjdfg4f33vb87silyl9xpbifrhx1ciqi4wvm90nzhga"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-wasm-bindgen-futures"
> +    ;;      ,rust-wasm-bindgen-futures-0.3)
> +    ;;     ("rust-wasm-bindgen-test"
> +    ;;      ,rust-wasm-bindgen-test-0.2))))
> +    (home-page
> +     "https://rustwasm.github.io/wasm-bindgen/")
> +    (synopsis
> +     "Bindings for all JS global objects and functions in WASM")
> +    (description
> +     "Bindings for all JS global objects and functions in all JS environments
> +like Node.js and browsers, built on @code{#[wasm_bindgen]} using the
> +wasm-bindgen crate.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-jemalloc-sys-0.3
>    (package
>      (name "rust-jemalloc-sys")
> -- 
> 2.24.0
>
> From 5a773c1ace3f912e9e97c351688732cb322feb79 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:12:58 -0800
> Subject: [PATCH 100/206] gnu: Add rust-wasm-bindgen-test-0.2.
>
> * gnu/packages/crates-io.scm (rust-wasm-bindgen-test-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 979b69b867..01464eced3 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7329,6 +7329,38 @@ attribute that is not in the shared backend crate.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-wasm-bindgen-test-0.2
> +  (package
> +    (name "rust-wasm-bindgen-test")
> +    (version "0.2.47")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wasm-bindgen-test" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1w699jyhi3njdccbqsfdz5dq68fqwsm38xlw2dm2hgd3hvvfzk3x"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-console-error-panic-hook"
> +    ;;      ,rust-console-error-panic-hook-0.1)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-js-sys" ,rust-js-sys-0.3)
> +    ;;     ("rust-scoped-tls" ,rust-scoped-tls-1.0)
> +    ;;     ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
> +    ;;     ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.3)
> +    ;;     ("rust-wasm-bindgen-test-macro" ,rust-wasm-bindgen-test-macro-0.2))))
> +    (home-page
> +     "https://github.com/rustwasm/wasm-bindgen")
> +    (synopsis
> +     "Internal testing crate for wasm-bindgen")
> +    (description
> +     "Internal testing crate for wasm-bindgen")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-wasm-bindgen-test-macro-0.2
>    (package
>      (name "rust-wasm-bindgen-test-macro")
> -- 
> 2.24.0
>
> From e38b4a28af57fcd69a8937a090d28fad4c5e50b2 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:17:18 -0800
> Subject: [PATCH 101/206] gnu: Add rust-core-arch-0.1.
>
> * gnu/packages/crates-io.scm (rust-core-arch-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 01464eced3..52fe3a57b8 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -938,6 +938,32 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
>      (properties '((hidden? . #t)))
>      (license license:cc0)))
>  
> +(define-public rust-core-arch-0.1
> +  (package
> +    (name "rust-core-arch")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "core_arch" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "04vdvr9vj0f1cv2p54nsszmrrk9w1js4c0z4i0bdlajl1lydslim"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.2))))
> +    (home-page
> +     "https://github.com/rust-lang/stdarch")
> +    (synopsis
> +     "Rust's core library architecture-specific intrinsics")
> +    (description
> +     "@code{core::arch} - Rust's core library architecture-specific
> +intrinsics.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-core-foundation-sys-0.6
>    (package
>      (name "rust-core-foundation-sys")
> -- 
> 2.24.0
>
> From 834fef9d9346e8efd22574e3ad2c2d0ec78b03a3 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:20:14 -0800
> Subject: [PATCH 102/206] gnu: Add rust-envmnt-0.6.
>
> * gnu/packages/crates-io.scm (rust-envmnt-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 52fe3a57b8..2aed91589a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1722,6 +1722,31 @@ char, u8 and u16.")
>  is configured via an environment variable.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-envmnt-0.6
> +  (package
> +    (name "rust-envmnt")
> +    (version "0.6.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "envmnt" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "12zkq3p999bypyxmjnpiqw9r3hmifb3bcikd7j3as1fdcbq01fyl"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-indexmap" ,rust-indexmap-1.0))))
> +    (home-page
> +     "https://github.com/sagiegurari/envmnt")
> +    (synopsis
> +     "Environment variables utility functions")
> +    (description
> +     "Environment variables utility functions.")
> +    (license license:asl2.0)))
> +
>  (define-public rust-fallible-iterator-0.2
>    (package
>      (name "rust-fallible-iterator")
> -- 
> 2.24.0
>
> From c3d1c3a2ac770ce38685fa514e7b1368748e83df Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:24:01 -0800
> Subject: [PATCH 103/206] gnu: Add rust-ci-info-0.3.
>
> * gnu/packages/crates-io.scm (rust-ci-info-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2aed91589a..148e3e7c58 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -708,6 +708,32 @@ depending on a large number of #[cfg] parameters.  Structured like an
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-ci-info-0.3
> +  (package
> +    (name "rust-ci-info")
> +    (version "0.3.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "ci-info" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "00pr17g6q6i752acrkycg0hkq3lm0p634anm41g3m6lqg8q83s75"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page
> +     "https://github.com/sagiegurari/ci_info")
> +    (synopsis
> +     "Provides current CI environment information")
> +    (description
> +     "This package provides current CI environment information.")
> +    (license license:asl2.0)))
> +
>  (define-public rust-clang-sys-0.28
>    (package
>      (name "rust-clang-sys")
> -- 
> 2.24.0
>
> From 99e6689553b7448b3a91a3c7cf9bd3e982e9efe0 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:32:17 -0800
> Subject: [PATCH 105/206] gnu: Add rust-scroll-0.9.
>
> * gnu/packages/crates-io.scm (rust-scroll-0.9): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index c2ecdab3cc..b6e782e062 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5443,6 +5443,35 @@ with one of the implemented strategies.")
>           (base32
>            "09sy9wbqp409pkwmqni40qmwa99ldqpl48pp95m1xw8sc19qy9cl"))))))
>  
> +(define-public rust-scroll-0.9
> +  (package
> +    (name "rust-scroll")
> +    (version "0.9.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "scroll" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "10q3w86bn22xrjlfg1c90dfi9c26qjkzn26nad0i9z8pxwad311g"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-scroll-derive" ,rust-scroll-derive-0.9))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-rayon" ,rust-rayon-1.1)
> +    ;;     ("rust-rustc-version" ,rust-rustc-version-0.2))))
> +    (home-page "https://github.com/m4b/scroll")
> +    (synopsis
> +     "Read/Write traits for byte buffers")
> +    (description
> +     "This package provides a suite of powerful, extensible, generic,
> +endian-aware Read/Write traits for byte buffers.")
> +    (license license:expat)))
> +
>  (define-public rust-scroll-derive-0.9
>    (package
>      (name "rust-scroll-derive")
> -- 
> 2.24.0
>
> From d92703d15d8f1c29776bf86869034aa679654f01 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:34:39 -0800
> Subject: [PATCH 106/206] gnu: Add rust-goblin-0.0.
>
> * gnu/packages/crates-io.scm (rust-goblin-0.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b6e782e062..9839955b4f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2446,6 +2446,33 @@ the process of matching one or more glob patterns against a single candidate
>  path simultaneously, and returning all of the globs that matched.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-goblin-0.0
> +  (package
> +    (name "rust-goblin")
> +    (version "0.0.23")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "goblin" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1g92bl76dgc3v3rins61l811pkwsl3jif1x35h2jx33b7dsv8mmc"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-plain" ,rust-plain-0.2)
> +    ;;     ("rust-scroll" ,rust-scroll-0.9))))
> +    (home-page "https://github.com/m4b/goblin")
> +    (synopsis
> +     "Binary parsing and loading")
> +    (description
> +     "An impish, cross-platform, ELF, Mach-o, and PE binary parsing and
> +loading crate.")
> +    (license license:expat)))
> +
>  (define-public rust-grep-cli-0.1
>    (package
>      (name "rust-grep-cli")
> -- 
> 2.24.0
>
> From 69e3ba825c21ab8833b0ecab4378489a0ef43134 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:38:09 -0800
> Subject: [PATCH 107/206] gnu: Add rust-test-assembler-0.1.
>
> * gnu/packages/crates-io.scm (rust-test-assembler-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9839955b4f..a3b2aff256 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6382,6 +6382,32 @@ return values to @code{std::io::Result} to indicate success or failure.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-test-assembler-0.1
> +  (package
> +    (name "rust-test-assembler")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "test-assembler" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1sdx9hk0dk3z9crm8834ysyxsi92chls8arpd0gs796kis6lik2w"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3))))
> +    (home-page
> +     "https://github.com/luser/rust-test-assembler")
> +    (synopsis
> +     "Build complex binary streams")
> +    (description
> +     "This package provides a set of types for building complex binary
> +streams.")
> +    (license license:expat)))
> +
>  (define-public rust-textwrap-0.11
>    (package
>      (name "rust-textwrap")
> -- 
> 2.24.0
>
> From 7396df99feca3fb0abc5baa9d540050f787b5aa1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:30:48 -0800
> Subject: [PATCH 104/206] gnu: Add rust-scroll-derive-0.9.
>
> * gnu/packages/crates-io.scm (rust-scroll-derive-0.9): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 148e3e7c58..c2ecdab3cc 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5443,6 +5443,36 @@ with one of the implemented strategies.")
>           (base32
>            "09sy9wbqp409pkwmqni40qmwa99ldqpl48pp95m1xw8sc19qy9cl"))))))
>  
> +(define-public rust-scroll-derive-0.9
> +  (package
> +    (name "rust-scroll-derive")
> +    (version "0.9.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "scroll_derive" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1jqg5mm8nvii6avl1z1rc89agzh2kwkppgpsnwfakxg78mnaj6lg"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-scroll" ,rust-scroll-0.9))))
> +    (home-page
> +     "https://github.com/m4b/scroll_derive")
> +    (synopsis
> +     "Derive Pread and Pwrite traits from the scroll crate")
> +    (description
> +     "This package provides a macros 1.1 derive implementation for Pread and
> +Pwrite traits from the scroll crate.")
> +    (license license:expat)))
> +
>  (define-public rust-security-framework-sys-0.3
>    (package
>      (name "rust-security-framework-sys")
> -- 
> 2.24.0
>
> From 9bd6fd4da08b4626bce44d68b69ed0a387e9fb61 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:39:54 -0800
> Subject: [PATCH 108/206] gnu: Add rust-typed-arena-1.4.
>
> * gnu/packages/crates-io.scm (rust-typed-arena-1.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a3b2aff256..054db90abf 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6959,6 +6959,28 @@ serializing Rust structures.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-typed-arena-1.4
> +  (package
> +    (name "rust-typed-arena")
> +    (version "1.4.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "typed-arena" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1i8yczhwcy0nnrxqck1lql3i7hvg95l0vw0dbgfb92zkms96mh66"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://github.com/SimonSapin/rust-typed-arena")
> +    (synopsis
> +     "The arena allocator")
> +    (description
> +     "The arena, a fast but limited type of allocator")
> +    (license license:expat)))
> +
>  (define-public rust-typemap-0.3
>    (package
>      (name "rust-typemap")
> -- 
> 2.24.0
>
> From 18c53394e1e9ec599ab30750da2ab1988f41a069 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:44:32 -0800
> Subject: [PATCH 110/206] gnu: Add rust-intervaltree-0.2.
>
> * gnu/packages/crates-io.scm (rust-intervaltree-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 764eb9601f..40fc5d5ff1 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2802,6 +2802,32 @@ renamed to indexmap.")
>       "This package provides a snapshot testing library for Rust")
>      (license license:asl2.0)))
>  
> +(define-public rust-intervaltree-0.2
> +  (package
> +    (name "rust-intervaltree")
> +    (version "0.2.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "intervaltree" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "10k40gsv79kwnsqrzwmnmm6psa5fqws8yggavmbggvymv16hffdg"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-smallvec" ,rust-smallvec-0.6))))
> +    (home-page
> +     "https://github.com/main--/rust-intervaltree")
> +    (synopsis
> +     "Immutable interval trees")
> +    (description
> +     "This package provides a simple and generic implementation of an
> +immutable interval tree.")
> +    (license license:expat)))
> +
>  (define-public rust-iovec-0.1
>    (package
>      (name "rust-iovec")
> -- 
> 2.24.0
>
> From 6b9e4131c901ddcda0c4f219ced7a83c28cdfe6e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:46:28 -0800
> Subject: [PATCH 111/206] gnu: Add rust-lazycell-1.2.
>
> * gnu/packages/crates-io.scm (rust-lazycell-1.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 40fc5d5ff1..bc4afbe7af 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3097,6 +3097,29 @@ requires non-const function calls to be computed.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-lazycell-1.2
> +  (package
> +    (name "rust-lazycell")
> +    (version "1.2.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "lazycell" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0gvqycmpv7parc98i6y64ai7rvxrn1947z2a6maa02g4kvxdd55j"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs (("rust-clippy" ,rust-clippy-0.0))))
> +    (home-page "https://github.com/indiv0/lazycell")
> +    (synopsis
> +     "Lazily filled Cell struct")
> +    (description
> +     "This package provides a library providing a lazily filled Cell struct.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-libc-0.2
>    (package
>      (name "rust-libc")
> -- 
> 2.24.0
>
> From 30e2ee1e0c817763a237ada12794e1d8835e57af Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:51:32 -0800
> Subject: [PATCH 112/206] gnu: Add rust-half-1.3.
>
> * gnu/packages/crates-io.scm (rust-half-1.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index bc4afbe7af..64e3c5b59e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2597,6 +2597,31 @@ focus on line oriented search.")
>      (description "Use PCRE2 with the grep crate.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-half-1.3
> +  (package
> +    (name "rust-half")
> +    (version "1.3.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "half" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0diqajg3mgar511hxswl4kgqqz9a026yvn3103x5h2smknlc4lwk"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs (("rust-serde" ,rust-serde-1.0))))
> +    (home-page
> +     "https://github.com/starkat99/half-rs")
> +    (synopsis
> +     "Half-precision floating point f16 type")
> +    (description
> +     "Half-precision floating point f16 type for Rust implementing the
> +IEEE 754-2008 binary16 type.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-heapsize-0.4
>    (package
>      (name "rust-heapsize")
> -- 
> 2.24.0
>
> From dc62c22d01b219bddfb184014fb8f9bea8034230 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:42:22 -0800
> Subject: [PATCH 109/206] gnu: Add rust-gimli-0.18.
>
> * gnu/packages/crates-io.scm (rust-gimli-0.18): New variable.
> ---
>  gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 39 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 054db90abf..764eb9601f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2377,6 +2377,45 @@ archive to be linked into Rustcode.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-gimli-0.18
> +  (package
> +    (name "rust-gimli")
> +    (version "0.18.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "gimli" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ma1zg2klqr47rasm7jn3zzd1j1pj2a8wkfbv5zsx10qh43phy4k"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-arrayvec" ,rust-arrayvec-0.4)
> +    ;;     ("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-fallible-iterator" ,rust-fallible-iterator-0.2)
> +    ;;     ("rust-indexmap" ,rust-indexmap-1.0)
> +    ;;     ("rust-stable-deref-trait" ,rust-stable-deref-trait-1.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-crossbeam" ,rust-crossbeam-0.7)
> +    ;;     ("rust-getopts" ,rust-getopts-0.2)
> +    ;;     ("rust-memmap" ,rust-memmap-0.7)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-object" ,rust-object)
> +    ;;     ("rust-rayon" ,rust-rayon-1.1)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-test-assembler" ,rust-test-assembler-0.1)
> +    ;;     ("rust-typed-arena" ,rust-typed-arena-1.4))))
> +    (home-page "https://github.com/gimli-rs/gimli")
> +    (synopsis
> +     "Reading and writing the DWARF debugging format")
> +    (description
> +     "This package provides a library for reading and writing the
> +DWARF debugging format.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-glob-0.3
>    (package
>      (name "rust-glob")
> -- 
> 2.24.0
>
> From bcc029d031db08c8645a11ee92345e90554a93bf Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:56:39 -0800
> Subject: [PATCH 114/206] gnu: Add rust-erased-serde-0.3.
>
> * gnu/packages/crates-io.scm (rust-erased-serde-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 7210047101..dee42983f2 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1773,6 +1773,35 @@ is configured via an environment variable.")
>       "Environment variables utility functions.")
>      (license license:asl2.0)))
>  
> +(define-public rust-erased-serde-0.3
> +  (package
> +    (name "rust-erased-serde")
> +    (version "0.3.9")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "erased-serde" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0q7bnxs5zskfq5iillig55g7891dllcxh2p8y8k1p2j72syf9viv"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-cbor" ,rust-serde-cbor-0.10)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page
> +     "https://github.com/dtolnay/erased-serde")
> +    (synopsis
> +     "Type-erased Serialize and Serializer traits")
> +    (description
> +     "Type-erased Serialize and Serializer traits")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-fallible-iterator-0.2
>    (package
>      (name "rust-fallible-iterator")
> -- 
> 2.24.0
>
> From 18484fe9d09c659ff713c9b7fe9cfd240a2fe60a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:02:15 -0800
> Subject: [PATCH 117/206] gnu: Add rust-object-0.12.
>
> * gnu/packages/crates-io.scm (rust-object-0.12): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index de0bc8e2e4..05ae485539 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4114,6 +4114,37 @@ implementation (which is unstable / requires nightly).")
>      (properties '((hidden? . #t)))
>      (license (list license:expat license:asl2.0))))
>  
> +(define-public rust-object-0.12
> +  (package
> +    (name "rust-object")
> +    (version "0.12.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "object" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1dch1ajjp05d16lig1dnvisfis0hrlrvw9lcwy1hwgdcym3z6jnz"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-flate2" ,rust-flate2-1.0)
> +    ;;     ("rust-goblin" ,rust-goblin-0.0)
> +    ;;     ("rust-parity-wasm" ,rust-parity-wasm-0.40)
> +    ;;     ("rust-scroll" ,rust-scroll-0.9)
> +    ;;     ("rust-uuid" ,rust-uuid-0.7))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-memmap" ,rust-memmap-0.7))))
> +    (home-page "https://github.com/gimli-rs/object")
> +    (synopsis
> +     "Parse object file formats")
> +    (description
> +     "This package provides a unified interface for parsing object file
> +formats.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-openssl-probe-0.1
>    (package
>      (name "rust-openssl-probe")
> -- 
> 2.24.0
>
> From 96e6a317816dcadac212855eeefe169a4e56c79e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:57:25 -0800
> Subject: [PATCH 115/206] gnu: Add rust-slog-2.4.
>
> * gnu/packages/crates-io.scm (rust-slog-2.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index dee42983f2..2a3613b18a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5964,6 +5964,32 @@ data type.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-slog-2.4
> +  (package
> +    (name "rust-slog")
> +    (version "2.4.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "slog" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "13jh74jlckzh5cygkhs0k4r82wnmw8ha2km829xwslhr83n2w6hy"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-erased-serde" ,rust-erased-serde-0.3))))
> +    (home-page "https://github.com/slog-rs/slog")
> +    (synopsis
> +     "Structured, extensible, composable logging for Rust")
> +    (description
> +     "Structured, extensible, composable logging for Rust")
> +    (license `(,license:mpl2.0
> +               ,license:expat
> +               ,license:asl2.0))))
> +
>  (define-public rust-smallvec-0.6
>    (package
>      (name "rust-smallvec")
> -- 
> 2.24.0
>
> From 7070bea5a87527108a99514a159022d402c7522d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:00:03 -0800
> Subject: [PATCH 116/206] gnu: Add rust-uuid-0.7.
>
> * gnu/packages/crates-io.scm (rust-uuid-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2a3613b18a..de0bc8e2e4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7447,6 +7447,41 @@ untrusted inputs in Rust.")
>       "Convert ranges of Unicode codepoints to UTF-8 byte ranges.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-uuid-0.7
> +  (package
> +    (name "rust-uuid")
> +    (version "0.7.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "uuid" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ank4xk20x3nrz926w8j9mz53bi3v8bykxmhlq2pffa8xc8wdnwh"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-md5" ,rust-md5-0.6)
> +    ;;     ("rust-rand" ,rust-rand-0.6)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-sha1" ,rust-sha1-0.6)
> +    ;;     ("rust-slog" ,rust-slog-2.4)
> +    ;;     ("rust-winapi" ,rust-winapi-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page "https://github.com/uuid-rs/uuid")
> +    (synopsis
> +     "Generate and parse UUIDs")
> +    (description
> +     "This package provides a library to generate and parse UUIDs.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-vcpkg-0.2
>    (package
>      (name "rust-vcpkg")
> -- 
> 2.24.0
>
> From 798590b1c30f369024ab04629d28976ef709a2ae Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 18:54:04 -0800
> Subject: [PATCH 113/206] gnu: Add rust-serde-cbor-0.10.
>
> * gnu/packages/crates-io.scm (rust-serde-cbor-0.10): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 64e3c5b59e..7210047101 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5777,6 +5777,32 @@ Pwrite traits from the scroll crate.")
>       "Optimized handling of @code{&[u8]} and @code{Vec<u8>} for Serde")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-serde-cbor-0.10
> +  (package
> +    (name "rust-serde-cbor")
> +    (version "0.10.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "serde_cbor" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0jcb4j637vdlqk2z38jixaqmp6f92h36r17kclv5brjay32911ii"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-half" ,rust-half-1.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page "https://github.com/pyfisch/cbor")
> +    (synopsis "CBOR support for serde")
> +    (description "CBOR support for serde.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-serde-derive-1.0
>    (package
>      (name "rust-serde-derive")
> -- 
> 2.24.0
>
> From e77614c9d673a4660f40a28cf1cb9990fe2f70f7 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:10:05 -0800
> Subject: [PATCH 118/206] gnu: Add rust-rustc-test-0.3.
>
> * gnu/package/crates-io.scm (rust-rustc-test-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 05ae485539..8cbc9aedfe 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5432,6 +5432,38 @@ rust-lang/rust integration.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rustc-test-0.3
> +  (package
> +    (name "rust-rustc-test")
> +    (version "0.3.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rustc-test" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0a27mlcg0ck0hgsdvwk792x9z1k1qq1wj091f1l5yggbdbcsnx5w"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-getopts" ,rust-getopts-0.2)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
> +    ;;     ("rust-term" ,rust-term-0.5)
> +    ;;     ("rust-time" ,rust-time-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rustc-version" ,rust-rustc-version-0.2))))
> +    (home-page
> +     "https://github.com/servo/rustc-test")
> +    (synopsis
> +     "Fork of Rust's test crate")
> +    (description
> +     "This package provides a fork of Rust's test crate that doesn't
> +require unstable language features.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-rustc-version-0.2
>    (package
>      (name "rust-rustc-version")
> -- 
> 2.24.0
>
> From 1faa58a403679e1dac83240603cc1460f46d361c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:15:57 -0800
> Subject: [PATCH 120/206] gnu: Add rust-backtrace-0.3.
>
> * gnu/packages/crates-io.scm (rust-backtrace-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 41 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f5b22c8511..f8846a7e9d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -292,6 +292,47 @@ support.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-backtrace-0.3
> +  (package
> +    (name "rust-backtrace")
> +    (version "0.3.32")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "backtrace" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1rgsaha3b6wxh564s4jqn5hl5pkmg214blyjjs1svafib190zd8q"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-addr2line" ,rust-addr2line-0.9)
> +    ;;     ("rust-backtrace-sys" ,rust-backtrace-sys-0.1)
> +    ;;     ("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-compiler-builtins"
> +    ;;      ,rust-compiler-builtins-0.1)
> +    ;;     ("rust-cpp-demangle" ,rust-cpp-demangle-0.2)
> +    ;;     ("rust-findshlibs" ,rust-findshlibs-0.5)
> +    ;;     ("rust-goblin" ,rust-goblin-0.0)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-memmap" ,rust-memmap-0.7)
> +    ;;     ("rust-rustc-demangle" ,rust-rustc-demangle-0.1)
> +    ;;     ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
> +    ;;     ("rust-rustc-std-workspace-core"
> +    ;;      ,rust-rustc-std-workspace-core-1.0)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-winapi" ,rust-winapi-0.3))))
> +    (home-page
> +     "https://github.com/rust-lang/backtrace-rs")
> +    (synopsis
> +     "Acquire a stack trace (backtrace) at runtime in a Rust program")
> +    (description
> +     "This package provides a library to acquire a stack
> +trace (backtrace) at runtime in a Rust program.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-backtrace-sys-0.1
>    (package
>      (name "rust-backtrace-sys")
> -- 
> 2.24.0
>
> From 1b4de1cc3ab46420f4aec4ae8181ed017931c9a1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:13:39 -0800
> Subject: [PATCH 119/206] gnu: Add rust-addr2line-0.9.
>
> * gnu/packages/crates-io.scm (rust-addr2line-0.9): New variable.
> ---
>  gnu/packages/crates-io.scm | 39 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 39 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8cbc9aedfe..f5b22c8511 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -53,6 +53,45 @@ the Rust programming language.")
>      (license (list license:bsd-3
>                     license:zlib))))
>  
> +(define-public rust-addr2line-0.9
> +  (package
> +    (name "rust-addr2line")
> +    (version "0.9.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "addr2line" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "17rlf04nx3g3rcy661v24ksnmpk6vqn680g5b5sp8lk20iih2xnx"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cpp-demangle" ,rust-cpp-demangle-0.2)
> +    ;;     ("rust-fallible-iterator" ,rust-fallible-iterator-0.2)
> +    ;;     ("rust-gimli" ,rust-gimli-0.18)
> +    ;;     ("rust-intervaltree" ,rust-intervaltree-0.2)
> +    ;;     ("rust-lazycell" ,rust-lazycell-1.2)
> +    ;;     ("rust-object" ,rust-object-0.12)
> +    ;;     ("rust-rustc-demangle" ,rust-rustc-demangle-0.1)
> +    ;;     ("rust-smallvec" ,rust-smallvec-0.6))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-backtrace" ,rust-backtrace-0.3)
> +    ;;     ("rust-clap" ,rust-clap-2)
> +    ;;     ("rust-findshlibs" ,rust-findshlibs-0.5)
> +    ;;     ("rust-memmap" ,rust-memmap-0.7)
> +    ;;     ("rust-rustc-test" ,rust-rustc-test-0.3))))
> +    (home-page
> +     "https://github.com/gimli-rs/addr2line")
> +    (synopsis
> +     "Symbolication library written in Rust, using gimli")
> +    (description
> +     "This package provides a cross-platform symbolication library written in
> +Rust, using gimli.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-afl-0.4
>    (package
>      (name "rust-afl")
> -- 
> 2.24.0
>
> From 7c5c83d8082c8af2d4929b2e3f83b2cdbab70c1c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:23:10 -0800
> Subject: [PATCH 121/206] gnu: Add rust-rawslice-0.1.
>
> * gnu/packages/crates-io.scm (rust-rawslice-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f8846a7e9d..35b709b8a6 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5165,6 +5165,34 @@ and @code{ptrdistance}.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rawslice-0.1
> +  (package
> +    (name "rust-rawslice")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rawslice" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "09bympww1rpsd422da3w444q5w1znjbjh7mjninhq9gaaygkpci2"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-rawpointer" ,rust-rawpointer-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page "https://github.com/bluss/rawslice/")
> +    (synopsis
> +     "Reimplementation of the slice iterators, with extra features")
> +    (description
> +     "Reimplementation of the slice iterators, with extra features.
> +For example creation from raw pointers and start, end pointer
> +accessors.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-rayon-1.1
>    (package
>      (name "rust-rayon")
> -- 
> 2.24.0
>
> From b8c1373fb91de679646463a32f7e183d6418ca74 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:24:50 -0800
> Subject: [PATCH 122/206] gnu: Add rust-unchecked-index-0.2.
>
> * gnu/packages/crates-io.scm (rust-unchecked-index-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 35b709b8a6..b4e44ae8ad 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7431,6 +7431,28 @@ with the Unicode character database.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-unchecked-index-0.2
> +  (package
> +    (name "rust-unchecked-index")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "unchecked-index" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0p6qcai1mjayx59cpgk27d0zgw9hz9r1ira5jiqil66f4ba8dfpf"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://github.com/bluss/unchecked-index")
> +    (synopsis
> +     "Unchecked indexing wrapper using regular index syntax")
> +    (description
> +     "Unchecked indexing wrapper using regular index syntax.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-unicase-2.4
>    (package
>      (name "rust-unicase")
> -- 
> 2.24.0
>
> From e038750497e3723669f14575b36183dae740311c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:26:56 -0800
> Subject: [PATCH 123/206] gnu: Add rust-odds-0.3.
>
> * gnu/packages/crates-io.scm (rust-odds-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b4e44ae8ad..1b75f5208f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4225,6 +4225,39 @@ implementation (which is unstable / requires nightly).")
>  formats.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-odds-0.3
> +  (package
> +    (name "rust-odds")
> +    (version "0.3.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "odds" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0rdnxa0na4897yb0svb3figz35g4imxjv61yfm2j21gbh5q8v8d9"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-rawpointer" ,rust-rawpointer-0.1)
> +    ;;     ("rust-rawslice" ,rust-rawslice-0.1)
> +    ;;     ("rust-unchecked-index" ,rust-unchecked-index-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-itertools" ,rust-itertools-0.8)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-memchr" ,rust-memchr-2.2)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page "https://github.com/bluss/odds")
> +    (synopsis
> +     "Extra functionality for slices, strings and other things")
> +    (description
> +     "Odds and ends collection miscellania.  Extra functionality for
> +slices (@code{.find()}, @code{RevSlice}), strings and other things.
> +Things in odds may move to more appropriate crates if we find them.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-openssl-probe-0.1
>    (package
>      (name "rust-openssl-probe")
> -- 
> 2.24.0
>
> From 2d7930728112d2cd020ecb1e1f6be15df5d661ce Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:28:34 -0800
> Subject: [PATCH 124/206] gnu: Add rust-petgraph-0.4.
>
> * gnu/packages/crates-io.scm (rust-petgraph-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 1b75f5208f..fdb8f1782e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4540,6 +4540,40 @@ algorithm.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-petgraph-0.4
> +  (package
> +    (name "rust-petgraph")
> +    (version "0.4.13")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "petgraph" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0kyfmca854s54jk26g2x1kjb04c3k7cjilaxyr0if8lhxv8mjdlw"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-fixedbitset" ,rust-fixedbitset-0.1)
> +    ;;     ("rust-ordermap" ,rust-ordermap-0.3)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-defmac" ,rust-defmac-0.2)
> +    ;;     ("rust-itertools" ,rust-itertools-0.8)
> +    ;;     ("rust-odds" ,rust-odds-0.3)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page "https://github.com/petgraph/petgraph")
> +    (synopsis
> +     "Graph data structure library")
> +    (description
> +     "Graph data structure library.  Provides graph types and graph
> +algorithms.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-pico-sys-0.0
>    (package
>      (name "rust-pico-sys")
> -- 
> 2.24.0
>
> From 31283896184c2598fcc0f7dd3b280324c1278070 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:34:33 -0800
> Subject: [PATCH 125/206] gnu: Add parking-lot-core-0.5.
>
> * gnu/packages/crates-io.scm (parking-lot-core-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index fdb8f1782e..a8bdb0fe17 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5960,6 +5960,42 @@ Pwrite traits from the scroll crate.")
>       "Semantic version parsing and comparison.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-parking-lot-core-0.5
> +  (package
> +    (name "rust-parking-lot-core")
> +    (version "0.5.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "parking_lot_core" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1317j5a1yd03baza2kqqrxb4kr1vxa7rckw4frksl2vrncfcp26b"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-backtrace" ,rust-backtrace-0.3)
> +    ;;     ("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-cloudabi" ,rust-cloudabi-0.0)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-petgraph" ,rust-petgraph-0.4)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-redox-syscall" ,rust-redox-syscall-0.1)
> +    ;;     ("rust-smallvec" ,rust-smallvec-0.6)
> +    ;;     ("rust-thread-id" ,rust-thread-id-3.3)
> +    ;;     ("rust-winapi" ,rust-winapi-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rustc-version" ,rust-rustc-version-0.2))))
> +    (home-page
> +     "https://github.com/Amanieu/parking_lot")
> +    (synopsis
> +     "Advanced API for creating custom synchronization primitives")
> +    (description
> +     "An advanced API for creating custom synchronization primitives.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-semver-parser-0.9
>    (package
>      (name "rust-semver-parser")
> -- 
> 2.24.0
>
> From a6db6054f5a58da680486215c9b946cc8bdcf654 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:37:11 -0800
> Subject: [PATCH 126/206] gnu: Add parking-lot-0.8.
>
> * gnu/packages/crates-io.scm (parking-lot-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a8bdb0fe17..3a635267f3 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5960,6 +5960,38 @@ Pwrite traits from the scroll crate.")
>       "Semantic version parsing and comparison.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-parking-lot-0.8
> +  (package
> +    (name "rust-parking-lot")
> +    (version "0.8.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "parking_lot" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1rrcdalr8l5zx3bw28l376321l6dnd6rqnsqsl0ygk01fy0nfxzs"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lock-api" ,rust-lock-api-0.2)
> +    ;;     ("rust-parking-lot-core" ,rust-parking-lot-core-0.5))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-rustc-version" ,rust-rustc-version-0.2))))
> +    (home-page
> +     "https://github.com/Amanieu/parking_lot")
> +    (synopsis
> +     "Compact standard synchronization primitives")
> +    (description
> +     "More compact and efficient implementations of the standard
> +synchronization primitives.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-parking-lot-core-0.5
>    (package
>      (name "rust-parking-lot-core")
> -- 
> 2.24.0
>
> From 494e3f8bd25f0f18c1db5bba7897f4c5ee57671d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:39:32 -0800
> Subject: [PATCH 127/206] gnu: Add rust-console-0.7.
>
> * gnu/packages/crates-io.scm (rust-console-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3a635267f3..1b07e94be4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -995,6 +995,40 @@ need compiler-rt intrinsics.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-console-0.7
> +  (package
> +    (name "rust-console")
> +    (version "0.7.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "console" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0a4n2syzik9lh02v2i4wdazvm05d99bib7dw0lqvz8mq2hn7r9cc"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-atty" ,rust-atty-0.2)
> +    ;;     ("rust-clicolors-control" ,rust-clicolors-control-1.0)
> +    ;;     ("rust-encode-unicode" ,rust-encode-unicode-0.3)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-parking-lot" ,rust-parking-lot-0.8)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-termios" ,rust-termios-0.3)
> +    ;;     ("rust-unicode-width" ,rust-unicode-width-0.1)
> +    ;;     ("rust-winapi" ,rust-winapi-0.3))))
> +    (home-page
> +     "https://github.com/mitsuhiko/console")
> +    (synopsis
> +     "Terminal and console abstraction for Rust")
> +    (description
> +     "This package provides a terminal and console abstraction for Rust")
> +    (license license:expat)))
> +
>  (define-public rust-console-error-panic-hook-0.1
>    (package
>      (name "rust-console-error-panic-hook")
> -- 
> 2.24.0
>
> From 59e9e72fff68881d35b7f7d865596ce20dae9696 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:40:47 -0800
> Subject: [PATCH 128/206] gnu: Add rust-difference-2.0.
>
> * gnu/packages/crates-io.scm (rust-difference-2.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 1b07e94be4..87e7ac5b2c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1654,6 +1654,34 @@ hexadecimal, base32, and base64.")
>       "An LCS based slice and string diffing implementation.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-difference-2.0
> +  (package
> +    (name "rust-difference")
> +    (version "2.0.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "difference" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1621wx4k8h452p6xzmzzvm7mz87kxh4yqz0kzxfjj9xmjxlbyk2j"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-getopts" ,rust-getopts-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-term" ,rust-term-0.5))))
> +    (home-page
> +     "https://github.com/johannhof/difference.rs")
> +    (synopsis
> +     "Rust text diffing and assertion library")
> +    (description
> +     "This package provides a Rust text diffing and assertion library.")
> +    (license license:expat)))
> +
>  (define-public rust-dirs-1.0
>    (package
>      (name "rust-dirs")
> -- 
> 2.24.0
>
> From 0b4358e4b3b472855c1170c130cfb448ad20c66d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:46:28 -0800
> Subject: [PATCH 129/206] gnu: Add rust-synstructure-0.10.
>
> * gnu/packages/crates-io.scm (rust-synstructure-0.10): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 87e7ac5b2c..9a1798edaf 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6755,6 +6755,37 @@ and Jaro-Winkler.")
>      (properties '((hidden? . #t)))
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-synstructure-0.10
> +  (package
> +    (name "rust-synstructure")
> +    (version "0.10.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "synstructure" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0grirdkgh2wl4hf9a3nbiazpgccxgq54kn52ms0xrr6njvgkwd82"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15)
> +    ;;     ("rust-unicode-xid" ,rust-unicode-xid-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-synstructure-test-traits"
> +    ;;      ,rust-synstructure-test-traits-0.1))))
> +    (home-page
> +     "https://github.com/mystor/synstructure")
> +    (synopsis
> +     "Helper methods and macros for custom derives")
> +    (description
> +     "Helper methods and macros for custom derives")
> +    (license license:expat)))
> +
>  (define-public rust-synstructure-test-traits-0.1
>    (package
>      (name "rust-synstructure-test-traits")
> -- 
> 2.24.0
>
> From e209be7b47546521b034d42e894446f250fb6890 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:56:50 -0800
> Subject: [PATCH 132/206] gnu: Add rust-pest-2.1.
>
> * gnu/packages/crates-io.scm (rust-pest-2.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 358f324f46..c8021fe46b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4656,6 +4656,30 @@ algorithm.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-pest-2.1
> +  (package
> +    (name "rust-pest")
> +    (version "2.1.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pest" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "134686mwxm73asbiads53zfchqvvcrsrsyax2cghfcizmvg8ac4k"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-ucd-trie" ,rust-ucd-trie-0.1))))
> +    (home-page "https://pest.rs/")
> +    (synopsis "The Elegant Parser")
> +    (description "The Elegant Parser")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-petgraph-0.4
>    (package
>      (name "rust-petgraph")
> -- 
> 2.24.0
>
> From d26ea0038a92dcae0a155929b3178e7bf7a545e2 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:49:20 -0800
> Subject: [PATCH 130/206] gnu: Add rust-failure-derive-0.1.
>
> * gnu/packages/crates-io.scm (rust-failure-derive-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9a1798edaf..a71731bc4b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1944,6 +1944,34 @@ is configured via an environment variable.")
>       "Type-erased Serialize and Serializer traits")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-failure-derive-0.1
> +  (package
> +    (name "rust-failure-derive")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "failure_derive" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1q97n7dp51j5hndzic9ng2fgn6f3z5ya1992w84l7vypby8n647a"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15)
> +    ;;     ("rust-synstructure" ,rust-synstructure-0.10))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-failure" ,rust-failure-0.1))))
> +    (home-page
> +     "https://rust-lang-nursery.github.io/failure/")
> +    (synopsis "Derives for the failure crate")
> +    (description "Derives for the failure crate")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-fallible-iterator-0.2
>    (package
>      (name "rust-fallible-iterator")
> -- 
> 2.24.0
>
> From 531317efb3cdc6337a5b030f4d773ed30568d0d2 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 19:50:45 -0800
> Subject: [PATCH 131/206] gnu: Add rust-failure-0.1.
>
> * gnu/packages/crates-io.scm (rust-failure-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a71731bc4b..358f324f46 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1944,6 +1944,32 @@ is configured via an environment variable.")
>       "Type-erased Serialize and Serializer traits")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-failure-0.1
> +  (package
> +    (name "rust-failure")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "failure" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1qppmgv4i5jj6vrss91qackqnl0a12h7lnby4l7j5fdy78yxhnvr"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-backtrace" ,rust-backtrace-0.3)
> +    ;;     ("rust-failure-derive" ,rust-failure-derive-0.1))))
> +    (home-page
> +     "https://rust-lang-nursery.github.io/failure/")
> +    (synopsis
> +     "Experimental error handling abstraction")
> +    (description
> +     "Experimental error handling abstraction.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-failure-derive-0.1
>    (package
>      (name "rust-failure-derive")
> -- 
> 2.24.0
>
> From 0897675bc4c6c2f6b54a2b6e218c193645a60348 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:05:25 -0800
> Subject: [PATCH 134/206] gnu: Add rust-block-padding-0.1.
>
> * gnu/packages/crates-io.scm (rust-block-padding-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 5bf3a86297..4557b9853f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -496,6 +496,30 @@ behave like a set of bitflags.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-block-padding-0.1
> +  (package
> +    (name "rust-block-padding")
> +    (version "0.1.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "block-padding" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "02fz9wx5dmgpc79ndrb9xfxqlrkk7lg5wki2blz2zqg27spw6kbd"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byte-tools" ,rust-byte-tools-0.3))))
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Padding and unpadding of messages divided into blocks")
> +    (description
> +     "Padding and unpadding of messages divided into blocks.")
> +    (license `(,license:asl1.1 ,license:expat))))
> +
>  (define-public rust-bstr-0.2
>    (package
>      (name "rust-bstr")
> -- 
> 2.24.0
>
> From 156e81ec7c4c3dcebc1fc4d310097b81b9efdbcd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:02:33 -0800
> Subject: [PATCH 133/206] gnu: Add rust-byte-tools-0.3.
>
> * gnu/packages/crates-io.scm (rust-byte-tools-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index c8021fe46b..5bf3a86297 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -614,6 +614,25 @@ UTF-8.")
>  little-endian.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-byte-tools-0.3
> +  (package
> +    (name "rust-byte-tools")
> +    (version "0.3.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "byte-tools" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1mqi29wsm8njpl51pfwr31wmpzs5ahlcb40wsjyd92l90ixcmdg3"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis "Bytes related utility functions")
> +    (description "Bytes related utility functions")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-bytes-0.4
>    (package
>      (name "rust-bytes")
> -- 
> 2.24.0
>
> From ff19803a8934603ea71b5b552860adf10bab874b Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:11:38 -0800
> Subject: [PATCH 137/206] gnu: Add rust-generic-array-0.13.
>
> * gnu/packages/crates-io.scm (rust-generic-array-0.13): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6c763f455f..b4e81ba5ee 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2679,6 +2679,35 @@ archive to be linked into Rustcode.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-generic-array-0.13
> +  (package
> +    (name "rust-generic-array")
> +    (version "0.13.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "generic-array" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1kddwxpd58y807y1r3lijg7sw3gxm6nczl6wp57gamhv6mhygl8f"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-typenum" ,rust-typenum-1.10))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page
> +     "https://github.com/fizyk20/generic-array")
> +    (synopsis
> +     "Generic types implementing functionality of arrays")
> +    (description
> +     "Generic types implementing functionality of arrays")
> +    (license license:expat)))
> +
>  (define-public rust-getopts-0.2
>    (package
>      (name "rust-getopts")
> -- 
> 2.24.0
>
> From 2a45f3e10f92c8ec5ff8362e0e645cfc855a3c14 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:09:14 -0800
> Subject: [PATCH 136/206] gnu: Add rust-blobby-0.1.
>
> * gnu/packages/crates-io.scm (rust-blobby-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a897c08ec9..6c763f455f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -496,6 +496,33 @@ behave like a set of bitflags.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-blobby-0.1
> +  (package
> +    (name "rust-blobby")
> +    (version "0.1.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "blobby" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1xicpf3s2mi5xqnx8ps5mdych4ib5nh2nfsbrsg8ar8bjk1girbg"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-hex" ,rust-hex-0.3))))
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Iterator over simple binary blob storage")
> +    (description
> +     "Iterator over simple binary blob storage")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-block-buffer-0.7
>    (package
>      (name "rust-block-buffer")
> -- 
> 2.24.0
>
> From e8dd5b9cac8202de6bc5bd0b702539bfea6266ea Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:06:57 -0800
> Subject: [PATCH 135/206] gnu: Add rust-block-buffer-0.7.
>
> * gnu/packages/crates-io.scm (rust-block-buffer-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 4557b9853f..a897c08ec9 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -496,6 +496,33 @@ behave like a set of bitflags.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-block-buffer-0.7
> +  (package
> +    (name "rust-block-buffer")
> +    (version "0.7.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "block-buffer" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "12v8wizynqin0hqf140kmp9s38q223mp1b0hkqk8j5pk8720v560"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-block-padding" ,rust-block-padding-0.1)
> +    ;;     ("rust-byte-tools" ,rust-byte-tools-0.3)
> +    ;;     ("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-generic-array" ,rust-generic-array-0.12.3))))
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Fixed size buffer for block processing of data")
> +    (description
> +     "Fixed size buffer for block processing of data")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-block-padding-0.1
>    (package
>      (name "rust-block-padding")
> -- 
> 2.24.0
>
> From 01f93ea79cbd553192c546170d01831b8ce7c752 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:13:52 -0800
> Subject: [PATCH 138/206] gnu: Add rust-digest-0.8.
>
> * gnu/packages/crates-io.scm (rust-digest-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b4e81ba5ee..b371c6776d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1779,6 +1779,32 @@ hexadecimal, base32, and base64.")
>       "This package provides a Rust text diffing and assertion library.")
>      (license license:expat)))
>  
> +(define-public rust-digest-0.8
> +  (package
> +    (name "rust-digest")
> +    (version "0.8.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "digest" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1madjl27f3kj5ql7kwgvb9c8b7yb7bv7yfgx7rqzj4i3fp4cil7k"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-blobby" ,rust-blobby-0.1)
> +    ;;     ("rust-generic-array" ,rust-generic-array-0.13))))
> +    (home-page
> +     "https://github.com/RustCrypto/traits")
> +    (synopsis
> +     "Traits for cryptographic hash functions")
> +    (description
> +     "Traits for cryptographic hash functions")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-dirs-1.0
>    (package
>      (name "rust-dirs")
> -- 
> 2.24.0
>
> From 96c3a7fa6c65385af88ce4e0332c19cec2075be5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:16:05 -0800
> Subject: [PATCH 139/206] gnu: Add rust-fake-simd-0.1.
>
> * gnu/packages/crates-io.scm (rust-fake-simd-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b371c6776d..1011fa4eb9 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2121,6 +2121,27 @@ is configured via an environment variable.")
>      (description "Derives for the failure crate")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-fake-simd-0.1
> +  (package
> +    (name "rust-fake-simd")
> +    (version "0.1.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "fake-simd" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1vfylvk4va2ivqx85603lyqqp0zk52cgbs4n5nfbbbqx577qm2p8"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Crate for mimicking simd crate on stable Rust")
> +    (description
> +     "Crate for mimicking simd crate on stable Rust")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-fallible-iterator-0.2
>    (package
>      (name "rust-fallible-iterator")
> -- 
> 2.24.0
>
> From 2145bedb4595b53446473d335cd8a6c5b9b376b0 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:23:31 -0800
> Subject: [PATCH 142/206] gnu: Add rust-hex-literal-impl-0.2.
>
> * gnu/packages/crates-io.scm (rust-hex-literal-impl-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3c296cec88..b98480024b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3099,6 +3099,30 @@ hexadecimal representation.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-hex-literal-impl-0.2
> +  (package
> +    (name "rust-hex-literal-impl")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "hex-literal-impl" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "04m6d1k57a9h3hhdgn0vq1hkfwjv9hfkw6q73bqn0my0qw45s286"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Internal implementation of the hex-literal crate")
> +    (description
> +     "Internal implementation of the hex-literal crate")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-humantime-1.2
>    (package
>      (name "rust-humantime")
> -- 
> 2.24.0
>
> From 93ce544bdb1fa52ab4722709318721e76aa9d184 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:18:38 -0800
> Subject: [PATCH 140/206] gnu: Add rust-opaque-debug-0.2.
>
> * gnu/packages/crates-io.scm (rust-opaque-debug-0.2): New version.
> ---
>  gnu/packages/crates-io.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 1011fa4eb9..20afe70f0f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4547,6 +4547,27 @@ slices (@code{.find()}, @code{RevSlice}), strings and other things.
>  Things in odds may move to more appropriate crates if we find them.")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-opaque-debug-0.2
> +  (package
> +    (name "rust-opaque-debug")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "opaque-debug" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "02942l2gc7w5r4js7i9063x99szic5mzzk1055j83v4diqpbpxck"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Macro for opaque Debug trait implementation")
> +    (description
> +     "Macro for opaque Debug trait implementation")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-openssl-probe-0.1
>    (package
>      (name "rust-openssl-probe")
> -- 
> 2.24.0
>
> From 02eca76f54e474df56704b5c9f73cca853d6d309 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:24:56 -0800
> Subject: [PATCH 143/206] gnu: Add rust-hex-literal-0.2.
>
> * gnu/packages/crates-io.scm (rust-hex-literal-impl-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b98480024b..665d1e680f 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3099,6 +3099,32 @@ hexadecimal representation.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-hex-literal-0.2
> +  (package
> +    (name "rust-hex-literal")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "hex-literal" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ni2nv3di0jpih2xnmlnr6s96zypkdr8xrw2cvk4f8fx5wb6inn3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-hex-literal-impl" ,rust-hex-literal-imp-0.2l)
> +    ;;     ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
> +    (home-page "https://github.com/RustCrypto/utils")
> +    (synopsis
> +     "Convert hexadecimal string to byte array at compile time")
> +    (description
> +     "Procedural macro for converting hexadecimal string to byte array at
> +compile time.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-hex-literal-impl-0.2
>    (package
>      (name "rust-hex-literal-impl")
> -- 
> 2.24.0
>
> From c5b4639afb1fe25693da5dad8b2ea3e7c29d4c9e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:21:25 -0800
> Subject: [PATCH 141/206] gnu: Add rust-sha1-asm-0.4.
>
> * gnu/packages/crates-io.scm (rust-sha1-asm-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 20afe70f0f..3c296cec88 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6534,6 +6534,31 @@ synchronization primitives.")
>       "Token De/Serializer for testing De/Serialize implementations")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-sha1-asm-0.4
> +  (package
> +    (name "rust-sha1-asm")
> +    (version "0.4.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "sha1-asm" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1i1i8viy6y30mv9v5hwhg9w6b722qkyh9c6n8bn4d27jpv14pg0s"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-cc" ,rust-cc-1.0))))
> +    (home-page
> +     "https://github.com/RustCrypto/asm-hashes")
> +    (synopsis
> +     "Assembly implementation of SHA-1 compression function")
> +    (description
> +     "Assembly implementation of SHA-1 compression function")
> +    (license license:expat)))
> +
>  (define-public rust-sha1-0.6
>    (package
>      (name "rust-sha1")
> -- 
> 2.24.0
>
> From a70cf4d4373ee7d58154a58c105d9ac0d5ee3b7e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:27:43 -0800
> Subject: [PATCH 144/206] gnu: Add rust-sha-1-0.8
>
> * gnu/packages/crates-io.scm (rust-sha-1-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 665d1e680f..d756819fc7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6584,6 +6584,36 @@ synchronization primitives.")
>       "Token De/Serializer for testing De/Serialize implementations")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-sha-1-0.8
> +  (package
> +    (name "rust-sha-1")
> +    (version "0.8.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "sha-1" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0s6fdy5wp3x4h2z4fcl2d9vjvrpzr87v4h49r51xcq8nm4qj35i3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-block-buffer" ,rust-block-buffer-0.7)
> +    ;;     ("rust-digest" ,rust-digest-0.8)
> +    ;;     ("rust-fake-simd" ,rust-fake-simd-0.1)
> +    ;;     ("rust-opaque-debug" ,rust-opaque-debug-0.2)
> +    ;;     ("rust-sha1-asm" ,rust-sha1-asm-0.4))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-digest" ,rust-digest-0.8)
> +    ;;     ("rust-hex-literal" ,rust-hex-literal-0.2))))
> +    (home-page
> +     "https://github.com/RustCrypto/hashes")
> +    (synopsis "SHA-1 hash function")
> +    (description "SHA-1 hash function")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-sha1-asm-0.4
>    (package
>      (name "rust-sha1-asm")
> -- 
> 2.24.0
>
> From ce182dd051db1921e1c0508960d1e802fcf2b399 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:28:49 -0800
> Subject: [PATCH 145/206] gnu: Add rust-pest-meta-2.1.
>
> * gnu/packages/crates-io.scm (rust-pest-meta-2.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d756819fc7..65921fd268 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4924,6 +4924,33 @@ algorithm.")
>      (description "The Elegant Parser")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-pest-meta-2.1
> +  (package
> +    (name "rust-pest-meta")
> +    (version "2.1.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pest_meta" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0kaprdz3jis9bjfwhri1zncbsvack5m3gx2g5flspdy7wxnyljgj"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-maplit" ,rust-maplit-1.0)
> +    ;;     ("rust-pest" ,rust-pest-2.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-sha-1" ,rust-sha-1-0.8))))
> +    (home-page "https://pest.rs")
> +    (synopsis
> +     "Pest meta language parser and validator")
> +    (description
> +     "Pest meta language parser and validator")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-petgraph-0.4
>    (package
>      (name "rust-petgraph")
> -- 
> 2.24.0
>
> From e61f88350001025a32069179b5fb3860069a23d5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:30:26 -0800
> Subject: [PATCH 146/206] gnu: Add rust-pest-generator-2.1.
>
> * gnu/packages/crates-io.scm (rust-pest-generator-2.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 65921fd268..cbf6c04895 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4924,6 +4924,32 @@ algorithm.")
>      (description "The Elegant Parser")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-pest-generator-2.1
> +  (package
> +    (name "rust-pest-generator")
> +    (version "2.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pest_generator" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ipnv77lqhj4d4fpfxi8m168lcjp482kszaknlardmpgqiv0a4k3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-pest" ,rust-pest-2.1)
> +    ;;     ("rust-pest-meta" ,rust-pest-meta-2.1)
> +    ;;     ("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page "https://pest.rs/")
> +    (synopsis "Pest code generator")
> +    (description "Pest code generator")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-pest-meta-2.1
>    (package
>      (name "rust-pest-meta")
> -- 
> 2.24.0
>
> From 836b4a4b2079580ac929fe5909c38af14a0b4e56 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:31:55 -0800
> Subject: [PATCH 147/206] gnu: Add rust-pest-derive-2.1.
>
> * gnu/packages/crates-io.scm (rust-pest-derive-2.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index cbf6c04895..26e9e8d123 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4924,6 +4924,29 @@ algorithm.")
>      (description "The Elegant Parser")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-pest-derive-2.1
> +  (package
> +    (name "rust-pest-derive")
> +    (version "2.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "pest_derive" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1l5jfa6ril71cw5nsiw0r45br54dd8cj2r1nc2d1wq6wb3jilgc3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-pest" ,rust-pest-2.1)
> +    ;;     ("rust-pest-generator" ,rust-pest-generator-2.1))))
> +    (home-page "https://pest.rs/")
> +    (synopsis "Pest's derive macro")
> +    (description "Pest's derive macro")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-pest-generator-2.1
>    (package
>      (name "rust-pest-generator")
> -- 
> 2.24.0
>
> From 6954e0a8c160da96bea0fb56cfa4c3382b5064f7 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:39:39 -0800
> Subject: [PATCH 149/206] gnu: Add rust-linked-hash-map-0.5.
>
> * gnu/packages/crates-io.scm (rust-linked-hash-map-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 56d813e0b4..bcc8ff50f4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4338,6 +4338,36 @@ known as zlib).")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-linked-hash-map-0.5
> +  (package
> +    (name "rust-linked-hash-map")
> +    (version "0.5.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "linked-hash-map" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "10qgbvh00q36ql0jh00rxh2jlq6qvl11n6mig0cvkpf4xf5bd4df"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-clippy" ,rust-clippy-0.0)
> +    ;;     ("rust-heapsize" ,rust-heapsize-0.4)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page
> +     "https://github.com/contain-rs/linked-hash-map")
> +    (synopsis
> +     "HashMap wrapper that holds key-value pairs in insertion order")
> +    (description
> +     "This package provides a HashMap wrapper that holds key-value
> +pairs in insertion order")
> +    (license (list license:asl2.0
> +                   license:expat))))
> +
>  (define-public rust-nodrop-0.1
>    (package
>      (name "rust-nodrop")
> -- 
> 2.24.0
>
> From 2b06125d1452df9e04f00933dd00b7aa95a00803 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:35:29 -0800
> Subject: [PATCH 148/206] gnu: Add rust-ron-0.4.
>
> * gnu/packages/crates-io.scm (rust-ron-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 26e9e8d123..56d813e0b4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5980,6 +5980,34 @@ uses finite automata and guarantees linear time matching on all inputs.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-ron-0.4
> +  (package
> +    (name "rust-ron")
> +    (version "0.4.1") ; Current is 0.5.1, rust-insta has pinned version
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "ron" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1mrqdgw3w0yypg24jyq9mphp4zr9lr0ks7yam82m4n34x6njijyr"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-base64" ,rust-base64-0.10)
> +    ;;     ("rust-bitflags" ,rust-bitflags-1)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-bytes" ,rust-serde-bytes-0.11)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page "https://github.com/ron-rs/ron")
> +    (synopsis "Rusty Object Notation")
> +    (description "Rusty Object Notation")
> +    (license (list license:asl2.0
> +                   license:expat))))
> +
>  (define-public rust-rustc-demangle-0.1
>    (package
>      (name "rust-rustc-demangle")
> -- 
> 2.24.0
>
> From e37410adb070f81c2c083571c474676208b7ffcc Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sat, 14 Dec 2019 20:42:22 -0800
> Subject: [PATCH 150/206] gnu: Add rust-yaml-rust-0.4.
>
> * gnu/packages/crates-io.scm (rust-yaml-rust-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index bcc8ff50f4..a4f6983f90 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9009,3 +9009,29 @@ to XDG Base Directory specification")
>      (properties '((hidden? . #t)))
>      (license (list license:asl2.0
>                     license:expat))))
> +
> +(define-public rust-yaml-rust-0.4
> +  (package
> +    (name "rust-yaml-rust")
> +    (version "0.4.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "yaml-rust" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ka3qhqc5lvk3hz14wmsj32jhmh44blcbfrx5hfxli2gg38kv4k5"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-linked-hash-map" ,rust-linked-hash-map-0.5))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-quickcheck" ,rust-quickcheck-0.8))))
> +    (home-page
> +     "http://chyh1990.github.io/yaml-rust/")
> +    (synopsis "The missing YAML 1.2 parser for rust")
> +    (description
> +     "The missing YAML 1.2 parser for rust")
> +    (license `(,license:asl2.0 ,license:expat))))
> -- 
> 2.24.0
>
> From 00a820f205697926a10aab3f660258f2eac1c5ef Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:36:50 -0800
> Subject: [PATCH 151/206] gnu: Add rust-encoding-index-tests-0.1
>
> * gnu/packages/crates-io.scm (rust-encoding-index-tests-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index a4f6983f90..3ea9dc9ea7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1983,6 +1983,29 @@ floating-point primitives to an @code{io::Write}.")
>  char, u8 and u16.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-encoding-index-tests-0.1
> +  (package
> +    (name "rust-encoding-index-tests")
> +    (version "0.1.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding_index_tests" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0s85y091gl17ixass49bzaivng7w8p82p6nyvz2r3my9w4mxhim2"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis
> +     "Macros used to test index tables for character encodings")
> +    (description
> +     "Helper macros used to test index tables for character
> +encodings")
> +    (license license:cc0)))
> +
>  (define-public rust-env-logger-0.6
>    (package
>      (name "rust-env-logger")
> -- 
> 2.24.0
>
> From 1c2111798859bfc0e61d3f55ce781068839a1276 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:45:12 -0800
> Subject: [PATCH 154/206] gnu: Add rust-encoding-index-simpchinese-1.20141219.
>
> * gnu/packages/crates-io.scm (rust-encoding-index-simpchinese-1.20141219):
>   New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index bc8e1ee35c..89408657ee 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2035,6 +2035,32 @@ char, u8 and u16.")
>       "Index tables for Korean character encodings")
>      (license license:cc0)))
>  
> +(define-public rust-encoding-index-simpchinese-1.20141219
> +  (package
> +    (name "rust-encoding-index-simpchinese")
> +    (version "1.20141219.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding-index-simpchinese" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1xria2i7mc5dqdrpqxasdbxv1qx46jjbm53if3y1i4cvj2a72ynq"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-index-tests"
> +    ;;      ,rust-encoding-index-tests-0.1))))
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis
> +     "Index tables for simplified Chinese character encodings")
> +    (description
> +     "Index tables for simplified Chinese character encodings")
> +    (license license:cc0)))
> +
>  (define-public rust-encoding-index-tests-0.1
>    (package
>      (name "rust-encoding-index-tests")
> -- 
> 2.24.0
>
> From 5850e8dd6c8baefa52386e6fdfd9d01f02f261d3 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:40:18 -0800
> Subject: [PATCH 152/206] gnu: Add rust-encoding-index-japanese-1.20141219.
>
> * gnu/packages/crates-io.scm (rust-encoding-index-japanese-1.20141219): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3ea9dc9ea7..18cf744403 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1983,6 +1983,32 @@ floating-point primitives to an @code{io::Write}.")
>  char, u8 and u16.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-encoding-index-japanese-1.20141219
> +  (package
> +    (name "rust-encoding-index-japanese")
> +    (version "1.20141219.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding-index-japanese" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "148c1lmd640p1d7fzk0nv7892mbyavvwddgqvcsm78798bzv5s04"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-index-tests"
> +    ;;      ,rust-encoding-index-tests-0.1))))
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis
> +     "Index tables for Japanese character encodings")
> +    (description
> +     "Index tables for Japanese character encodings")
> +    (license license:cc0)))
> +
>  (define-public rust-encoding-index-tests-0.1
>    (package
>      (name "rust-encoding-index-tests")
> -- 
> 2.24.0
>
> From ee526ca3cf723bf08afd8c8852778972bbec6a85 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:43:16 -0800
> Subject: [PATCH 153/206] gnu: Add rust-encoding-index-korean-1.20141219.
>
> * gnu/packages/crates-io.scm (rust-encoding-index-korean-1.20141219): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 18cf744403..bc8e1ee35c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2009,6 +2009,32 @@ char, u8 and u16.")
>       "Index tables for Japanese character encodings")
>      (license license:cc0)))
>  
> +(define-public rust-encoding-index-korean-1.20141219
> +  (package
> +    (name "rust-encoding-index-korean")
> +    (version "1.20141219.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding-index-korean" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "10cxabp5ppygbq4y6y680856zl9zjvq7ahpiw8zj3fmwwsw3zhsd"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-index-tests"
> +    ;;      ,rust-encoding-index-tests-0.1))))
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis
> +     "Index tables for Korean character encodings")
> +    (description
> +     "Index tables for Korean character encodings")
> +    (license license:cc0)))
> +
>  (define-public rust-encoding-index-tests-0.1
>    (package
>      (name "rust-encoding-index-tests")
> -- 
> 2.24.0
>
> From 2fb0c77b32982493143ceb5e231bea7f5f1f2cf0 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:48:49 -0800
> Subject: [PATCH 155/206] gnu: Add rust-encoding-index-singlebyte-1.20141219.
>
> * gnu/packages/crates-io.scm (rust-encoding-index-singlebyte-1.20141219):
>   New variable
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 89408657ee..7594fd8b62 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2061,6 +2061,32 @@ char, u8 and u16.")
>       "Index tables for simplified Chinese character encodings")
>      (license license:cc0)))
>  
> +(define-public rust-encoding-index-singlebyte-1.20141219
> +  (package
> +    (name "rust-encoding-index-singlebyte")
> +    (version "1.20141219.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding-index-singlebyte" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0jp85bz2pprzvg9m95w4q0vibh67b6w3bx35lafay95jzyndal9k"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-index-tests"
> +    ;;      ,rust-encoding-index-tests-0.1))))
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis
> +     "Index tables for various single-byte character encodings")
> +    (description
> +     "Index tables for various single-byte character encodings")
> +    (license license:cc0)))
> +
>  (define-public rust-encoding-index-tests-0.1
>    (package
>      (name "rust-encoding-index-tests")
> -- 
> 2.24.0
>
> From f8c7dd8b3d3d64418b4265c4d0f9411c86de0633 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:52:01 -0800
> Subject: [PATCH 156/206] gnu: Add rust-encoding-index-tradchinese-1.20141219.
>
> * gnu/packages/crates-io.scm (rust-encoding-index-tradchinese-1.20141219):
>   New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 7594fd8b62..de872b896b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2087,6 +2087,32 @@ char, u8 and u16.")
>       "Index tables for various single-byte character encodings")
>      (license license:cc0)))
>  
> +(define-public rust-encoding-index-tradchinese-1.20141219
> +  (package
> +    (name "rust-encoding-index-tradchinese")
> +    (version "1.20141219.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding-index-tradchinese" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "060ci4iz6xfvzk38syfbjvs7pix5hch3mvxkksswmqwcd3aj03px"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-index-tests"
> +    ;;      ,rust-encoding-index-tests-0.1))))
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis
> +     "Index tables for traditional Chinese character encodings")
> +    (description
> +     "Index tables for traditional Chinese character encodings")
> +    (license license:cc0)))
> +
>  (define-public rust-encoding-index-tests-0.1
>    (package
>      (name "rust-encoding-index-tests")
> -- 
> 2.24.0
>
> From 26dcde3b398db0557693111286af16edee4a87b2 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:57:32 -0800
> Subject: [PATCH 158/206] gnu: Add rust-flame-0.2.
>
> * gnu/packages/crates-io.scm (rust-flame-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2f27f03331..69ff3a284d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2420,6 +2420,32 @@ cross platform API.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-flame-0.2
> +  (package
> +    (name "rust-flame")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "flame" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0c5bmhyimzxch3pmh0w3z9n57saasgix4bmbbksr9vp1c5j71hhz"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-thread-id" ,rust-thread-id-3.3))))
> +    (home-page "https://github.com/TyOverby/flame")
> +    (synopsis "Profiling and flamegraph library")
> +    (description "A profiling and flamegraph library")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-flate2-1.0
>    (package
>      (name "rust-flate2")
> -- 
> 2.24.0
>
> From 872f3635d168d1d072f7b9fc0f458d492fc3eebd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 07:53:34 -0800
> Subject: [PATCH 157/206] gnu: Add rust-encoding-0.2.
>
> * gnu/packages/crates-io.scm (rust-encoding-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index de872b896b..2f27f03331 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -1983,6 +1983,41 @@ floating-point primitives to an @code{io::Write}.")
>  char, u8 and u16.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-encoding-0.2
> +  (package
> +    (name "rust-encoding")
> +    (version "0.2.33")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1v1ndmkarh9z3n5hk53da4z56hgk9wa5kcsm7cnx345raqw983bb"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-index-japanese"
> +    ;;      ,rust-encoding-index-japanese-1.20141219)
> +    ;;     ("rust-encoding-index-korean"
> +    ;;      ,rust-encoding-index-korean-1.20141219)
> +    ;;     ("rust-encoding-index-simpchinese"
> +    ;;      ,rust-encoding-index-simpchinese-1.20141219)
> +    ;;     ("rust-encoding-index-singlebyte"
> +    ;;      ,rust-encoding-index-singlebyte-1.20141219)
> +    ;;     ("rust-encoding-index-tradchinese"
> +    ;;      ,rust-encoding-index-tradchinese-1.20141219))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-getopts" ,rust-getopts-0.2))))
> +    (home-page
> +     "https://github.com/lifthrasiir/rust-encoding")
> +    (synopsis "Character encoding support for Rust")
> +    (description
> +     "Character encoding support for Rust")
> +    (license license:expat)))
> +
>  (define-public rust-encoding-index-japanese-1.20141219
>    (package
>      (name "rust-encoding-index-japanese")
> -- 
> 2.24.0
>
> From 28b9cc1921792e290909c9b9537c76fac0d505fd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:04:32 -0800
> Subject: [PATCH 159/206] gnu: Add rust-serde-yaml-0.8.
>
> * gnu/packages/crates-io.scm (rust-serde-yaml-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 69ff3a284d..e4436ca098 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6932,6 +6932,36 @@ synchronization primitives.")
>       "Token De/Serializer for testing De/Serialize implementations")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-serde-yaml-0.8
> +  (package
> +    (name "rust-serde-yaml")
> +    (version "0.8.9")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "serde_yaml" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "10mmjpnshgrwij01a13679nxy1hnh5yfr0343kh0y9p5j2d8mc1q"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-dtoa" ,rust-dtoa-0.4)
> +    ;;     ("rust-linked-hash-map" ,rust-linked-hash-map-0.5)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-yaml-rust" ,rust-yaml-rust-0.4))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-unindent" ,rust-unindent-0.1)
> +    ;;     ("rust-version-sync" ,rust-version-sync-0.8))))
> +    (home-page
> +     "https://github.com/dtolnay/serde-yaml")
> +    (synopsis "YAML support for Serde")
> +    (description "YAML support for Serde")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-sha-1-0.8
>    (package
>      (name "rust-sha-1")
> -- 
> 2.24.0
>
> From c0baf5c3d1779c4cd6b4bd999833d5314dcf86cb Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:10:17 -0800
> Subject: [PATCH 160/206] gnu: add rust-flamer-0.3.
>
> * gnu/packages/crates-io.scm (rust-flamer-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e4436ca098..3479743570 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2446,6 +2446,32 @@ cross platform API.")
>      (description "A profiling and flamegraph library")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-flamer-0.3
> +  (package
> +    (name "rust-flamer")
> +    (version "0.3.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "flamer" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1b2d7jx80f3p7hqpgdi7wksaiq18k9w23p0cs2sxf7jbx2jx3bgj"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-flame" ,rust-flame-0.2)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page "https://github.com/llogiq/flamer")
> +    (synopsis
> +     "Macro to insert @code{flame::start_guard(_)}")
> +    (description
> +     "A procedural macro to insert @code{flame::start_guard(_)} calls.")
> +    (license license:asl2.0)))
> +
>  (define-public rust-flate2-1.0
>    (package
>      (name "rust-flate2")
> -- 
> 2.24.0
>
> From 4b6622d094db742a1c75b3028d4c6d5cbc6f18ed Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:11:55 -0800
> Subject: [PATCH 161/206] gnu: Add rust-unicode-bidi-0.3.
>
> * gnu/packages/crates-io.scm (rust-unicode-bidi-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3479743570..9d03a13f14 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -8483,6 +8483,36 @@ with the Unicode character database.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-unicode-bidi-0.3
> +  (package
> +    (name "rust-unicode-bidi")
> +    (version "0.3.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "unicode-bidi" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1malx8ljgm7v1gbaazkn7iicy5wj0bwcyadj3l727a38ch6bvwj9"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-flame" ,rust-flame-0.2)
> +    ;;     ("rust-flamer" ,rust-flamer-0.3)
> +    ;;     ("rust-matches" ,rust-matches-0.1)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-test" ,rust-serde-test-1.0))))
> +    (home-page
> +     "https://github.com/servo/unicode-bidi")
> +    (synopsis
> +     "Implementation of the Unicode Bidirectional Algorithm")
> +    (description
> +     "Implementation of the Unicode Bidirectional Algorithm.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-unicode-width-0.1
>    (package
>      (name "rust-unicode-width")
> -- 
> 2.24.0
>
> From 603f989d195f4085d26656ca067482e7f03b7834 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:17:48 -0800
> Subject: [PATCH 163/206] gnu: Add rust-idna-0.1.
>
> * gnu/packages/crates-io.scm (rust-idna-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 33400dc0aa..6f2e688c1e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3439,6 +3439,36 @@ SystemTime}}")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-idna-0.1
> +  (package
> +    (name "rust-idna")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "idna" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0kl4gs5kaydn4v07c6ka33spm9qdh2np0x7iw7g5zd8z1c7rxw1q"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-matches" ,rust-matches-0.1)
> +    ;;     ("rust-unicode-bidi" ,rust-unicode-bidi-0.2)
> +    ;;     ("rust-unicode-normalization"
> +    ;;      ,rust-unicode-normalization-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
> +    ;;     ("rust-rustc-test" ,rust-rustc-test-0.3))))
> +    (home-page "https://github.com/servo/rust-url/")
> +    (synopsis
> +     "Internationalizing Domain Names in Applications and Punycode")
> +    (description
> +     "IDNA (Internationalizing Domain Names in Applications) and Punycode.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-indexmap-1.0
>    (package
>      (name "rust-indexmap")
> -- 
> 2.24.0
>
> From 49ed8c6ab8918e7b8cf1b9ee61ad297cc945bd28 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:30:28 -0800
> Subject: [PATCH 165/206] gnu: Add rust-stackvector-1.0.
>
> * gnu/packages/crates-io.scm (rust-stackvector-1.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f9b963b59c..c2cfc26b72 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7337,6 +7337,33 @@ deeply recursive algorithms that may accidentally blow the stack.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-stackvector-1.0
> +  (package
> +    (name "rust-stackvector")
> +    (version "1.0.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "stackvector" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1bv820fhdad16islwli1g3iksk39ivf0zaqz4j1m08vq15jjaiqw"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-unreachable" ,rust-unreachable-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rustc-version" ,rust-rustc-version-0.2))))
> +    (home-page
> +     "https://github.com/Alexhuszagh/rust-stackvector")
> +    (synopsis
> +     "Vector-like facade for stack-allocated arrays")
> +    (description
> +     "StackVec: vector-like facade for stack-allocated arrays.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-static-assertions-0.3
>    (package
>      (name "rust-static-assertions")
> -- 
> 2.24.0
>
> From 735023f48bae04e33d67ed85b3c53af54938b8af Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:22:53 -0800
> Subject: [PATCH 164/206] gnu: Add rust-url-1.7.
>
> * gnu/packages/crates-io.scm (rust-url-1.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6f2e688c1e..f9b963b59c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -8710,6 +8710,41 @@ untrusted inputs in Rust.")
>      (properties '((hidden? . #t)))
>      (license license:isc)))
>  
> +(define-public rust-url-1.7
> +  (package
> +    (name "rust-url")
> +    (version "1.7.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "url" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0nim1c90mxpi9wgdw2xh8dqd72vlklwlzam436akcrhjac6pqknx"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding" ,rust-encoding-0.2)
> +    ;;     ("rust-heapsize" ,rust-heapsize-0.4)
> +    ;;     ("rust-idna" ,rust-idna-0.1)
> +    ;;     ("rust-matches" ,rust-matches-0.1)
> +    ;;     ("rust-percent-encoding" ,rust-percent-encoding-1.0)
> +    ;;     ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bencher" ,rust-bencher-0.1)
> +    ;;     ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
> +    ;;     ("rust-rustc-test" ,rust-rustc-test-0.3)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page "https://github.com/servo/rust-url")
> +    (synopsis
> +     "URL library for Rust, based on the WHATWG URL Standard")
> +    (description
> +     "URL library for Rust, based on the WHATWG URL Standard")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-utf8-ranges-1.0
>    (package
>      (name "rust-utf8-ranges")
> -- 
> 2.24.0
>
> From ad4e46808897af7186190a424a3b9e064e1c544f Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:34:23 -0800
> Subject: [PATCH 167/206] gnu: Add rust-bit-set-0.5.
>
> * gnu/packages/crates-io.scm (rust-bit-set-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 51cf74f60c..976874bb09 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -454,6 +454,32 @@ and no more (caveat: black_box is still missing!).")
>  that uses Serde for transforming structs into bytes and vice versa!")
>      (license license:expat)))
>  
> +(define-public rust-bit-set-0.5
> +  (package
> +    (name "rust-bit-set")
> +    (version "0.5.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bit-set" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "100ac8867bvbx9kv634w4xjk98b71i8nq4wdcvpf3cf4ha4j6k78"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bit-vec" ,rust-bit-vec-0.5))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4))))
> +    (home-page
> +     "https://github.com/contain-rs/bit-set")
> +    (synopsis "Set of bits")
> +    (description
> +     "This package provides a set of bits")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-bit-vec-0.5
>    (package
>      (name "rust-bit-vec")
> -- 
> 2.24.0
>
> From 44d8e094c8821cfa489b9f044484578b9d8922da Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:32:04 -0800
> Subject: [PATCH 166/206] gnu: Add rust-bit-vec-0.5.
>
> * gnu/packages/crates-io.scm (rust-bit-vec-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index c2cfc26b72..51cf74f60c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -454,6 +454,32 @@ and no more (caveat: black_box is still missing!).")
>  that uses Serde for transforming structs into bytes and vice versa!")
>      (license license:expat)))
>  
> +(define-public rust-bit-vec-0.5
> +  (package
> +    (name "rust-bit-vec")
> +    (version "0.5.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bit-vec" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1fyh8221s6cxlmng01v8v2ljhavzawqqs8r1xjc66ap5sjavx6zm"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page
> +     "https://github.com/contain-rs/bit-vec")
> +    (synopsis "Vector of bits")
> +    (description
> +     "This package provides a vector of bits")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-bitflags-1
>    (package
>      (name "rust-bitflags")
> -- 
> 2.24.0
>
> From f8800ee7032e85dc0abc7695edbcb918d2ab811f Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:42:44 -0800
> Subject: [PATCH 168/206] gnu: Add rust-stream-cipher-0.3.
>
> * gnu/packages/crates-io.scm (rust-stream-cipher-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 976874bb09..9817e2a0e1 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7538,6 +7538,30 @@ crate.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-stream-cipher-0.3
> +  (package
> +    (name "rust-stream-cipher")
> +    (version "0.3.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "stream-cipher" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1g1nd8r6pph70rzk5yyvg7a9ji7pkap9ddiqpp4v9xa9ys0bqqc8"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-blobby" ,rust-blobby-0.1)
> +    ;;     ("rust-generic-array" ,rust-generic-array-0.13))))
> +    (home-page
> +     "https://github.com/RustCrypto/traits")
> +    (synopsis "Stream cipher traits")
> +    (description "Stream cipher traits")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-streaming-stats-0.2
>    (package
>      (name "rust-streaming-stats")
> -- 
> 2.24.0
>
> From 9f4cea649c690d06cb915292a4861385ecc1cf56 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:51:37 -0800
> Subject: [PATCH 171/206] gnu: Add rust-wait-timeout-0.2.
>
> * gnu/packages/crates-io.scm (rust-wait-timeout-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 5a7a5ac36b..bca30dc460 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9067,6 +9067,31 @@ If that fails, no determination is made, and calls return None.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-wait-timeout-0.2
> +  (package
> +    (name "rust-wait-timeout")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wait-timeout" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1xpkk0j5l9pfmjfh1pi0i89invlavfrd9av5xp0zhxgb29dhy84z"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
> +    (home-page
> +     "https://github.com/alexcrichton/wait-timeout")
> +    (synopsis
> +     "Wait on a child process with a timeout")
> +    (description
> +     "This package provides a crate to wait on a child process with a timeout
> +specified across Unix and Windows platforms.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-walkdir-2.2
>    (package
>      (name "rust-walkdir")
> -- 
> 2.24.0
>
> From a680e4a69a22157a8b76bd6f26257c55c7d42625 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:49:03 -0800
> Subject: [PATCH 170/206] gnu: Add rust-rand-chacha-0.2.
>
> * gnu/packages/crates-io.scm (rust-rand-chacha-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index ce803c5d85..5a7a5ac36b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5803,6 +5803,33 @@ useful types and distributions, and some randomness-related algorithms.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-rand-chacha-0.2
> +  (package
> +    (name "rust-rand-chacha")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rand_chacha" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "178d36jfkc4v95s25scc2vibj2hd2hlk64cs6id4hvzg89whd4z1"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-c2-chacha" ,rust-c2-chacha-0.2)
> +    ;;     ("rust-rand-core" ,rust-rand-core-0.5))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-autocfg" ,rust-autocfg-0.1))))
> +    (home-page
> +     "https://crates.io/crates/rand_chacha")
> +    (synopsis "ChaCha random number generator")
> +    (description "ChaCha random number generator")
> +    (properties '((hidden? . #t)))
> +    (license (list license:asl2.0 license:expat))))
> +
>  (define-public rust-rand-core-0.5
>    (package
>      (name "rust-rand-core")
> -- 
> 2.24.0
>
> From a2cf0702f391184188f25715b1b832dfe5cc839e Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:15:01 -0800
> Subject: [PATCH 162/206] gnu: Add rust-unicode-normalization-0.1.
>
> * gnu/packages/crates-io.scm (rust-unicode-normalization-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9d03a13f14..33400dc0aa 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -8513,6 +8513,33 @@ with the Unicode character database.")
>       "Implementation of the Unicode Bidirectional Algorithm.")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-unicode-normalization-0.1
> +  (package
> +    (name "rust-unicode-normalization")
> +    (version "0.1.8")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "unicode-normalization" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "09i49va90rvia1agvgni4gicnqv50y5zy1naw8mr8bcqifh3j4ql"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-smallvec" ,rust-smallvec-0.6))))
> +    (home-page
> +     "https://github.com/unicode-rs/unicode-normalization")
> +    (synopsis
> +     "This crate provides functions for normalization of Unicode strings")
> +    (description
> +     "This crate provides functions for normalization of Unicode strings,
> +including Canonical and Compatible Decomposition and Recomposition, as
> +described in Unicode Standard Annex #15.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-unicode-width-0.1
>    (package
>      (name "rust-unicode-width")
> -- 
> 2.24.0
>
> From bd44217d10df73cd82520fbb1487e93574cf5ebd Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:52:54 -0800
> Subject: [PATCH 172/206] gnu: Add rust-rusty-fork-0.2.
>
> * gnu/packages/crates-io.scm (rust-rusty-fork-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index bca30dc460..3af33705dc 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6560,6 +6560,35 @@ require unstable language features.")
>  rustc compiler")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-rusty-fork-0.2
> +  (package
> +    (name "rust-rusty-fork")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "rusty-fork" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1bjg8adk0i921088j52rn0hmvsry34q19g96x41pamqcw5j35n9x"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-fnv" ,rust-fnv-1.0)
> +    ;;     ("rust-quick-error" ,rust-quick-error-1.2)
> +    ;;     ("rust-tempfile" ,rust-tempfile-3.0)
> +    ;;     ("rust-wait-timeout" ,rust-wait-timeout-0.2))))
> +    (home-page
> +     "https://github.com/altsysrq/rusty-fork")
> +    (synopsis
> +     "Library for running Rust tests in sub-processes")
> +    (description
> +     "Cross-platform library for running Rust tests in sub-processes
> +using a fork-like interface.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-ryu-1.0
>    (package
>      (name "rust-ryu")
> -- 
> 2.24.0
>
> From 80e23c17d7aec5631ee085ffc5a2b9dd1c5e967c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:58:39 -0800
> Subject: [PATCH 174/206] gnu: Add rust-lexical-core-0.4.
>
> * gnu/packages/crates-io.scm (rust-lexical-core-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 562cb75481..d2b35ff19e 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3944,6 +3944,40 @@ requires non-const function calls to be computed.")
>       "This package provides a library providing a lazily filled Cell struct.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-lexical-core-0.4
> +  (package
> +    (name "rust-lexical-core")
> +    (version "0.4.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "lexical-core" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1gr5y3ykghd3wjc00l3iizkj1dxylyhwi6fj6yn2qg06nzx771iz"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-dtoa" ,rust-dtoa-0.4)
> +    ;;     ("rust-ryu" ,rust-ryu-1.0)
> +    ;;     ("rust-stackvector" ,rust-stackvector-1.0)
> +    ;;     ("rust-static-assertions" ,rust-static-assertions-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-approx" ,rust-approx-0.3)
> +    ;;     ("rust-proptest" ,rust-proptest-0.9)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rustc-version" ,rust-rustc-version-0.2))))
> +    (home-page
> +     "https://github.com/Alexhuszagh/rust-lexical/tree/master/lexical-core")
> +    (synopsis
> +     "Lexical, to- and from-string conversion routines")
> +    (description
> +     "Lexical, to- and from-string conversion routines.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-libc-0.2
>    (package
>      (name "rust-libc")
> -- 
> 2.24.0
>
> From ef3e94fceaf8123b97103d9ed1f9cdc990ed4d01 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:44:51 -0800
> Subject: [PATCH 169/206] gnu: Add rust-c2-chacha-0.2.
>
> * gnu/packages/crates-io.scm (rust-c2-chacha-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9817e2a0e1..ce803c5d85 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -792,6 +792,35 @@ little-endian.")
>       "Types and traits for working with bytes")
>      (license license:expat)))
>  
> +(define-public rust-c2-chacha-0.2
> +  (package
> +    (name "rust-c2-chacha")
> +    (version "0.2.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "c2-chacha" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "00a11qdc8mg3z0k613rhprkc9p6xz0y7b1681x32ixg0hr3x0r3x"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-ppv-lite86" ,rust-ppv-lite86-0.2)
> +    ;;     ("rust-stream-cipher" ,rust-stream-cipher-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-hex-literal" ,rust-hex-literal-0.2))))
> +    (home-page
> +     "https://github.com/cryptocorrosion/cryptocorrosion")
> +    (synopsis "The ChaCha family of stream ciphers")
> +    (description
> +     "The ChaCha family of stream ciphers")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-cargon-0.0
>    (package
>      (name "rust-cargon")
> -- 
> 2.24.0
>
> From 7cec265988e601d9aa887b10b595e84ee27c7f01 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:03:19 -0800
> Subject: [PATCH 176/206] gnu: Add rust-paste-0.1.
>
> * gnu/packages/crates-io.scm (rust-paste-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e6ec0bbb18..b209d34398 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7025,6 +7025,31 @@ synchronization primitives.")
>       "An advanced API for creating custom synchronization primitives.")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-paste-0.1
> +  (package
> +    (name "rust-paste")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "paste" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0ygs077hlq8qlx5y46sfgrmhlqqgkmvvhn4x3y10arawalf4ljhz"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-paste-impl" ,rust-paste-impl-0.1)
> +    ;;     ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
> +    (home-page "https://github.com/dtolnay/paste")
> +    (synopsis
> +     "Macros for all your token pasting needs")
> +    (description
> +     "Macros for all your token pasting needs")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-paste-impl-0.1
>    (package
>      (name "rust-paste-impl")
> -- 
> 2.24.0
>
> From 8b50eb49bf281353b21421cf097648e9750347d1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:05:39 -0800
> Subject: [PATCH 177/206] gnu: Add rust-jemallocator-0.3.
>
> * gnu/packages/crates-io.scm (rust-jemallocator-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b209d34398..7e34ae8278 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3831,6 +3831,34 @@ wasm-bindgen crate.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-jemallocator-0.3
> +  (package
> +    (name "rust-jemallocator")
> +    (version "0.3.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "jemallocator" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0sabfa5118b7l4ars5n36s2fjyfn59w4d6mjs6rrmsa5zky67bj3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-jemalloc-sys" ,rust-jemalloc-sys-0.3)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-paste" ,rust-paste-0.1))))
> +    (home-page
> +     "https://github.com/gnzlbg/jemallocator")
> +    (synopsis
> +     "Rust allocator backed by jemalloc")
> +    (description
> +     "This package provides a Rust allocator backed by jemalloc")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-json-0.11
>    (package
>      (name "rust-json")
> -- 
> 2.24.0
>
> From 411b59d18124821ce508be95ab93cec5df145a80 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:18:30 -0800
> Subject: [PATCH 178/206] gnu: Add rust-nom-4.2.
>
> * gnu/packages/crates-io.scm (rust-nom-4.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 7e34ae8278..7e23df5a86 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4826,6 +4826,39 @@ implementation (which is unstable / requires nightly).")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-nom-4.2
> +  (package
> +    (name "rust-nom")
> +    (version "4.2.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nom" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1mkvby8b4m61p4g1px0pwr58yfkphyp1jcfbp4qfp7l6iqdaklia"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-lexical-core" ,rust-lexical-core-0.4)
> +    ;;     ("rust-memchr" ,rust-memchr-2.2)
> +    ;;     ("rust-regex" ,rust-regex-1.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-criterion" ,rust-criterion-0.2)
> +    ;;     ("rust-doc-comment" ,rust-doc-comment-0.3)
> +    ;;     ("rust-jemallocator" ,rust-jemallocator-0.3)
> +    ;;     ("rust-version-check" ,rust-version-check-0.9))))
> +    (home-page "https://github.com/Geal/nom")
> +    (synopsis
> +     "Byte-oriented, zero-copy, parser combinators library")
> +    (description
> +     "This package provides a byte-oriented, zero-copy, parser
> +combinators library.")
> +    (license license:expat)))
> +
>  (define-public rust-num-complex-0.2
>    (package
>      (name "rust-num-complex")
> -- 
> 2.24.0
>
> From 950edccb457d93882d02d958fb60bf6a31d5d794 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:20:36 -0800
> Subject: [PATCH 179/206] gnu: Add rust-cexpr-0.3.
>
> * gnu/package/crates-io.scm (rust-cexpr-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 26 ++++++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 7e23df5a86..74557ce4e6 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -910,6 +910,32 @@ archive to be linked into Rustcode.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-cexpr-0.3
> +  (package
> +    (name "rust-cexpr")
> +    (version "0.3.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "cexpr" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1by64ini3f058pwad3immx5cc12wr0m0kwgaxa8apzym03mj9ym7"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-nom" ,rust-nom-4.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-clang-sys" ,rust-clang-sys-0.28))))
> +    (home-page
> +     "https://github.com/jethrogb/rust-cexpr")
> +    (synopsis "C expression parser and evaluator")
> +    (description
> +     "This package provides a C expression parser and evaluator")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-chrono-0.4
>    (package
>      (name "rust-chrono")
> -- 
> 2.24.0
>
> From c92786f15315e36e193902d1aea01ec2d47b077b Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:26:38 -0800
> Subject: [PATCH 181/206] gnu: Add rust-fxhash-0.2.
>
> * gnu/packages/crates-io.scm (rust-fxhash-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index febba2838d..435888c15a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3049,6 +3049,34 @@ futures-rs library.")
>  library.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-fxhash-0.2
> +  (package
> +    (name "rust-fxhash")
> +    (version "0.2.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "fxhash" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "037mb9ichariqi45xm6mz0b11pa92gj38ba0409z3iz239sns6y3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-byteorder" ,rust-byteorder-1.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-fnv" ,rust-fnv-1.0)
> +    ;;     ("rust-seahash" ,rust-seahash-3.0))))
> +    (home-page "https://github.com/cbreeden/fxhash")
> +    (synopsis
> +     "Hashing algorithm from hasher used in FireFox and Rustc")
> +    (description
> +     "This package provides a fast, non-secure, hashing algorithm
> +derived from an internal hasher used in FireFox and Rustc.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-gcc-0.3
>    (package
>      (inherit rust-cc-1.0)
> -- 
> 2.24.0
>
> From d4d2503c4dcab510d43eb0208eb9f5496e215d10 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:24:01 -0800
> Subject: [PATCH 180/206] gnu: Add rust-seahash-3.0.
>
> * gnu/packages/crates-io.scm (rust-seahash-3.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 74557ce4e6..febba2838d 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -6993,6 +6993,29 @@ endian-aware Read/Write traits for byte buffers.")
>  Pwrite traits from the scroll crate.")
>      (license license:expat)))
>  
> +(define-public rust-seahash-3.0
> +  (package
> +    (name "rust-seahash")
> +    (version "3.0.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "seahash" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1pr8ijnxnp68ki4m4740yc5mr01zijf86yx07wbsqzwiyhghdmhq"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://gitlab.redox-os.org/redox-os/seahash")
> +    (synopsis
> +     "Hash function with proven statistical guarantees")
> +    (description
> +     "This package provides a blazingly fast, portable hash function with
> +proven statistical guarantees.")
> +    (license license:expat)))
> +
>  (define-public rust-security-framework-sys-0.3
>    (package
>      (name "rust-security-framework-sys")
> -- 
> 2.24.0
>
> From fbf6cfb8b4f4206bd981e9791034b2089a175bb8 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:35:44 -0800
> Subject: [PATCH 182/206] gnu: Add rust-which-2.0.
>
> * gnu/packages/crates-io.scm (rust-which-2.0): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 435888c15a..e24a39cd86 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9621,6 +9621,35 @@ attribute that is not in the shared backend crate.")
>      (license (list license:asl2.0
>                     license:expat))))
>  
> +(define-public rust-which-2.0
> +  (package
> +    (name "rust-which")
> +    (version "2.0.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "which" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0r7i793sc0xqnd2fxnqbksj7j1kx65bwn81b8z49750v4c8cnymm"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-failure" ,rust-failure-0.1)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-tempdir" ,rust-tempdir-0.3))))
> +    (home-page
> +     "https://github.com/harryfei/which-rs")
> +    (synopsis
> +     "Rust equivalent of Unix command \"which\"")
> +    (description
> +     "This package provides a Rust equivalent of Unix command \"which\".
> +Locate installed execuable in cross platforms.")
> +    (license license:expat)))
> +
>  (define-public rust-widestring-0.4
>    (package
>      (name "rust-widestring")
> -- 
> 2.24.0
>
> From f071b0afd6c8489aad12aa904a61a1b88080c2d7 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:36:16 -0800
> Subject: [PATCH 183/206] gnu: Add rust-bindgen-0.50.
>
> * gnu/packages/crates-io.scm (rust-bindgen-0.50): New variable.
> ---
>  gnu/packages/crates-io.scm | 44 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 44 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e24a39cd86..8f860c71cc 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -454,6 +454,50 @@ and no more (caveat: black_box is still missing!).")
>  that uses Serde for transforming structs into bytes and vice versa!")
>      (license license:expat)))
>  
> +(define-public rust-bindgen-0.50
> +  (package
> +    (name "rust-bindgen")
> +    (version "0.50.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bindgen" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1k4n1d002vrfn1mlpww3ib7f275yn4rpxfwkqpr9bym27zg17ab5"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bitflags" ,rust-bitflags-1)
> +    ;;     ("rust-cexpr" ,rust-cexpr-0.3)
> +    ;;     ("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-clang-sys" ,rust-clang-sys-0.28)
> +    ;;     ("rust-clap" ,rust-clap-2)
> +    ;;     ("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ("rust-fxhash" ,rust-fxhash-0.2)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-peeking-take-while" ,rust-peeking-take-while-0.1)
> +    ;;     ("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-shlex" ,rust-shlex-0.1)
> +    ;;     ("rust-which" ,rust-which-2.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-clap" ,rust-clap-2)
> +    ;;     ("rust-diff" ,rust-diff-0.1)
> +    ;;     ("rust-shlex" ,rust-shlex-0.1))))
> +    (home-page
> +     "https://rust-lang.github.io/rust-bindgen/")
> +    (synopsis
> +     "Automatically generates FFI bindings to C and C++libraries")
> +    (description
> +     "Automatically generates Rust FFI bindings to C and C++
> +libraries.")
> +    (license license:bsd-3)))
> +
>  (define-public rust-bit-set-0.5
>    (package
>      (name "rust-bit-set")
> -- 
> 2.24.0
>
> From 41de2c70681a2f10c88627cbf9b752eb9470da12 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:40:03 -0800
> Subject: [PATCH 184/206] gnu: Add rust-sleef-sys-0.1.
>
> * gnu/packages/crates-io.scm (rust-sleef-sys-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8f860c71cc..98e4a15b32 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7586,6 +7586,35 @@ data type.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-sleef-sys-0.1
> +  (package
> +    (name "rust-sleef-sys")
> +    (version "0.1.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "sleef-sys" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1881q2yc17j2m1yvh01447c93ws1mspnrj3k2nbvwbvcm8z81kkv"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bindgen" ,rust-bindgen-0.50)
> +    ;;     ("rust-cmake" ,rust-cmake-0.1)
> +    ;;     ("rust-env-logger" ,rust-env-logger-0.6))))
> +    (home-page "https://github.com/gnzlbg/sleef-sys")
> +    (synopsis
> +     "Rust FFI bindings to the SLEEF Vectorized Math Library")
> +    (description
> +     "Rust FFI bindings to the SLEEF Vectorized Math Library")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-slog-2.4
>    (package
>      (name "rust-slog")
> -- 
> 2.24.0
>
> From a4bc77ccb4e9c0f28d54a329da7826da22b4a265 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:02:00 -0800
> Subject: [PATCH 175/206] gnu: Add rust-paste-impl-0.1.
>
> * gnu/packages/crates-io.scm (rust-paste-impl-0.1).
> ---
>  gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
>  1 file changed, 27 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d2b35ff19e..e6ec0bbb18 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -7025,6 +7025,33 @@ synchronization primitives.")
>       "An advanced API for creating custom synchronization primitives.")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-paste-impl-0.1
> +  (package
> +    (name "rust-paste-impl")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "paste-impl" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1rkh8nixmb7r1y0mjnsz62p6r1bqah5ciri7bwhmgcmq4gk9drr6"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
> +    ;;     ("rust-proc-macro2" ,rust-proc-macro2-0.4)
> +    ;;     ("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-syn" ,rust-syn-0.15))))
> +    (home-page "https://github.com/dtolnay/paste")
> +    (synopsis
> +     "Implementation detail of the paste crate")
> +    (description
> +     "Implementation detail of the paste crate")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-semver-parser-0.9
>    (package
>      (name "rust-semver-parser")
> -- 
> 2.24.0
>
> From 80f3f68d0f0360dad745b52732a62646348e82b9 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:43:55 -0800
> Subject: [PATCH 186/206] gnu: Add rust-bytecount-0.5.
>
> * gnu/packages/crates-io.scm (rust-bytecount-0.5): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 4d5def3bbe..23a0233475 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -760,6 +760,35 @@ UTF-8.")
>       "This package provides a fast bump allocation arena for Rust.")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-bytecount-0.5
> +  (package
> +    (name "rust-bytecount")
> +    (version "0.5.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "bytecount" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0z6a280kiy4kg5v3qw97pbyvwycr17fsm41804i8zpq7nmads3xy"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-packed-simd" ,rust-packed-simd-0.3))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-criterion" ,rust-criterion-0.2)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4))))
> +    (home-page "https://github.com/llogiq/bytecount")
> +    (synopsis
> +     "Count occurrences of a given byte")
> +    (description
> +     "Count occurrences of a given byte, or the number of UTF-8 code points,
> +in a byte slice, fast.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-byteorder-1.3
>    (package
>      (name "rust-byteorder")
> -- 
> 2.24.0
>
> From af2adac5f8ba561ffc3e2e43ccdd7f520618ac6b Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:41:39 -0800
> Subject: [PATCH 185/206] gnu: Add rust-packed-simd-0.3.
>
> * gnu/packages/crates-io.scm (rust-packed-simd-0.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 98e4a15b32..4d5def3bbe 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5318,6 +5318,37 @@ normally prevent moving a type that has been borrowed from.")
>      (properties '((hidden? . #t)))
>      (license license:expat)))
>  
> +(define-public rust-packed-simd-0.3
> +  (package
> +    (name "rust-packed-simd")
> +    (version "0.3.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "packed_simd" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0822wqf6kzw4ig9ykndg348w2bxkhs3x64brzsvdxh2a1pyajpm8"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-core-arch" ,rust-core-arch-0.1)
> +    ;;     ("rust-sleef-sys" ,rust-sleef-sys-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-arrayvec" ,rust-arrayvec-0.4)
> +    ;;     ("rust-paste" ,rust-paste-0.1)
> +    ;;     ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
> +    ;;     ("rust-wasm-bindgen-test"
> +    ;;      ,rust-wasm-bindgen-test-0.2))))
> +    (home-page
> +     "https://github.com/rust-lang/packed_simd")
> +    (synopsis "Portable Packed SIMD vectors")
> +    (description "Portable Packed SIMD vectors")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-parity-wasm-0.40
>    (package
>      (name "rust-parity-wasm")
> -- 
> 2.24.0
>
> From 544dd7601f3fde0d4cba1c230073f6bcff8082f4 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:46:32 -0800
> Subject: [PATCH 187/206] gnu: Add rust-aho-corasick-0.7.
>
> * gnu/packages/crates-io.scm (rust-aho-corasick-0.7): New variable.
> ---
>  gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 23a0233475..9845c65a33 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -122,6 +122,29 @@ Rust, using gimli.")
>       "Fuzz Rust code with american-fuzzy-lop.")
>      (license license:asl2.0)))
>  
> +(define-public rust-aho-corasick-0.7
> +  (package
> +    (name "rust-aho-corasick")
> +    (version "0.7.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "aho-corasick" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0k1nqabiz37mnfnlrn084qi9yf8pj6a38qgbb3lc5zlr1jp89x76"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs (("rust-memchr" ,rust-memchr-2.2))))
> +    (home-page
> +     "https://github.com/BurntSushi/aho-corasick")
> +    (synopsis "Fast multiple substring searching")
> +    (description
> +     "Fast multiple substring searching.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-ansi-term-0.11
>    (package
>      (name "rust-ansi-term")
> -- 
> 2.24.0
>
> From 2983c14a2b8f46e8e2aab5a20bd997ae817bce5a Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:49:08 -0800
> Subject: [PATCH 188/206] gnu: Add rust-encoding-rs-0.8.
>
> * gnu/packages/crates-io.scm (rust-encoding-rs-0.8): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 9845c65a33..72fa4240d9 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2374,6 +2374,37 @@ char, u8 and u16.")
>  encodings")
>      (license license:cc0)))
>  
> +(define-public rust-encoding-rs-0.8
> +  (package
> +    (name "rust-encoding-rs")
> +    (version "0.8.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding_rs" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1v902qqnbd37vdq4rjvp6k05wmghrasfdcjy30gp1xpjg5f7hma1"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-cfg-if" ,rust-cfg-if-0.1)
> +    ;;     ("rust-packed-simd" ,rust-packed-simd-0.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-bincode" ,rust-bincode-1.1)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page "https://docs.rs/encoding_rs/")
> +    (synopsis
> +     "Gecko-oriented implementation of the Encoding Standard")
> +    (description
> +     "This package provides a Gecko-oriented implementation of the Encoding
> +Standard")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-env-logger-0.6
>    (package
>      (name "rust-env-logger")
> -- 
> 2.24.0
>
> From 9ca210b7d86ae293d7fccb6d22e52021e6dc25ce Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 08:54:49 -0800
> Subject: [PATCH 173/206] gnu: Add rust-proptest-0.9.
>
> * gnu/packages/crates-io.scm (rust-proptest-0.9): New variable.
> ---
>  gnu/packages/crates-io.scm | 38 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 3af33705dc..562cb75481 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -5649,6 +5649,44 @@ in terms of the upstream unstable API.")
>           (base32
>            "0nd71fl24sys066jrha6j7i34nfkjv44yzw8yww9742wmc8j0gfg"))))))
>  
> +(define-public rust-proptest-0.9
> +  (package
> +    (name "rust-proptest")
> +    (version "0.9.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "proptest" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "17sjg8isas4qk85807c4panih9k0lwa4k1mbajhciw5c5q17w56g"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bit-set" ,rust-bit-set-0.5)
> +    ;;     ("rust-bitflags" ,rust-bitflags-1)
> +    ;;     ("rust-byteorder" ,rust-byteorder-1.3)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-num-traits" ,rust-num-traits-0.2)
> +    ;;     ("rust-quick-error" ,rust-quick-error-1.2)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-rand-chacha" ,rust-rand-chacha-0.2)
> +    ;;     ("rust-rand-xorshift" ,rust-rand-xorshift-0.2)
> +    ;;     ("rust-regex-syntax" ,rust-regex-syntax-0.6)
> +    ;;     ("rust-rusty-fork" ,rust-rusty-fork-0.2)
> +    ;;     ("rust-tempfile" ,rust-tempfile-3.0))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-regex" ,rust-regex-1.1))))
> +    (home-page
> +     "https://altsysrq.github.io/proptest-book/proptest/index.html")
> +    (synopsis
> +     "Hypothesis-like property-based testing and shrinking")
> +    (description
> +     "Hypothesis-like property-based testing and shrinking.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-quick-error-1.2
>    (package
>      (name "rust-quick-error")
> -- 
> 2.24.0
>
> From 783a485105cf6a9f56a529ff2d94c413cb44f955 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:53:19 -0800
> Subject: [PATCH 190/206] gnu: Add rust-grep-regex-0.1.
>
> * gnu/packages/crates-io.scm (rust-grep-regex-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 0776497b28..d982894d43 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3522,6 +3522,37 @@ focus on line oriented search.")
>      (description "Use PCRE2 with the grep crate.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-grep-regex-0.1
> +  (package
> +    (name "rust-grep-regex")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep-regex" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1lbb8837gzy25n706mnidaps4jl63ym679zraj8nfy5g02zbz549"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-aho-corasick" ,rust-aho-corasick-0.7)
> +    ;;     ("rust-grep-matcher" ,rust-grep-matcher-0.1)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-regex-syntax" ,rust-regex-syntax-0.6)
> +    ;;     ("rust-thread-local" ,rust-thread-local-0.3)
> +    ;;     ("rust-utf8-ranges" ,rust-utf8-ranges-1.0))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Use Rust's regex library with the grep crate")
> +    (description
> +     "Use Rust's regex library with the grep crate.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-half-1.3
>    (package
>      (name "rust-half")
> -- 
> 2.24.0
>
> From 9abbb707e10ce3e18af40ceecc7f7a2ec0d72704 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:51:22 -0800
> Subject: [PATCH 189/206] gnu: Add rust-encoding-rs-io-0.1.
>
> * gnu/packages/crates-io.scm (rust-encoding-rs-io-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 72fa4240d9..0776497b28 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -2405,6 +2405,31 @@ encodings")
>  Standard")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-encoding-rs-io-0.1
> +  (package
> +    (name "rust-encoding-rs-io")
> +    (version "0.1.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "encoding_rs_io" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0b7k9p7inkrcanh7h6q4m278y05gmcwi8p5r43h7grzl5dxfw6cn"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-encoding-rs" ,rust-encoding-rs-0.8))))
> +    (home-page
> +     "https://github.com/BurntSushi/encoding_rs_io")
> +    (synopsis
> +     "Streaming transcoding for encoding_rs")
> +    (description
> +     "Streaming transcoding for encoding_rs")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-env-logger-0.6
>    (package
>      (name "rust-env-logger")
> -- 
> 2.24.0
>
> From 63dba055c07ada54b3f5a0fabb7fda38451ba8f5 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:58:00 -0800
> Subject: [PATCH 192/206] gnu: Add rust-grep-printer-0.1.
>
> * gnu/packages/crates-io.scm (rust-grep-printer-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 35 +++++++++++++++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 8faef2aee0..f0b0cd3a7a 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3522,6 +3522,41 @@ focus on line oriented search.")
>      (description "Use PCRE2 with the grep crate.")
>      (license `(,license:expat ,license:unlicense))))
>  
> +(define-public rust-grep-printer-0.1
> +  (package
> +    (name "rust-grep-printer")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep-printer" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0mxc1yx5sx89f00imlm5d3hxwdgglv9rzwdki8ba50gvq8a2nr8m"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-base64" ,rust-base64-0.10)
> +        ("rust-bstr" ,rust-bstr-0.2)
> +        ("rust-grep-matcher" ,rust-grep-matcher-0.1)
> +        ("rust-grep-searcher" ,rust-grep-searcher-0.1)
> +        ("rust-serde" ,rust-serde-1.0)
> +        ("rust-serde-derive" ,rust-serde-derive-1.0)
> +        ("rust-serde-json" ,rust-serde-json-1.0)
> +        ("rust-termcolor" ,rust-termcolor-1.0))
> +       #:cargo-development-inputs
> +       (("rust-grep-regex" ,rust-grep-regex-0.1))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Standard printing of search results")
> +    (description
> +     "An implementation of the grep crate's Sink trait that provides
> +standard printing of search results, similar to grep itself.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-grep-regex-0.1
>    (package
>      (name "rust-grep-regex")
> -- 
> 2.24.0
>
> From daafe340decf709e5f36a7e98ac24fe14d4b4749 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:59:20 -0800
> Subject: [PATCH 193/206] gnu: Add rust-grep-0.2.
>
> * gnu/packages/crates-io.scm (rust-grep-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f0b0cd3a7a..46205043e3 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3437,6 +3437,39 @@ path simultaneously, and returning all of the globs that matched.")
>  loading crate.")
>      (license license:expat)))
>  
> +(define-public rust-grep-0.2
> +  (package
> +    (name "rust-grep")
> +    (version "0.2.4")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1pkhjladybzzciwg0mjk3vjz5fyi76hk0d3hgyzv2jxlyp8v4fyc"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-grep-cli" ,rust-grep-cli-0.1)
> +    ;;     ("rust-grep-matcher" ,rust-grep-matcher-0.1)
> +    ;;     ("rust-grep-pcre2" ,rust-grep-pcre2-0.1)
> +    ;;     ("rust-grep-printer" ,rust-grep-printer-0.1)
> +    ;;     ("rust-grep-regex" ,rust-grep-regex-0.1)
> +    ;;     ("rust-grep-searcher" ,rust-grep-searcher-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-termcolor" ,rust-termcolor-1.0)
> +    ;;     ("rust-walkdir" ,rust-walkdir-2.2))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Line oriented regex searching as a library")
> +    (description
> +     "Fast line oriented regex searching as a library.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-grep-cli-0.1
>    (package
>      (name "rust-grep-cli")
> -- 
> 2.24.0
>
> From a4f5acb94a62e8979689a76b9f1a2413eb509a6d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 09:55:57 -0800
> Subject: [PATCH 191/206] gnu: Add rust-grep-searcher-0.1.
>
> * gnu/package/crates-io.scm (rust-grep-searcher-0.1): New version.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d982894d43..8faef2aee0 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3553,6 +3553,40 @@ focus on line oriented search.")
>       "Use Rust's regex library with the grep crate.")
>      (license `(,license:unlicense ,license:expat))))
>  
> +(define-public rust-grep-searcher-0.1
> +  (package
> +    (name "rust-grep-searcher")
> +    (version "0.1.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "grep-searcher" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0pj85m7q6k6jpl3q57v1gwq5jxmqnza2xg7jjcxky3q325z8lcjy"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bstr" ,rust-bstr-0.2)
> +    ;;     ("rust-bytecount" ,rust-bytecount-0.5)
> +    ;;     ("rust-encoding-rs" ,rust-encoding-rs-0.8)
> +    ;;     ("rust-encoding-rs-io" ,rust-encoding-rs-io-0.1)
> +    ;;     ("rust-grep-matcher" ,rust-grep-matcher-0.1)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-memmap" ,rust-memmap-0.7))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-grep-regex" ,rust-grep-regex-0.1)
> +    ;;     ("rust-regex" ,rust-regex-1.1))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Line oriented regex searching as a library")
> +    (description
> +     "Fast line oriented regex searching as a library.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-half-1.3
>    (package
>      (name "rust-half")
> -- 
> 2.24.0
>
> From 6723d5bfe8988deec10627a0c3df4e90c382ccec Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:07:31 -0800
> Subject: [PATCH 194/206] gnu: Add rust-stdweb-0.4.
>
> * gnu/packages/crates-io.scm (rust-stdweb-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 42 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 46205043e3..2c6eede2d0 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -8129,6 +8129,48 @@ are met.")
>      (properties '((hidden? . #t)))
>      (license (list license:expat license:asl2.0))))
>  
> +(define-public rust-stdweb-0.4
> +  (package
> +    (name "rust-stdweb")
> +    (version "0.4.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "stdweb" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "094giad1v81rxxs4izf88ijc9c6w3c7cr5a7cwwr86mc22xn4hy3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-discard" ,rust-discard-1.0)
> +    ;;     ("rust-futures-channel-preview" ,rust-futures-channel-preview-0.3)
> +    ;;     ("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
> +    ;;     ("rust-futures-executor-preview" ,rust-futures-executor-preview-0.3)
> +    ;;     ("rust-futures-util-preview" ,rust-futures-util-preview-0.3)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-stdweb-derive" ,rust-stdweb-derive-0.5)
> +    ;;     ("rust-stdweb-internal-macros" ,rust-stdweb-internal-macros-0.2)
> +    ;;     ("rust-stdweb-internal-runtime" ,rust-stdweb-internal-runtime-0.1)
> +    ;;     ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rustc-version" ,rust-rustc-version-0.2)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-stdweb-internal-test-macro"
> +    ;;      ,rust-stdweb-internal-test-macro-0.1)
> +    ;;     ("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.2))))
> +    (home-page "https://github.com/koute/stdweb")
> +    (synopsis
> +     "Standard library for the client-side Web")
> +    (description
> +     "This package provides a standard library for the client-side
> +Web.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-stdweb-derive-0.5
>    (package
>      (name "rust-stdweb-derive")
> -- 
> 2.24.0
>
> From 9fa445f2a1b451da16bb5b735272da192c5dd38d Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:13:39 -0800
> Subject: [PATCH 195/206] gnu: Add rust-tokio-fs-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-fs-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 2c6eede2d0..6cb2dc30a9 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -8865,6 +8865,37 @@ the current thread.")
>      (description "Future execution primitives")
>      (license license:expat)))
>  
> +(define-public rust-tokio-fs-0.1
> +  (package
> +    (name "rust-tokio-fs")
> +    (version "0.1.6")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-fs" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1bxp8585pi4j5g39ci2gkk99qnyilyhhila7cs8r6scdn0idrriz"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-tempdir" ,rust-tempdir-0.3)
> +    ;;     ("rust-tempfile" ,rust-tempfile-3.0)
> +    ;;     ("rust-tokio" ,rust-tokio)
> +    ;;     ("rust-tokio-codec" ,rust-tokio-codec-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis "Filesystem API for Tokio")
> +    (description "Filesystem API for Tokio.")
> +    (license license:expat)))
> +
>  ;; Cyclic dependencies with tokio and tokio-current-thread
>  (define-public rust-tokio-io-0.1
>    (package
> -- 
> 2.24.0
>
> From 3f36b53304acaa738457ac797e6707e17b6f3f38 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:15:59 -0800
> Subject: [PATCH 196/206] gnu: Add rust-tokio-timer-0.2.
>
> * gnu/packages/crates-io.scm (rust-tokio-timer-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 6cb2dc30a9..d575e735a4 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9078,6 +9078,35 @@ the current thread.")
>  pool.")
>      (license license:expat)))
>  
> +(define-public rust-tokio-timer-0.2
> +  (package
> +    (name "rust-tokio-timer")
> +    (version "0.2.11")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-timer" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "03m68ainkdy3b5pf20rjyknhk2ppx35bjdc2yfj2bv80sl96h47j"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-slab" ,rust-slab-0.4)
> +    ;;     ("rust-tokio-executor" ,rust-tokio-executor-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-tokio" ,rust-tokio)
> +    ;;     ("rust-tokio-mock-task" ,rust-tokio-mock-task-0.1))))
> +    (home-page "https://github.com/tokio-rs/tokio")
> +    (synopsis "Timer facilities for Tokio")
> +    (description "Timer facilities for Tokio")
> +    (license license:expat)))
> +
>  (define-public rust-toml-0.5
>    (package
>      (name "rust-toml")
> -- 
> 2.24.0
>
> From 75eb7e30a71499d66f4ecae08cf5b28762c5fabc Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:18:21 -0800
> Subject: [PATCH 197/206] gnu: Add rust-tokio-udp-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-udp-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index d575e735a4..21ef0b0348 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9107,6 +9107,36 @@ pool.")
>      (description "Timer facilities for Tokio")
>      (license license:expat)))
>  
> +(define-public rust-tokio-udp-0.1
> +  (package
> +    (name "rust-tokio-udp")
> +    (version "0.1.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-udp" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "14kfj35s465czcspayacnzlxrazfvxzhhggq1rqlljhgp1sqa9k6"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-mio" ,rust-mio-0.6)
> +    ;;     ("rust-tokio-codec" ,rust-tokio-codec-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-reactor" ,rust-tokio-reactor-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-env-logger" ,rust-env-logger-0.6))))
> +    (home-page "https://tokio.rs")
> +    (synopsis "UDP bindings for tokio")
> +    (description "UDP bindings for tokio.")
> +    (license license:expat)))
> +
>  (define-public rust-toml-0.5
>    (package
>      (name "rust-toml")
> -- 
> 2.24.0
>
> From ce0a747bd648a79a53bb2db052a61e50d3d82917 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:21:18 -0800
> Subject: [PATCH 198/206] gnu: Add rust-mio-uds-0.6.
>
> * gnu/packages/crates-io.scm (rust-mio-uds-0.6): New variable.
> ---
>  gnu/packages/crates-io.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 21ef0b0348..b7ab9823f7 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -4932,6 +4932,35 @@ drop-in replacement for miniz")
>      (description "Lightweight non-blocking IO")
>      (license license:expat)))
>  
> +(define-public rust-mio-uds-0.6
> +  (package
> +    (name "rust-mio-uds")
> +    (version "0.6.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "mio-uds" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "09gimdbnj7b9yca99pk8lxh9jhl79msj795c8fxi2sqr9slmfqln"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-iovec" ,rust-iovec-0.1)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-mio" ,rust-mio-0.6))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-tempdir" ,rust-tempdir-0.3))))
> +    (home-page
> +     "https://github.com/alexcrichton/mio-uds")
> +    (synopsis
> +     "Unix domain socket bindings for mio")
> +    (description
> +     "Unix domain socket bindings for mio.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-miow-0.3
>    (package
>      (name "rust-miow")
> -- 
> 2.24.0
>
> From a3f5b085b6b32e47b1e230d1f49071f9c9226c49 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:27:24 -0800
> Subject: [PATCH 200/206] gnu: Add rust-tokio-trace-core-0.2.
>
> * gnu/packages/crates-io.scm (rust-tokio-trace-core-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index eaffa4734b..f2b3aafd75 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9136,6 +9136,28 @@ pool.")
>      (description "Timer facilities for Tokio")
>      (license license:expat)))
>  
> + (define-public rust-tokio-trace-core-0.2
> +  (package
> +    (name "rust-tokio-trace-core")
> +    (version "0.2.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-trace-core" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "04y6c2r4ddzk02xb3hn60s9a1w92h0g8pzmxwaspqvwmsrba5j59"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-lazy-static" ,rust-lazy-static-1.3))))
> +    (home-page "https://tokio.rs")
> +    (synopsis "Core primitives for tokio-trace")
> +    (description "Core primitives for tokio-trace.")
> +    (license license:expat)))
> +
>  (define-public rust-tokio-udp-0.1
>    (package
>      (name "rust-tokio-udp")
> -- 
> 2.24.0
>
> From f1994f30e115b3f41ef9ea2abffe5ee7656d1894 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:23:27 -0800
> Subject: [PATCH 199/206] gnu: Add rust-tokio-uds-0.2.
>
> * gnu/packages/crates-io.scm (rust-tokio-uds-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index b7ab9823f7..eaffa4734b 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -9166,6 +9166,40 @@ pool.")
>      (description "UDP bindings for tokio.")
>      (license license:expat)))
>  
> +(define-public rust-tokio-uds-0.2
> +  (package
> +    (name "rust-tokio-uds")
> +    (version "0.2.5")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio-uds" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0i94kxma6l7iy5hd5k7nvn7v9pnyw0s54bm9mjs0lap1l0xzqzq3"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-iovec" ,rust-iovec-0.1)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-mio" ,rust-mio-0.6)
> +    ;;     ("rust-mio-uds" ,rust-mio-uds-0.6)
> +    ;;     ("rust-tokio-codec" ,rust-tokio-codec-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-reactor" ,rust-tokio-reactor-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-tempfile" ,rust-tempfile-3.0)
> +    ;;     ("rust-tokio" ,rust-tokio))))
> +    (home-page "https://github.com/tokio-rs/tokio")
> +    (synopsis "Unix Domain sockets for Tokio")
> +    (description "Unix Domain sockets for Tokio")
> +    (license license:expat)))
> +
>  (define-public rust-toml-0.5
>    (package
>      (name "rust-toml")
> -- 
> 2.24.0
>
> From 8a2c04467f54cf69c7123a461628c31d9948fb46 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:31:43 -0800
> Subject: [PATCH 201/206] gnu: Add rust-http-0.1.
>
> * gnu/packages/crates-io.scm (rust-http-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index f2b3aafd75..5ac5988c2c 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3809,6 +3809,40 @@ compile time.")
>       "Internal implementation of the hex-literal crate")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-http-0.1
> +  (package
> +    (name "rust-http")
> +    (version "0.1.17")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "http" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "06icxvrd26r6s7dzjavja7r47hgjb9851wblqh8frxnsy3q29lzf"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-fnv" ,rust-fnv-1.0)
> +    ;;     ("rust-itoa" ,rust-itoa-0.4))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-indexmap" ,rust-indexmap-1.0)
> +    ;;     ("rust-quickcheck" ,rust-quickcheck-0.8)
> +    ;;     ("rust-rand" ,rust-rand-0.4)
> +    ;;     ("rust-seahash" ,rust-seahash-3.0)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0))))
> +    (home-page "https://github.com/hyperium/http")
> +    (synopsis
> +     "Set of types for representing HTTP requests and responses")
> +    (description
> +     "This package provides a set of types for representing HTTP
> +requests and responses.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-humantime-1.2
>    (package
>      (name "rust-humantime")
> -- 
> 2.24.0
>
> From 8268042acc27f6916f2d17834f29b88016c0872c Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:37:30 -0800
> Subject: [PATCH 203/206] gnu: Add rust-tokio-0.1.
>
> * gnu/packages/crates-io.scm (rust-tokio-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 54 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 54 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e1e402cdea..e974ba9c22 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -8874,6 +8874,60 @@ in Rust.")
>       "Simple, lightweight template engine")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-tokio-0.1
> +  (package
> +    (name "rust-tokio")
> +    (version "0.1.21")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "tokio" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "11ra8jp3fj70a2zrqmd6as7wgpwiiyzjf50gz89i8r7wpksgqbzc"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-bytes" ,rust-bytes-0.4)
> +    ;;     ("rust-futures" ,rust-futures-0.1)
> +    ;;     ("rust-mio" ,rust-mio-0.6)
> +    ;;     ("rust-miow" ,rust-miow-0.3)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-tokio-codec" ,rust-tokio-codec-0.1)
> +    ;;     ("rust-tokio-current-thread" ,rust-tokio-current-thread-0.1)
> +    ;;     ("rust-tokio-executor" ,rust-tokio-executor-0.1)
> +    ;;     ("rust-tokio-fs" ,rust-tokio-fs-0.1)
> +    ;;     ("rust-tokio-io" ,rust-tokio-io-0.1)
> +    ;;     ("rust-tokio-reactor" ,rust-tokio-reactor-0.1)
> +    ;;     ("rust-tokio-sync" ,rust-tokio-sync-0.1)
> +    ;;     ("rust-tokio-tcp" ,rust-tokio-tcp-0.1)
> +    ;;     ("rust-tokio-threadpool" ,rust-tokio-threadpool-0.1)
> +    ;;     ("rust-tokio-timer" ,rust-tokio-timer-0.2)
> +    ;;     ("rust-tokio-trace-core" ,rust-tokio-trace-core-0.2)
> +    ;;     ("rust-tokio-udp" ,rust-tokio-udp-0.1)
> +    ;;     ("rust-tokio-uds" ,rust-tokio-uds-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-env-logger" ,rust-env-logger-0.6)
> +    ;;     ("rust-flate2" ,rust-flate2-1.0)
> +    ;;     ("rust-futures-cpupool" ,rust-futures-cpupool-0.1)
> +    ;;     ("rust-http" ,rust-http-0.1)
> +    ;;     ("rust-httparse" ,rust-httparse-1.3)
> +    ;;     ("rust-libc" ,rust-libc-0.2.58)
> +    ;;     ("rust-num-cpus" ,rust-num-cpus-1.10)
> +    ;;     ("rust-serde" ,rust-serde-1.0)
> +    ;;     ("rust-serde-derive" ,rust-serde-derive-1.0)
> +    ;;     ("rust-serde-json" ,rust-serde-json-1.0)
> +    ;;     ("rust-time" ,rust-time-0.1))))
> +    (home-page "https://tokio.rs")
> +    (synopsis
> +     "Event-driven, non-blocking I/O platform")
> +    (description
> +     "An event-driven, non-blocking I/O platform for writing asynchronous I/O
> +backed applications.")
> +    (license license:expat)))
> +
>  ;; Cyclic dependency with tokio-io
>  (define-public rust-tokio-codec-0.1
>    (package
> -- 
> 2.24.0
>
> From e613c7a084ce3b6b57fb016a57cf728798ece6b0 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:40:29 -0800
> Subject: [PATCH 204/206] gnu: Add rust-ignore-0.4.
>
> * gnu/packages/crates-io.scm (rust-ignore-0.4): New variable.
> ---
>  gnu/packages/crates-io.scm | 37 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e974ba9c22..222212e151 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3948,6 +3948,43 @@ SystemTime}}")
>       "IDNA (Internationalizing Domain Names in Applications) and Punycode.")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-ignore-0.4
> +  (package
> +    (name "rust-ignore")
> +    (version "0.4.7")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "ignore" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "00mhksl41dnlsjqmka8c5a0m4spwm70ilm1qd9rngwq552hpzicd"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-crossbeam-channel" ,rust-crossbeam-channel-0.3)
> +    ;;     ("rust-globset" ,rust-globset-0.4)
> +    ;;     ("rust-lazy-static" ,rust-lazy-static-1.3)
> +    ;;     ("rust-log" ,rust-log-0.4)
> +    ;;     ("rust-memchr" ,rust-memchr-2.2)
> +    ;;     ("rust-regex" ,rust-regex-1.1)
> +    ;;     ("rust-same-file" ,rust-same-file-1.0)
> +    ;;     ("rust-thread-local" ,rust-thread-local-0.3)
> +    ;;     ("rust-walkdir" ,rust-walkdir-2.2)
> +    ;;     ("rust-winapi-util" ,rust-winapi-util-0.1))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-tempfile" ,rust-tempfile-3.0))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep/tree/master/ignore")
> +    (synopsis
> +     "Efficiently match ignore files such as .gitignore")
> +    (description
> +     "This package provides a fast library for efficiently matching
> +ignore files such as .gitignore against file paths.")
> +    (license `(,license:unlicense ,license:expat))))
> +
>  (define-public rust-indexmap-1.0
>    (package
>      (name "rust-indexmap")
> -- 
> 2.24.0
>
> From 9acf02b3c1c9a7b58cca45dd2d82b062f4299cb4 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 10:34:59 -0800
> Subject: [PATCH 202/206] gnu: Add rust-httparse-1.3.
>
> * gnu/packages/crates-io.scm (rust-httparse-1.3): New variable.
> ---
>  gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 5ac5988c2c..e1e402cdea 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -3843,6 +3843,31 @@ compile time.")
>  requests and responses.")
>      (license `(,license:asl2.0 ,license:expat))))
>  
> +(define-public rust-httparse-1.3
> +  (package
> +    (name "rust-httparse")
> +    (version "1.3.3")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "httparse" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "10vsfx1b8drhif08fbi0ha9d3v1f3h80w42rxh0y3hrvzl64nwz8"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-development-inputs
> +    ;;    (("rust-pico-sys" ,rust-pico-sys-0.0))))
> +    (home-page
> +     "https://github.com/seanmonstar/httparse")
> +    (synopsis
> +     "Zero-copy HTTP/1.x parser")
> +    (description
> +     "This package provides a tiny, safe, speedy, zero-copy HTTP/1.x parser.")
> +    (license `(,license:asl2.0 ,license:expat))))
> +
>  (define-public rust-humantime-1.2
>    (package
>      (name "rust-humantime")
> -- 
> 2.24.0
>
> From 1159ac1ffe6d652a404b688f681cd555c67656e1 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Mon, 16 Dec 2019 10:28:16 -0800
> Subject: [PATCH 205/206] gnu: Add rust-wasm-bindgen-macro-0.2.
>
> * gnu/packages/crates-io.scm (rust-wasm-bindgen-macro-0.2): New variable.
> ---
>  gnu/packages/crates-io.scm | 31 +++++++++++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index 222212e151..0161aab228 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -10228,6 +10228,37 @@ in Rust.")
>       "Bridging the gap between Rust Futures and JavaScript Promises")
>      (license `(,license:expat ,license:asl2.0))))
>  
> +(define-public rust-wasm-bindgen-macro-0.2
> +  (package
> +    (name "rust-wasm-bindgen-macro")
> +    (version "0.2.48")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "wasm-bindgen-macro" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "07fqzzlbncccmnxbbkg9v4n53qc1lps5g0bb9wq3i9zp9gvm0zgh"))))
> +    (build-system cargo-build-system)
> +    ;; (arguments
> +    ;;  `(#:cargo-inputs
> +    ;;    (("rust-quote" ,rust-quote-1.0)
> +    ;;     ("rust-wasm-bindgen-macro-support"
> +    ;;      ,rust-wasm-bindgen-macro-support-0.2))
> +    ;;    #:cargo-development-inputs
> +    ;;    (("rust-trybuild" ,rust-trybuild-1.0)
> +    ;;     ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))))
> +    (home-page
> +     "https://rustwasm.github.io/wasm-bindgen/")
> +    (synopsis
> +     "Definition of the @code{#[wasm_bindgen]} attribute")
> +    (description
> +     "Definition of the @code{#[wasm_bindgen]} attribute, an internal
> +dependency.")
> +    (license `(,license:expat ,license:asl2.0))))
> +
>  (define-public rust-wasm-bindgen-macro-support-0.2
>    (package
>      (name "rust-wasm-bindgen-macro-support")
> -- 
> 2.24.0
>
> From d87bce9a0abd7fb24145e7e68b213cd6973edf26 Mon Sep 17 00:00:00 2001
> From: John Soo <[email-masked]>
> Date: Sun, 15 Dec 2019 11:27:39 -0800
> Subject: [PATCH 206/206] gnu: Add ripgrep.
>
> * gnu/packages/rust-apps.scm (ripgrep): New variable.
> * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
> ---
>  gnu/local.mk               |   1 +
>  gnu/packages/rust-apps.scm | 113 +++++++++++++++++++++++++++++++++++++
>  2 files changed, 114 insertions(+)
>  create mode 100644 gnu/packages/rust-apps.scm
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index c895b7711a..45c8e8756c 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -432,6 +432,7 @@ GNU_SYSTEM_MODULES =				\
>    %D%/packages/ruby.scm				\
>    %D%/packages/rush.scm				\
>    %D%/packages/rust.scm				\
> +  %D%/packages/rust-apps.scm			\
>    %D%/packages/rust-cbindgen.scm		\
>    %D%/packages/samba.scm			\
>    %D%/packages/sagemath.scm			\
> diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
> new file mode 100644
> index 0000000000..3662a2bb55
> --- /dev/null
> +++ b/gnu/packages/rust-apps.scm
> @@ -0,0 +1,113 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2019 John Soo <[email-masked]>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages rust-apps)
> +  #:use-module (gnu packages crates-io)
> +  #:use-module (guix build-system cargo)
> +  #:use-module (guix download)
> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix packages))
> +
> +(define-public ripgrep
> +  (package
> +    (name "ripgrep")
> +    (version "11.0.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "ripgrep" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0bn40lz9n08llq615p4qqqbi24zbkf0appfx3zgxg34a86ga9zds"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-aho-corasick" ,rust-aho-corasick-0.7)
> +        ("rust-atty" ,rust-atty-0.2)
> +        ("rust-bitflags-1" ,rust-bitflags-1)
> +        ("rust-bstr" ,rust-bstr-0.1)
> +        ("rust-bytecount" ,rust-bytecount-0.5)
> +        ("rust-byteorder" ,rust-byteorder-1.3)
> +        ("rust-cc" ,rust-cc-1.0)
> +        ("rust-cfg-if" ,rust-cfg-if-0.1)
> +        ("rust-clap" ,rust-clap-2)
> +        ("rust-crossbeam-channel" ,rust-crossbeam-channel-0.3)
> +        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
> +        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
> +        ("rust-encoding-rs-io" ,rust-encoding-rs-io-0.1)
> +        ("rust-fnv" ,rust-fnv-1.0)
> +        ("rust-globset" ,rust-globset-0.4)
> +        ("rust-grep" ,rust-grep-0.2)
> +        ("rust-grep-cli" ,rust-grep-cli-0.1)
> +        ("rust-grep-matcher" ,rust-grep-matcher-0.1)
> +        ("rust-grep-pcre2" ,rust-grep-pcre2-0.1)
> +        ("rust-grep-printer" ,rust-grep-printer-0.1)
> +        ("rust-grep-regex" ,rust-grep-regex-0.1)
> +        ("rust-grep-searcher" ,rust-grep-searcher-0.1)
> +        ("rust-ignore" ,rust-ignore-0.4)
> +        ("rust-itoa" ,rust-itoa-0.4)
> +        ("rust-lazy-static" ,rust-lazy-static-1.3)
> +        ("rust-libc" ,rust-libc-0.2)
> +        ("rust-log" ,rust-log-0.4)
> +        ("rust-memchr" ,rust-memchr-2.2)
> +        ("rust-memmap" ,rust-memmap-0.7)
> +        ("rust-num-cpus" ,rust-num-cpus-1.10)
> +        ("rust-packed-simd" ,rust-packed-simd-0.3)
> +        ("rust-pcre2" ,rust-pcre2-0.2)
> +        ("rust-pcre2-sys" ,rust-pcre2-sys-0.2)
> +        ("rust-pkg-config" ,rust-pkg-config-0.3)
> +        ("rust-proc-macro2" ,rust-proc-macro2-1.0)
> +        ("rust-quote" ,rust-quote-1.0)
> +        ("rust-regex" ,rust-regex-1.1)
> +        ("rust-regex-automata" ,rust-regex-automata-0.1)
> +        ("rust-regex-syntax" ,rust-regex-syntax-0.6)
> +        ("rust-ryu" ,rust-ryu-1.0)
> +        ("rust-same-file" ,rust-same-file-1.0)
> +        ("rust-serde-json" ,rust-serde-json-1.0)
> +        ("rust-smallvec" ,rust-smallvec-0.6)
> +        ("rust-strsim" ,rust-strsim-0.8)
> +        ("rust-syn" ,rust-syn-1.0)
> +        ("rust-termcolor" ,rust-termcolor-1.0)
> +        ("rust-textwrap" ,rust-textwrap-0.11)
> +        ("rust-thread-local" ,rust-thread-local-0.3)
> +        ("rust-unicode-width" ,rust-unicode-width-0.1)
> +        ("rust-unicode-xid" ,rust-unicode-xid-0.2)
> +        ("rust-ucd-util" ,rust-ucd-util-0.1)
> +        ("rust-utf8-ranges" ,rust-utf8-ranges-1.0)
> +        ("rust-walkdir" ,rust-walkdir-2.2)
> +        ("rust-winapi" ,rust-winapi-0.3)
> +        ("rust-winapi-util" ,rust-winapi-util-0.1)
> +        ("rust-wincolor" ,rust-wincolor-1.0)
> +        ("rust-quote" ,rust-quote-0.6))
> +       #:cargo-development-inputs
> +       (("rust-clap" ,rust-clap-2)
> +        ("rust-lazy-static" ,rust-lazy-static-1.3)
> +        ("rust-serde" ,rust-serde-1.0)
> +        ("rust-serde-derive" ,rust-serde-derive-1.0))))
> +    (home-page
> +     "https://github.com/BurntSushi/ripgrep")
> +    (synopsis
> +     "Line-oriented search tool")
> +    (description
> +     "ripgrep is a line-oriented search tool that recursively searches
> +your current directory for a regex pattern while respecting your
> +gitignore rules.  ripgrep has first class support on Windows, macOS
> +and Linux")
> +    (license `(,license:unlicense ,license:expat))))
> -- 
> 2.24.0