summary refs log tree commit diff
path: root/gnu/packages/crates-io.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/crates-io.scm')
-rw-r--r--gnu/packages/crates-io.scm6813
1 files changed, 6193 insertions, 620 deletions
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 9cf0c8bf7b..92df4a56db 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2021 aecepoglu <aecepoglu@fastmail.fm>
 ;;; Copyright @ 2021 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -205,8 +206,46 @@ protocols.")
         ("rust-tokio" ,rust-tokio-0.2)
         ("rust-tokio-util" ,rust-tokio-util-0.2))))))
 
+(define-public rust-actix-connect-2
+  (package
+    (name "rust-actix-connect")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "actix-connect" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1p6hh5rj9zpx4wx0h87d56ahk68hmhpw2gmfsfl5pwb312hkfy0p"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-actix-codec" ,rust-actix-codec-0.3)
+        ("rust-actix-rt" ,rust-actix-rt-1)
+        ("rust-actix-service" ,rust-actix-service-1)
+        ("rust-actix-utils" ,rust-actix-utils-2)
+        ("rust-derive-more" ,rust-derive-more-0.99)
+        ("rust-either" ,rust-either-1)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-rustls" ,rust-rustls-0.18)
+        ("rust-tokio-openssl" ,rust-tokio-openssl-0.4)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.14)
+        ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
+        ("rust-trust-dns-resolver" ,rust-trust-dns-resolver-0.19)
+        ("rust-webpki" ,rust-webpki-0.21))))
+    (home-page "https://actix.rs")
+    (synopsis "TCP connector service for Actix ecosystem")
+    (description
+     "This package provides a TCP connector service for Actix ecosystem.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-actix-connect-1
   (package
+    (inherit rust-actix-connect-2)
     (name "rust-actix-connect")
     (version "1.0.2")
     (source
@@ -216,7 +255,6 @@ protocols.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0v77m394gzbrrzg12xkqgli11vwhig0zcxy3yhmq1s91j9bcjp69"))))
-    (build-system cargo-build-system)
     (arguments
      ;; XXX: The crate fails to't build with: "error[E0432]: unresolved import
      ;; `trust_dns_resolver::Background`".  I assume it really expects
@@ -248,12 +286,7 @@ protocols.")
              (substitute* "Cargo.toml"
                (("0.18.0-alpha.2")
                 ,(package-version rust-trust-dns-proto-0.18)))
-             #t)))))
-    (home-page "https://actix.rs")
-    (synopsis "TCP connector service for Actix ecosystem")
-    (description
-     "This package provides a TCP connector service for Actix ecosystem.")
-    (license (list license:expat license:asl2.0))))
+             #t)))))))
 
 (define-public rust-actix-derive-0.5
   (package
@@ -282,8 +315,71 @@ protocols.")
      "This package provides proc macros for the Rust actor framework Actix.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-actix-http-2
+  (package
+    (name "rust-actix-http")
+    (version "2.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "actix-http" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0x78h9lzqdhp06v1kf4dhbiqp8sc911w4lqfj5rmdbhpg3l9j8j5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-actix" ,rust-actix-0.10)
+        ("rust-actix-codec" ,rust-actix-codec-0.3)
+        ("rust-actix-connect" ,rust-actix-connect-2)
+        ("rust-actix-rt" ,rust-actix-rt-1)
+        ("rust-actix-service" ,rust-actix-service-1)
+        ("rust-actix-threadpool" ,rust-actix-threadpool-0.3)
+        ("rust-actix-tls" ,rust-actix-tls-2)
+        ("rust-actix-utils" ,rust-actix-utils-2)
+        ("rust-base64" ,rust-base64-0.13)
+        ("rust-bitflags" ,rust-bitflags-1)
+        ("rust-brotli2" ,rust-brotli2-0.3)
+        ("rust-bytes" ,rust-bytes-0.5)
+        ("rust-cookie" ,rust-cookie-0.14)
+        ("rust-copyless" ,rust-copyless-0.1)
+        ("rust-derive-more" ,rust-derive-more-0.99)
+        ("rust-either" ,rust-either-1)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-futures-channel" ,rust-futures-channel-0.3)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-fxhash" ,rust-fxhash-0.2)
+        ("rust-h2" ,rust-h2-0.2)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-indexmap" ,rust-indexmap-1)
+        ("rust-itoa" ,rust-itoa-0.4)
+        ("rust-language-tags" ,rust-language-tags-0.2)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-percent-encoding" ,rust-percent-encoding-2)
+        ("rust-pin-project" ,rust-pin-project-1)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.7)
+        ("rust-sha-1" ,rust-sha-1-0.9)
+        ("rust-slab" ,rust-slab-0.4)
+        ("rust-time" ,rust-time-0.2))))
+    (home-page "https://actix.rs")
+    (synopsis "HTTP primitives for the Actix ecosystem")
+    (description
+     "This package provides HTTP primitives for the Actix ecosystem.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-actix-http-1
   (package
+    (inherit rust-actix-http-2)
     (name "rust-actix-http")
     (version "1.0.1")
     (source
@@ -293,7 +389,6 @@ protocols.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "06chrs9asbxmxzgiw5sw7ky97yrin9g88nmd6w407a6y9z668rn1"))))
-    (build-system cargo-build-system)
     ;; XXX: The crate fails to't build with with the same error as
     ;; rust-actix-connect.  Skip build for now.
     (arguments
@@ -341,12 +436,7 @@ protocols.")
         ("rust-slab" ,rust-slab-0.4)
         ("rust-time" ,rust-time-0.1))
        #:cargo-development-inputs
-       (("rust-actix-http-test" ,rust-actix-http-test-1))))
-    (home-page "https://actix.rs")
-    (synopsis "HTTP primitives for the Actix ecosystem")
-    (description
-     "This package provides HTTP primitives for the Actix ecosystem.")
-    (license (list license:expat license:asl2.0))))
+       (("rust-actix-http-test" ,rust-actix-http-test-1))))))
 
 (define-public rust-actix-http-test-1
   (package
@@ -586,8 +676,42 @@ asynchronous request/response operations.")
     (description "This package provides Actix thread pool for sync code.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-actix-tls-2
+  (package
+    (name "rust-actix-tls")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "actix-tls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1yqmlyn02c72a1rrmjkfx5hnz286130y3sq4ll1mbkv1fdyrny14"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-actix-codec" ,rust-actix-codec-0.3)
+        ("rust-actix-service" ,rust-actix-service-1)
+        ("rust-actix-utils" ,rust-actix-utils-2)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-rustls" ,rust-rustls-0.18)
+        ("rust-tokio-openssl" ,rust-tokio-openssl-0.4)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.14)
+        ("rust-tokio-tls" ,rust-tokio-tls-0.3)
+        ("rust-webpki" ,rust-webpki-0.21)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
+    (home-page "https://actix.rs")
+    (synopsis "TLS acceptor services for Actix ecosystem")
+    (description
+     "This package provides TLS acceptor services for Actix ecosystem.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-actix-tls-1
   (package
+    (inherit rust-actix-tls-2)
     (name "rust-actix-tls")
     (version "1.0.0")
     (source
@@ -597,7 +721,6 @@ asynchronous request/response operations.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "1a4m96jz6vzmknpk5m803c337c6dillnqq4w71nrlphhmzxb9rd4"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-actix-codec" ,rust-actix-codec-0.2)
@@ -617,12 +740,7 @@ asynchronous request/response operations.")
         ("rust-webpki" ,rust-webpki-0.21)
         ("rust-webpki-roots" ,rust-webpki-roots-0.17))
        #:cargo-development-inputs
-       (("rust-actix-testing" ,rust-actix-testing-1))))
-    (home-page "https://actix.rs")
-    (synopsis "TLS acceptor services for Actix ecosystem")
-    (description
-     "This package provides TLS acceptor services for Actix ecosystem.")
-    (license (list license:expat license:asl2.0))))
+       (("rust-actix-testing" ,rust-actix-testing-1))))))
 
 (define-public rust-actix-utils-2
   (package
@@ -683,8 +801,64 @@ the Actix ecosystem.")
         ("rust-pin-project" ,rust-pin-project-0.4)
         ("rust-slab" ,rust-slab-0.4))))))
 
+(define-public rust-actix-web-3
+  (package
+    (name "rust-actix-web")
+    (version "3.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "actix-web" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "11kv8y1p9dw78lnhrw3rqavhmazmy7s0z8j14a3a1yp7fahx8hg6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-actix-codec" ,rust-actix-codec-0.3)
+        ("rust-actix-http" ,rust-actix-http-2)
+        ("rust-actix-macros" ,rust-actix-macros-0.1)
+        ("rust-actix-router" ,rust-actix-router-0.2)
+        ("rust-actix-rt" ,rust-actix-rt-1)
+        ("rust-actix-server" ,rust-actix-server-1)
+        ("rust-actix-service" ,rust-actix-service-1)
+        ("rust-actix-testing" ,rust-actix-testing-1)
+        ("rust-actix-threadpool" ,rust-actix-threadpool-0.3)
+        ("rust-actix-tls" ,rust-actix-tls-2)
+        ("rust-actix-utils" ,rust-actix-utils-2)
+        ("rust-actix-web-codegen" ,rust-actix-web-codegen-0.4)
+        ("rust-awc" ,rust-awc-2)
+        ("rust-bytes" ,rust-bytes-0.5)
+        ("rust-derive-more" ,rust-derive-more-0.99)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-futures-channel" ,rust-futures-channel-0.3)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-fxhash" ,rust-fxhash-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-pin-project" ,rust-pin-project-1)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-rustls" ,rust-rustls-0.18)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.7)
+        ("rust-socket2" ,rust-socket2-0.3)
+        ("rust-time" ,rust-time-0.2)
+        ("rust-tinyvec" ,rust-tinyvec-1)
+        ("rust-url" ,rust-url-2))))
+    (home-page "https://actix.rs")
+    (synopsis "Powerful, pragmatic, and fast web framework for Rust")
+    (description
+     "Actix Web is a powerful, pragmatic, and fast web framework for
+Rust.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-actix-web-2
   (package
+    (inherit rust-actix-web-3)
     (name "rust-actix-web")
     (version "2.0.0")
     (source
@@ -694,7 +868,6 @@ the Actix ecosystem.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0dgnn7xiw2yhvrx7l7b57gwra7yfqawka5xz1lpq4h0h8qifhn1i"))))
-    (build-system cargo-build-system)
     (arguments
      ;; XXX: The crate fails to't build with with the same error as
      ;; rust-actix-connect.  Skip build for now.
@@ -729,16 +902,34 @@ the Actix ecosystem.")
         ("rust-serde-json" ,rust-serde-json-1)
         ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.6)
         ("rust-time" ,rust-time-0.1)
-        ("rust-url" ,rust-url-2))))
+        ("rust-url" ,rust-url-2))))))
+
+(define-public rust-actix-web-codegen-0.4
+  (package
+    (name "rust-actix-web-codegen")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "actix-web-codegen" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1ys3f6q0hgflqvp271s49q88m41db3iynm7ydxy0wgikjdqgf9md"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
     (home-page "https://actix.rs")
-    (synopsis "Powerful, pragmatic, and fast web framework for Rust")
-    (description
-     "Actix Web is a powerful, pragmatic, and fast web framework for
-Rust.")
+    (synopsis "Actix web proc macros")
+    (description "This package provides Actix web proc macros.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-actix-web-codegen-0.2
   (package
+    (inherit rust-actix-web-codegen-0.4)
     (name "rust-actix-web-codegen")
     (version "0.2.2")
     (source
@@ -748,7 +939,6 @@ Rust.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0rjpzwsm51nfjqsz269jwbkiic9d454bnsk9ng882wp0rdsz86x7"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-proc-macro2" ,rust-proc-macro2-1)
@@ -756,11 +946,7 @@ Rust.")
         ("rust-syn" ,rust-syn-1))
        #:cargo-development-inputs
        (("rust-actix-rt" ,rust-actix-rt-1)
-        ("rust-actix-web" ,rust-actix-web-2))))
-    (home-page "https://actix.rs")
-    (synopsis "Actix web proc macros")
-    (description "This package provides Actix web proc macros.")
-    (license (list license:expat license:asl2.0))))
+        ("rust-actix-web" ,rust-actix-web-2))))))
 
 (define-public rust-adaptive-barrier-0.1
   (package
@@ -853,6 +1039,33 @@ Rust, using gimli.")
         ("rust-memmap" ,rust-memmap-0.7)
         ("rust-rustc-test" ,rust-rustc-test-0.3))))))
 
+(define-public rust-adler-0.2
+  (package
+    (name "rust-adler")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "adler" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zpdsrfq5bd34941gmrlamnzjfbsx0x586afb7b0jqhr8g1lwapf"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
+        ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
+    (home-page "https://github.com/jonas-schievink/adler")
+    (synopsis "Implementation of the Adler-32 checksum")
+    (description
+     "This crate provides a simple implementation of the Adler-32
+checksum, used in the zlib compression format.")
+    (license
+     (list license:expat
+           license:asl2.0
+           (license:non-copyleft "https://spdx.org/licenses/0BSD.html")))))
+
 (define-public rust-adler32-1
   (package
     (name "rust-adler32")
@@ -907,6 +1120,24 @@ algorithms")
 with Associated Data (AEAD) algorithms.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-aead-0.2
+  (package
+    (inherit rust-aead-0.3)
+    (name "rust-aead")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "aead" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1r3ijikx9h117q0xgkc56yb0501kifjr3gsfp5bvnrz7asdipw2c"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-generic-array" ,rust-generic-array-0.12)
+        ("rust-heapless" ,rust-heapless-0.5))))))
+
 (define-public rust-aes-0.4
   (package
     (name "rust-aes")
@@ -933,6 +1164,25 @@ with Associated Data (AEAD) algorithms.")
 ciphers implementations.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-aes-0.3
+  (package
+    (inherit rust-aes-0.4)
+    (name "rust-aes")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "aes" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1j90iwpax0y1dqq14i8y9xgpcnnlgnljwkxg3mhzrralwf7ivssl"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-aes-soft" ,rust-aes-soft-0.3)
+        ("rust-aesni" ,rust-aesni-0.6)
+        ("rust-block-cipher-trait" ,rust-block-cipher-trait-0.6))))))
+
 (define-public rust-aes-gcm-0.6
   (package
     (name "rust-aes-gcm")
@@ -967,6 +1217,28 @@ Data (AEAD) Cipher with optional architecture-specific hardware
 acceleration.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-aes-gcm-0.5
+  (package
+    (inherit rust-aes-gcm-0.6)
+    (name "rust-aes-gcm")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "aes-gcm" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0f66b5bmyj38r1hj55wzamlzw3y1aql34lgwr2vxn93073d6njl3"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-aead" ,rust-aead-0.2)
+        ("rust-aes" ,rust-aes-0.3)
+        ("rust-block-cipher-trait" ,rust-block-cipher-trait-0.6)
+        ("rust-ghash" ,rust-ghash-0.2)
+        ("rust-subtle" ,rust-subtle-2)
+        ("rust-zeroize" ,rust-zeroize-1))))))
+
 (define-public rust-aes-soft-0.4
   (package
     (name "rust-aes-soft")
@@ -993,6 +1265,25 @@ acceleration.")
 AES (Rijndael) block ciphers.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-aes-soft-0.3
+  (package
+    (inherit rust-aes-soft-0.4)
+    (name "rust-aes-soft")
+    (version "0.3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "aes-soft" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "039si7yjp0wcd750sgq52c60sh2ikaxwd7rq7g0ba7ws7ypfgmyg"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-block-cipher-trait" ,rust-block-cipher-trait-0.6)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-opaque-debug" ,rust-opaque-debug-0.2))))))
+
 (define-public rust-aesni-0.7
   (package
     (name "rust-aesni")
@@ -1020,6 +1311,25 @@ AES (Rijndael) block ciphers.")
 block ciphers using AES-NI.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-aesni-0.6
+  (package
+    (inherit rust-aesni-0.7)
+    (name "rust-aesni")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "aesni" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "007imgcfl82nilfpamj5dik83pkcmkzvbkxp384p7r3iz6sscw1g"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-block-cipher-trait" ,rust-block-cipher-trait-0.6)
+        ("rust-opaque-debug" ,rust-opaque-debug-0.2)
+        ("rust-stream-cipher" ,rust-stream-cipher-0.3))))))
+
 (define-public rust-afl-0.8
   (package
     (name "rust-afl")
@@ -1595,8 +1905,38 @@ on every platform.")
          "153awzwywmb61xg857b80l63b1x6hifx2pha7lxf6fck9qxwraq8"))))
     (arguments '())))
 
+(define-public rust-arbitrary-0.4
+  (package
+    (name "rust-arbitrary")
+    (version "0.4.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "arbitrary" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0sa55cynafwzvlhyhfpm3vmi2fydj3ipdj5yfbaif7l56cixfmfv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-derive-arbitrary" ,rust-derive-arbitrary-0.4))))
+    (home-page "https://github.com/nagisa/rust_arbitrary")
+    (synopsis "Trait for generating structured data from unstructured data")
+    (description
+     "The @code{Arbitrary} crate lets you construct arbitrary instance of
+a type.
+
+This crate is primarily intended to be combined with a fuzzer like
+@code{libFuzzer} and @code{cargo-fuzz} or AFL, and to help you turn the raw,
+untyped byte buffers that they produce into well-typed, valid, structured
+values.  This allows you to combine structure-aware test case generation with
+coverage-guided, mutation-based fuzzers.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-arbitrary-0.2
   (package
+    (inherit rust-arbitrary-0.4)
     (name "rust-arbitrary")
     (version "0.2.0")
     (source
@@ -1607,12 +1947,39 @@ on every platform.")
           (string-append name "-" version ".tar.gz"))
         (sha256
           (base32
-            "1i3fhcdyjq4isn22xx2svmpfr5hwyzi0wavbm07fs8i2dv5pdkv4"))))
+            "1i3fhcdyjq4isn22xx2svmpfr5hwyzi0wavbm07fs8i2dv5pdkv4"))))))
+
+(define-public rust-arboard-1
+  (package
+    (name "rust-arboard")
+    (version "1.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "arboard" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0wpyv732fxkplmiwik1sbgdlnbk748w1aqpkc71gn5lm2ns9w545"))))
     (build-system cargo-build-system)
-    (home-page "https://github.com/nagisa/rust_arbitrary/")
-    (synopsis "Trait for generating structured data from unstructured data")
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clipboard-win" ,rust-clipboard-win-4)
+        ("rust-core-graphics" ,rust-core-graphics-0.21)
+        ("rust-image" ,rust-image-0.23)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-objc" ,rust-objc-0.2)
+        ("rust-objc-foundation" ,rust-objc-foundation-0.1)
+        ("rust-objc-id" ,rust-objc-id-0.1)
+        ("rust-scopeguard" ,rust-scopeguard-1)
+        ("rust-thiserror" ,rust-thiserror-1)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("rust-xcb" ,rust-xcb-0.9))))
+    (home-page "https://github.com/ArturKovacs/arboard")
+    (synopsis "Image and text handling for the OS clipboard")
     (description
-     "The trait for generating structured data from unstructured data.")
+     "This package provides image and text handling for the OS clipboard.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-arc-swap-1
@@ -1752,7 +2119,7 @@ that runs on Argon2.")
 (define-public rust-arrayvec-0.5
   (package
     (name "rust-arrayvec")
-    (version "0.5.1")
+    (version "0.5.2")
     (source
      (origin
        (method url-fetch)
@@ -1761,7 +2128,7 @@ that runs on Argon2.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1f5mca8kiiwhvhxd1mbnq68j6v6rk139sch567zwwzl6hs37vxyg"))))
+         "12q6hn01x5435bprwlb7w9m7817dyfq55yrl4psygr78bp32zdi3"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -1875,6 +2242,24 @@ standard library.")
         ("rust-serde" ,rust-serde-1)
         ("rust-serde-test" ,rust-serde-test-1))))))
 
+(define-public rust-ascii-0.8
+  (package
+    (inherit rust-ascii-1)
+    (name "rust-ascii")
+    (version "0.8.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ascii" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "051gh2bgjq90s0f0i0hd9p4z4fpg5k82b570d1223jj7rhd8kglp"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-quickcheck" ,rust-quickcheck-0.4))))))
+
 (define-public rust-assert-cli-0.6
   (package
     (name "rust-assert-cli")
@@ -1906,7 +2291,7 @@ standard library.")
 (define-public rust-assert-cmd-1
   (package
     (name "rust-assert-cmd")
-    (version "1.0.1")
+    (version "1.0.3")
     (source
       (origin
         (method url-fetch)
@@ -1915,11 +2300,12 @@ standard library.")
          (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "1nhqr0zimizcnqfggccfznyrmvklgqwhklsh0f1yq5lwdyi9r2y8"))))
+          "15h3wfxn1q7sfcrin4z35x9hgf539f2dhkwz2mq4zswlrmc5nizj"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
-       (("rust-doc-comment" ,rust-doc-comment-0.3)
+       (("rust-bstr" ,rust-bstr-0.2)
+        ("rust-doc-comment" ,rust-doc-comment-0.3)
         ("rust-predicates" ,rust-predicates-1)
         ("rust-predicates-core" ,rust-predicates-core-1)
         ("rust-predicates-tree" ,rust-predicates-tree-1)
@@ -2153,6 +2539,24 @@ Rust.")
 and Rust's modern asynchronous IO types.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-async-datagram-3
+  (package
+    (name "rust-async-datagram")
+    (version "3.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-datagram" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0k4kiy67d24ay8l7xrfjpsa4zkmhxv97ddj0f16rcv61qkky3i4f"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/rustasync/async-datagram")
+    (synopsis "Async datagram traits")
+    (description "This package provides asynchronous datagram traits.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-async-dup-1
   (package
     (name "rust-async-dup")
@@ -2210,29 +2614,32 @@ AsyncSeek if the inner type does.")
     (description "This library provides async executors.")
     (license (list license:asl2.0 license:expat))))
 
-(define-public rust-async-global-executor-1
+(define-public rust-async-global-executor-2
   (package
     (name "rust-async-global-executor")
-    (version "1.4.3")
+    (version "2.0.2")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "async-global-executor" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "017s1lik153s587l6q9x5bf9i1n7gxqcg3zn2mdgvf16rm4rn1vk"))))
+        (base32 "1xjacr43sbz2zk0zygpd9k14n95wa61x8n9i8mcdwdkz659fr1lm"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-async-executor" ,rust-async-executor-1)
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-channel" ,rust-async-channel-1)
+        ("rust-async-executor" ,rust-async-executor-1)
         ("rust-async-io" ,rust-async-io-1)
+        ("rust-async-mutex" ,rust-async-mutex-1)
+        ("rust-blocking" ,rust-blocking-1)
         ("rust-futures-lite" ,rust-futures-lite-1)
         ("rust-num-cpus" ,rust-num-cpus-1)
         ("rust-once-cell" ,rust-once-cell-1)
+        ("rust-tokio" ,rust-tokio-1)
         ("rust-tokio" ,rust-tokio-0.2)
-        ("rust-tokio" ,rust-tokio-0.3))
-       #:cargo-development-inputs
-       (("rust-doc-comment" ,rust-doc-comment-0.3))))
+        ("rust-tokio" ,rust-tokio-0.3))))
     (home-page "https://github.com/async-rs/async-global-executor")
     (synopsis "Global executor built on top of @code{async-executor} and
 @code{async-io}")
@@ -2241,6 +2648,61 @@ AsyncSeek if the inner type does.")
 @code{async-executor} and @code{async-io}.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-async-global-executor-1
+  (package
+    (inherit rust-async-global-executor-2)
+    (name "rust-async-global-executor")
+    (version "1.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-global-executor" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "017s1lik153s587l6q9x5bf9i1n7gxqcg3zn2mdgvf16rm4rn1vk"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-async-executor" ,rust-async-executor-1)
+        ("rust-async-io" ,rust-async-io-1)
+        ("rust-futures-lite" ,rust-futures-lite-1)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-once-cell" ,rust-once-cell-1)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-tokio" ,rust-tokio-0.3))
+       #:cargo-development-inputs
+       (("rust-doc-comment" ,rust-doc-comment-0.3))))))
+
+(define-public rust-async-h1-2
+  (package
+    (name "rust-async-h1")
+    (version "2.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-h1" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1p6ls50p1ixnxrhmx4sdb5d2kqrl1kfhcb0lkqlhzzqjz1sqmip5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-channel" ,rust-async-channel-1)
+        ("rust-async-dup" ,rust-async-dup-1)
+        ("rust-async-std" ,rust-async-std-1)
+        ("rust-byte-pool" ,rust-byte-pool-0.2)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-http-types" ,rust-http-types-2)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-pin-project" ,rust-pin-project-1))))
+    (home-page "https://github.com/http-rs/async-h1")
+    (synopsis "Asynchronous HTTP 1.1 parser")
+    (description
+     "This package provides an asynchronous HTTP 1.1 parser.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-async-io-1
   (package
     (name "rust-async-io")
@@ -2284,6 +2746,27 @@ types (and many other types) to use in async programs, and Timer, a future
 that expires at a point in time.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-async-lock-2
+  (package
+    (name "rust-async-lock")
+    (version "2.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-lock" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1yrvnshs94aiimvprqkhcg1z7x9abzsja8f4ifcakr5x6abn15hr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-event-listener" ,rust-event-listener-2))))
+    (home-page "https://github.com/stjepang/async-lock")
+    (synopsis "Async synchronization primitives")
+    (description "This package provides Async synchronization primitives.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-async-log-1
   (package
     (name "rust-async-log")
@@ -2483,8 +2966,100 @@ This is unlike the process API in the standard library, where dropping
 a running Child leaks its resources.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-async-ready-3
+  (package
+    (name "rust-async-ready")
+    (version "3.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-ready" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "09xw34q0k48r1bvs3s1l2a1mglz98l7zjbkdcy861k8zsyfwfw4l"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/rustasync/async-ready")
+    (synopsis "Async readiness traits")
+    (description
+     "This package provides Async readiness traits.  Those can be useful when
+implementing async state machines that can later be wrapped in dedicated
+futures.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-async-recursion-0.3
+  (package
+    (name "rust-async-recursion")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-recursion" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "18npixkwglnpvjgp89fpcyzf820ngx3a1hxp4hqbkw81p9b8dmyp"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/dcchut/async-recursion")
+    (synopsis "Recursion for async functions")
+    (description
+     "This package provides a procedural macro for recursive async
+functions.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-async-std-1
+  (package
+    (name "rust-async-std")
+    (version "1.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "async-std" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0h834fni3npsggjqin8386d2fn11m2z42dr1ymq0aknppa2ndw6r"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-attributes" ,rust-async-attributes-1)
+        ("rust-async-channel" ,rust-async-channel-1)
+        ("rust-async-global-executor" ,rust-async-global-executor-2)
+        ("rust-async-io" ,rust-async-io-1)
+        ("rust-async-lock" ,rust-async-lock-2)
+        ("rust-async-process" ,rust-async-process-1)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.8)
+        ("rust-futures-channel" ,rust-futures-channel-0.3)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-futures-io" ,rust-futures-io-0.3)
+        ("rust-futures-lite" ,rust-futures-lite-1)
+        ("rust-gloo-timers" ,rust-gloo-timers-0.2)
+        ("rust-kv-log-macro" ,rust-kv-log-macro-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-once-cell" ,rust-once-cell-1)
+        ("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
+        ("rust-pin-utils" ,rust-pin-utils-0.1)
+        ("rust-slab" ,rust-slab-0.4)
+        ("rust-surf" ,rust-surf-2)
+        ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4))))
+    (home-page "https://async.rs")
+    (synopsis "Async version of the Rust standard library")
+    (description
+     "This crate provides an async version of @code{std}.  It provides all the
+interfaces you are used to, but in an async version and ready for Rust's
+@code{async/await} syntax.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-async-std-0.99
   (package
+    (inherit rust-async-std-1)
     (name "rust-async-std")
     (version "0.99.12")
     (source
@@ -2495,7 +3070,6 @@ a running Child leaks its resources.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "1k34181r1xzalyf7alka0ibnbqll6s5l435ycydm7fv1g6gill24"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-test-flags '("--release" "--" "--skip=io_timeout")
        #:cargo-inputs
@@ -2522,14 +3096,7 @@ a running Child leaks its resources.")
        #:cargo-development-inputs
        (("rust-femme" ,rust-femme-1)
         ("rust-futures" ,rust-futures-0.3)
-        ("rust-tempdir" ,rust-tempdir-0.3))))
-    (home-page "https://async.rs")
-    (synopsis "Async version of the Rust standard library")
-    (description
-     "This crate provides an async version of @code{std}.  It provides all the
-interfaces you are used to, but in an async version and ready for Rust's
-@code{async/await} syntax.")
-    (license (list license:asl2.0 license:expat))))
+        ("rust-tempdir" ,rust-tempdir-0.3))))))
 
 (define-public rust-async-stream-0.3
   (package
@@ -2842,6 +3409,36 @@ methods.")
 in Rust.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-av-metrics-0.6
+  (package
+    (name "rust-av-metrics")
+    (version "0.6.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "av-metrics" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1g4k2q3226246jad3jl8pny7aphq8i03x4qyilzj4zgp27350hsz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-crossbeam" ,rust-crossbeam-0.8)
+        ("rust-itertools" ,rust-itertools-0.10)
+        ("rust-lab" ,rust-lab-0.8)
+        ("rust-num-traits" ,rust-num-traits-0.2)
+        ("rust-rayon" ,rust-rayon-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-thiserror" ,rust-thiserror-1)
+        ("rust-v-frame" ,rust-v-frame-0.2))))
+    (home-page "https://github.com/rust-av/av-metrics")
+    (synopsis "Collection of algorithms for measuring audio/video metrics")
+    (description
+     "This package provides a collection of algorithms for measuring
+audio/video metrics.")
+    (license license:expat)))
+
 (define-public rust-average-0.9
   (package
     (inherit rust-average-0.10)
@@ -2871,8 +3468,49 @@ in Rust.")
         ("rust-serde-json" ,rust-serde-json-1)
         ("rust-streaming-stats" ,rust-streaming-stats-0.2))))))
 
+(define-public rust-awc-2
+  (package
+    (name "rust-awc")
+    (version "2.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "awc" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "14g6m53zmxw3f1sf990l7ps3w2fq2c29n1slpizc7kxhwy8f90dk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-actix-codec" ,rust-actix-codec-0.3)
+        ("rust-actix-http" ,rust-actix-http-2)
+        ("rust-actix-rt" ,rust-actix-rt-1)
+        ("rust-actix-service" ,rust-actix-service-1)
+        ("rust-base64" ,rust-base64-0.13)
+        ("rust-bytes" ,rust-bytes-0.5)
+        ("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-derive-more" ,rust-derive-more-0.99)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-percent-encoding" ,rust-percent-encoding-2)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-rustls" ,rust-rustls-0.18)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.7))))
+    (home-page "https://actix.rs")
+    (synopsis "Async HTTP and WebSocket client library")
+    (description
+     "This package provides async HTTP and WebSocket client library
+built on the Actix ecosystem.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-awc-1
   (package
+    (inherit rust-awc-2)
     (name "rust-awc")
     (version "1.0.1")
     (source
@@ -2882,7 +3520,6 @@ in Rust.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "1idacmq7n3irmdjkbxc5kdwspxk9w1gip94pcmfk7wky3m6isq6p"))))
-    (build-system cargo-build-system)
     ;; XXX: The crate fails to't build with with the same error as
     ;; rust-actix-connect.  Skip build for now.
     (arguments
@@ -2908,13 +3545,7 @@ in Rust.")
        #:cargo-development-inputs
        (("rust-actix-http-test" ,rust-actix-http-test-1)
         ("rust-actix-web" ,rust-actix-web-2)
-        ("rust-brotli" ,rust-brotli-3))))
-    (home-page "https://actix.rs")
-    (synopsis "Async HTTP and WebSocket client library")
-    (description
-     "This package provides async HTTP and WebSocket client library
-built on the Actix ecosystem.")
-    (license (list license:expat license:asl2.0))))
+        ("rust-brotli" ,rust-brotli-3))))))
 
 (define-public rust-az-1
   (package
@@ -3144,6 +3775,24 @@ c6e7d37.  However, this package works only up to 128 bytes.")
        #:cargo-development-inputs
        (("rust-rand" ,rust-rand-0.4))))))
 
+(define-public rust-base64-0.6
+  (package
+    (inherit rust-base64-0.13)
+    (name "rust-base64")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "base64" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1ja3c7wlzp3sb14f2ksp27x1mk8ycgh1391nnd7fvw01fnc4yhwn"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-safemem" ,rust-safemem-0.2))))))
+
 (define-public rust-base-x-0.2
   (package
     (name "rust-base-x")
@@ -3912,29 +4561,57 @@ behave like a set of bitflags.")
        (sha256
         (base32 "08qdq5w1nd3hzwsrxk0dxzqv4g8wbwj6v2193njskwzdd09r6rsg"))))))
 
-(define-public rust-bitstream-io-0.8
+(define-public rust-bitflags-0.2
+  (package
+    (inherit rust-bitflags-1)
+    (name "rust-bitflags")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bitflags" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "09yk0lk3vjsrvfcnzljmgvz9inpjs0idykvni7kij38l5vn807x4"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))))
+
+(define-public rust-bitstream-io-1
   (package
     (name "rust-bitstream-io")
-    (version "0.8.5")
+    (version "1.0.0")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "bitstream-io" version))
-        (file-name
-          (string-append name "-" version ".tar.gz"))
-        (sha256
-          (base32
-            "00a6wy54s1dmadm5xz8k2cbsd7ixvm48mlc45bk0fdy0pbra6jk1"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bitstream-io" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "01pyk3pipwcbaghi7f0lmp3izjl902cv21yf4b1v5nipkrrrqlq3"))))
     (build-system cargo-build-system)
     (arguments `(#:skip-build? #t))
-    (home-page
-      "https://github.com/tuffy/bitstream-io")
-    (synopsis
-      "Library for reading/writing un-aligned values from/to streams in big-endian and little-endian formats.")
+    (home-page "https://github.com/tuffy/bitstream-io")
+    (synopsis "Read/write un-aligned values from big or little-endian streams")
     (description
-      "Library for reading/writing un-aligned values from/to streams in big-endian and little-endian formats.")
+     "This package is a library for reading/writing un-aligned values from/to
+streams in big-endian and little-endian formats.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-bitstream-io-0.8
+  (package
+    (inherit rust-bitstream-io-1)
+    (name "rust-bitstream-io")
+    (version "0.8.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bitstream-io" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00a6wy54s1dmadm5xz8k2cbsd7ixvm48mlc45bk0fdy0pbra6jk1"))))
+    (arguments `(#:skip-build? #t))))
+
 (define-public rust-bitvec-0.19
   (package
     (name "rust-bitvec")
@@ -4212,6 +4889,42 @@ extension of blocks.")
         ("rust-byteorder" ,rust-byteorder-1)
         ("rust-generic-array" ,rust-generic-array-0.12))))))
 
+(define-public rust-block-buffer-0.3
+  (package
+    (inherit rust-block-buffer-0.9)
+    (name "rust-block-buffer")
+    (version "0.3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "block-buffer" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1axki8f4rhnxvk6hlli4i53sgmi7c15ffryrv4757nzcp6cc4xm0"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-arrayref" ,rust-arrayref-0.3)
+        ("rust-byte-tools" ,rust-byte-tools-0.2))))))
+
+(define-public rust-block-buffer-0.2
+  (package
+    (inherit rust-block-buffer-0.9)
+    (name "rust-block-buffer")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "block-buffer" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "055q90a6vk80j85i3fixjd5ci0dznrm9lkdd6xbjk7sx5w2a2f8k"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byte-tools" ,rust-byte-tools-0.2)
+        ("rust-generic-array" ,rust-generic-array-0.8))))))
+
 (define-public rust-block-cipher-0.7
   (package
     (name "rust-block-cipher")
@@ -4235,28 +4948,46 @@ extension of blocks.")
 ciphers.")
     (license (list license:expat license:asl2.0))))
 
-(define-public rust-block-cipher-trait-0.4
+(define-public rust-block-cipher-trait-0.6
   (package
     (name "rust-block-cipher-trait")
-    (version "0.4.2")
+    (version "0.6.2")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "block-cipher-trait" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "10qmg8vphqmfllb9a2yx6s7r66jh1wh33clhsawq7ikg2wgz2p6q"))))
+        (base32 "0x273w6fwka0i48nrv428birdrs2jz6jdnmc0dhc1rq9pm4lv4hw"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-generic-array" ,rust-generic-array-0.8))))
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-blobby" ,rust-blobby-0.1)
+        ("rust-generic-array" ,rust-generic-array-0.12))))
     (home-page "https://github.com/RustCrypto/block-ciphers")
     (synopsis "Block cipher algorithms")
     (description "This package provides a collection of block cipher
-algorithms.  This package is deprecated.  Please use block-cipher instead")
+algorithms.  This package is deprecated.  Please use block-cipher instead.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-block-cipher-trait-0.4
+  (package
+    (inherit rust-block-cipher-trait-0.6)
+    (name "rust-block-cipher-trait")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "block-cipher-trait" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10qmg8vphqmfllb9a2yx6s7r66jh1wh33clhsawq7ikg2wgz2p6q"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-generic-array" ,rust-generic-array-0.8))))))
+
 (define-public rust-block-padding-0.2
   (package
     (name "rust-block-padding")
@@ -4562,10 +5293,42 @@ bytes), doesn't have the 128 byte limitation and supports a configurable
 alphabet.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-bson-0.14
+  (package
+    (name "rust-bson")
+    (version "0.14.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bson" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "000wqyb4icy32h74wl5wb6iw2flzwwlrpgq51xgcw91g2b87w5rw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-decimal" ,rust-decimal-2)
+        ("rust-hex" ,rust-hex-0.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-linked-hash-map" ,rust-linked-hash-map-0.5)
+        ("rust-md5" ,rust-md5-0.6)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-time" ,rust-time-0.1))))
+    (home-page "https://github.com/mongodb/bson-rust")
+    (synopsis "Encoding and decoding support for BSON in Rust")
+    (description
+     "This package provides encoding and decoding support for BSON in Rust.")
+    (license license:expat)))
+
 (define-public rust-bstr-0.2
   (package
     (name "rust-bstr")
-    (version "0.2.12")
+    (version "0.2.15")
     (source
      (origin
        (method url-fetch)
@@ -4574,7 +5337,7 @@ alphabet.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0hazfback6i2k3vhhwyj8h46id3y58zxqh22pz46hj9r1zayd298"))))
+         "0gca4v6448clsssll3y787jgw542c9mw9phqdi7419g1jfnlf2x4"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -4610,6 +5373,31 @@ UTF-8.")
         (base32
          "0nzi9vqhl56ws8gq39f3aj4qjrr4l3g5lbkkcj8xq1x4cb74wq2r"))))))
 
+(define-public rust-buf-redux-0.8
+  (package
+    (name "rust-buf-redux")
+    (version "0.8.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "buf_redux" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zy0p4vd2kjk7z5m4m8kdwhs5cmx1z02n7v36njhgfs8fs4aclxr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-memchr" ,rust-memchr-2)
+        ("rust-safemem" ,rust-safemem-0.3)
+        ("rust-slice-deque" ,rust-slice-deque-0.2))))
+    (home-page "https://github.com/abonander/buf_redux")
+    (synopsis "Drop-in replacements for buffered I/O in @code{std::io}")
+    (description
+     "This package provides drop-in replacements for buffered I/O in
+@code{std::io}, with extra features.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-buffered-reader-0.9
   (package
     (name "rust-buffered-reader")
@@ -4639,6 +5427,31 @@ system calls.  Second, exposing the internal buffer allows the user to work
 with data in place, which avoids another copy.")
     (license license:gpl3)))
 
+(define-public rust-bugreport-0.3
+  (package
+    (name "rust-bugreport")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bugreport" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1n5f1nkqbc5yf9bckjap49pwnqnvdczm6x9y23caaghpgw0n4rqi"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-snailquote" ,rust-snailquote-0.3)
+        ("rust-sys-info" ,rust-sys-info-0.7))))
+    (home-page "https://github.com/sharkdp/bugreport")
+    (synopsis "Collect system and environment information for bug reports")
+    (description
+     "bugreport is a Rust library that helps application developers to
+automatically collect information about the system and the environment that
+users can send along with a bug report.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-build-const-0.2
   (package
     (name "rust-build-const")
@@ -4746,6 +5559,19 @@ memory usage.")
     (description "Bytes related utility functions.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-byte-tools-0.2
+  (package
+    (inherit rust-byte-tools-0.3)
+    (name "rust-byte-tools")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "byte-tools" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0h2zxygfnn46akmgh8cdp4x6xy4kb0b45rzmj76rxa0j99bk432n"))))))
+
 (define-public rust-byte-unit-4
   (package
     (name "rust-byte-unit")
@@ -4937,14 +5763,14 @@ little-endian.")
 (define-public rust-bytes-1
   (package
     (name "rust-bytes")
-    (version "1.0.0")
+    (version "1.0.1")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "bytes" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0wpsy2jwmbrsn7x6vcd00hw9vvz071lv8nrb25wrspvmkna8w7xd"))))
+        (base32 "0h6h1c8g3yj2b4k8g25gr3246mq985y0kl3z685cs784fr1ww05p"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -4980,20 +5806,18 @@ little-endian.")
   (package
     (inherit rust-bytes-0.6)
     (name "rust-bytes")
-    (version "0.5.4")
+    (version "0.5.6")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "bytes" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1q9r7si1l8vndg4n2ny2nv833ghp5vyqzk5indb9rmhd5ibaq2hk"))))
+        (base32 "0f5s7xq6qzmdh22ygsy8v0sp02m51y0radvq4i4y8cizy1lfqk0f"))))
     (arguments
-     `(#:cargo-inputs
-       (("rust-serde" ,rust-serde-1))
-       #:cargo-development-inputs
-       (("rust-loom" ,rust-loom-0.2)
-        ("rust-serde-test" ,rust-serde-test-1))))))
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1))))))
 
 (define-public rust-bytes-0.4
   (package/inherit rust-bytes-0.5
@@ -5237,6 +6061,60 @@ cached data.")
 directories and @code{CACHEDIR.TAG} files.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-calamine-0.17
+  (package
+    (name "rust-calamine")
+    (version "0.17.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "calamine" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "095sx7dma2p1pn464l51ac6drih3c1bhwfw8g0y00vdwqwmrrvn8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-codepage" ,rust-codepage-0.1)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-quick-xml" ,rust-quick-xml-0.19)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-zip" ,rust-zip-0.5))))
+    (home-page "https://github.com/tafia/calamine")
+    (synopsis "Reader and deserializer for spreadsheet files")
+    (description
+     "@code{calamine} is a pure Rust library to read and deserialize any
+spreadsheet file.")
+    (license license:expat)))
+
+(define-public rust-calamine-0.16
+  (package
+    (inherit rust-calamine-0.17)
+    (name "rust-calamine")
+    (version "0.16.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "calamine" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "03nl0n79rbq5x0crgg59brxr86hc9k5kjbf3h7d5c8g5mzlkxf9n"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-codepage" ,rust-codepage-0.1)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-quick-xml" ,rust-quick-xml-0.19)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-zip" ,rust-zip-0.5))))))
+
 (define-public rust-calloop-0.6
   (package
     (name "rust-calloop")
@@ -5494,6 +6372,31 @@ metadata}.")
 used in argon2rs' bench suite.")
     (license license:wtfpl2)))
 
+(define-public rust-cassowary-0.3
+  (package
+    (name "rust-cassowary")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cassowary" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0lvanj0gsk6pc1chqrh4k5k0vi1rfbgzmsk46dwy3nmrqyw711nz"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/dylanede/cassowary-rs")
+    (synopsis
+     "Implementation of the Cassowary linear constraint solving algorithm")
+    (description
+     "This package provides a Rust implementation of the Cassowary linear
+constraint solving algorithm.
+
+The Cassowary algorithm is designed for naturally laying out user interfaces
+using linear constraints, like ``this button must line up with this text
+box''.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-cast-0.2
   (package
     (name "rust-cast")
@@ -5767,6 +6670,26 @@ chain, the first matching branch is the item that gets emitted.")
 TimeZone trait for @code{rust-chrono}.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-chunked-transfer-0.3
+  (package
+    (name "rust-chunked-transfer")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "chunked_transfer" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "11yghnd24w0i9p8g368c3pg7qh9nfz7kgri6pywja9pnmakj13a9"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/frewsxcv/rust-chunked-transfer")
+    (synopsis "Encoder and decoder for HTTP chunked transfer coding")
+    (description
+     "This package provides an encoder and decoder for HTTP chunked transfer
+coding.")
+    (license license:asl2.0)))
+
 (define-public rust-ci-info-0.3
   (package
     (name "rust-ci-info")
@@ -6018,28 +6941,47 @@ Command Line Argument Parser.")
 colorization.")
     (license license:expat)))
 
-(define-public rust-clipboard-win-3
+(define-public rust-clipboard-win-4
   (package
     (name "rust-clipboard-win")
-    (version "3.1.1")
+    (version "4.0.3")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "clipboard-win" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0hh3npqfa1lfn62fwvkmjlpfnizq343a994b898ffsvb100mxpwz"))))
+        (base32 "0bd9gw35zjdh50n2gy6qq2gwpnqfafzwkliqkvm9z046fawwc8si"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-lazy-bytes-cast" ,rust-lazy-bytes-cast-5)
+       (("rust-error-code" ,rust-error-code-2)
+        ("rust-str-buf" ,rust-str-buf-1)
         ("rust-winapi" ,rust-winapi-0.3))))
     (home-page "https://github.com/DoumanAsh/clipboard-win")
     (synopsis "Simple way to interact with Windows clipboard")
     (description
      "This package provides simple way to interact with Windows clipboard.")
-    (license license:expat)))
+    (license license:boost1.0)))
+
+(define-public rust-clipboard-win-3
+  (package
+    (inherit rust-clipboard-win-4)
+    (name "rust-clipboard-win")
+    (version "3.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "clipboard-win" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0hh3npqfa1lfn62fwvkmjlpfnizq343a994b898ffsvb100mxpwz"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-bytes-cast" ,rust-lazy-bytes-cast-5)
+        ("rust-winapi" ,rust-winapi-0.3))))))
 
 (define-public rust-clipboard-win-2
   (package
@@ -6085,6 +7027,34 @@ colorization.")
 pitfalls in Rust.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-clircle-0.3
+  (package
+    (name "rust-clircle")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "clircle" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "15p36klnsgjimfswi0mjc7wsh4b662v7gbfinh56ipk3bacbv2z6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/niklasmohrin/clircle")
+    (synopsis "Detect IO circles in your CLI apps arguments.")
+    (description
+     "Clircle provides a cross-platform API to detect read or write cycles
+from your user-supplied arguments.  You can get the important identifiers of
+a file (from a path) and for all three stdio streams, if they are piped from
+or to a file as well.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-cloudabi-0.1
   (package
     (name "rust-cloudabi")
@@ -6346,20 +7316,71 @@ CMAKE environmental variable is set.")
      "This package provides bindings to Cocoa Foundation for macOS.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-codepage-0.1
+  (package
+    (name "rust-codepage")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "codepage" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1sdxp0f8dy2rscln646326lny9i0jm7ncgyp4yncdwndq0i943lb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-rs" ,rust-encoding-rs-0.8))))
+    (home-page "https://docs.rs/codepage/")
+    (synopsis "Mapping between Windows code page and @code{encoding_rs}")
+    (description
+     "This package provides mapping between Windows code page numbers and
+@code{encoding_rs} character encodings.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-codespan-reporting-0.11
+  (package
+    (name "rust-codespan-reporting")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "codespan-reporting" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "04wwbn2c5rcfz3zn4kj7nyvpj37hn5cxh0m8w1r3af4ak6w45kn6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1)
+        ("rust-termcolor" ,rust-termcolor-1)
+        ("rust-unicode-width" ,rust-unicode-width-0.1))))
+    (home-page "https://github.com/brendanzab/codespan")
+    (synopsis "Beautiful diagnostic reporting for text-based programming languages")
+    (description
+     "Languages like Rust and Elm already support beautiful error
+reporting output, but it can take a significant amount work to
+implement this for new programming languages! The
+@code{codespan-reporting} crate aims to make beautiful error
+diagnostics easy and relatively painless for everyone!")
+    (license license:asl2.0)))
+
 (define-public rust-codespan-reporting-0.9
   (package
+    (inherit rust-codespan-reporting-0.11)
     (name "rust-codespan-reporting")
     (version "0.9.5")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "codespan-reporting" version))
-        (file-name
-         (string-append name "-" version ".tar.gz"))
-        (sha256
-         (base32
-          "07g86hv1lp5bbr6w6hsa3mgdmavs36igc7k5pi1fvc86ad2n41vf"))))
-    (build-system cargo-build-system)
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "codespan-reporting" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "07g86hv1lp5bbr6w6hsa3mgdmavs36igc7k5pi1fvc86ad2n41vf"))))
     (arguments
      `(#:cargo-inputs
        (("rust-serde" ,rust-serde-1)
@@ -6372,17 +7393,12 @@ CMAKE environmental variable is set.")
         ("rust-peg" ,rust-peg-0.6)
         ("rust-rustyline" ,rust-rustyline-6)
         ("rust-structopt" ,rust-structopt-0.3)
-        ("rust-unindent" ,rust-unindent-0.1))))
-    (home-page "https://github.com/brendanzab/codespan")
-    (synopsis "Diagnostic reporting for text-based programming languages")
-    (description "This package provides diagnostic reporting for text-based
-programming languages.")
-    (license license:asl2.0)))
+        ("rust-unindent" ,rust-unindent-0.1))))))
 
 (define-public rust-color-quant-1
   (package
     (name "rust-color-quant")
-    (version "1.0.1")
+    (version "1.1.0")
     (source
      (origin
        (method url-fetch)
@@ -6390,14 +7406,14 @@ programming languages.")
        (file-name
         (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "1ga56jrafnjm80903nnqjkyii4bwd6a7visxh0g8hgi6cmrvbfqd"))))
+        (base32 "12q1n427h2bbmmm1mnglr57jaz2dj9apk0plcxw7nwqiai7qjyrx"))))
     (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
     (home-page "https://github.com/PistonDevelopers/color_quant.git")
-    (synopsis
-     "Color quantization library to reduce n colors to 256 colors")
+    (synopsis "Color quantization library to reduce n colors to 256 colors")
     (description
-     "Color quantization library to reduce n colors to 256 colors.")
+     "This package is a color quantization library to reduce n colors to 256
+colors.")
     (license license:expat)))
 
 (define-public rust-colored-1
@@ -6665,20 +7681,72 @@ harness.")
 queue.")
     (license (list license:asl2.0 license:expat))))
 
-(define-public rust-console-0.13
+(define-public rust-config-0.10
+  (package
+    (name "rust-config")
+    (version "0.10.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "config" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1qrcp7nm24xzp418xnqf0i26qahw93w31nk5vs6m7ng18ghpdc0r"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-nom" ,rust-nom-5)
+        ("rust-rust-ini" ,rust-rust-ini-0.13)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-hjson" ,rust-serde-hjson-0.9)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-toml" ,rust-toml-0.5)
+        ("rust-yaml-rust" ,rust-yaml-rust-0.4))))
+    (home-page "https://github.com/mehcode/config-rs")
+    (synopsis "Layered configuration system for Rust applications")
+    (description
+     "This package provides a layered configuration system for Rust
+applications.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-configparser-2
+  (package
+    (name "rust-configparser")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "configparser" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1qdaggalm3js86s2i11pjjcndrrvpk0pw1lfvmv7v25z3y66sqg2"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/mexili/configparser-rs")
+    (synopsis "Simple parsing utility for INI and ini-style syntax")
+    (description
+     "This package provides a simple configuration parsing utility with no
+dependencies that allows you to parse INI and ini-style syntax.  You can use
+this to write Rust programs which can be customized by end users easily.")
+    (license (list license:expat license:lgpl3+))))
+
+(define-public rust-console-0.14
   (package
     (name "rust-console")
-    (version "0.13.0")
+    (version "0.14.0")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "console" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "022ai0jbbawngrx396qppwgzk4pk3v2fdwckzamvz6h154jsn2m5"))))
+        (base32 "1ajnr0rga4vya0fza12ighf3ffkm86w1rv8p5wf443s8nd30kj3w"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     `(#:skip-build? #t
+       #:cargo-inputs
        (("rust-encode-unicode" ,rust-encode-unicode-0.3)
         ("rust-lazy-static" ,rust-lazy-static-1)
         ("rust-libc" ,rust-libc-0.2)
@@ -6693,6 +7761,29 @@ queue.")
      "This package provides a terminal and console abstraction for Rust.")
     (license license:expat)))
 
+(define-public rust-console-0.13
+  (package
+    (inherit rust-console-0.14)
+    (name "rust-console")
+    (version "0.13.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "console" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "022ai0jbbawngrx396qppwgzk4pk3v2fdwckzamvz6h154jsn2m5"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-encode-unicode" ,rust-encode-unicode-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-terminal-size" ,rust-terminal-size-0.1)
+        ("rust-unicode-width" ,rust-unicode-width-0.1)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("rust-winapi-util" ,rust-winapi-util-0.1))))))
+
 (define-public rust-console-0.11
   (package
     (inherit rust-console-0.13)
@@ -6994,6 +8085,30 @@ semantics than those provided by @code{as} or @code{From}/@code{Into}.")
 It supports signed and private (encrypted + signed) jars.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-cookie-0.11
+  (package
+    (inherit rust-cookie-0.12)
+    (name "rust-cookie")
+    (version "0.11.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cookie" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0i2x04kx1ifljsnwsa83k7cpmajk9j4ayyx2h11y6lkji6hcv5ap"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-aes-gcm" ,rust-aes-gcm-0.5)
+        ("rust-base64" ,rust-base64-0.12)
+        ("rust-hkdf" ,rust-hkdf-0.8)
+        ("rust-hmac" ,rust-hmac-0.7)
+        ("rust-percent-encoding" ,rust-percent-encoding-2)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-sha2" ,rust-sha2-0.8)
+        ("rust-time" ,rust-time-0.1))))))
+
 (define-public rust-cookie-store-0.7
   (package
     (name "rust-cookie-store")
@@ -7700,8 +8815,35 @@ criterion.")
         ("rust-num-complex" ,rust-num-complex-0.2)
         ("rust-rand" ,rust-rand-0.4))))))
 
+(define-public rust-crossbeam-0.8
+  (package
+    (name "rust-crossbeam")
+    (version "0.8.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crossbeam" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "103xnwzkk1zd9kiy6f0f131ap433qfkc757wyrha5bxa7pmsc0gx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-crossbeam-channel" ,rust-crossbeam-channel-0.5)
+        ("rust-crossbeam-deque" ,rust-crossbeam-deque-0.8)
+        ("rust-crossbeam-epoch" ,rust-crossbeam-epoch-0.9)
+        ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.3)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.8))))
+    (home-page "https://github.com/crossbeam-rs/crossbeam")
+    (synopsis "Tools for concurrent programming in Rust")
+    (description "This package provides tools for concurrent programming.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-crossbeam-0.7
   (package
+    (inherit rust-crossbeam-0.8)
     (name "rust-crossbeam")
     (version "0.7.3")
     (source
@@ -7713,7 +8855,6 @@ criterion.")
        (sha256
         (base32
          "13kzn2d49n2qn5q42y2dj48kyv6aln2d9smq8x9n675l3zzknck9"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-cfg-if" ,rust-cfg-if-0.1)
@@ -7723,11 +8864,7 @@ criterion.")
         ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.2)
         ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7))
        #:cargo-development-inputs
-       (("rust-rand" ,rust-rand-0.6))))
-    (home-page "https://github.com/crossbeam-rs/crossbeam")
-    (synopsis "Tools for concurrent programming")
-    (description "Tools for concurrent programming.")
-    (license (list license:expat license:asl2.0))))
+       (("rust-rand" ,rust-rand-0.6))))))
 
 (define-public rust-crossbeam-channel-0.5
   (package
@@ -7944,8 +9081,33 @@ message passing.")
        #:cargo-development-inputs
        (("rust-rand" ,rust-rand-0.6))))))
 
+(define-public rust-crossbeam-queue-0.3
+  (package
+    (name "rust-crossbeam-queue")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crossbeam-queue" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0mk790w2y7cn9zqj6cn1kl8vvgaamlkj6fmpxg1iprdqyp3v6v0g"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.8))))
+    (home-page
+     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-utils")
+    (synopsis "Concurrent queues in Rust")
+    (description
+     "This crate provides concurrent queues that can be shared among threads.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-crossbeam-queue-0.2
   (package
+    (inherit rust-crossbeam-queue-0.3)
     (name "rust-crossbeam-queue")
     (version "0.2.3")
     (source
@@ -7956,22 +9118,13 @@ message passing.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0w15z68nz3ac4f2s4djhwha8vmlwsh9dlfrmsl4x84y2ah5acjvp"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-cfg-if" ,rust-cfg-if-0.1)
         ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7)
         ("rust-maybe-uninit" ,rust-maybe-uninit-2))
        #:cargo-development-inputs
-       (("rust-rand" ,rust-rand-0.6))))
-    (home-page
-     "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-queue")
-    (synopsis "Concurrent queues in Rust")
-    (description
-     "This crate provides concurrent queues that can be shared among threads.")
-    (license (list license:expat
-                   license:asl2.0
-                   license:bsd-2))))
+       (("rust-rand" ,rust-rand-0.6))))))
 
 (define-public rust-crossbeam-queue-0.1
   (package
@@ -8097,8 +9250,67 @@ message passing.")
 rasterizing glyphs, using native font engines whenever possible.")
     (license license:asl2.0)))
 
+(define-public rust-crossterm-0.19
+  (package
+    (name "rust-crossterm")
+    (version "0.19.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crossterm" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1348lqf8vy3lb2s5icsl3rxs4a4vrpfw5z2j6lplnhnz600w2dkw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-crossterm-winapi" ,rust-crossterm-winapi-0.7)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-mio" ,rust-mio-0.7)
+        ("rust-parking-lot" ,rust-parking-lot-0.11)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-signal-hook" ,rust-signal-hook-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/crossterm-rs/crossterm")
+    (synopsis "Crossplatform terminal library for manipulating terminals")
+    (description
+     "This package provides a crossplatform terminal library for manipulating
+terminals.")
+    (license license:expat)))
+
+(define-public rust-crossterm-0.18
+  (package
+    (inherit rust-crossterm-0.19)
+    (name "rust-crossterm")
+    (version "0.18.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crossterm" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1yxpskm03lknj6h0rhggm54xzlpm1ir8q2nid1bpnh0b58zxg1jf"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-crossterm-winapi" ,rust-crossterm-winapi-0.6)
+        ("rust-futures-core" ,rust-futures-core-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-mio" ,rust-mio-0.7)
+        ("rust-parking-lot" ,rust-parking-lot-0.11)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-signal-hook" ,rust-signal-hook-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-crossterm-0.13
   (package
+    (inherit rust-crossterm-0.19)
     (name "rust-crossterm")
     (version "0.13.3")
     (source
@@ -8108,7 +9320,6 @@ rasterizing glyphs, using native font engines whenever possible.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "1jw9s85mnhpkk38lihr4ildip4jhfhc3h86npncd92i4mdb257vm"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-crossterm-winapi" ,rust-crossterm-winapi-0.4)
@@ -8116,15 +9327,51 @@ rasterizing glyphs, using native font engines whenever possible.")
         ("rust-libc" ,rust-libc-0.2)
         ("rust-mio" ,rust-mio-0.6)
         ("rust-serde" ,rust-serde-1)
-        ("rust-winapi" ,rust-winapi-0.3))))
-    (home-page "https://github.com/crossterm-rs/crossterm")
-    (synopsis "Crossplatform terminal library for manipulating terminals")
-    (description "This package provides a crossplatform terminal library for
-manipulating terminals.")
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
+(define-public rust-crossterm-winapi-0.7
+  (package
+    (name "rust-crossterm-winapi")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crossterm_winapi" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1fa047zz228qyqbcjdss64j0n01p4adr29yh9w24lgjdrr59da0d"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/crossterm-rs/crossterm-winapi")
+    (synopsis "Basic simple abstractions around common WinAPI calls")
+    (description
+     "This package is a WinAPI wrapper that provides some basic simple
+abstractions around common WinAPI calls.")
     (license license:expat)))
 
+(define-public rust-crossterm-winapi-0.6
+  (package
+    (inherit rust-crossterm-winapi-0.7)
+    (name "rust-crossterm-winapi")
+    (version "0.6.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crossterm_winapi" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1nqhjp979c6iv092dbxl6hpncwgwjciafyj1nvcpa008iqzmq9n2"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-crossterm-winapi-0.4
   (package
+    (inherit rust-crossterm-winapi-0.7)
     (name "rust-crossterm-winapi")
     (version "0.4.0")
     (source
@@ -8134,14 +9381,58 @@ manipulating terminals.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "1j3av8bba3f5y4n4w1vgn0iz28vdajxrli6lqxnvpddbphskmph2"))))
+    (arguments
+     `(#:cargo-inputs (("rust-winapi" ,rust-winapi-0.3))))))
+
+(define-public rust-roxmltree-0.14
+  (package
+    (name "rust-roxmltree")
+    (version "0.14.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "roxmltree" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "010mahzyarkzb7kaawgga1a9y46nsp209yh2i4g4pq98bg8afn5z"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs (("rust-winapi" ,rust-winapi-0.3))))
-    (home-page "https://github.com/crossterm-rs/crossterm-winapi")
-    (synopsis "Basic simple abstractions around common WinAPI calls")
-    (description "WinAPI wrapper that provides some basic simple abstractions
-around common WinAPI calls.")
-    (license license:expat)))
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-xmlparser" ,rust-xmlparser-0.13))))
+    (home-page "https://github.com/RazrFalcon/roxmltree")
+    (synopsis "Represent an XML as a read-only tree")
+    (description
+     "@code{roxmltree} represents an XML 1.0 document as a read-only tree.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-rust-crypto-0.2
+  (package
+    (name "rust-rust-crypto")
+    (version "0.2.36")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-crypto" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0aias7gh2ypj4skmh6hfsjli4fhnvcvf9s1ljjpz9m9zk79havgp"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-gcc" ,rust-gcc-0.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-rand" ,rust-rand-0.3)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-time" ,rust-time-0.1))))
+    (home-page "https://github.com/DaGenix/rust-crypto/")
+    (synopsis "Mostly pure-Rust implementation of various cryptographic algorithms")
+    (description
+     "This package provides a (mostly) pure-Rust implementation of various
+common cryptographic algorithms.")
+    (license (list license:expat license:asl2.0))))
 
 (define-public rust-crypto-mac-0.10
   (package
@@ -8209,6 +9500,24 @@ Code} (MAC) algorithms.")
         ("rust-generic-array" ,rust-generic-array-0.12)
         ("rust-subtle" ,rust-subtle-1))))))
 
+(define-public rust-crypto-mac-0.5
+  (package
+    (inherit rust-crypto-mac-0.10)
+    (name "rust-crypto-mac")
+    (version "0.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "crypto-mac" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0n6r10zlnfv9gbjj0380sxfffxhq1khfjqwsn7fx8iil9pzv9689"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-constant-time-eq" ,rust-constant-time-eq-0.1)
+        ("rust-generic-array" ,rust-generic-array-0.9))))))
+
 (define-public rust-crypto-mac-0.4
   (package
     (name "rust-crypto-mac")
@@ -8587,23 +9896,20 @@ Mode functionality is accessed using traits from re-exported cipher crate.")
 (define-public rust-ctrlc-3
   (package
     (name "rust-ctrlc")
-    (version "3.1.3")
+    (version "3.1.7")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "ctrlc" version))
-       (file-name
-        (string-append name "-" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "0zz8ad4bk28s111af5vy1c5kii4zw0cgh87ivzgj28f8nkcd5py7"))))
+        (base32 "027bzbddk0wg7s2wnbgcwx2iv6bjzvxfpp0s2xdg444yfklr4ymm"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-nix" ,rust-nix-0.14)
-        ("rust-winapi" ,rust-winapi-0.3))
-       #:cargo-development-inputs
-       (("rust-winapi" ,rust-winapi-0.3))))
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-nix" ,rust-nix-0.18)
+        ("rust-winapi" ,rust-winapi-0.3))))
     (home-page "https://github.com/Detegr/rust-ctrlc")
     (synopsis "Easy Ctrl-C handler for Rust projects")
     (description
@@ -9431,6 +10737,31 @@ algorithm which serves to quantify the difference between two colors.")
 Rust.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-derive-arbitrary-0.4
+  (package
+    (name "rust-derive-arbitrary")
+    (version "0.4.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "derive_arbitrary" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1rp0z4k0j5ip0bx6dssg97l4q6bakhf6lm5h1lpr3p3kwjsi585i"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/rust-fuzz/arbitrary")
+    (synopsis "Derives arbitrary traits")
+    (description "This crate implements support for automatically deriving the
+@code{Arbitrary} trait.  Don't depend on this crate directly, though.
+Instead, enable the @code{derive} feature of the @code{arbitrary} crate.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-derive-builder-0.9
   (package
     (name "rust-derive-builder")
@@ -9563,6 +10894,31 @@ for arbitrary structs.")
 error-chain.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-derive-is-enum-variant-0.1
+  (package
+    (name "rust-derive-is-enum-variant")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "derive_is_enum_variant" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "15w18649m4h47pdpr04id0wv8br8bg606zvrafcrfijihicqib6h"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-heck" ,rust-heck-0.3)
+        ("rust-quote" ,rust-quote-0.3)
+        ("rust-syn" ,rust-syn-0.11))))
+    (home-page "https://github.com/fitzgen/derive_is_enum_variant")
+    (synopsis "Automatically derives predicates for enums")
+    (description
+     "This package automatically derives @samp{is_dog} and @samp{is_cat}
+methods for @samp{enum Pet @{ Dog, Cat @}}.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-derive-more-0.99
   (package
     (name "rust-derive-more")
@@ -9644,6 +11000,80 @@ structs and enums.")
 intelligently transliterating them.  It supports Emoji and Chinese.")
     (license license:bsd-3)))
 
+(define-public rust-devise-0.2
+  (package
+    (name "rust-devise")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "devise" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1lryvr39ia3rfswfnwn2zynsv2r8kj6gqqf0akcs0prws2i4pq3l"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-devise-codegen" ,rust-devise-codegen-0.2)
+        ("rust-devise-core" ,rust-devise-core-0.2))))
+    (home-page "https://github.com/SergioBenitez/Devise")
+    (synopsis "Library for devising derives and other procedural macros")
+    (description
+     "This package provides a library for devising derives and other
+procedural macros.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-devise-codegen-0.2
+  (package
+    (name "rust-devise-codegen")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "devise_codegen" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1msmq0h19l03n9qmkxxi1a5h8904i8m623kdvjzak4ya51wynv06"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-devise-core" ,rust-devise-core-0.2)
+        ("rust-quote" ,rust-quote-0.6))))
+    (home-page "https://github.com/SergioBenitez/Devise")
+    (synopsis "Library for devising derives and other procedural macros")
+    (description
+     "This package provides a library for devising derives and other
+procedural macros")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-devise-core-0.2
+  (package
+    (name "rust-devise-core")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "devise_core" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "11v4z5kljmpiyif3mmfnm3rl1lsqygjlfy2wll7frqxm4adwahfg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-0.6)
+        ("rust-syn" ,rust-syn-0.15))))
+    (home-page "https://github.com/SergioBenitez/Devise")
+    (synopsis "Library for devising derives and other procedural macros")
+    (description
+     "This package provides a library for devising derives and other
+procedural macros.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-dialoguer-0.6
   (package
     (name "rust-dialoguer")
@@ -9901,6 +11331,23 @@ diff.")
        (("rust-blobby" ,rust-blobby-0.1)
         ("rust-generic-array" ,rust-generic-array-0.13))))))
 
+(define-public rust-digest-0.7
+  (package
+    (inherit rust-digest-0.9)
+    (name "rust-digest")
+    (version "0.7.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "digest" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "142vdpvkqlqk9s1dcgpqb2wz76n5a39gjnk68p0zkflc58j75c03"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-generic-array" ,rust-generic-array-0.9))))))
+
 (define-public rust-digest-0.6
   (package
     (name "rust-digest")
@@ -9953,9 +11400,52 @@ on Linux, the Known Folder API on Windows, and the Standard
 Directory guidelines on macOS.")
     (license (list license:expat license:asl2.0))))
 
-(define-public rust-directories-next-1
+(define-public rust-directories-2
   (package
     (inherit rust-directories-3)
+    (name "rust-directories")
+    (version "2.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "directories" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "071pjx760m0dccdxlhwsz9m0zl180hxwlag62bydfl54fa0pf6jm"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-dirs-sys" ,rust-dirs-sys-0.3))))))
+
+(define-public rust-directories-next-2
+  (package
+    (name "rust-directories-next")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "directories-next" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1g1vq8d8mv0vp0l317gh9y46ipqg2fxjnbc7lnjhwqbsv4qf37ik"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-dirs-sys-next" ,rust-dirs-sys-next-0.1))))
+    (home-page "https://github.com/xdg-rs/dirs/tree/master/directories")
+    (synopsis "Mid-level library for standard locations of data directories")
+    (description
+     "This package provides a tiny mid-level library that provides
+platform-specific standard locations of directories for config, cache and
+other data.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-directories-next-1
+  (package
+    (inherit rust-directories-next-2)
     (name "rust-directories-next")
     (version "1.0.3")
     (source
@@ -9972,8 +11462,7 @@ Directory guidelines on macOS.")
        (("rust-cfg-if" ,rust-cfg-if-1)
         ("rust-dirs-sys" ,rust-dirs-sys-next-0.1))
        #:cargo-development-inputs
-       (("rust-bencher" ,rust-bencher-0.1))))
-    (home-page "https://github.com/xdg-rs/dirs/tree/master/directories")))
+       (("rust-bencher" ,rust-bencher-0.1))))))
 
 (define-public rust-dirs-3
   (package
@@ -10034,9 +11523,34 @@ standard locations of directories for config, cache and other data.")
         ("rust-redox-users" ,rust-redox-users-0.3)
         ("rust-winapi" ,rust-winapi-0.3))))))
 
+(define-public rust-dirs-next-2
+  (package
+    (name "rust-dirs-next")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "dirs-next" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1q9kr151h9681wwp6is18750ssghz6j9j7qm7qi1ngcwy7mzi35r"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-dirs-sys-next" ,rust-dirs-sys-next-0.1))))
+    (home-page "https://github.com/xdg-rs/dirs")
+    (synopsis "Abstractions for standard locations for various platforms")
+    (description
+     "This package provides a tiny low-level library that provides
+platform-specific standard locations of directories for config, cache and
+other data.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-dirs-next-1
   (package
-    (inherit rust-dirs-1)
+    (inherit rust-dirs-next-2)
     (name "rust-dirs-next")
     (version "1.0.2")
     (source
@@ -10504,6 +12018,33 @@ floating-point primitives to an @code{io::Write}.")
      "Serialize float number and truncate to certain precision in Rust.")
     (license license:mpl2.0)))
 
+(define-public rust-dtparse-1
+  (package
+    (name "rust-dtparse")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "dtparse" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1xh9hasfffnfyv8q9pwr31g63rigfx114qz6xw05wdkzpmfnq9qk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-chrono" ,rust-chrono-0.4)
+        ("rust-chrono-tz" ,rust-chrono-tz-0.5)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-num-traits" ,rust-num-traits-0.2)
+        ("rust-rust-decimal" ,rust-rust-decimal-0.10))))
+    (home-page "https://github.com/bspeice/dtparse.git")
+    (synopsis "Dateutil-compatible timestamp parser for Rust")
+    (description
+     "This package provides a @code{dateutil}-compatible timestamp parser for
+Rust.")
+    (license license:asl2.0)))
+
 (define-public rust-duct-0.13
   (package
     (name "rust-duct")
@@ -10535,6 +12076,29 @@ floating-point primitives to an @code{io::Write}.")
      "A library for running child processes.")
     (license license:expat)))
 
+(define-public rust-dunce-1
+  (package
+    (name "rust-dunce")
+    (version "1.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "dunce" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1d7f7wg83i1by16rxc1fdipi872nvkzjnmzaaggh2h8cgi51qr5j"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://gitlab.com/kornelski/dunce")
+    (synopsis "Normalize Windows paths to the most compatible format")
+    (description
+     "This crate converts Windows UNC paths to the MS-DOS-compatible format
+whenever possible, but leaves UNC paths as-is when they can't be unambiguously
+expressed in a simpler way.  This allows legacy programs to access all paths
+they can possibly access, and doesn't break any paths for UNC-aware
+programs.")
+    (license license:cc0)))
+
 (define-public rust-dyn-clone-1
   (package
     (name "rust-dyn-clone")
@@ -10625,6 +12189,29 @@ waiting for them to complete.  Threads are allowed to borrow local variables
 from the main thread.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-easycurses-0.12
+  (package
+    (name "rust-easycurses")
+    (version "0.12.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "easycurses" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "10cp60lrhn1k0vg97jgzqbk03x4hmhrgxbz9m3gcmzhzbpn88m2a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-pancurses" ,rust-pancurses-0.16))))
+    (home-page "https://github.com/Lokathor/easycurses-rs")
+    (synopsis "Work with @code{curses} easily")
+    (description
+     "This package provides a crate that makes working with @code{curses}
+easy.")
+    (license (list license:unlicense license:zlib))))
+
 (define-public rust-eax-0.3
   (package
     (name "rust-eax")
@@ -11040,7 +12627,7 @@ encodings.")
 (define-public rust-encoding-rs-0.8
   (package
     (name "rust-encoding-rs")
-    (version "0.8.26")
+    (version "0.8.28")
     (source
      (origin
        (method url-fetch)
@@ -11049,7 +12636,7 @@ encodings.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "10xjcafwbxvm2kfsyymxlz8wc9s4bmdj1xzlc809rxyp2yrbl6w0"))))
+         "0rf0r99q4kgjrx22kx7pjyjg4lm21599y3ggvy3hzj2spi7h5pw0"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -11530,6 +13117,30 @@ variables.")
      `(#:cargo-inputs
        (("rust-backtrace" ,rust-backtrace-0.3))))))
 
+(define-public rust-error-code-2
+  (package
+    (name "rust-error-code")
+    (version "2.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "error-code" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0lmblmk2kr0cy6x3d1y2ywxg3jg6nicf8fahd3l5wb1ddzv9975l"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-str-buf" ,rust-str-buf-1))))
+    (home-page "")
+    (synopsis "Alternative @code{Error} for Rust")
+    (description
+     "This package provides a simplified @code{Error} which works in
+@code{no_std} environment.")
+    (license license:boost1.0)))
+
 (define-public rust-escargot-0.5
   (package
     (name "rust-escargot")
@@ -11805,6 +13416,20 @@ provides implementations for @code{HashMap} and @code{HashSet}.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-fallible-iterator-0.1
+  (package
+    (inherit rust-fallible-iterator-0.2)
+    (name "rust-fallible-iterator")
+    (version "0.1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "fallible-iterator" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0bpp2812lxm9fjv082dsy70ggsfg40nhqva7nxr5dp0j9091fwpb"))))
+    (arguments `(#:skip-build? #t))))
+
 (define-public rust-fallible-streaming-iterator-0.1
   (package
     (name "rust-fallible-streaming-iterator")
@@ -12004,6 +13629,30 @@ supported in purely NFA-based implementations.")
        (("rust-clap" ,rust-clap-2)
         ("rust-tempdir" ,rust-tempdir-0.3))))))
 
+(define-public rust-filesize-0.2
+  (package
+    (name "rust-filesize")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "filesize" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0hvx4dfnara3a2dnhb9ci5bmm1m8s44h9l61s5djwkjx87i43mqj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/Freaky/rust-filesize")
+    (synopsis "Find the physical space used by a file")
+    (description
+     "@code{filesize} abstracts platform-specific methods of determining the
+real space used by files, taking into account filesystem compression and
+sparse files.")
+    (license license:expat)))
+
 (define-public rust-filetime-0.2
   (package
     (name "rust-filetime")
@@ -12817,15 +14466,14 @@ duplication.")
 (define-public rust-fs-extra-1
   (package
     (name "rust-fs-extra")
-    (version "1.1.0")
+    (version "1.2.0")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "fs_extra" version))
-        (file-name (string-append name "-" version ".crate"))
-        (sha256
-         (base32
-          "0x6675wdhsx277k1k1235jwcv38naf20d8kwrk948ds26hh4lajz"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "fs_extra" version))
+       (file-name (string-append name "-" version ".crate"))
+       (sha256
+        (base32 "151k6dr35mhq5d8pc8krhw55ajhkyiv0pm14s7zzlc5bc9fp28i0"))))
     (build-system cargo-build-system)
     (arguments '(#:skip-build? #t))
     (home-page "https://github.com/webdesus/fs_extra")
@@ -13055,7 +14703,7 @@ stabilized, and eventually removed.  This library reïnstates these traits.")
 (define-public rust-futures-0.3
   (package
     (name "rust-futures")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13064,10 +14712,10 @@ stabilized, and eventually removed.  This library reïnstates these traits.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1l434mh7p5na5c3c7lih575hszqc515r9idk62fm5rhz1820qfwv"))))
+         "0l7i1hcag46k5v34cbn5dk45gwxn5yy5rxcvmbaxhi02lnhm546s"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #f
+     `(#:skip-build? #t
        #:cargo-inputs
        (("rust-futures-channel" ,rust-futures-channel-0.3)
         ("rust-futures-core" ,rust-futures-core-0.3)
@@ -13075,16 +14723,12 @@ stabilized, and eventually removed.  This library reïnstates these traits.")
         ("rust-futures-io" ,rust-futures-io-0.3)
         ("rust-futures-sink" ,rust-futures-sink-0.3)
         ("rust-futures-task" ,rust-futures-task-0.3)
-        ("rust-futures-util" ,rust-futures-util-0.3))
-       #:cargo-development-inputs
-       (("rust-assert-matches" ,rust-assert-matches-1)
-        ("rust-pin-utils" ,rust-pin-utils-0.1)
-        ("rust-tokio" ,rust-tokio-0.1))))
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
+        ("rust-futures-util" ,rust-futures-util-0.3))))
+    (home-page "https://rust-lang.github.io/futures-rs")
     (synopsis "Rust implementation of futures and streams")
     (description
-     "A Rust implementation of futures and streams featuring zero allocations,
-composability, and iterator-like interfaces.")
+     "This package is a Rust implementation of futures and streams featuring
+zero allocations, composability, and iterator-like interfaces.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-0.1
@@ -13111,7 +14755,7 @@ featuring zero allocations, composability, and iterator-like interfaces.")
 (define-public rust-futures-channel-0.3
   (package
     (name "rust-futures-channel")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13120,17 +14764,18 @@ featuring zero allocations, composability, and iterator-like interfaces.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0r7y228kkhwx9jj3ny5ppmw2gvw0capm6ig8dzppgqd4g9l0jwab"))))
+         "0ihq3a3yc6ial3sw536q75hrhixq22xk6wn5qzpnxazgqxz1plzj"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #f
+     `(#:skip-build? #t
        #:cargo-inputs
        (("rust-futures-core" ,rust-futures-core-0.3)
         ("rust-futures-sink" ,rust-futures-sink-0.3))))
-    (home-page  "https://rust-lang-nursery.github.io/futures-rs")
-    (synopsis "Channels for asynchronous communication using futures-rs")
+    (home-page  "https://rust-lang.github.io/futures-rs")
+    (synopsis "Channels for asynchronous communication using @code{futures-rs}")
     (description
-     "Channels for asynchronous communication using futures-rs.")
+     "This package provides channels for asynchronous communication using
+@code{futures-rs}.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-channel-preview-0.3
@@ -13158,10 +14803,40 @@ featuring zero allocations, composability, and iterator-like interfaces.")
      "Channels for asynchronous communication using futures-rs.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-futures-codec-0.4
+  (package
+    (name "rust-futures-codec")
+    (version "0.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures_codec" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0nzadpxhdxdlnlk2f0gfn0qbifqc3pbnzm10v4z04x8ciczxcm6f"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.5)
+        ("rust-futures" ,rust-futures-0.3)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-pin-project" ,rust-pin-project-0.4)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-cbor" ,rust-serde-cbor-0.11)
+        ("rust-serde-json" ,rust-serde-json-1))))
+    (home-page "https://github.com/matthunz/futures-codec")
+    (synopsis
+     "Utilities for encoding and decoding frames using @code{async/await}")
+    (description
+     "This package provides utilities for encoding and decoding frames using
+@code{async/await}.")
+    (license license:expat)))
+
 (define-public rust-futures-core-0.3
   (package
     (name "rust-futures-core")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13170,11 +14845,11 @@ featuring zero allocations, composability, and iterator-like interfaces.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0j0pixxv8dmqas1h5cgy92z4r9lpmnlis8ls22v17yrgnwqy2z44"))))
+         "0r8ag0mkxx9cd74yrccjk31lph4gr6lhgb9di6rx39wdvrfi9rbr"))))
     (build-system cargo-build-system)
-    (arguments '(#:tests? #f))
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
-    (synopsis "Core traits and types in for the `futures` library")
+    (arguments '(#:skip-build? #t))
+    (home-page "https://rust-lang.github.io/futures-rs")
+    (synopsis "Core traits and types in for the @code{futures} library")
     (description "This package provides the core traits and types in for the
 @code{futures} library.")
     (license (list license:expat license:asl2.0))))
@@ -13228,7 +14903,7 @@ the computation on the threads themselves.")
 (define-public rust-futures-executor-0.3
   (package
     (name "rust-futures-executor")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13237,17 +14912,18 @@ the computation on the threads themselves.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0r8ayj6g08d1i0hj2v6g5zr3hzlkxpqlkpf1awq0105qd0mjpajc"))))
+         "1ffr1zclhz60ql49n2pj44jhhk22yah41xwlpyb30jws03f9zrg9"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #f
+     `(#:skip-build? #t
        #:cargo-inputs
        (("rust-futures-core" ,rust-futures-core-0.3)
         ("rust-futures-task" ,rust-futures-task-0.3)
         ("rust-futures-util" ,rust-futures-util-0.3)
         ("rust-num-cpus" ,rust-num-cpus-1))))
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
-    (synopsis "Executors for asynchronous tasks based on the futures-rs library")
+    (home-page "https://rust-lang.github.io/futures-rs")
+    (synopsis
+     "Executors for asynchronous tasks based on the @code{futures-rs} library")
     (description
      "This package provides executors for asynchronous tasks based on the
 @code{futures-rs} library.")
@@ -13312,7 +14988,7 @@ intrusive collections.")
 (define-public rust-futures-io-0.3
   (package
     (name "rust-futures-io")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13321,14 +14997,16 @@ intrusive collections.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1frh7d0n96lczy22al3bkgwpq0p1agbgax5kqh9vv8da33738631"))))
+         "0005hz30pdxlbdamhd0imixmxcjpwrfxxr27kljxh6i84lshbgi8"))))
     (build-system cargo-build-system)
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
+    (arguments `(#:skip-build? #t))
+    (home-page "https://rust-lang.github.io/futures-rs")
     (synopsis
-     "`AsyncRead` and `AsyncWrite` traits for the futures-rs library")
+     "@code{AsyncRead} and @code{AsyncWrite} traits for the @code{futures-rs}
+library")
     (description
      "This package provides the @code{AsyncRead} and @code{AsyncWrite} traits
-for the futures-rs library.")
+for the @code{futures-rs} library.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-io-preview-0.3
@@ -13432,27 +15110,27 @@ and removes almost all unsafe code from it.")
 (define-public rust-futures-macro-0.3
   (package
     (name "rust-futures-macro")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "futures-macro" version))
-       (file-name
-        (string-append name "-" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "0mjmb46zapb59iilsbljpj7l0hq6w19df0f03p3br5qz5xlqlh3p"))))
+        (base32 "1pgyb219ybh3fj3ig0h1c2b7k4cqldy95ifdpnd9yb9jvmdd51y2"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     `(#:skip-build? #t
+       #:cargo-inputs
        (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
         ("rust-proc-macro2" ,rust-proc-macro2-1)
         ("rust-quote" ,rust-quote-1)
         ("rust-syn" ,rust-syn-1))))
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
-    (synopsis "Futures-rs procedural macro implementations")
+    (home-page "https://rust-lang.github.io/futures-rs")
+    (synopsis "@code{futures-rs} procedural macro implementations")
     (description
-     "This package provides the @code{futures-rs} procedural macro implementations.")
+     "This package provides the @code{futures-rs} procedural macro
+implementations.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-preview-0.3
@@ -13519,7 +15197,7 @@ different @code{Future}s at once and handling the first one to complete.")
 (define-public rust-futures-sink-0.3
   (package
     (name "rust-futures-sink")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13528,12 +15206,13 @@ different @code{Future}s at once and handling the first one to complete.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0gfb1z97q861ki6lqsvpgfn3hnm9w3vkrf82dc00xrff95d1jy7q"))))
+         "1mj22d4w6digh7wfp6jkr5fdcl9r138q41fxzm1yg8mx568cdxfa"))))
     (build-system cargo-build-system)
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
-    (synopsis "Asynchronous `Sink` trait for the futures-rs library")
+    (arguments `(#:skip-build? #t))
+    (home-page "https://rust-lang.github.io/futures-rs")
+    (synopsis "Asynchronous @code{Sink} trait for the @code{futures-rs} library")
     (description "This package provides the asynchronous @code{Sink} trait for
-the futures-rs library.")
+the @code{futures-rs} library.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-sink-preview-0.3
@@ -13563,23 +15242,21 @@ futures-rs library.")
 (define-public rust-futures-task-0.3
   (package
     (name "rust-futures-task")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "futures-task" version))
-       (file-name
-        (string-append name "-" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "03ad39v8scy353src2f9dkkvcs24n736iavi8xn45cj8pyslwmbw"))))
+        (base32 "11ldlpl7mis5crys731dj7s7npgigdgrzdm7mi2y86m8ivmhgphk"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #f
+     `(#:skip-build? #t
        #:cargo-inputs (("rust-once-cell" ,rust-once-cell-1))))
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
+    (home-page "https://rust-lang.github.io/futures-rs")
     (synopsis "Tools for working with tasks")
-    (description "Tools for working with tasks.")
+    (description "This package provides tools for working with tasks.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-test-0.3
@@ -13610,29 +15287,67 @@ futures-rs library.")
 components built off futures-rs.")
     (license (list license:expat license:asl2.0))))
 
-(define-public rust-futures-timer-1
+(define-public rust-futures-timer-3
   (package
     (name "rust-futures-timer")
-    (version "1.0.3")
+    (version "3.0.2")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "futures-timer" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0idyz2k72jbl9z0wj48n15wjv6qgxgsgvs6k8lrhkzr9jj728ikr"))))
+        (base32 "0b5v7lk9838ix6jdcrainsyrh7xrf24pwm61dp13907qkn806jz6"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #true
+     `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
-        ("rust-pin-utils" ,rust-pin-utils-0.1))))
+       (("rust-gloo-timers" ,rust-gloo-timers-0.2)
+        ("rust-send-wrapper" ,rust-send-wrapper-0.4))))
     (home-page "https://github.com/async-rs/futures-timer")
     (synopsis "Timeouts for futures")
     (description "This package is a general purpose crate for working with
 timeouts and delays with futures.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-futures-timer-1
+  (package
+    (inherit rust-futures-timer-3)
+    (name "rust-futures-timer")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-timer" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0idyz2k72jbl9z0wj48n15wjv6qgxgsgvs6k8lrhkzr9jj728ikr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #true
+       #:cargo-inputs
+       (("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
+        ("rust-pin-utils" ,rust-pin-utils-0.1))))))
+
+(define-public rust-futures-timer-0.3
+  (package
+    (inherit rust-futures-timer-3)
+    (name "rust-futures-timer")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-timer" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0l35r7nm8p43j0adkhybnwxzbjiqy0b00kgccjy3l513m9abb7lg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-pin-utils" ,rust-pin-utils-0.1))))))
+
 (define-public rust-futures-timer-0.1
   (package
     (inherit rust-futures-timer-1)
@@ -13651,7 +15366,7 @@ timeouts and delays with futures.")
 (define-public rust-futures-util-0.3
   (package
     (name "rust-futures-util")
-    (version "0.3.8")
+    (version "0.3.12")
     (source
      (origin
        (method url-fetch)
@@ -13659,11 +15374,10 @@ timeouts and delays with futures.")
        (file-name
         (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "1lnbhpyrypn9giw6122af0pffxfijfz3zm7phrwzp75rlzscy16k"))))
+        (base32 "0jv25s07igmqavigdfzr02yw6j1q0vg8pw2p2vmgvcx4yb88qak3"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #false
+     `(#:skip-build? #t
        #:cargo-inputs
        (("rust-futures" ,rust-futures-0.1)
         ("rust-futures-channel" ,rust-futures-channel-0.3)
@@ -13673,16 +15387,17 @@ timeouts and delays with futures.")
         ("rust-futures-sink" ,rust-futures-sink-0.3)
         ("rust-futures-task" ,rust-futures-task-0.3)
         ("rust-memchr" ,rust-memchr-2)
-        ("rust-pin-project" ,rust-pin-project-1)
+        ("rust-pin-project-lite" ,rust-pin-project-lite-0.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-slab" ,rust-slab-0.4)
         ("rust-tokio-io" ,rust-tokio-io-0.1))))
-    (home-page "https://rust-lang-nursery.github.io/futures-rs")
-    (synopsis "Common utilities and extension traits for the futures-rs library")
+    (home-page "https://rust-lang.github.io/futures-rs")
+    (synopsis
+     "Common utilities and extension traits for the @code{futures-rs} library")
     (description "This package provides common utilities and extension traits
-for the futures-rs library.")
+for the @code{futures-rs} library.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-futures-util-preview-0.3
@@ -13776,6 +15491,53 @@ futures-rs library.")
 derived from an internal hasher used in FireFox and Rustc.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-gag-0.1
+  (package
+    (name "rust-gag")
+    (version "0.1.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "gag" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1d874gmyhyqbb78k6mkk9p0sd21n5vwd5w88m2nmzp3m6bsvkh4c"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-tempfile" ,rust-tempfile-3))))
+    (home-page "https://github.com/Stebalien/gag-rs")
+    (synopsis "Gag, redirect, or hold stdout/stderr output")
+    (description
+     "This packages gags, redirects, or holds stdout/stderr output.")
+    (license license:expat)))
+
+(define-public rust-galil-seiferas-0.1
+  (package
+    (name "rust-galil-seiferas")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "galil-seiferas" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0nhxks4qv1q6wrclxxbdch8k9h66i5ccdy3zn3913ym3zmfc4jkr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-defmac" ,rust-defmac-0.1)
+        ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
+    (home-page "https://github.com/bluss/galil-seiferas")
+    (synopsis "General string search in constant space, linear time")
+    (description
+     "This package provides general string search in constant space, linear
+time, for nonorderable alphabets.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-gcc-0.3
   (package
     (name "rust-gcc")
@@ -13921,6 +15683,24 @@ API library @code{gdi32}.")
         (base32
          "1v5jg7djicq34nbiv1dwaki71gkny002wyy9qfn3y0hfmrs053y6"))))))
 
+(define-public rust-generic-array-0.9
+  (package
+    (inherit rust-generic-array-0.14)
+    (name "rust-generic-array")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "generic-array" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "17avshwh41d1w9p75mw2k6pflmbaj9ra7svxplmhqmv76xlca9gg"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1)
+        ("rust-typenum" ,rust-typenum-1))))))
+
 (define-public rust-generic-array-0.8
   (package
     (inherit rust-generic-array-0.12)
@@ -13966,6 +15746,30 @@ API library @code{gdi32}.")
      "This package provides a package for generating 3D meshes/")
     (license license:asl2.0)))
 
+(define-public rust-geo-0.4
+  (package
+    (name "rust-geo")
+    (version "0.4.13")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "geo" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "10mvrmi5xgpil6hxl6h3b0w4lvg7mxy04n3388ah0gwhcnc1whh3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-num-traits" ,rust-num-traits-0.1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1))))
+    (home-page "https://github.com/georust/geo")
+    (synopsis "Geospatial primitives and algorithms")
+    (description
+     "This package provides geospatial primitives and algorithms.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-getch-0.2
   (package
     (name "rust-getch")
@@ -14073,6 +15877,32 @@ retrieving random data from system source.")
         ("rust-wasi" ,rust-wasi-0.9)
         ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))))
 
+(define-public rust-getset-0.1
+  (package
+    (name "rust-getset")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "getset" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "016590lxhlqga016z1qnavl0zavk59b97aix2zcd4wad3b02icr4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro-error" ,rust-proc-macro-error-1)
+        ("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/Hoverbear/getset")
+    (synopsis "Getters and setters for Rust")
+    (description
+     "This package provides a procedural macro for generating the most basic
+getters and setters on fields.")
+    (license license:expat)))
+
 (define-public rust-gettext-rs-0.5
   (package
     (name "rust-gettext-rs")
@@ -14201,6 +16031,24 @@ for constructing a Message Authentication Code (MAC), as in the AES-GCM
 authenticated encryption cipher.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-ghash-0.2
+  (package
+    (inherit rust-ghash-0.3)
+    (name "rust-ghash")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ghash" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0lijv1y6qcysnxv45ny5fjvc4v9gmpggxlj6xa4l065737nk02cz"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-polyval" ,rust-polyval-0.3)
+        ("rust-zeroize" ,rust-zeroize-1))))))
+
 (define-public rust-gimli-0.20
   (package
     (name "rust-gimli")
@@ -14852,6 +16700,25 @@ standard printing of search results, similar to grep itself.")
      "Fast line oriented regex searching as a library.")
     (license (list license:unlicense license:expat))))
 
+(define-public rust-groupable-0.2
+  (package
+    (name "rust-groupable")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "groupable" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0msfvg8xw4bqi7y7xdkm8nvjjllznc10dnzkx8wnjr5yp119jq9j"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/ryman/groupable-rs")
+    (synopsis "Easily aggregate groups of values from key-value iterators")
+    (description
+     "This package aggregates groups of values from key-value iterators.")
+    (license license:expat)))
+
 (define-public rust-gzip-header-0.3
   (package
     (name "rust-gzip-header")
@@ -14989,6 +16856,51 @@ of gzip files based on the gzip header implementation in the @code{flate2} crate
 IEEE 754-2008 binary16 type.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-bat-0.17
+  (package
+    (name "rust-bat")
+    (version "0.17.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bat" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1ia12774prjnm3msiaja6qdpxkpyknxswqpgkmwzj0wn9nhkc7nz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ansi-colours" ,rust-ansi-colours-1)
+        ("rust-ansi-term" ,rust-ansi-term-0.12)
+        ("rust-atty" ,rust-atty-0.2)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-console" ,rust-console-0.13)
+        ("rust-content-inspector" ,rust-content-inspector-0.2)
+        ("rust-dirs" ,rust-dirs-3)
+        ("rust-encoding" ,rust-encoding-0.2)
+        ("rust-error-chain" ,rust-error-chain-0.12)
+        ("rust-git2" ,rust-git2-0.13)
+        ("rust-globset" ,rust-globset-0.4)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-path-abs" ,rust-path-abs-0.5)
+        ("rust-semver" ,rust-semver-0.11)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-yaml" ,rust-serde-yaml-0.8)
+        ("rust-shell-words" ,rust-shell-words-1)
+        ("rust-syntect" ,rust-syntect-4)
+        ("rust-unicode-width" ,rust-unicode-width-0.1)
+        ("rust-wild" ,rust-wild-2))))
+    (home-page "https://github.com/sharkdp/bat")
+    (synopsis "@command{cat} clone with syntax highlighting and git integration")
+    (description
+     "@command{bat} is a drop-in @command{cat} replacement featuring syntax
+highlighting for a large number of languages, git integration, and automatic
+paging.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-handlebars-2
   (package
     (name "rust-handlebars")
@@ -15249,8 +17161,37 @@ hash map.")
 their key-value pairs in a user controllable order.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-headers-0.3
+  (package
+    (name "rust-headers")
+    (version "0.3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "headers" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1hyafm9q5havnbljfdzpkb7wrpx11ayzqzv02abycmklgk2rss32"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.13)
+        ("rust-bitflags" ,rust-bitflags-1)
+        ("rust-bytes" ,rust-bytes-1)
+        ("rust-headers-core" ,rust-headers-core-0.2)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-sha-1" ,rust-sha-1-0.8)
+        ("rust-time" ,rust-time-0.1))))
+    (home-page "https://hyper.rs")
+    (synopsis "Typed HTTP headers")
+    (description "This package provides typed HTTP headers.")
+    (license license:expat)))
+
 (define-public rust-headers-0.2
   (package
+    (inherit rust-headers-0.3)
     (name "rust-headers")
     (version "0.2.3")
     (source
@@ -15260,7 +17201,6 @@ their key-value pairs in a user controllable order.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0hmnrra00cjqpsn05klnr9cysrv2bm19akxl5lncwcrgfbcafb48"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-base64" ,rust-base64-0.10)
@@ -15270,14 +17210,32 @@ their key-value pairs in a user controllable order.")
         ("rust-http" ,rust-http-0.1)
         ("rust-mime" ,rust-mime-0.3)
         ("rust-sha-1" ,rust-sha-1-0.8)
-        ("rust-time" ,rust-time-0.1))))
+        ("rust-time" ,rust-time-0.1))))))
+
+(define-public rust-headers-core-0.2
+  (package
+    (name "rust-headers-core")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "headers-core" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0ab469xfpd411mc3dhmjhmzrhqikzyj8a17jn5bkj9zfpy0n9xp7"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-http" ,rust-http-0.2))))
     (home-page "https://hyper.rs")
-    (synopsis "typed HTTP headers")
-    (description "This package provides typed HTTP headers.")
+    (synopsis "Typed HTTP headers core trait")
+    (description "This package provides typed HTTP headers core trait.")
     (license license:expat)))
 
 (define-public rust-headers-core-0.1
   (package
+    (inherit rust-headers-core-0.2)
     (name "rust-headers-core")
     (version "0.1.1")
     (source
@@ -15287,15 +17245,10 @@ their key-value pairs in a user controllable order.")
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "0ds20kg0igncs2r0jrcf26mq72k3j6ilanr0qwh7r7xak8kk2wcn"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-bytes" ,rust-bytes-0.4)
-        ("rust-http" ,rust-http-0.1))))
-    (home-page "https://hyper.rs")
-    (synopsis "Typed HTTP headers core trait")
-    (description "This package provides typed HTTP headers core trait.")
-    (license license:expat)))
+        ("rust-http" ,rust-http-0.1))))))
 
 (define-public rust-heapless-0.5
   (package
@@ -15607,6 +17560,24 @@ compile time.")
 Derivation Function (HKDF).")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-hkdf-0.8
+  (package
+    (inherit rust-hkdf-0.9)
+    (name "rust-hkdf")
+    (version "0.8.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hkdf" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1qzsmqrvcmgnrb109qr2mvsmr5c4psm1702vrpcqnj02c408m81z"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-digest" ,rust-digest-0.8)
+        ("rust-hmac" ,rust-hmac-0.7))))))
+
 (define-public rust-hmac-0.8
   (package
     (name "rust-hmac")
@@ -15659,6 +17630,67 @@ Hash-based Message Authentication Code}.")
         ("rust-md-5" ,rust-md-5-0.8)
         ("rust-sha2" ,rust-sha2-0.8))))))
 
+(define-public rust-hmac-0.5
+  (package
+    (inherit rust-hmac-0.8)
+    (name "rust-hmac")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hmac" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0ppm927wsczkkvybj0y7r2w2lprvy5kf5h31qxyrvnbrhnqbvws4"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-crypto-mac" ,rust-crypto-mac-0.5)
+        ("rust-digest" ,rust-digest-0.7))))))
+
+(define-public rust-hmac-0.4
+  (package
+    (inherit rust-hmac-0.8)
+    (name "rust-hmac")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hmac" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0amfn9wggxapyva1i0j7wldy9chj487cxal4wldwmid078bg84vs"))))
+    (arguments
+     `(#:skip-build?
+       #t
+       #:cargo-inputs
+       (("rust-crypto-mac" ,rust-crypto-mac-0.4)
+        ("rust-digest" ,rust-digest-0.6)
+        ("rust-generic-array" ,rust-generic-array-0.8))))))
+
+(define-public rust-hmac-sha1-0.1
+  (package
+    (name "rust-hmac-sha1")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hmac-sha1" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08k7aylc0v8x3abmxn3h73dkad3anfq2i94xk2mjrf4linnkycz1"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-sha1" ,rust-sha1-0.2))))
+    (home-page "https://github.com/pantsman0/rust-hmac-sha1")
+    (synopsis "Minimal implementation of HMAC-SHA1 in Rust")
+    (description
+     "This package is a pure Rust implementation of the Hash-based Message
+Authentication Code Algoritm (HMAC) for SHA1.")
+    (license license:bsd-3)))
+
 (define-public rust-hostname-0.3
   (package
     (name "rust-hostname")
@@ -15705,8 +17737,36 @@ Hash-based Message Authentication Code}.")
        (("rust-libc" ,rust-libc-0.2)
         ("rust-winutil" ,rust-winutil-0.1))))))
 
+(define-public rust-html5ever-0.25
+  (package
+    (name "rust-html5ever")
+    (version "0.25.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "html5ever" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0szdpwr6l3p21flf01pdlpj6fkpqisqf34lvs918449n3a5g7z5a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-log" ,rust-log-0.4)
+        ("rust-mac" ,rust-mac-0.1)
+        ("rust-markup5ever" ,rust-markup5ever-0.10)
+        ("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/servo/html5ever")
+    (synopsis "High-performance browser-grade HTML5 parser")
+    (description
+     "This package provides a high-performance browser-grade HTML5 parser.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-html5ever-0.24
   (package
+    (inherit rust-html5ever-0.25)
     (name "rust-html5ever")
     (version "0.24.1")
     (source
@@ -15717,7 +17777,6 @@ Hash-based Message Authentication Code}.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32 "1js4cr04941ld4r4fqpblvfigy75ds48qcbqhnr7nmz4l6q86m02"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-log" ,rust-log-0.4)
@@ -15730,12 +17789,7 @@ Hash-based Message Authentication Code}.")
        (("rust-criterion" ,rust-criterion-0.2)
         ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
         ("rust-rustc-test" ,rust-rustc-test-0.3)
-        ("rust-typed-arena" ,rust-typed-arena-1))))
-    (home-page "https://github.com/servo/html5ever")
-    (synopsis "High-performance browser-grade HTML5 parser")
-    (description
-     "High-performance browser-grade HTML5 parser.")
-    (license (list license:asl2.0 license:expat))))
+        ("rust-typed-arena" ,rust-typed-arena-1))))))
 
 (define-public rust-html5ever-0.23
   (package/inherit rust-html5ever-0.24
@@ -15762,6 +17816,25 @@ Hash-based Message Authentication Code}.")
         ("rust-rustc-test" ,rust-rustc-test-0.3)
         ("rust-typed-arena" ,rust-typed-arena-1))))))
 
+(define-public rust-htmlescape-0.3
+  (package
+    (name "rust-htmlescape")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "htmlescape" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0qria8paf19qy5sgzzk3iiii9fp2j7spbhqf0zjxwrg7v9c500p9"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/veddan/rust-htmlescape")
+    (synopsis "Library for HTML entity encoding and decoding")
+    (description
+     "This package provides a library for HTML entity encoding and decoding.")
+    (license (list license:asl2.0 license:expat license:mpl2.0))))
+
 (define-public rust-http-0.2
   (package
     (name "rust-http")
@@ -15860,6 +17933,41 @@ or response body.")
         ("rust-http" ,rust-http-0.1)
         ("rust-tokio-buf" ,rust-tokio-buf-0.1))))))
 
+(define-public rust-http-client-6
+  (package
+    (name "rust-http-client")
+    (version "6.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "http-client" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "077jw39npmjgm27hij4r825qnxq7lvkmqqlm74llkvll3fvr4001"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-h1" ,rust-async-h1-2)
+        ("rust-async-native-tls" ,rust-async-native-tls-0.3)
+        ("rust-async-std" ,rust-async-std-1)
+        ("rust-async-trait" ,rust-async-trait-0.1)
+        ("rust-futures" ,rust-futures-0.3)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-http-types" ,rust-http-types-2)
+        ("rust-hyper" ,rust-hyper-0.13)
+        ("rust-hyper-tls" ,rust-hyper-tls-0.4)
+        ("rust-isahc" ,rust-isahc-0.9)
+        ("rust-js-sys" ,rust-js-sys-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
+        ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4)
+        ("rust-web-sys" ,rust-web-sys-0.3))))
+    (home-page "https://github.com/http-rs/http-client")
+    (synopsis "Types and traits for HTTP clients")
+    (description "This package provides types and traits for HTTP clients.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-http-req-0.5
   (package
     (name "rust-http-req")
@@ -15887,6 +17995,42 @@ or response body.")
      "Simple and lightweight HTTP client with built-in HTTPS support.")
     (license license:expat)))
 
+(define-public rust-http-types-2
+  (package
+    (name "rust-http-types")
+    (version "2.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "http-types" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0p7g2rzgzvnd419a5ddlyb2nz85z9bw7cdkqyl7467cx2fxkwq9j"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-anyhow" ,rust-anyhow-1)
+        ("rust-async-channel" ,rust-async-channel-1)
+        ("rust-async-std" ,rust-async-std-1)
+        ("rust-base64" ,rust-base64-0.13)
+        ("rust-cookie" ,rust-cookie-0.14)
+        ("rust-futures-lite" ,rust-futures-lite-1)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-infer" ,rust-infer-0.2)
+        ("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-qs" ,rust-serde-qs-0.7)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.7)
+        ("rust-url" ,rust-url-2))))
+    (home-page "https://github.com/http-rs/http-types")
+    (synopsis "Common types for HTTP operations.")
+    (description
+     "This package provides common types for HTTP operations.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-httparse-1
   (package
     (name "rust-httparse")
@@ -16078,6 +18222,92 @@ SystemTime}}.")
         ("rust-tokio-mockstream" ,rust-tokio-mockstream-1)
         ("rust-url" ,rust-url-1))))))
 
+(define-public rust-hyper-0.11
+  (package
+    (inherit rust-hyper-0.13)
+    (name "rust-hyper")
+    (version "0.11.27")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1msrx9fgiiv7vl4kryn2zgahbqndph5szrgqvm6fjhfk1759199l"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.9)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-futures-cpupool" ,rust-futures-cpupool-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-iovec" ,rust-iovec-0.1)
+        ("rust-language-tags" ,rust-language-tags-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-net2" ,rust-net2-0.2)
+        ("rust-percent-encoding" ,rust-percent-encoding-1)
+        ("rust-relay" ,rust-relay-0.1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-proto" ,rust-tokio-proto-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1)
+        ("rust-unicase" ,rust-unicase-2)
+        ("rust-want" ,rust-want-0.0))))))
+
+(define-public rust-hyper-0.10
+  (package
+    (inherit rust-hyper-0.13)
+    (name "rust-hyper")
+    (version "0.10.16")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0wwjh9p3mzvg3fss2lqz5r7ddcgl1fh9w6my2j69d6k0lbcm41ha"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.9)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-language-tags" ,rust-language-tags-0.2)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-mime" ,rust-mime-0.2)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-traitobject" ,rust-traitobject-0.1)
+        ("rust-typeable" ,rust-typeable-0.1)
+        ("rust-unicase" ,rust-unicase-1)
+        ("rust-url" ,rust-url-1))))))
+
+(define-public rust-hyper-native-tls-0.3
+  (package
+    (name "rust-hyper-native-tls")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper-native-tls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0s30y20qy0akzss91yxsq1x1q7rr04jy33i0cq72nx22yjc5advd"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-antidote" ,rust-antidote-1)
+        ("rust-hyper" ,rust-hyper-0.10)
+        ("rust-native-tls" ,rust-native-tls-0.2))))
+    (home-page "https://github.com/sfackler/hyper-native-tls")
+    (synopsis "native-tls support for Hyper 0.10")
+    (description "This package provides native-tls support for Hyper 0.10.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-hyper-old-types-0.11
   (package
     (name "rust-hyper-old-types")
@@ -16173,6 +18403,31 @@ HTTPS.")
         ("rust-webpki" ,rust-webpki-0.21)
         ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
 
+(define-public rust-hyper-sync-rustls-0.3
+  (package
+    (name "rust-hyper-sync-rustls")
+    (version "0.3.0-rc.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hyper-sync-rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "16zirxhsk26kz5jxxxs37wxsm02id97h57kkqs512fj1j0x486kd"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-hyper" ,rust-hyper-0.10)
+        ("rust-rustls" ,rust-rustls-0.14)
+        ("rust-webpki" ,rust-webpki-0.18)
+        ("rust-webpki-roots" ,rust-webpki-roots-0.15))))
+    (home-page "https://github.com/SergioBenitez/hyper-sync-rustls")
+    (synopsis "Glue code for Rustls and synchronous Hyper")
+    (description
+     "This package provides glue code for Rustls and synchronous Hyper.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-hyper-tls-0.4
   (package
     (name "rust-hyper-tls")
@@ -16352,6 +18607,82 @@ let} expressions.")
 ignore files such as @file{.gitignore} against file paths.")
     (license (list license:unlicense license:expat))))
 
+(define-public rust-include-flate-0.1
+  (package
+    (name "rust-include-flate")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "include-flate" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0xd63rhr03ax1w327ws46wc9zyw5k9jsaxfy24j6wg9km3xhfqii"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-include-flate-codegen-exports" ,rust-include-flate-codegen-exports-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libflate" ,rust-libflate-0.1))))
+    (home-page "https://github.com/SOF3/include-flate")
+    (synopsis "Variant of @code{include_bytes!/include_str!} with compression")
+    (description
+     "This package provides a variant of @code{include_bytes!/include_str!}
+with compile-time deflation and runtime lazy inflation.")
+    (license license:asl2.0)))
+
+(define-public rust-include-flate-codegen-0.1
+  (package
+    (name "rust-include-flate-codegen")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "include-flate-codegen" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1mbw6fcczmfw4dabps4l90mdn2wdy9zhqwh60xx4fjcxqfsm9ksb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libflate" ,rust-libflate-0.1)
+        ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
+        ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-0.6)
+        ("rust-syn" ,rust-syn-0.15))))
+    (home-page "https://github.com/SOF3/include-flate")
+    (synopsis "Macro codegen for the @code{include-flate} crate")
+    (description
+     "This package provides macro codegen for the @code{include-flate}
+crate.")
+    (license license:asl2.0)))
+
+(define-public rust-include-flate-codegen-exports-0.1
+  (package
+    (name "rust-include-flate-codegen-exports")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "include-flate-codegen-exports" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0dk7xdrck9f3bjnwm3rmh5gl1hs64lr2gnd3dv3jznharcmyb4mw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-include-flate-codegen" ,rust-include-flate-codegen-0.1)
+        ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
+    (home-page "https://github.com/SOF3/include-flate")
+    (synopsis "Macro codegen for the @code{include-flate} crate")
+    (description
+     "This package provides macro codegen for the @code{include-flate}
+crate.")
+    (license license:asl2.0)))
+
 (define-public rust-indexmap-1
   (package
     (name "rust-indexmap")
@@ -16621,6 +18952,30 @@ written in Rust.")
      "This package provides inotify bindings for the Rust programming language.")
     (license license:isc)))
 
+(define-public rust-input-buffer-0.3
+  (package
+    (name "rust-input-buffer")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "input_buffer" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0m4pamqvr00z90cmrgjj25iwpqy6fyac53k1ms63k86m8d9aka0r"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.5))))
+    (home-page "https://github.com/snapview/input_buffer")
+    (synopsis
+     "Peekable FIFO-like buffer for receiving network data efficiently")
+    (description
+     "This package provides a peekable FIFO-like buffer for receiving network
+data efficiently.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-insta-0.16
   (package
     (name "rust-insta")
@@ -16950,6 +19305,39 @@ uses libcurl as an HTTP engine inside, and provides an easy-to-use API on top
 that integrates with Rust idioms.")
     (license license:expat)))
 
+(define-public rust-isahc-0.7
+  (package
+    (inherit rust-isahc-0.9)
+    (name "rust-isahc")
+    (version "0.7.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "isahc" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1yy3v4r2i4hf0a436676cw4b2bnkb510gxvrldcswlrfy4kp1dqp"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-crossbeam-channel" ,rust-crossbeam-channel-0.3)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
+        ("rust-curl" ,rust-curl-0.4)
+        ("rust-curl-sys" ,rust-curl-sys-0.4)
+        ("rust-futures-io-preview" ,rust-futures-io-preview-0.3)
+        ("rust-futures-util-preview" ,rust-futures-util-preview-0.3)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-parking-lot" ,rust-parking-lot-0.9)
+        ("rust-publicsuffix" ,rust-publicsuffix-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-slab" ,rust-slab-0.4)
+        ("rust-sluice" ,rust-sluice-0.4))))))
+
 (define-public rust-ipnet-2
   (package
     (name "rust-ipnet")
@@ -17006,6 +19394,40 @@ stable toolchain.")
 Rust.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-iron-0.6
+  (package
+    (name "rust-iron")
+    (version "0.6.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "iron" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1s4mf8395f693nhwsr0znw3j5frzn56gzllypyl50il85p50ily6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-hyper" ,rust-hyper-0.10)
+        ("rust-hyper-native-tls" ,rust-hyper-native-tls-0.3)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-1)
+        ("rust-modifier" ,rust-modifier-0.1)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-plugin" ,rust-plugin-0.2)
+        ("rust-typemap" ,rust-typemap-0.3)
+        ("rust-url" ,rust-url-1))))
+    (home-page "https://github.com/iron/iron")
+    (synopsis "Extensible, concurrency focused web development in Rust")
+    (description
+     "Iron is a high level web framework built in and for Rust.  It is highly
+concurrent and can scale horizontally on more machines behind a load balancer
+or by running more threads on a more powerful machine.  Iron avoids the
+bottlenecks encountered in highly concurrent code by avoiding shared writes
+and locking in the core framework.")
+    (license license:expat)))
+
 (define-public rust-is-executable
   (package
     (name "rust-is-executable")
@@ -17063,8 +19485,32 @@ whether or not a given path points to an executable file.")
     (description "Parsing ISO8601 dates using nom.")
     (license license:expat)))
 
+(define-public rust-itertools-0.10
+  (package
+    (name "rust-itertools")
+    (version "0.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "itertools" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "06dkghwi1a6ah2103gibxnr2ys762m5x4rp75x0q43imis8p5m9p"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-either" ,rust-either-1))))
+    (home-page "https://github.com/rust-itertools/itertools")
+    (synopsis "Extra iterator adaptors, methods, free functions, and macros")
+    (description
+     "This package provides extra iterator adaptors, iterator methods, free
+functions, and macros.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-itertools-0.9
   (package
+    (inherit rust-itertools-0.10)
     (name "rust-itertools")
     (version "0.9.0")
     (source
@@ -17076,7 +19522,6 @@ whether or not a given path points to an executable file.")
         (sha256
          (base32
           "0jyml7ygr7kijkcjdl3fk5f34y5h5jsavclim7l13zjiavw1hkr8"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-either" ,rust-either-1))
@@ -17091,14 +19536,7 @@ whether or not a given path points to an executable file.")
            (lambda _
              (substitute* "Cargo.toml"
                (("=0.3.0") "0.3"))
-             #t)))))
-    (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 (list license:expat license:asl2.0))))
+             #t)))))))
 
 (define-public rust-itertools-0.8
   (package
@@ -17379,6 +19817,27 @@ primitives to an @code{io::Write}.")
     (native-inputs
      `(("jemalloc" ,jemalloc)))))
 
+(define-public rust-jetscii-0.3
+  (package
+    (name "rust-jetscii")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "jetscii" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1sq6d6c9vi44gkr566w2f1d4n6mmrjx8gjdwgnhkgcsg051j391j"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/shepmaster/jetscii")
+    (synopsis
+     "Search strings and byte slices for sets of ASCII characters or bytes")
+    (description
+     "This package provides a tiny library to efficiently search strings and
+byte slices for sets of ASCII characters or bytes.")
+    (license license:expat)))
+
 (define-public rust-jni-0.18
   (package
     (name "rust-jni")
@@ -17581,6 +20040,36 @@ friction with idiomatic Rust structs to ease interopability.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-juliex-0.3
+  (package
+    (name "rust-juliex")
+    (version "0.3.0-alpha.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "juliex" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1g4r23i7dkpid8zmkg6aiw73gkp7jagwhrjfi12yklyx4dczvp12"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-crossbeam" ,rust-crossbeam-0.7)
+        ("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-num-cpus" ,rust-num-cpus-1))))
+    (home-page "https://github.com/withoutboats/juliex")
+    (synopsis "Very basic future executor")
+    (description
+     "juliex is a concurrent executor for Rust futures.  It is implemented as
+a threadpool executor using a single, shared queue.  Algorithmically, it is
+very similar to the Threadpool executor provided by the futures crate.  The
+main difference is that juliex uses a crossbeam channel and performs a single
+allocation per spawned future, whereas the futures Threadpool uses std
+concurrency primitives and multiple allocations.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-juniper-codegen-0.14
   (package
     (name "rust-juniper-codegen")
@@ -18111,15 +20600,15 @@ requires non-const function calls to be computed.")
 (define-public rust-libc-0.2
   (package
     (name "rust-libc")
-    (version "0.2.81")
+    (version "0.2.86")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "libc" version))
-       (file-name (string-append name "-" version ".crate"))
+       (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1jsk82v5snd286ba92lir5snrxl18qm3kjkagz8c97hn0q9q50hl"))))
+         "074b38mq1rx3dgg7sf952d4ccywq450zymk7gzn5q9z39f92sa5p"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -18229,6 +20718,30 @@ algorithm and related formats (ZLIB, GZIP).")
     (description "This package provides a LZ77 encoder for libflate crate.")
     (license license:expat)))
 
+(define-public rust-libfuzzer-sys-0.3
+  (package
+    (name "rust-libfuzzer-sys")
+    (version "0.3.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "libfuzzer-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1vv42rpvmfr83hlblyrjf8ifilsmc3d5gcznblmghx5jnsj89wgw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-arbitrary" ,rust-arbitrary-0.4)
+        ("rust-cc" ,rust-cc-1))))
+    (home-page "https://github.com/rust-fuzz/libfuzzer")
+    (synopsis "Wrapper around LLVM's libFuzzer runtime")
+    (description
+     "This package provides a wrapper around LLVM's libFuzzer runtime.")
+    (license
+     (list license:expat license:asl2.0 license:ncsa))))
+
 (define-public rust-libgit2-sys-0.12
   (package
     (name "rust-libgit2-sys")
@@ -19128,23 +21641,22 @@ by inspecting the system for user preference.")
 (define-public rust-log-0.4
   (package
     (name "rust-log")
-    (version "0.4.11")
+    (version "0.4.14")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "log" version))
-        (file-name (string-append name "-" version ".crate"))
-        (sha256
-         (base32
-          "12xzqaflpiljn5cmxsbnbv9sjaj13ykhwsvll0gysbx4blbyvasg"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "log" version))
+       (file-name (string-append name "-" version ".crate"))
+       (sha256
+        (base32 "04175hv0v62shd82qydq58a48k3bjijmk54v38zgqlbxqkkbpfai"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     `(#:skip-build? #t
+       #:cargo-inputs
        (("rust-cfg-if" ,rust-cfg-if-0.1)
         ("rust-serde" ,rust-serde-1)
-        ("rust-sval" ,rust-sval-0.5))
-       #:cargo-development-inputs
-       (("rust-serde-test" ,rust-serde-test-1))))
+        ("rust-sval" ,rust-sval-1)
+        ("rust-value-bag" ,rust-value-bag-1))))
     (home-page "https://github.com/rust-lang/log")
     (synopsis "Lightweight logging facade for Rust")
     (description
@@ -19290,6 +21802,29 @@ explosion.")
         ("rust-serde-derive" ,rust-serde-derive-1)
         ("rust-serde-json" ,rust-serde-json-1))))))
 
+(define-public rust-loop9-0.1
+  (package
+    (name "rust-loop9")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "loop9" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0h4rys8001cdq4l2f30k66wmvscm4lb2laxgpia794p5652800x7"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-imgref" ,rust-imgref-1))))
+    (home-page "https://lib.rs/loop9")
+    (synopsis "Helper function to visit every pixel and its neighbors")
+    (description
+     "This package provides a tiny helper function to visit every pixel in the
+image together with its neighboring pixels.")
+    (license license:expat)))
+
 (define-public rust-lopdf-0.26
   (package
     (name "rust-lopdf")
@@ -19498,6 +22033,29 @@ implementation of LZMA and xz stream encoding/decoding.")
      "This package provides a collection of great and ubiqutitous macros.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-mach-0.2
+  (package
+    (name "rust-mach")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "mach" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1qdhs16cl1j3w7kvy6ak7h8lbyqmr6i3i15qfzpnv9gyrn3j9pc6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2))))
+    (home-page "https://github.com/fitzgen/mach")
+    (synopsis "Rust interface to the Mach 3.0 kernel that underlies OSX")
+    (description
+     "This package provides a Rust interface to the user-space API of the
+Mach 3.0 kernel that underlies OSX.")
+    (license (list license:asl2.0 license:expat license:bsd-2))))
+
 (define-public rust-mach-o-sys-0.1
   (package
     (name "rust-mach-o-sys")
@@ -19837,8 +22395,28 @@ parallelize and optimize.")
        (("rust-digest" ,rust-digest-0.8)
         ("rust-hex-literal" ,rust-hex-literal-0.1))))))
 
+(define-public rust-md5-0.7
+  (package
+    (name "rust-md5")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "md5" version))
+       (file-name (string-append name "-" version ".crate"))
+       (sha256
+        (base32 "0wcps37hrhz59fkhf8di1ppdnqld6l1w5sdy7jp7p51z0i4c8329"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/stainless-steel/md5")
+    (synopsis "MD5 hash function in Rust")
+    (description "The package provides the MD5 hash function.")
+    (license (list license:asl2.0
+                   license:expat))))
+
 (define-public rust-md5-0.6
   (package
+    (inherit rust-md5-0.7)
     (name "rust-md5")
     (version "0.6.1")
     (source
@@ -19848,13 +22426,7 @@ parallelize and optimize.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "17b2xm4h4cvxsdjsf3kdrzqv2za60kak961xzi5kmw6g6djcssvy"))))
-    (build-system cargo-build-system)
-    (home-page "https://github.com/stainless-steel/md5")
-    (synopsis "MD5 hash function in Rust")
-    (description "The package provides the MD5 hash function.")
-    (license (list license:asl2.0
-                   license:expat))))
+          "17b2xm4h4cvxsdjsf3kdrzqv2za60kak961xzi5kmw6g6djcssvy"))))))
 
 (define-public rust-md5-0.3
   (package
@@ -19926,7 +22498,7 @@ unstable -Z self-profile flag.")
 (define-public rust-memchr-2
   (package
     (name "rust-memchr")
-    (version "2.3.3")
+    (version "2.3.4")
     (source
       (origin
         (method url-fetch)
@@ -19935,7 +22507,7 @@ unstable -Z self-profile flag.")
          (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "0074pvsfl938ndl5js14ibc7i9q0k3zp390z843w8nlyv4bxha1p"))))
+          "098m9clfs495illlw00hv2gg67mhm7jflld3msyclvi5m9xc9q8f"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -20322,6 +22894,30 @@ based on Rustls and Ring.")
        (("rust-sema" ,rust-sema-0.1)
         ("rust-winit" ,rust-winit-0.19)))))) ; 0.17?
 
+(define-public rust-meval-0.2
+  (package
+    (name "rust-meval")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "meval" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1ncj0fv9q3b4his7g947fmgkskpfly6dsniw0g6mg38wcnjrd57p"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-fnv" ,rust-fnv-1)
+        ("rust-nom" ,rust-nom-1)
+        ("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/rekka/meval-rs")
+    (synopsis "Simple math expression parser and evaluator")
+    (description
+     "This package provides a simple math expression parser and evaluator.")
+    (license (list license:unlicense license:expat))))
+
 (define-public rust-mimalloc-0.1
   (package
     (name "rust-mimalloc")
@@ -20365,6 +22961,25 @@ drop-in allocator.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-mime-0.2
+  (package
+    (inherit rust-mime-0.3)
+    (name "rust-mime")
+    (version "0.2.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "mime" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1q1s1ax1gaz8ld3513nvhidfwnik5asbs1ma3hp6inp5dn56nqms"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-heapsize" ,rust-heapsize-0.3)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-serde" ,rust-serde-0.8))))))
+
 (define-public rust-mime-guess-2
   (package
     (name "rust-mime-guess")
@@ -20391,8 +23006,57 @@ drop-in allocator.")
 file's MIME type by its extension.")
     (license license:expat)))
 
+(define-public rust-mime-guess-1
+  (package
+    (inherit rust-mime-guess-2)
+    (name "rust-mime-guess")
+    (version "1.8.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "mime_guess" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "18qcd5aa3363mb742y7lf39j7ha88pkzbv9ff2qidlsdxsjjjs91"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-mime" ,rust-mime-0.2)
+        ("rust-phf" ,rust-phf-0.7)
+        ("rust-phf-codegen" ,rust-phf-codegen-0.7)
+        ("rust-unicase" ,rust-unicase-1))))))
+
+(define-public rust-miniz-oxide-0.4
+  (package
+    (name "rust-miniz-oxide")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "miniz_oxide" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "17d1xp29v5xgh4vahxld14w1c1hgh38qmxpv7i18wy096gn2cb8g"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-adler" ,rust-adler-0.2)
+        ("rust-autocfg" ,rust-autocfg-1)
+        ("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
+        ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1)
+        ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
+    (home-page  "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide")
+    (synopsis "Pure rust replacement for the miniz DEFLATE/zlib encoder/decoder")
+    (description
+     "A pure rust replacement for the miniz DEFLATE/zlib encoder/decoder.  Using
+@code{flate2} with the @code{rust_backend} feature provides an easy to use
+streaming API for miniz_oxide.")
+    (license (list license:expat license:zlib license:asl2.0))))
+
 (define-public rust-miniz-oxide-0.3
   (package
+    (inherit rust-miniz-oxide-0.4)
     (name "rust-miniz-oxide")
     (version "0.3.6")
     (source
@@ -20403,17 +23067,9 @@ file's MIME type by its extension.")
         (sha256
          (base32
           "198n4hfpq0qcxf275l6fpzh7b9cl7ck2xs6pjgpds74bazv9yrxa"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
-       #:cargo-inputs (("rust-adler32" ,rust-adler32-1))))
-    (home-page  "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide")
-    (synopsis "Pure rust replacement for the miniz DEFLATE/zlib encoder/decoder")
-    (description
-     "A pure rust replacement for the miniz DEFLATE/zlib encoder/decoder.  Using
-@code{flate2} with the @code{rust_backend} feature provides an easy to use
-streaming API for miniz_oxide.")
-    (license license:expat)))
+       #:cargo-inputs (("rust-adler32" ,rust-adler32-1))))))
 
 (define-public rust-miniz-oxide-0.2
   (package
@@ -20832,6 +23488,69 @@ which defines a default trait implementation, and @code{trait_impl} which uses
 a default trait implementation you've defined.")
     (license license:lgpl2.1+)))
 
+(define-public rust-multipart-0.17
+  (package
+    (name "rust-multipart")
+    (version "0.17.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "multipart" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1m3nrydgc56wjixsahipmvjgnxnw2cz7w8ryghsgahwjr3nswl6h"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-buf-redux" ,rust-buf-redux-0.8)
+        ("rust-clippy" ,rust-clippy-0.0)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-hyper" ,rust-hyper-0.10)
+        ("rust-iron" ,rust-iron-0.6)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-nickel" ,rust-nickel-0.11)
+        ("rust-quick-error" ,rust-quick-error-1)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-rocket" ,rust-rocket-0.4)
+        ("rust-safemem" ,rust-safemem-0.3)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-tiny-http" ,rust-tiny-http-0.6)
+        ("rust-twoway" ,rust-twoway-0.1))))
+    (home-page "https://github.com/abonander/multipart")
+    (synopsis
+     "Backend-agnostic extension for file uploads in HTTP libraries for Rust")
+    (description
+     "This package provides a backend-agnostic extension for HTTP libraries
+that provides support for POST multipart/form-data requests on both client and
+server.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-mustache-0.9
+  (package
+    (name "rust-mustache")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "mustache" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1dfakqld6zf995nnkgs9ybccgps4zcbfd4adaa2162njqpqnx5ai"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-log" ,rust-log-0.3)
+        ("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/nickel-org/rust-mustache")
+    (synopsis "Rust implementation of Mustache")
+    (description "This package provides a Rust implementation of Mustache.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-mysqlclient-sys-0.2
   (package
     (name "rust-mysqlclient-sys")
@@ -21239,6 +23958,29 @@ IO of Windows's named pipes.")
      "This package provides a wrapper over a platform's native TLS implementation.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-native-tls-0.1
+  (package
+    (inherit rust-native-tls-0.2)
+    (name "rust-native-tls")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "native-tls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1h7v80nlskyr7b1gsg4ivlpm6pilj6ybgvcwadj7ips3igfblkgp"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-0.2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework" ,rust-security-framework-0.1)
+        ("rust-security-framework-sys" ,rust-security-framework-sys-0.1)
+        ("rust-tempdir" ,rust-tempdir-0.3))))))
+
 (define-public rust-natord-1
   (package
     (name "rust-natord")
@@ -21286,6 +24028,31 @@ a non-blocking way, without waiting for the connection to become fully
 established.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-ncurses-5
+  (package
+    (name "rust-ncurses")
+    (version "5.100.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ncurses" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0ss1ia7skbs5x2p5lccp38qmm3xnkq7spcp8cyr4yvvz5350gnx7"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cc" ,rust-cc-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (home-page "https://github.com/jeaye/ncurses-rs")
+    (synopsis "Thin wrapper around the @code{ncurses} TUI library")
+    (description
+     "This package provides a very thin wrapper around the @code{ncurses} TUI
+library.")
+    (license license:expat)))
+
 (define-public rust-ndarray-0.12
   (package
     (name "rust-ndarray")
@@ -21416,6 +24183,35 @@ general elements and for numerics.")
     (description "This package provides FFI bindings for the Android NDK.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-neso-0.5
+  (package
+    (name "rust-neso")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "neso" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1j78iyrv3r46n7jdayvgwarpq9iaikc7yhqqvdii226bzgg32g3b"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bincode" ,rust-bincode-1)
+        ("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-console-error-panic-hook" ,rust-console-error-panic-hook-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))))
+    (home-page "https://gitlab.com/jeffrey-xiao/neso-rs")
+    (synopsis "Nintendo Entertainment System (NES) emulator")
+    (description
+     "NES Oxidized (NESO) is a Nintendo Entertainment System emulator written
+in Rust that can compile to WebAssembly.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-net2-0.2
   (package
     (name "rust-net2")
@@ -21545,6 +24341,71 @@ cryptographic library.")
 release (fork of debug_unreachable)")
     (license license:expat)))
 
+(define-public rust-nickel-0.11
+  (package
+    (name "rust-nickel")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nickel" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1na619j2k0hkv5qhws7ccibzhn1v637f1vqwnsn2vnr84y1il1p5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-compiletest-rs" ,rust-compiletest-rs-0.3)
+        ("rust-groupable" ,rust-groupable-0.2)
+        ("rust-hyper" ,rust-hyper-0.10)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-modifier" ,rust-modifier-0.1)
+        ("rust-mustache" ,rust-mustache-0.9)
+        ("rust-plugin" ,rust-plugin-0.2)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-typemap" ,rust-typemap-0.3)
+        ("rust-url" ,rust-url-1))))
+    (home-page "http://nickel-org.github.io/")
+    (synopsis "Web application framework for Rust")
+    (description
+     "@code{nickel.rs} is a simple and lightweight foundation for web
+applications written in Rust.  Its API is inspired by the popular
+@code{express} framework for JavaScript.")
+    (license license:expat)))
+
+(define-public rust-nipper-0.1
+  (package
+    (name "rust-nipper")
+    (version "0.1.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nipper" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0l003qvzivrqq2lj2cdn4q5x0fg6xczld13m41x492x0g91hwvap"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cssparser" ,rust-cssparser-0.27)
+        ("rust-html5ever" ,rust-html5ever-0.25)
+        ("rust-markup5ever" ,rust-markup5ever-0.10)
+        ("rust-selectors" ,rust-selectors-0.22)
+        ("rust-tendril" ,rust-tendril-0.4))))
+    (home-page "https://github.com/importcjj/nipper")
+    (synopsis "HTML manipulation with CSS selectors")
+    (description
+     "Nipper is based on HTML crate html5ever and the CSS selector crate
+selectors.  You can use the jQuery-like syntax to query and manipulate an HTML
+document quickly.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-nix-0.19
   (package
     (name "rust-nix")
@@ -21915,29 +24776,42 @@ combinators library.")
       ;; This is an ancient version and all inputs are optional.
      `(#:skip-build? #t))))
 
-(define-public rust-noop-proc-macro-0.2
+(define-public rust-noop-proc-macro-0.3
   (package
     (name "rust-noop-proc-macro")
-    (version "0.2.1")
+    (version "0.3.0")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "noop_proc_macro" version))
-        (file-name
-          (string-append name "-" version ".tar.gz"))
-        (sha256
-          (base32
-            "0in1l0rjxzs4fylb6zad484z1c58jxyzchhc12k0cjrvm0y6zwsz"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "noop_proc_macro" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1j2v1c6ric4w9v12h34jghzmngcwmn0hll1ywly4h6lcm4rbnxh6"))))
     (build-system cargo-build-system)
     (arguments `(#:skip-build? #t))
-    (home-page
-      "https://github.com/lu-zero/noop_proc_macro")
-    (synopsis
-      "No-op proc_macro, literally does nothing")
+    (home-page "https://github.com/lu-zero/noop_proc_macro")
+    (synopsis "No-op procedural macro, literally does nothing")
     (description
-      "No-op proc_macro, literally does nothing")
+     "This package provides a no-op procedural macro, which literally does
+nothing.")
     (license license:expat)))
 
+(define-public rust-noop-proc-macro-0.2
+  (package
+    (inherit rust-noop-proc-macro-0.3)
+    (name "rust-noop-proc-macro")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "noop_proc_macro" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0in1l0rjxzs4fylb6zad484z1c58jxyzchhc12k0cjrvm0y6zwsz"))))
+    (arguments `(#:skip-build? #t))))
+
 (define-public rust-normalize-line-endings-0.3
   (package
     (name "rust-normalize-line-endings")
@@ -22183,29 +25057,29 @@ including bigint, complex, rational, range iterators, generic integers, and more
 (define-public rust-num-bigint-0.3
   (package
     (name "rust-num-bigint")
-    (version "0.3.0")
+    (version "0.3.1")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "num-bigint" version))
-        (file-name
-         (string-append name "-" version ".tar.gz"))
-        (sha256
-         (base32
-          "186glgapg71zicah3wjld3sr5kx6rkcf6rf43gxmjw39wdszrwxp"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "num-bigint" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1gq7cpvmzk5jixzr26fbjfayiigzh4p4vyyzbb73yqz4g9s436jy"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-num-integer" ,rust-num-integer-0.1)
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-arbitrary" ,rust-arbitrary-0.4)
+        ("rust-autocfg" ,rust-autocfg-1)
+        ("rust-num-integer" ,rust-num-integer-0.1)
         ("rust-num-traits" ,rust-num-traits-0.2)
         ("rust-quickcheck" ,rust-quickcheck-0.9)
         ("rust-rand" ,rust-rand-0.7)
-        ("rust-serde" ,rust-serde-1)
-        ("rust-autocfg" ,rust-autocfg-1))))
+        ("rust-serde" ,rust-serde-1))))
     (home-page "https://github.com/rust-num/num-bigint")
     (synopsis "Big integer implementation for Rust")
     (description
-     "Big integer implementation for Rust.")
+     "This package provides a big integer implementation for Rust.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-num-bigint-0.2
@@ -22549,7 +25423,7 @@ directly.")
 (define-public rust-num-integer-0.1
   (package
     (name "rust-num-integer")
-    (version "0.1.43")
+    (version "0.1.44")
     (source
      (origin
        (method url-fetch)
@@ -22558,15 +25432,15 @@ directly.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0nw79ynfvw8br6yncv27pw65y2vw2z7m3kv9g2hinm1dcrz4ancd"))))
+         "1nq152y3304as1iai95hqz8prqnc94lks1s7q05sfjdmcf56kk6j"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
-       (("rust-num-traits" ,rust-num-traits-0.2)
-        ("rust-autocfg" ,rust-autocfg-1))))
+       (("rust-autocfg" ,rust-autocfg-1)
+        ("rust-num-traits" ,rust-num-traits-0.2))))
     (home-page "https://github.com/rust-num/num-integer")
     (synopsis "Integer traits and functions")
-    (description "Integer traits and functions.")
+    (description "This package provides Integer traits and functions.")
     ;; Dual licensed.
     (license (list license:asl2.0
                    license:expat))))
@@ -22670,26 +25544,25 @@ directly.")
 (define-public rust-num-traits-0.2
   (package
     (name "rust-num-traits")
-    (version "0.2.12")
+    (version "0.2.14")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "num-traits" version))
-       (file-name
-        (string-append name "-" version ".crate"))
+       (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32
-         "04fnzwlnn6fcy09jjbi9l7bj5dvg657x5c2sjgwfb3pl0z67n9mc"))))
+        (base32 "144j176s2p76azy2ngk2vkdzgwdc0bc8c93jhki8c9fsbknb2r4s"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     `(#:skip-build? #t
+       #:cargo-inputs
        (("rust-autocfg" ,rust-autocfg-1)
         ("rust-libm" ,rust-libm-0.2))))
     (home-page "https://github.com/rust-num/num-traits")
     (synopsis "Numeric traits for generic mathematics")
-    (description "Numeric traits for generic mathematics.")
-    (license (list license:asl2.0
-                   license:expat))))
+    (description "This package provides numeric traits for generic
+mathematics.")
+    (license (list license:asl2.0 license:expat))))
 
 (define-public rust-num-traits-0.1
   (package
@@ -23265,6 +26138,27 @@ the system.")
     (description "OpenSSL bindings.")
     (license license:asl2.0)))
 
+(define-public rust-openssl-0.9
+  (package
+    (inherit rust-openssl-0.10)
+    (name "rust-openssl")
+    (version "0.9.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "openssl" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "11br5b8x1kc5klsn50ihiml82ajyzcwi3lljvrlsm8vlhhlmqq53"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-0.9)
+        ("rust-foreign-types" ,rust-foreign-types-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-openssl-sys" ,rust-openssl-sys-0.9))))))
+
 (define-public rust-openssl-0.7
   (package
     (inherit rust-openssl-0.10)
@@ -23750,6 +26644,31 @@ normally prevent moving a type that has been borrowed from.")
      "Automatically implement traits from the palette crate.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-pancurses-0.16
+  (package
+    (name "rust-pancurses")
+    (version "0.16.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pancurses" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1w0gknaz07fzq7gw7zjg1bg9xr7srp2z3zksmjr9cc23gk1qn1fk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-ncurses" ,rust-ncurses-5)
+        ("rust-pdcurses-sys" ,rust-pdcurses-sys-0.7)
+        ("rust-winreg" ,rust-winreg-0.5))))
+    (home-page "https://github.com/ihalila/pancurses")
+    (synopsis "@code{curses} library for Rust")
+    (description "@code{pancurses} is a @code{curses} library for Rust.")
+    (license license:expat)))
+
 (define-public rust-parity-tokio-ipc-0.4
   (package
     (name "rust-parity-tokio-ipc")
@@ -24208,8 +27127,28 @@ and would-block I/O operations.")
         ("rust-tokio-core" ,rust-tokio-core-0.1))))
     (license license:bsd-3)))
 
+(define-public rust-paste-1
+  (package
+    (name "rust-paste")
+    (version "1.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "paste" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1hfikh0bds8hqn371l2wf039mp6b5wrmwrwg96jcs6lkjm6mrmn5"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/dtolnay/paste")
+    (synopsis "Macros for all your token pasting needs")
+    (description
+     "This package provides macros for all your token pasting needs.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-paste-0.1
   (package
+    (inherit rust-paste-1)
     (name "rust-paste")
     (version "0.1.18")
     (source
@@ -24221,19 +27160,13 @@ and would-block I/O operations.")
        (sha256
         (base32
          "10587zrlmzhq66yhd0z36fzglf32m1nlhi9bxxm6dgl0gp3j1jj5"))))
-    (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))
        #:cargo-development-inputs
        (("rust-rustversion" ,rust-rustversion-1)
-        ("rust-trybuild" ,rust-trybuild-1))))
-    (home-page "https://github.com/dtolnay/paste")
-    (synopsis "Macros for all your token pasting needs")
-    (description
-     "Macros for all your token pasting needs.")
-    (license (list license:asl2.0 license:expat))))
+        ("rust-trybuild" ,rust-trybuild-1))))))
 
 (define-public rust-paste-impl-0.1
   (package
@@ -24453,6 +27386,76 @@ in pure Rust.")
     (description "Low level bindings to PCRE2.")
     (license (list license:expat license:unlicense))))
 
+(define-public rust-pdcurses-sys-0.7
+  (package
+    (name "rust-pdcurses-sys")
+    (version "0.7.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pdcurses-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0sqn552nz33bmd0d8lcx862lrbxg6fgk5djfblig2q7zjqkx4k88"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cc" ,rust-cc-1)
+        ("rust-libc" ,rust-libc-0.2))))
+    (home-page "https://github.com/ihalila/pdcurses-sys")
+    (synopsis "FFI bindings for PDCurses")
+    (description
+     "This package provides FFI bindings for PDCurses implementation.")
+    (license license:expat)))
+
+(define-public rust-pear-0.1
+  (package
+    (name "rust-pear")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pear" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "12mb00ick6y1slbxk6r4i8qxdbq8km3bs4pygjv94xwnvc9g482k"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-pear-codegen" ,rust-pear-codegen-0.1))))
+    (home-page "https://crates.io/crates/pear")
+    (synopsis "Pear is a fruit")
+    (description "This package provides a pear is a fruit.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-pear-codegen-0.1
+  (package
+    (name "rust-pear-codegen")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pear_codegen" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1jk8jxkgjd3pymldkckg2ligkpy4nnskgcj8qf3yzlf3zlvcihdz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-0.6)
+        ("rust-syn" ,rust-syn-0.15)
+        ("rust-version-check" ,rust-version-check-0.9)
+        ("rust-yansi" ,rust-yansi-0.5))))
+    (home-page "https://crates.io/crates/pear_codegen")
+    (synopsis "Codegen for pear")
+    (description
+     "This package provides a (codegen) pear is a fruit.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-peeking-take-while-0.1
   (package
     (name "rust-peeking-take-while")
@@ -24602,6 +27605,25 @@ runtime support for rust-peg grammars.  To use rust-peg, see the peg crate.")
          (base32
           "0cgq08v1fvr6bs5fvy390cz830lq4fak8havdasdacxcw790s09i"))))))
 
+(define-public rust-peresil-0.3
+  (package
+    (name "rust-peresil")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "peresil" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0mwyw03yqp0yqdjf4a89vn86szxaksmxvgzv1j2nw69fsmp8hn7n"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/shepmaster/peresil")
+    (synopsis "Simple and simplistic string parsing library")
+    (description
+     "This package provides a simple and simplistic string parsing library.")
+    (license license:expat)))
+
 (define-public rust-permutohedron-0.2
   (package
     (name "rust-permutohedron")
@@ -25183,14 +28205,14 @@ crate.")
 (define-public rust-pin-project-lite-0.2
   (package
     (name "rust-pin-project-lite")
-    (version "0.2.0")
+    (version "0.2.4")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "pin-project-lite" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "070klqy200alrhxb79fxarrrrn0vbwg95dmqw9062vhqxibky1kb"))))
+        (base32 "09x8chns8apal89pndqdrr0c2nv8jw6nmi8hl38acjbc6sprg5j3"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-development-inputs
@@ -25539,6 +28561,24 @@ applications.")
 for constructing a Message Authentication Code (MAC).")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-polyval-0.3
+  (package
+    (inherit rust-polyval-0.4)
+    (name "rust-polyval")
+    (version "0.3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "polyval" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256 (base32 "04m2wf4pk6gglvl12fj7ylc2iqhxmzqj46rds6zy73cpk0a39hvy"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-universal-hash" ,rust-universal-hash-0.3)
+        ("rust-zeroize" ,rust-zeroize-1))))))
+
 (define-public rust-pom-3
   (package
     (name "rust-pom")
@@ -25580,6 +28620,105 @@ overloading without macros in Rust.")
 UDP.")
     (license license:unlicense)))
 
+(define-public rust-postgres-0.15
+  (package
+    (name "rust-postgres")
+    (version "0.15.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "postgres" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1id6jb56jack7kxivpp3rnjjmkmymmxqadf0h0smgbsixy8dwp8i"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bytes" ,rust-bytes-0.4)
+        ("rust-fallible-iterator" ,rust-fallible-iterator-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-native-tls" ,rust-native-tls-0.1)
+        ("rust-openssl" ,rust-openssl-0.9)
+        ("rust-postgres-protocol" ,rust-postgres-protocol-0.3)
+        ("rust-postgres-shared" ,rust-postgres-shared-0.4)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-schannel" ,rust-schannel-0.1)
+        ("rust-security-framework" ,rust-security-framework-0.1)
+        ("rust-socket2" ,rust-socket2-0.3))))
+    (home-page "https://github.com/sfackler/rust-postgres")
+    (synopsis "Native, synchronous PostgreSQL client")
+    (description
+     "This package provides a native, synchronous PostgreSQL client.")
+    (license license:expat)))
+
+(define-public rust-postgres-protocol-0.3
+  (package
+    (name "rust-postgres-protocol")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "postgres-protocol" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "04kkznbhwspfn0hdja3jsv37l6g5gz7a625z8yra325zamjfd1r4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.6)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-bytes" ,rust-bytes-0.4)
+        ("rust-fallible-iterator" ,rust-fallible-iterator-0.1)
+        ("rust-generic-array" ,rust-generic-array-0.9)
+        ("rust-hmac" ,rust-hmac-0.5)
+        ("rust-md5" ,rust-md5-0.3)
+        ("rust-memchr" ,rust-memchr-1)
+        ("rust-rand" ,rust-rand-0.3)
+        ("rust-sha2" ,rust-sha2-0.7)
+        ("rust-stringprep" ,rust-stringprep-0.1))))
+    (home-page "https://github.com/sfackler/rust-postgres")
+    (synopsis "Low level Postgres protocol APIs")
+    (description
+     "This package provides low level Postgres protocol APIs.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-postgres-shared-0.4
+  (package
+    (name "rust-postgres-shared")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "postgres-shared" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0vzk1njkqkd2xxz34jnax29z4179ni4j3f534i6416q2w2rkbb7z"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bit-vec" ,rust-bit-vec-0.4)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-eui48" ,rust-eui48-0.3)
+        ("rust-fallible-iterator" ,rust-fallible-iterator-0.1)
+        ("rust-geo" ,rust-geo-0.4)
+        ("rust-hex" ,rust-hex-0.2)
+        ("rust-phf" ,rust-phf-0.7)
+        ("rust-postgres-protocol" ,rust-postgres-protocol-0.3)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-uuid" ,rust-uuid-0.5))))
+    (home-page "https://github.com/sfackler/rust-postgres")
+    (synopsis
+     "Internal crate used by @code{postgres} and @code{postgres-tokio}")
+    (description
+     "This is an internal crate used by @code{postgres} and
+@code{postgres-tokio}.")
+    (license license:expat)))
+
 (define-public rust-ppv-lite86-0.2
   (package
     (name "rust-ppv-lite86")
@@ -25652,14 +28791,14 @@ dependency to expose a precomputed hash.")
 (define-public rust-predicates-1
   (package
     (name "rust-predicates")
-    (version "1.0.5")
+    (version "1.0.7")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "predicates" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0nkkn3h3b9vigyy4adlnhi2zrxm5j0nbnqid6snwxp4h5v8ymgwn"))))
+        (base32 "1ai5qdqym11x1x55via1gq2w86ac1gj3rsjdan9wqmqsdi2k7d7f"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -25782,6 +28921,30 @@ functions.")
        (("rust-predicates-core" ,rust-predicates-core-0.9)
         ("rust-treeline" ,rust-treeline-0.1))))))
 
+(define-public rust-pretty-0.5
+  (package
+    (name "rust-pretty")
+    (version "0.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pretty" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1lzn7d60l79vsdwcfgrh6jmk193nzwh1j36r8p9cv3n8dyghs37n"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-termcolor" ,rust-termcolor-0.3)
+        ("rust-typed-arena" ,rust-typed-arena-1))))
+    (home-page "https://github.com/Marwes/pretty.rs")
+    (synopsis "Pretty printing combinators for Rust")
+    (description
+     "This crate provides functionality for defining pretty printers.  It is
+particularly useful for printing structured recursive data like trees.")
+    (license license:expat)))
+
 (define-public rust-pretty-assertions-0.6
   (package
     (name "rust-pretty-assertions")
@@ -25896,6 +29059,24 @@ replacements, adding colorful diffs.")
         ("rust-chrono" ,rust-chrono-0.4)
         ("rust-env-logger" ,rust-env-logger-0.6))))))
 
+(define-public rust-pretty-hex-0.2
+  (package
+    (name "rust-pretty-hex")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pretty-hex" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0c91f9sdwmn3mz2d414dp1xk4iw0k1nsif7lyqvhklzh57arjp5w"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/wolandr/pretty-hex")
+    (synopsis "Pretty hex dump of bytes slice in the common style")
+    (description "This is a Rust library providing pretty hex dump.")
+    (license license:expat)))
+
 (define-public rust-prettytable-rs-0.8
   (package
     (name "rust-prettytable-rs")
@@ -26747,6 +29928,29 @@ compliant email address validation.")
     (description "This package provides a quasi-quoting macro system.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-query-interface-0.3
+  (package
+    (name "rust-query-interface")
+    (version "0.3.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "query_interface" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "14rn7i6jr8zf3h103jhmivw39429gmkzk4wgns3bpvl4c82g1h3q"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1))))
+    (home-page "https://github.com/Diggsey/query_interface")
+    (synopsis "Dynamically query a type-erased object for any trait implementation")
+    (description
+     "This package dynamically queries a type-erased object for any trait
+implementation.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-quick-error-1
   (package
     (name "rust-quick-error")
@@ -26767,8 +29971,117 @@ to write.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-quick-xml-0.21
+  (package
+    (name "rust-quick-xml")
+    (version "0.21.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quick-xml" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0xgcmf5qlpjsl239igbkf4j6mlmsm5xp14a3rv45h2j185cnjlh4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/tafia/quick-xml")
+    (synopsis "High performance XML reader and writer")
+    (description
+     "This package provides a high performance XML reader and writer.")
+    (license license:expat)))
+
+(define-public rust-quick-xml-0.20
+  (package
+    (inherit rust-quick-xml-0.21)
+    (name "rust-quick-xml")
+    (version "0.20.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quick-xml" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1pd6fiq79sxsf75027a65f45fqm0kds0in0y9nkf9415issbdai6"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-serde" ,rust-serde-1))))))
+
+(define-public rust-quick-xml-0.19
+  (package
+    (inherit rust-quick-xml-0.20)
+    (name "rust-quick-xml")
+    (version "0.19.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quick-xml" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "16qzavgdfdhw325hpyfwmb6wc7msvy01flmn02yqb3s7fxa2vmxk"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-serde" ,rust-serde-1))))))
+
+(define-public rust-quick-xml-0.12
+  (package
+    (inherit rust-quick-xml-0.20)
+    (name "rust-quick-xml")
+    (version "0.12.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quick-xml" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zvpwph44c5vgqapmdh50ylcdl9rpxffikcmq4fc208pn35nb00x"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-memchr" ,rust-memchr-2))))))
+
+(define-public rust-quickcheck-1
+  (package
+    (name "rust-quickcheck")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quickcheck" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1mjhkfqwrb8mdyxdqr4zzbj1rm5dfx25n9zcc25lb6fxwiw673sq"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-env-logger" ,rust-env-logger-0.8)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rand" ,rust-rand-0.8))))
+    (home-page "https://github.com/BurntSushi/quickcheck")
+    (synopsis "Automatic property based testing with shrinking")
+    (description
+     "QuickCheck is a way to do property based testing using randomly generated
+input.  This crate comes with the ability to randomly generate and shrink
+integers, floats, tuples, booleans, lists, strings, options and results.")
+    (license (list license:unlicense license:expat))))
+
 (define-public rust-quickcheck-0.9
   (package
+    (inherit rust-quickcheck-1)
     (name "rust-quickcheck")
     (version "0.9.2")
     (source
@@ -26780,20 +30093,12 @@ to write.")
        (sha256
         (base32
          "0pwl7j21wmf843kpa9gr0byb40hg975ghjrwp0yxcym99bkq6j54"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-env-logger" ,rust-env-logger-0.7)
         ("rust-log" ,rust-log-0.4)
         ("rust-rand" ,rust-rand-0.7)
-        ("rust-rand-core" ,rust-rand-core-0.5))))
-    (home-page "https://github.com/BurntSushi/quickcheck")
-    (synopsis "Automatic property based testing with shrinking")
-    (description
-     "QuickCheck is a way to do property based testing using randomly generated
-input.  This crate comes with the ability to randomly generate and shrink
-integers, floats, tuples, booleans, lists, strings, options and results.")
-    (license (list license:unlicense license:expat))))
+        ("rust-rand-core" ,rust-rand-core-0.5))))))
 
 (define-public rust-quickcheck-0.8
   (package
@@ -26910,8 +30215,33 @@ integers, floats, tuples, booleans, lists, strings, options and results.")
         (base32
          "1vb4acppaavlnchzc1jmn5wlkgir9x9gmhgp97bavyxxqxgsg1nh"))))))
 
+(define-public rust-quickcheck-macros-1
+  (package
+    (name "rust-quickcheck-macros")
+    (version "1.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quickcheck-macros" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1s8nh0fmmzq3fd7928qcp2syvymlyv1pmww6fxcaj5np48r6jamj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/BurntSushi/quickcheck")
+    (synopsis "Macro attribute for quickcheck")
+    (description
+     "This package provides a macro attribute for quickcheck.")
+    (license (list license:unlicense license:expat))))
+
 (define-public rust-quickcheck-macros-0.9
   (package
+    (inherit rust-quickcheck-macros-1)
     (name "rust-quickcheck-macros")
     (version "0.9.1")
     (source
@@ -26923,19 +30253,13 @@ integers, floats, tuples, booleans, lists, strings, options and results.")
        (sha256
         (base32
          "0zsb9b4jpg7qvbiym4v8y9pgqk7p1g4f5hn9gp0fnzz9v1pib330"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-proc-macro2" ,rust-proc-macro2-1)
         ("rust-quote" ,rust-quote-1)
         ("rust-syn" ,rust-syn-1))
        #:cargo-development-inputs
-       (("rust-quickcheck" ,rust-quickcheck-0.9))))
-    (home-page "https://github.com/BurntSushi/quickcheck")
-    (synopsis "Macro attribute for quickcheck")
-    (description
-     "This package provides a macro attribute for quickcheck.")
-    (license (list license:unlicense license:expat))))
+       (("rust-quickcheck" ,rust-quickcheck-0.9))))))
 
 (define-public rust-quickcheck-macros-0.8
   (package
@@ -27155,14 +30479,14 @@ radix.")
 (define-public rust-rand-0.8
   (package
     (name "rust-rand")
-    (version "0.8.2")
+    (version "0.8.3")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "rand" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "07lb17qj02bi17mhqxlmsiyf4g8cmplm6hbiw5hxc900li19nl8q"))))
+        (base32 "0zldxfx4gi551n2fna4zz9ab22zsnzw1mj5hzi5nfs24dgkfgy8f"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -28060,6 +31384,31 @@ Rust.")
        ("rust-rand" ,rust-rand-0.3)
        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3))))))
 
+(define-public rust-rawkey-0.1
+  (package
+    (name "rust-rawkey")
+    (version "0.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rawkey" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1bgbb0pd8wbhbwib2d39x2r1m8kasw8x3w13bdb4s17g6nnfzmks"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-readkey" ,rust-readkey-0.1)
+        ("rust-user32-sys" ,rust-user32-sys-0.2)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("rust-x11" ,rust-x11-2))))
+    (home-page "https://github.com/jonathandturner/rawkey")
+    (synopsis "Raw terminal key input")
+    (description
+     "This packages provides support for raw key input in terminals.")
+    (license license:expat)))
+
 (define-public rust-rayon-core-1
   (package
     (name "rust-rayon-core")
@@ -28159,6 +31508,26 @@ reference counting.")
       "This package provides a simple library for reading hex colors")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-readkey-0.1
+  (package
+    (name "rust-readkey")
+    (version "0.1.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "readkey" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0iiip8bq4yhal5rv6wlws0xgz798blki7s5ly5cmlwm1ssv03m46"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/segeljakt/readkey")
+    (synopsis "Library for finding out if a key is currently pressed on macOS")
+    (description
+     "This package provides a very small library for finding out if a key is
+currently pressed on macOS.")
+    (license license:expat)))
+
 (define-public rust-recycler-0.1
   (package
     (name "rust-recycler")
@@ -28180,10 +31549,34 @@ reference counting.")
 owned memory.")
     (license license:expat)))
 
+
+(define-public rust-redox-syscall-0.2
+  (package
+    (name "rust-redox-syscall")
+    (version "0.2.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "redox_syscall" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1n878lpw577avdr5dzbkil02xwbx0a57mr2r3dcnnkz28i71wd4l"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1))))
+    (home-page "https://gitlab.redox-os.org/redox-os/syscall")
+    (synopsis "Rust library to access raw Redox system calls")
+    (description
+     "This package provides a Rust library to access raw Redox system calls.")
+    (license license:expat)))
+
 ;; This package requires features which are unavailable
 ;; on the stable releases of Rust.
 (define-public rust-redox-syscall-0.1
   (package
+    (inherit rust-redox-syscall-0.2)
     (name "rust-redox-syscall")
     (version "0.1.57")
     (source
@@ -28194,13 +31587,7 @@ owned memory.")
         (sha256
          (base32
           "1kh59fpwy33w9nwd5iyc283yglq8pf2s41hnhvl48iax9mz0zk21"))))
-    (build-system cargo-build-system)
-    (arguments '(#:skip-build? #t))
-    (home-page "https://gitlab.redox-os.org/redox-os/syscall")
-    (synopsis "Rust library to access raw Redox system calls")
-    (description "This package provides a Rust library to access raw Redox
-system calls.")
-    (license license:expat)))
+    (arguments '(#:skip-build? #t))))
 
 (define-public rust-redox-termios-0.1
   (package
@@ -28561,6 +31948,28 @@ uses finite automata and guarantees linear time matching on all inputs.")
     (description "This package provides portable, relative paths for Rust.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-relay-0.1
+  (package
+    (name "rust-relay")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "relay" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "16j8y57rjrfy3h5xfi9fwfbjs1nka3iifi52rvp9szldd21f6xhm"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1))))
+    (home-page "")
+    (synopsis "Lightweight oneshot Future channel")
+    (description
+     "This package provides a lightweight oneshot Future channel.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-remove-dir-all-0.5
   (package
     (name "rust-remove-dir-all")
@@ -28774,6 +32183,27 @@ uses finite automata and guarantees linear time matching on all inputs.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-result-1
+  (package
+    (name "rust-result")
+    (version "1.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "result" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0q2mslk9mvpdrl5zr1yvlb8ikmynpq5786c8ybn1wpa03rcqwk8r"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/arcnmx/result-rs")
+    (synopsis
+     "Helpers for dealing with nested @code{Result} and @code{Option} types")
+    (description
+     "This package provides helpers for dealing with nested @code{Result} and
+@code{Option} types.")
+    (license license:expat)))
+
 (define-public rust-retain-mut-0.1
   (package
     (name "rust-retain-mut")
@@ -29008,6 +32438,138 @@ MessagePack format.")
     (description "This crate provides Serde bindings for RMP.")
     (license license:expat)))
 
+(define-public rust-rocket-0.4
+  (package
+    (name "rust-rocket")
+    (version "0.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rocket" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1sb6i0y65hq4wy4awa14diyv19wcd1sii2mfjdlcwam3mbbfbisg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-atty" ,rust-atty-0.2)
+        ("rust-base64" ,rust-base64-0.12)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-pear" ,rust-pear-0.1)
+        ("rust-rocket-codegen" ,rust-rocket-codegen-0.4)
+        ("rust-rocket-http" ,rust-rocket-http-0.4)
+        ("rust-state" ,rust-state-0.4)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-toml" ,rust-toml-0.4)
+        ("rust-version-check" ,rust-version-check-0.9)
+        ("rust-yansi" ,rust-yansi-0.5)
+        ("rust-yansi" ,rust-yansi-0.5))))
+    (home-page "https://rocket.rs")
+    (synopsis
+     "Web framework with focus on ease-of-use, expressibility, and speed")
+    (description
+     "Rocket is a web framework with a focus on ease-of-use, expressibility,
+and speed.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-rocket-codegen-0.4
+  (package
+    (name "rust-rocket-codegen")
+    (version "0.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rocket_codegen" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0n4k00fwwabvkjvnl62gwdc5v7rsg6bnmmwwiwm5bzpmdnqm94ai"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-devise" ,rust-devise-0.2)
+        ("rust-glob" ,rust-glob-0.3)
+        ("rust-indexmap" ,rust-indexmap-1)
+        ("rust-quote" ,rust-quote-0.6)
+        ("rust-rocket-http" ,rust-rocket-http-0.4)
+        ("rust-version-check" ,rust-version-check-0.9)
+        ("rust-yansi" ,rust-yansi-0.5))))
+    (home-page "https://rocket.rs")
+    (synopsis "Procedural macros for the Rocket web framework")
+    (description
+     "This package provides procedural macros for the Rocket web framework.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-rocket-http-0.4
+  (package
+    (name "rust-rocket-http")
+    (version "0.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rocket_http" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0msjjclqcgh8kpa54b4kv6zbybambc9kmkfm1q5adiq3fbg8gl59"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cookie" ,rust-cookie-0.11)
+        ("rust-hyper" ,rust-hyper-0.10)
+        ("rust-hyper-sync-rustls" ,rust-hyper-sync-rustls-0.3)
+        ("rust-indexmap" ,rust-indexmap-1)
+        ("rust-pear" ,rust-pear-0.1)
+        ("rust-percent-encoding" ,rust-percent-encoding-1)
+        ("rust-rustls" ,rust-rustls-0.14)
+        ("rust-smallvec" ,rust-smallvec-1)
+        ("rust-state" ,rust-state-0.4)
+        ("rust-time" ,rust-time-0.1)
+        ("rust-unicode-xid" ,rust-unicode-xid-0.1))))
+    (home-page "https://rocket.rs")
+    (synopsis "HTTP requests, responses and headers tooling for Rocket")
+    (description
+     "This package provides types, traits, and parsers for HTTP requests,
+responses, and headers for the Rocket web framework.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-romio-0.3
+  (package
+    (name "rust-romio")
+    (version "0.3.0-alpha.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "romio" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0arxxgdp7j2y1nxd0a94qmkspyv92hyaz8lbirvf77f6qm0298vb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-datagram" ,rust-async-datagram-3)
+        ("rust-async-ready" ,rust-async-ready-3)
+        ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
+        ("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mio" ,rust-mio-0.6)
+        ("rust-mio-uds" ,rust-mio-uds-0.6)
+        ("rust-num-cpus" ,rust-num-cpus-1)
+        ("rust-parking-lot" ,rust-parking-lot-0.9)
+        ("rust-slab" ,rust-slab-0.4))))
+    (home-page "https://github.com/withoutboats/romio")
+    (synopsis "Asynchronous networking primitives")
+    (description
+     "This package provides event loop and I/O resources for asynchronous
+network services using futures.")
+    (license license:expat)))
+
 (define-public rust-ron-0.5
   (package
     (name "rust-ron")
@@ -29203,20 +32765,150 @@ console applications.")
         (base32
          "1v255xqkig5lwnczvm3achydhxx6kf9jcdxdlgzndgpd18bp6x6k"))))))
 
+(define-public rust-runtime-0.3
+  (package
+    (name "rust-runtime")
+    (version "0.3.0-alpha.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "runtime" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "04aj2jslnndwhhbvp9ysdgh98vfy6lk6f0rzqsan5wlfpd70nzc3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-pin-project" ,rust-pin-project-0.4)
+        ("rust-runtime-attributes" ,rust-runtime-attributes-0.3)
+        ("rust-runtime-native" ,rust-runtime-native-0.3)
+        ("rust-runtime-raw" ,rust-runtime-raw-0.3))))
+    (home-page "https://github.com/rustasync/runtime")
+    (synopsis "Empowering everyone to build asynchronous software")
+    (description
+     "Runtime is an asynchronous library.
+
+This package is deprecated.  If you're looking for an asynchronous runtime
+please consider using @code{async-std} or @code{tokio}.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-runtime-attributes-0.3
+  (package
+    (name "rust-runtime-attributes")
+    (version "0.3.0-alpha.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "runtime-attributes" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08n9sqpiwbjm7scyqz0xp57nggzb15rb0sydidw50lx0j0k9xn2n"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/rustasync/runtime")
+    (synopsis "Proc Macro attributes for the Runtime crate")
+    (description
+     "This package Proc macro attributes for the Runtime crate.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-runtime-native-0.3
+  (package
+    (name "rust-runtime-native")
+    (version "0.3.0-alpha.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "runtime-native" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1h6cp6c3wr3rmix01mfxm5vy5d6xai60qap711ylv5dzr53a8rv8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-datagram" ,rust-async-datagram-3)
+        ("rust-futures" ,rust-futures-0.1)
+        ("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-futures-timer" ,rust-futures-timer-0.3)
+        ("rust-juliex" ,rust-juliex-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-romio" ,rust-romio-0.3)
+        ("rust-runtime-raw" ,rust-runtime-raw-0.3)
+        ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
+        ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.3))))
+    (home-page "https://github.com/rustasync/runtime")
+    (synopsis "Cross-platform asynchronous runtime")
+    (description
+     "This package provides a cross-platform asynchronous runtime.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-runtime-raw-0.3
+  (package
+    (name "rust-runtime-raw")
+    (version "0.3.0-alpha.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "runtime-raw" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0k02nd0cg27s5ixflzsxqhil5rfzw4z3v0yvqbxzlhps90rq19y1"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures-preview" ,rust-futures-preview-0.3))))
+    (home-page "https://github.com/rustasync/runtime")
+    (synopsis "Traits to implement custom Runtimes.")
+    (description "This package provides traits to implement custom Runtimes.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-runtime-tokio-0.3
+  (package
+    (name "rust-runtime-tokio")
+    (version "0.3.0-alpha.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "runtime-tokio" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1mf5fyh164i4m5rj1j45hs7dwv1k4m1xckq0apa6y4c99gwzhq3a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-mio" ,rust-mio-0.6)
+        ("rust-runtime-raw" ,rust-runtime-raw-0.3)
+        ("rust-tokio" ,rust-tokio-0.1))))
+    (home-page "https://github.com/rustasync/runtime")
+    (synopsis "Tokio-based asynchronous runtime")
+    (description
+     "This package provides a Tokio-based asynchronous runtime.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-rusqlite-0.24
   (package
     (name "rust-rusqlite")
-    (version "0.24.1")
+    (version "0.24.2")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "rusqlite" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0s5svm32zl1qqmln8ww8g6ziwg5mi2k88si1a5zj25smmf8lfgby"))))
+        (base32 "04jiqa9y7pk7byk0kicjxqy75jifz1v4xhhaxhkwicms3kkqxwym"))))
     (build-system cargo-build-system)
-    (inputs
-     `(("sqlite" ,sqlite)))
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
@@ -29225,25 +32917,16 @@ console applications.")
         ("rust-chrono" ,rust-chrono-0.4)
         ("rust-csv" ,rust-csv-1)
         ("rust-fallible-iterator" ,rust-fallible-iterator-0.2)
-        ("rust-fallible-streaming-iterator"
-         ,rust-fallible-streaming-iterator-0.1)
+        ("rust-fallible-streaming-iterator" ,rust-fallible-streaming-iterator-0.1)
         ("rust-hashlink" ,rust-hashlink-0.6)
         ("rust-lazy-static" ,rust-lazy-static-1)
         ("rust-libsqlite3-sys" ,rust-libsqlite3-sys-0.20)
-        ;;("rust-lru-cache" ,rust-lru-cache-0.1)
         ("rust-memchr" ,rust-memchr-2)
         ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-smallvec" ,rust-smallvec-1)
         ("rust-time" ,rust-time-0.2)
         ("rust-url" ,rust-url-2)
-        ("rust-uuid" ,rust-uuid-0.7))
-       #:cargo-development-inputs
-       (("rust-bencher" ,rust-bencher-0.1)
-        ("rust-doc-comment" ,rust-doc-comment-0.3)
-        ("rust-lazy-static" ,rust-lazy-static-1)
-        ("rust-regex" ,rust-regex-1)
-        ("rust-tempfile" ,rust-tempfile-3)
-        ("rust-unicase" ,rust-unicase-2)
-        ("rust-uuid" ,rust-uuid-0.7))))
+        ("rust-uuid" ,rust-uuid-0.8))))
     (home-page "https://github.com/rusqlite/rusqlite")
     (synopsis "Wrapper for SQLite")
     (description "This prackage provides a wrapper for SQLite.")
@@ -29398,6 +33081,137 @@ password hashing function.")
  Currently the conversion uses the Bitcoin base58 alphabet.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-rust-decimal-0.10
+  (package
+    (name "rust-rust-decimal")
+    (version "0.10.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust_decimal" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1h80xz88f07ifb4i0mfh9j9p67afiy4xm6xswkk9gnf1spirag59"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-num" ,rust-num-0.2)
+        ("rust-postgres" ,rust-postgres-0.15)
+        ("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/paupino/rust-decimal")
+    (synopsis "Decimal implementation suitable for financial calculations")
+    (description
+     "This package provides a decimal implementation written in pure Rust
+suitable for financial calculations.")
+    (license license:expat)))
+
+(define-public rust-rust-embed-5
+  (package
+    (name "rust-rust-embed")
+    (version "5.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-embed" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08smnqn21vn5zaywfki391v2l9v30cs0446qzzhvjssxmimgxq9g"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-actix-web" ,rust-actix-web-3)
+        ("rust-include-flate" ,rust-include-flate-0.1)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-rocket" ,rust-rocket-0.4)
+        ("rust-rust-embed-impl" ,rust-rust-embed-impl-5)
+        ("rust-rust-embed-utils" ,rust-rust-embed-utils-5)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-walkdir" ,rust-walkdir-2)
+        ("rust-warp" ,rust-warp-0.2))))
+    (home-page "https://github.com/pyros2097/rust-embed")
+    (synopsis "Rust custom @code{Derive} macro")
+    (description
+     "This package provides a custom @code{Derive} macro which loads files
+into the Rust binary at compile time during release and loads the file from
+the file-system during development.")
+    (license license:expat)))
+
+(define-public rust-rust-embed-impl-5
+  (package
+    (name "rust-rust-embed-impl")
+    (version "5.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-embed-impl" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0rlykmykrpllkf4900wv2jfdmq3m5qqrqhw4fdlbzxrfqi0irn9y"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-rust-embed-utils" ,rust-rust-embed-utils-5)
+        ("rust-shellexpand" ,rust-shellexpand-2)
+        ("rust-syn" ,rust-syn-1)
+        ("rust-walkdir" ,rust-walkdir-2))))
+    (home-page "https://github.com/pyros2097/rust-embed")
+    (synopsis "Rust custom @code{Derive} macro")
+    (description
+     "This package provides a custom @code{Derive} macro which loads files
+into the Rust binary at compile time during release and loads the file from
+the file-system during development.")
+    (license license:expat)))
+
+(define-public rust-rust-embed-utils-5
+  (package
+    (name "rust-rust-embed-utils")
+    (version "5.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-embed-utils" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0vc7492a6qlq7r899p7vyx5cwiqwkw2pf85mfw5anwr42ccj4l9a"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-walkdir" ,rust-walkdir-2))))
+    (home-page "https://github.com/pyros2097/rust-embed")
+    (synopsis "Utilities for @code{rust-embed}")
+    (description "This package provides utilities for @code{rust-embed}.")
+    (license license:expat)))
+
+(define-public rust-eml-parser-0.1
+  (package
+    (name "rust-eml-parser")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "eml-parser" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0f82z4ryz4wchr0n99gj20s093ygx8ps0dqq6pr01ljcw8a0vqyr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-regex" ,rust-regex-1))))
+    (home-page "https://github.com/aeshirey/EmlParser/")
+    (synopsis "Library for parsing @file{.eml} files")
+    (description
+     "This package provides a library for parsing @file{.eml} files.")
+    (license license:asl2.0)))
+
 (define-public rust-rust-hawktracer-0.7
   (package
     (name "rust-rust-hawktracer")
@@ -29504,6 +33318,51 @@ password hashing function.")
      "This package provides a sys crate for the rust_hawktracer library.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-rust-ini-0.13
+  (package
+    (name "rust-rust-ini")
+    (version "0.13.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rust-ini" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1hifnbgaz01zja5995chy6vjacbif2m76nlxsisw7y1pxx4c2liy"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/zonyitoo/rust-ini")
+    (synopsis "INI configuration file parsing library in Rust")
+    (description
+     "This package is an INI configuration file parsing library in Rust.")
+    (license license:expat)))
+
+(define-public rust-rustbox-0.11
+  (package
+    (name "rust-rustbox")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustbox" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1cahyxncijdwvy9kw87ahizpfbdq76hf333y4nrhbxzssajhdzcf"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-0.2)
+        ("rust-gag" ,rust-gag-0.1)
+        ("rust-num-traits" ,rust-num-traits-0.1)
+        ("rust-termbox-sys" ,rust-termbox-sys-0.2))))
+    (home-page "https://github.com/gchp/rustbox")
+    (synopsis "Rust implementation of the @code{termbox} library")
+    (description
+     "This package provides a Rust implementation of the @code{termbox}
+library.")
+    (license license:expat)))
+
 (define-public rust-rustc-ap-arena-654
   (package
     (name "rust-rustc-ap-arena")
@@ -30082,8 +33941,32 @@ require unstable language features.")
      "small helper to generate version information for git packages")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-rustc-version-0.3
+  (package
+    (name "rust-rustc-version")
+    (version "0.3.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustc_version" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1vjmw7xcdri0spsf24mkpwpph853wrbqppihhw061i2igh4f5pzh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-semver" ,rust-semver-0.11))))
+    (home-page "https://github.com/Kimundi/rustc-version-rs")
+    (synopsis "Library for querying the version of an installed rustc compiler")
+    (description
+     "This package provides a library for querying the version of an installed
+rustc compiler.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-rustc-version-0.2
   (package
+    (inherit rust-rustc-version-0.3)
     (name "rust-rustc-version")
     (version "0.2.3")
     (source
@@ -30095,17 +33978,9 @@ require unstable language features.")
        (sha256
         (base32
          "02h3x57lcr8l2pm0a645s9whdh33pn5cnrwvn5cb57vcrc53x3hk"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
-       #: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 (list license:expat license:asl2.0))))
+       #:cargo-inputs (("rust-semver" ,rust-semver-0.9))))))
 
 (define-public rust-rustdoc-stripper-0.1
   (package
@@ -30163,8 +34038,37 @@ rustc compiler.")
      "Automatically apply the suggestions made by rustc.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-rustls-0.19
+  (package
+    (name "rust-rustls")
+    (version "0.19.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "02wqas2pcxk75s9l9c9f1r5am7258bmqprh68pnqfvkwz0gx4kq6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.13)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-ring" ,rust-ring-0.16)
+        ("rust-sct" ,rust-sct-0.6)
+        ("rust-webpki" ,rust-webpki-0.21))))
+    (home-page "https://github.com/ctz/rustls")
+    (synopsis "Modern TLS library written in Rust")
+    (description
+     "This package provides a modern TLS library written in Rust.")
+    (license
+     (list license:asl2.0 license:isc license:expat))))
+
 (define-public rust-rustls-0.18
   (package
+    (inherit rust-rustls-0.19)
     (name "rust-rustls")
     (version "0.18.1")
     (source
@@ -30176,7 +34080,6 @@ rustc compiler.")
        (sha256
         (base32
          "108cf3bfw5high066shz9xrfv4jz7djdmnwqs3kwx4wfypf2c4ax"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-base64" ,rust-base64-0.12)
@@ -30188,13 +34091,7 @@ rustc compiler.")
        (("rust-criterion" ,rust-criterion-0.3)
         ("rust-env-logger" ,rust-env-logger-0.7)
         ("rust-log" ,rust-log-0.4)
-        ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
-    (home-page "https://github.com/ctz/rustls")
-    (synopsis "Modern TLS library written in Rust.")
-    (description "This package provides a modern TLS library written in
-Rust.")
-    (license
-     (list license:asl2.0 license:isc license:expat))))
+        ("rust-webpki-roots" ,rust-webpki-roots-0.20))))))
 
 (define-public rust-rustls-0.17
   (package
@@ -30280,6 +34177,28 @@ Rust.")
         ("rust-tempfile" ,rust-tempfile-3)
         ("rust-webpki-roots" ,rust-webpki-roots-0.16))))))
 
+(define-public rust-rustls-0.14
+  (package
+    (inherit rust-rustls-0.18)
+    (name "rust-rustls")
+    (version "0.14.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1nal4qca7f7mhwnvx3m824ymdj6qmzfcl64sxmrmpis32dwr2y4b"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.9)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-ring" ,rust-ring-0.13)
+        ("rust-sct" ,rust-sct-0.4)
+        ("rust-untrusted" ,rust-untrusted-0.6)
+        ("rust-webpki" ,rust-webpki-0.18))))))
+
 (define-public rust-rustls-0.12
   (package/inherit rust-rustls-0.16
     (name "rust-rustls")
@@ -30526,8 +34445,44 @@ sub-processes using a fork-like interface.")
         ("rust-tempfile" ,rust-tempfile-3)
         ("rust-wait-timeout" ,rust-wait-timeout-0.2))))))
 
+(define-public rust-rustyline-7
+  (package
+    (name "rust-rustyline")
+    (version "7.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustyline" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1v1czmy3ir7d06xldp8bg94l97hrm15hcgdxxkq3cwbizhdk09w2"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-dirs-next" ,rust-dirs-next-2)
+        ("rust-fs2" ,rust-fs2-0.4)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-nix" ,rust-nix-0.19)
+        ("rust-scopeguard" ,rust-scopeguard-1)
+        ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
+        ("rust-unicode-width" ,rust-unicode-width-0.1)
+        ("rust-utf8parse" ,rust-utf8parse-0.2)
+        ("rust-winapi" ,rust-winapi-0.3)
+        ("skim" ,skim-0.7))))
+    (home-page "https://github.com/kkawakam/rustyline")
+    (synopsis "Readline implementation in Rust")
+    (description
+     "Rustyline, a readline implementation based on the linenoise package.")
+    (license license:expat)))
+
 (define-public rust-rustyline-6
   (package
+    (inherit rust-rustyline-7)
     (name "rust-rustyline")
     (version "6.3.0")
     (source
@@ -30539,7 +34494,6 @@ sub-processes using a fork-like interface.")
         (sha256
          (base32
           "04w4k0nwsra84h90rvwkr6vmjp3nshjqaj9rakfym8qr09xmw3bg"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-cfg-if" ,rust-cfg-if-0.1)
@@ -30559,12 +34513,7 @@ sub-processes using a fork-like interface.")
         ("rust-doc-comment" ,rust-doc-comment-0.3)
         ("rust-env-logger" ,rust-env-logger-0.7)
         ("rust-rustyline-derive" ,rust-rustyline-derive-0.3)
-        ("rust-tempfile" ,rust-tempfile-3))))
-    (home-page "https://github.com/kkawakam/rustyline")
-    (synopsis "Readline implementation in Rust")
-    (description
-     "Rustyline, a readline implementation based on the linenoise package.")
-    (license license:expat)))
+        ("rust-tempfile" ,rust-tempfile-3))))))
 
 (define-public rust-rustyline-derive-0.3
   (package
@@ -30616,6 +34565,92 @@ sub-processes using a fork-like interface.")
 quickly convert floating point numbers to decimal strings.")
     (license (list license:asl2.0 license:boost1.0))))
 
+(define-public rust-s3handler-0.6
+  (package
+    (name "rust-s3handler")
+    (version "0.6.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "s3handler" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zridmnz9l3mr0crma95a3jqi961g034agx43a5yh4pgvv2q6mzq"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-trait" ,rust-async-trait-0.1)
+        ("rust-base64" ,rust-base64-0.6)
+        ("rust-bytes" ,rust-bytes-0.5)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-colored" ,rust-colored-1)
+        ("rust-dyn-clone" ,rust-dyn-clone-1)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-failure-derive" ,rust-failure-derive-0.1)
+        ("rust-futures" ,rust-futures-0.3)
+        ("rust-hmac" ,rust-hmac-0.4)
+        ("rust-hmac-sha1" ,rust-hmac-sha1-0.1)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-hyper" ,rust-hyper-0.11)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-md5" ,rust-md5-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-quick-xml" ,rust-quick-xml-0.12)
+        ("rust-regex" ,rust-regex-0.2)
+        ("rust-reqwest" ,rust-reqwest-0.10)
+        ("rust-rust-crypto" ,rust-rust-crypto-0.2)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-sha2" ,rust-sha2-0.6)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-url" ,rust-url-2))))
+    (home-page "https://crates.io/crates/s3handler")
+    (synopsis "Library for S3 Rich Support client (S3RS)")
+    (description "This package is a s3 handler for S3 Rich Support
+client (S3RS).")
+    (license license:expat)))
+
+(define-public rust-s3handler-0.5
+  (package
+    (inherit rust-s3handler-0.6)
+    (name "rust-s3handler")
+    (version "0.5.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "s3handler" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "18nc7ya6rn9g0gz8j24rpal08x6a9b07bv80767sqg4hmw42zl4d"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.6)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-colored" ,rust-colored-1)
+        ("rust-failure" ,rust-failure-0.1)
+        ("rust-failure-derive" ,rust-failure-derive-0.1)
+        ("rust-hmac" ,rust-hmac-0.4)
+        ("rust-hmac-sha1" ,rust-hmac-sha1-0.1)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-hyper" ,rust-hyper-0.11)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-md5" ,rust-md5-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-quick-xml" ,rust-quick-xml-0.12)
+        ("rust-regex" ,rust-regex-0.2)
+        ("rust-reqwest" ,rust-reqwest-0.10)
+        ("rust-rust-crypto" ,rust-rust-crypto-0.2)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-sha2" ,rust-sha2-0.6)
+        ("rust-url" ,rust-url-2))))))
+
 (define-public rust-safemem-0.3
   (package
     (name "rust-safemem")
@@ -30637,6 +34672,20 @@ quickly convert floating point numbers to decimal strings.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-safemem-0.2
+  (package
+    (inherit rust-safemem-0.3)
+    (name "rust-safemem")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "safemem" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "13rx2vl5bqc7x4xpfc0can3a39f3bhgqg3l112lsxxrmp0cqnyp2"))))
+    (arguments `(#:skip-build? #t))))
+
 (define-public rust-same-file-1
   (package
     (name "rust-same-file")
@@ -31126,6 +35175,24 @@ Pwrite traits from the scroll crate.")
        (("rust-ring" ,rust-ring-0.14)
         ("rust-untrusted" ,rust-untrusted-0.6))))))
 
+(define-public rust-sct-0.4
+  (package
+    (inherit rust-sct-0.6)
+    (name "rust-sct")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sct" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0nkl03nqfczz0784sg3bf2j08qq350yh9063f4m0dpgawvwn33yb"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ring" ,rust-ring-0.13)
+        ("rust-untrusted" ,rust-untrusted-0.6))))))
+
 (define-public rust-sct-0.3
   (package/inherit rust-sct-0.6
     (name "rust-sct")
@@ -31606,6 +35673,29 @@ macOS and iOS.")
          (base32
           "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq"))))))
 
+(define-public rust-send-wrapper-0.4
+  (package
+    (name "rust-send-wrapper")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "send_wrapper" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1l7s28vfnwdbjyrrk3lx81jy4f0dcrv4iwyah2wj6vndxhqxaf7n"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/thk1/send_wrapper")
+    (synopsis "Wrapper moving around non-@code{Send} types between threads")
+    (description
+     "This Rust library implements a wrapper type called @code{SendWrapper}
+which allows you to move around non-@code{Send} types between threads, as long
+as you access the contained value only from within the original thread.  You
+also have to make sure that the wrapper is dropped from within the original
+thread.  If any of these constraints is violated, a panic occurs.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-sequoia-openpgp-0.9
   (package
     (name "rust-sequoia-openpgp")
@@ -31700,23 +35790,19 @@ rules are rather complex.  This crate implements the whole grammar." )
 (define-public rust-serde-1
   (package
     (name "rust-serde")
-    (version "1.0.118")
+    (version "1.0.123")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "serde" version))
-        (file-name (string-append name "-" version ".crate"))
-        (sha256
-         (base32
-          "0028kv3dh3ix5g7jfws22zb9hcqq4cnpwn2lnlpam1wxhmil5ih6"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1bk9733mgiv5sg8yb19y8mc85fb2aaqp1k02v10alavj688idmcj"))))
     (build-system cargo-build-system)
     (arguments
-     ;; Tests fail with "error: cannot find derive macro `Deserialize` in this
-     ;; scope".
-     `(#:tests? #false
+     `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-serde-derive" ,rust-serde-derive-1))
-       #:cargo-development-inputs
        (("rust-serde-derive" ,rust-serde-derive-1))))
     (home-page "https://serde.rs")
     (synopsis "Generic serialization/deserialization framework")
@@ -31970,6 +36056,83 @@ for the serde framework.")
      "Unstable AST representation used by Serde codegen.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-serde-fmt-1
+  (package
+    (name "rust-serde-fmt")
+    (version "1.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde_fmt" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "195sp3zxbdgrnaqxwn9z3pij04fd7yyihnm4fpfc261r5fdacqr9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/KodrAus/serde_fmt.git")
+    (synopsis "Write any @code{serde::Serialize} using standard formatting APIs")
+    (description
+     "This package allows one to Write any @code{serde::Serialize} using the
+standard formatting APIs.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-serde-ini-0.2
+  (package
+    (name "rust-serde-ini")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde_ini" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0f8ir1bbcdyad50aj1c53dkiwr24x6dr88f045skl1xvwa3nc8zb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-result" ,rust-result-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-void" ,rust-void-1))))
+    (home-page "https://github.com/arcnmx/serde-ini")
+    (synopsis "Windows INI file {de,}serialization")
+    (description
+     "@code{serde_ini} provides a serde @code{Serializer} and
+@code{Deserializer} for the INI format.")
+    (license license:expat)))
+
+(define-public rust-serde-hjson-0.9
+  (package
+    (name "rust-serde-hjson")
+    (version "0.9.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde-hjson" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1y3lzs8556bxqa9jfdyg38pd5jjffblczikckwh571d8m074wfka"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clippy" ,rust-clippy-0.0)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-linked-hash-map" ,rust-linked-hash-map-0.3)
+        ("rust-num-traits" ,rust-num-traits-0.1)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-serde" ,rust-serde-0.8))))
+    (home-page "https://github.com/hjson/hjson-rust")
+    (synopsis "Human JSON (Hjson) serialization file format")
+    (description
+     "This crate is a Rust library for parsing and generating Human JSON
+Hjson.  It is built upon Serde, a high performance generic serialization
+framework.")
+    (license license:expat)))
+
 (define-public rust-serdeconv-0.4
   (package
     (name "rust-serdeconv")
@@ -32003,7 +36166,7 @@ TOML/JSON/MessagePack strings and serializable values.")
 (define-public rust-serde-derive-1
   (package
     (name "rust-serde-derive")
-    (version "1.0.118")
+    (version "1.0.123")
     (source
       (origin
         (method url-fetch)
@@ -32011,7 +36174,7 @@ TOML/JSON/MessagePack strings and serializable values.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "1pvj4v8k107ichsnm7jgm9kxyi2lf971x52bmxhm5mcwd4k3akf8"))))
+          "0ccg4m7ww6mfs5vjdbdifri2kf1wyd4difjnqnraph2gssaw54ck"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -32377,17 +36540,41 @@ the application/x-www-form-urlencoded format.")
        #:cargo-development-inputs
        (("rust-serde-derive" ,rust-serde-derive-1))))))
 
+(define-public rust-serde-value-0.6
+  (package
+    (name "rust-serde-value")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde-value" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1swh6870pr1cxr6ha769rv4wdnyfxdvsc42cmvf8lmla38lsfras"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ordered-float" ,rust-ordered-float-1)
+        ("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/arcnmx/serde-value")
+    (synopsis "Serialization value trees")
+    (description
+     "@code{serde-value} provides a way to capture serialization value trees
+for later processing.")
+    (license license:expat)))
+
 (define-public rust-serde-yaml-0.8
   (package
     (name "rust-serde-yaml")
-    (version "0.8.15")
+    (version "0.8.17")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "serde_yaml" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "17q8rshlq56z6zna7wxhk9pihna3s5qdz8q5niip396lwkvfh6wp"))))
+        (base32 "08xvb5zxz3x5dgx0fy1q0aq9aa9fibcvi75333wnnwk1mga4wr8m"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -32865,7 +37052,7 @@ code is translated from C to Rust using c2rust.")
 (define-public rust-sha2-0.9
   (package
     (name "rust-sha2")
-    (version "0.9.2")
+    (version "0.9.3")
     (source
       (origin
         (method url-fetch)
@@ -32874,7 +37061,7 @@ code is translated from C to Rust using c2rust.")
          (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "1a225akwq8k1ym827f8f72rfgxaf7zdnnq07qpcblj91zs3anykf"))))
+          "1phjvjcvc33xa3xdpxw3a324ksbnrg9qhjnig13z9dwsn8a7m0ps"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
@@ -32919,6 +37106,50 @@ function family including SHA-224, SHA-256, SHA-384, and SHA-512.")
        (("rust-digest" ,rust-digest-0.8)
         ("rust-hex-literal" ,rust-hex-literal-0.1))))))
 
+(define-public rust-sha2-0.7
+  (package
+    (inherit rust-sha2-0.9)
+    (name "rust-sha2")
+    (version "0.7.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sha2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "183yhkj16i7yzdp8i7aavpy329vz5xrd502233bq8fn2whjbxdly"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-block-buffer" ,rust-block-buffer-0.3)
+        ("rust-byte-tools" ,rust-byte-tools-0.2)
+        ("rust-digest" ,rust-digest-0.7)
+        ("rust-fake-simd" ,rust-fake-simd-0.1)
+        ("rust-sha2-asm" ,rust-sha2-asm-0.5))))))
+
+(define-public rust-sha2-0.6
+  (package
+    (inherit rust-sha2-0.9)
+    (name "rust-sha2")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sha2" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0shircyawzg1q5lyi175l7l446v5bijwrf58grnz4z9nrrw3r5kx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-block-buffer" ,rust-block-buffer-0.2)
+        ("rust-byte-tools" ,rust-byte-tools-0.2)
+        ("rust-digest" ,rust-digest-0.6)
+        ("rust-fake-simd" ,rust-fake-simd-0.1)
+        ("rust-generic-array" ,rust-generic-array-0.8)
+        ("rust-sha2-asm" ,rust-sha2-asm-0.3))))))
+
 (define-public rust-sha2-asm-0.5
   (package
     (name "rust-sha2-asm")
@@ -32940,6 +37171,26 @@ function family including SHA-224, SHA-256, SHA-384, and SHA-512.")
 functions core functionality.")
     (license license:expat)))
 
+(define-public rust-sha2-asm-0.3
+  (package
+    (inherit rust-sha2-asm-0.5)
+    (name "rust-sha2-asm")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sha2-asm" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "09id310ngbcv98bww7ns1zmilcagnzhqx2s2skpmf23lzl890c9y"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-gcc" ,rust-gcc-0.3)
+        ("rust-generic-array" ,rust-generic-array-0.8))))))
+
 (define-public rust-shader-version-0.6
   (package
     (name "rust-shader-version")
@@ -32966,6 +37217,31 @@ functions core functionality.")
 picking compatible shaders.")
     (license license:expat)))
 
+(define-public rust-shadow-rs-0.5
+  (package
+    (name "rust-shadow-rs")
+    (version "0.5.24")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "shadow-rs" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1qldaq7z09s6v0qp2yfhkrhvwprnjr4my6ngmidl2xj1v0ql9ln2"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-chrono" ,rust-chrono-0.4)
+        ("rust-git2" ,rust-git2-0.13))))
+    (home-page "https://github.com/baoyachi/shadow-rs")
+    (synopsis "Recall properties of the build process at run time")
+    (description
+     "@code{shadow-rs} allows you to recall properties of the build process
+and environment at run time.  You can use this tool to check in production
+exactly where a binary came from and how it was built.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-sharded-slab-0.1
   (package
     (name "rust-sharded-slab")
@@ -33094,6 +37370,32 @@ shell.")
        (sha256
         (base32 "0jnrw3f174974fsi2hg48l0klpy24767ib28w0xcvi2ll5axxb1r"))))))
 
+(define-public rust-shellexpand-2
+  (package
+    (name "rust-shellexpand")
+    (version "2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "shellexpand" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0a981ynym0hipnvkd93ihszdszjqs0cslj5ilzsdv19d3f1vggc3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-dirs-next" ,rust-dirs-next-2))))
+    (home-page "https://github.com/netvl/shellexpand")
+    (synopsis "Shell-like expansions in strings")
+    (description
+     "@code{shellexpand} is a single dependency library which allows one to
+perform shell-like expansions in strings, that is, to expand variables like
+@samp{$A} or @samp{$@{B@}} into their values inside some context and to expand
+@samp{~} in the beginning of a string into the home directory (again, inside
+some context).")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-shlex-0.1
   (package
     (name "rust-shlex")
@@ -33114,8 +37416,32 @@ words, like Python's shlex.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-signal-hook-0.3
+  (package
+    (name "rust-signal-hook")
+    (version "0.3.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "signal-hook" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0h628smm9y22qi3szpkg3xpj31hyvs4ps29nf8cnfvy6w0zmw3vq"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cc" ,rust-cc-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-signal-hook-registry" ,rust-signal-hook-registry-1))))
+    (home-page "https://github.com/vorner/signal-hook")
+    (synopsis "Unix signal handling")
+    (description "This package provides Unix signal handling.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-signal-hook-0.1
   (package
+    (inherit rust-signal-hook-0.3)
     (name "rust-signal-hook")
     (version "0.1.16")
     (source
@@ -33127,25 +37453,46 @@ words, like Python's shlex.")
        (sha256
         (base32
          "1v85mgs4dbgw0765b9nx0jd8lamv55425aawjbhxz6cb870hhib0"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-futures" ,rust-futures-0.1)
         ("rust-libc" ,rust-libc-0.2)
         ("rust-mio" ,rust-mio-0.7)
         ("rust-mio-uds" ,rust-mio-uds-0.6)
-        ("rust-signal-hook-registry" ,rust-signal-hook-registry-1)
+        ("rust-signal-hook-registry" ,rust-signal-hook-registry-1.2)
         ("rust-tokio-reactor" ,rust-tokio-reactor-0.1))
        #:cargo-development-inputs
        (("rust-tokio" ,rust-tokio-0.1)
-        ("rust-version-sync" ,rust-version-sync-0.8))))
+        ("rust-version-sync" ,rust-version-sync-0.8))))))
+
+(define-public rust-signal-hook-registry-1
+  (package
+    (name "rust-signal-hook-registry")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "signal-hook-registry" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "19hirq0h33jjyh505s8hf9q5dq0ky80ygivkl3vshjv0y7zd1w8n"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2))))
     (home-page "https://github.com/vorner/signal-hook")
-    (synopsis "Unix signal handling")
-    (description "Unix signal handling.")
+    (synopsis "Backend crate for signal-hook")
+    (description "This package is a backend crate for @code{signal-hook}.")
     (license (list license:asl2.0 license:expat))))
 
-(define-public rust-signal-hook-registry-1
+;; XXX: This package is needed for `rust-signal-hook-0.1', where "Cargo.toml"
+;; contains "~1.2".
+(define-public rust-signal-hook-registry-1.2
   (package
+    (inherit rust-signal-hook-registry-1)
     (name "rust-signal-hook-registry")
     (version "1.2.0")
     (source
@@ -33157,18 +37504,13 @@ words, like Python's shlex.")
        (sha256
         (base32
          "0haz828bif1lbp3alx17zkcy5hwy15bbpmvks72j8iznx7npix4l"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-arc-swap" ,rust-arc-swap-0.4)
         ("rust-libc" ,rust-libc-0.2))
        #:cargo-development-inputs
        (("rust-signal-hook" ,rust-signal-hook-0.1)
-        ("rust-version-sync" ,rust-version-sync-0.8))))
-    (home-page "https://github.com/vorner/signal-hook")
-    (synopsis "Backend crate for signal-hook")
-    (description "Backend crate for signal-hook.")
-    (license (list license:asl2.0 license:expat))))
+        ("rust-version-sync" ,rust-version-sync-0.8))))))
 
 (define-public rust-signature-1
   (package
@@ -33498,6 +37840,20 @@ variants in pure Rust.")
 data type.")
     (license license:expat)))
 
+(define-public rust-slab-0.3
+  (package
+    (inherit rust-slab-0.4)
+    (name "rust-slab")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "slab" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08xw8w61zdfn1094qkq1d554vh5wmm9bqdys8gqqxc4sv2pgrd0p"))))
+    (arguments `(#:skip-build? #t))))
+
 ;; TODO: Unbundle sleef.
 (define-public rust-sleef-sys-0.1
   (package
@@ -33528,6 +37884,30 @@ data type.")
      "Rust FFI bindings to the SLEEF Vectorized Math Library.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-slice-deque-0.2
+  (package
+    (name "rust-slice-deque")
+    (version "0.2.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "slice-deque" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1mq78l0vfwabnyanb85amgzakfhdaxx455yq6cszd5zmynagbpgz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-mach" ,rust-mach-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/gnzlbg/slice_deque")
+    (synopsis "Double-ended queue that Deref's into a slice")
+    (description
+     "This package provides a double-ended queue that Deref's into a slice.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-slog-2
   (package
     (name "rust-slog")
@@ -33781,6 +38161,25 @@ Unicode strings.")
 I/O programming.")
     (license license:expat)))
 
+(define-public rust-sluice-0.4
+  (package
+    (inherit rust-sluice-0.5)
+    (name "rust-sluice")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sluice" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0c9mbbf9c1180yrld2fnfy0d0wbl4w1a7s3dkv0knx78ngghcz8a"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("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))))))
+
 (define-public rust-smallvec-1
   (package
     (name "rust-smallvec")
@@ -33828,6 +38227,46 @@ stack.")
        #:cargo-development-inputs
        (("rust-bincode" ,rust-bincode-1))))))
 
+(define-public rust-smallvec-0.2
+  (package
+    (inherit rust-smallvec-1)
+    (name "rust-smallvec")
+    (version "0.2.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "smallvec" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "04z0bv5pcnwnvij8kfzw56lnib9mjq8bafp120i7q48yvzbbr32c"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))))
+
+(define-public rust-smart-default-0.6
+  (package
+    (name "rust-smart-default")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "smart-default" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1xnvxz9wilj4d5b8kg4wbs0yk48wm41fnwkmn3p6wi9rafhmjdhk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/idanarye/rust-smart-default")
+    (synopsis "Custom-derive macro for Default with more control on the fields")
+    (description
+     "This package provides a custom-derive macro for Default with more
+control on the fields.")
+    (license license:expat)))
+
 (define-public rust-smol-0.1
   (package
     (name "rust-smol")
@@ -33868,6 +38307,39 @@ stack.")
     (description "This package provides a small and fast async runtime.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-snailquote-0.3
+  (package
+    (name "rust-snailquote")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "snailquote" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "04687yzvgk3ja0ch7k96w3v36fzvqd9ci2l5k12ijligh2fp4jzk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-thiserror" ,rust-thiserror-1)
+        ("rust-unicode-categories" ,rust-unicode-categories-0.1))))
+    (home-page "https://github.com/euank/snailquote")
+    (synopsis "Escape and unescape strings with shell-inspired quoting")
+    (description
+     "This library provides functions to escape and unescape strings.
+
+It escapes them in a roughly ``sh'' compatible way (e.g. double quotes
+supporting backslash escapes, single quotes supporting no escapes).
+
+In addition, it provides support for common C-like ASCII escapes (like
+@samp{\\n} for newline, @samp{\\v} for vertical tab, etc.) and Rust
+string-like Unicode (via @samp{\\u@{12ff@}} style escapes).
+
+More importantly, this library also provides the ability to un-escape a given
+escaped text to recover the original string.")
+    (license license:gpl3)))
+
 (define-public rust-socket2-0.3
   (package
     (name "rust-socket2")
@@ -34266,6 +38738,29 @@ deeply recursive algorithms that may accidentally blow the stack.")
     (description "New standard library, old compiler.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-state-0.4
+  (package
+    (name "rust-state")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "state" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "10v4k9bgjryc9m40c8nnhyrby2ngkhpx841p3k4halgxlp8af59h"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1))))
+    (home-page "https://github.com/SergioBenitez/state")
+    (synopsis "Library for safe global and thread-local state management")
+    (description
+     "This package provides a library for safe global and thread-local state
+management.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-static-assertions-1
   (package
     (name "rust-static-assertions")
@@ -34550,6 +39045,27 @@ longform text (e.g., ESC becomes @code{r\x1B}) and tries to encode ill-formed
 UTF-8.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-str-buf-1
+  (package
+    (name "rust-str-buf")
+    (version "1.0.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "str-buf" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0shprf95kywspn4vbn706n8kvh6n473c5sffmdbsz77zni1kcjnl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/DoumanAsh/str-buf")
+    (synopsis "Static string buffer")
+    (description "This package provides a static string buffer.")
+    (license license:boost1.0)))
+
 (define-public rust-stream-cipher-0.4
   (package
     (name "rust-stream-cipher")
@@ -34760,6 +39276,56 @@ developed as part of the Servo project.")
      "Code share between string_cache and string_cache_codegen.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-stringprep-0.1
+  (package
+    (name "rust-stringprep")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "stringprep" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1hd1x7s8fnzqwz5fm2pq0jh10n024zvwnldmykzm8x5qfk5liqwf"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-unicode-bidi" ,rust-unicode-bidi-0.3)
+        ("rust-unicode-normalization" ,rust-unicode-normalization-0.1))))
+    (home-page "https://github.com/sfackler/rust-stringprep")
+    (synopsis "Implementation of the ``stringprep'' algorithm")
+    (description
+     "This package provides an implementation of the ``stringprep'' algorithm
+as defined in RFC 3454.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-strip-ansi-escapes-0.1
+  (package
+    (name "rust-strip-ansi-escapes")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "strip-ansi-escapes" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1vmc6cwxsvp02b17b6x42mnnnn5vlc1dqbcqc2a71yms59p6fqwx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-vte" ,rust-vte-0.3))))
+    (home-page "https://github.com/luser/strip-ansi-escapes")
+    (synopsis "Strip ANSI escape sequences from byte streams")
+    (description
+     "This crate is for stripping ANSI escape sequences from byte sequences.
+
+This can be used to take output from a program that includes escape sequences
+and write it somewhere that does not easily support them, such as a log
+file.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-strsim-0.9
   (package
     (name "rust-strsim")
@@ -35012,31 +39578,122 @@ cryptographic implementations.")
         (base32
          "1vm80mxbwfj334izwm8x8l65v1xl9hr0kwrg36r1rq565fkaarrd"))))))
 
-(define-public rust-sval-0.5
+(define-public rust-surf-2
+  (package
+    (name "rust-surf")
+    (version "2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "surf" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1sl2d1ka01qz3qh4m2l5f2fjs0lhsmvdwl29f3pqzqbgv63wg2bi"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-std" ,rust-async-std-1)
+        ("rust-async-trait" ,rust-async-trait-0.1)
+        ("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+        ("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-http-client" ,rust-http-client-6)
+        ("rust-http-types" ,rust-http-types-2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-once-cell" ,rust-once-cell-1)
+        ("rust-pin-project-lite" ,rust-pin-project-lite-0.1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-web-sys" ,rust-web-sys-0.3))))
+    (home-page "https://github.com/http-rs/surf")
+    (synopsis "HTTP client framework")
+    (description
+     "Surf is a friendly HTTP client built for casual Rustaceans and veterans
+alike.  It's completely modular, and built directly for @code{async/await}.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-surf-1
+  (package
+    (inherit rust-surf-2)
+    (name "rust-surf")
+    (version "1.0.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "surf" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1kksp41r5w7pwv1bj8pq5cngny24flq4mybxyhbfycx8z04806kl"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures-preview" ,rust-futures-preview-0.3)
+        ("rust-http" ,rust-http-0.1)
+        ("rust-hyper" ,rust-hyper-0.12)
+        ("rust-hyper-tls" ,rust-hyper-tls-0.3)
+        ("rust-isahc" ,rust-isahc-0.7)
+        ("rust-js-sys" ,rust-js-sys-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-runtime" ,rust-runtime-0.3)
+        ("rust-runtime-raw" ,rust-runtime-raw-0.3)
+        ("rust-runtime-tokio" ,rust-runtime-tokio-0.3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.6)
+        ("rust-url" ,rust-url-2)
+        ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
+        ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.3)
+        ("rust-web-sys" ,rust-web-sys-0.3))))))
+
+(define-public rust-sval-1
   (package
     (name "rust-sval")
-    (version "0.5.2")
+    (version "1.0.0-alpha.5")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "sval" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "052j9ipwpb1zh02gw2ys8c4wpjqdf35991k0zkwljnalx37i79qj"))))
+        (base32 "025sy290xnn56nl15qkrkq0whxcwlvb4bzp996azbjl7gdyfxxj5"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     `(#:skip-build? #t
+       #:cargo-inputs
        (("rust-serde" ,rust-serde-1)
         ("rust-smallvec" ,rust-smallvec-1)
-        ("rust-sval-derive" ,rust-sval-derive-0.5))
-       #:cargo-development-inputs
-       (("rust-quickcheck" ,rust-quickcheck-0.9))))
+        ("rust-sval-derive" ,rust-sval-derive-1))))
     (home-page "https://github.com/sval-rs/sval")
     (synopsis "No-std, object-safe serialization framework")
     (description
      "This package provides a no-std, object-safe serialization framework.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-sval-0.5
+  (package
+    (inherit rust-sval-1)
+    (name "rust-sval")
+    (version "0.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sval" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "052j9ipwpb1zh02gw2ys8c4wpjqdf35991k0zkwljnalx37i79qj"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-serde" ,rust-serde-1)
+        ("rust-smallvec" ,rust-smallvec-1)
+        ("rust-sval-derive" ,rust-sval-derive-0.5))
+       #:cargo-development-inputs
+       (("rust-quickcheck" ,rust-quickcheck-0.9))))))
+
 (define-public rust-sval-0.4
   (package
     (inherit rust-sval-0.5)
@@ -35058,20 +39715,21 @@ cryptographic implementations.")
         ("rust-smallvec" ,rust-smallvec-0.6)
         ("rust-serde" ,rust-serde-1))))))
 
-(define-public rust-sval-derive-0.5
+(define-public rust-sval-derive-1
   (package
     (name "rust-sval-derive")
-    (version "0.5.2")
+    (version "1.0.0-alpha.5")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "sval_derive" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1spip2cjhmjazq2dns69909p9hyx4cmbx6ma4g2skwvcwv4h3gnq"))))
+        (base32 "1clarb8fqxlffa2i6p70l5nr6l3pcp90p98xkvdn8f65xkc0hhkp"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     `(#:skip-build? #t
+       #:cargo-inputs
        (("rust-proc-macro2" ,rust-proc-macro2-1)
         ("rust-quote" ,rust-quote-1)
         ("rust-syn" ,rust-syn-1))))
@@ -35080,6 +39738,24 @@ cryptographic implementations.")
     (description "This package provides custom derive for @code{sval}.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-sval-derive-0.5
+  (package
+    (inherit rust-sval-derive-1)
+    (name "rust-sval-derive")
+    (version "0.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sval_derive" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1spip2cjhmjazq2dns69909p9hyx4cmbx6ma4g2skwvcwv4h3gnq"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))))
+
 (define-public rust-sval-derive-0.4
   (package
     (inherit rust-sval-derive-0.5)
@@ -35217,33 +39893,21 @@ browsers.")
 (define-public rust-syn-1
   (package
     (name "rust-syn")
-    (version "1.0.53")
+    (version "1.0.60")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "syn" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "0s3y325n7s6gsg4wg0dq0pxymhv1x8qd4nmsp8my2kf24h3y4cw8"))))
+        (base32 "1080gw6mlja7yl26crya3k403wjdp7v3wx9mxcmpcnlar9z5j067"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-unicode-xid" ,rust-unicode-xid-0.2)
-        ("rust-proc-macro2" ,rust-proc-macro2-1)
-        ("rust-quote" ,rust-quote-1))
-       #:cargo-development-inputs
-       (("rust-anyhow" ,rust-anyhow-1)
-        ("rust-flate2" ,rust-flate2-1)
-        ("rust-insta" ,rust-insta-0.16)
-        ("rust-rayon" ,rust-rayon-1)
-        ("rust-ref-cast" ,rust-ref-cast-1)
-        ("rust-regex" ,rust-regex-1)
-        ("rust-reqwest" ,rust-reqwest-0.10)
-        ("rust-syn-test-suite" ,rust-syn-test-suite-0)
-        ("rust-tar" ,rust-tar-0.4)
-        ("rust-termcolor" ,rust-termcolor-1)
-        ("rust-walkdir" ,rust-walkdir-2))))
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-unicode-xid" ,rust-unicode-xid-0.2))))
     (home-page "https://github.com/dtolnay/syn")
     (synopsis "Parser for Rust source code")
     (description
@@ -35496,7 +40160,7 @@ a syntax tree of Rust source code.")
 (define-public rust-syntect-4
   (package
     (name "rust-syntect")
-    (version "4.4.0")
+    (version "4.5.0")
     (source
      (origin
        (method url-fetch)
@@ -35504,7 +40168,7 @@ a syntax tree of Rust source code.")
        (file-name
         (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "121y6rswylvbhaz8krjb9aa7h16f6ly2sdbbka1hr1dm0pgphfaf"))))
+        (base32 "1r9ij3qmq4cs83jwpk1043sai1dwdghb8lwkm34rs12d7frc5yib"))))
     (build-system cargo-build-system)
     (arguments
      `(#:tests? #f                      ;missing files
@@ -35668,6 +40332,29 @@ syntax extension expansion.")
     (description "This package provides a backport of libsyntax.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-sys-info-0.7
+  (package
+    (name "rust-sys-info")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sys-info" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0facyh6hswp1i7airri8ly5kl6sv5bvkkd21vs51k2b3z22bvkz5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cc" ,rust-cc-1)
+        ("rust-libc" ,rust-libc-0.2))))
+    (home-page "https://github.com/FillZpp/sys-info-rs")
+    (synopsis "Get system information in Rust")
+    (description
+     "This Rust crate gathers system information.")
+    (license license:expat)))
+
 (define-public rust-sysctl-0.4
   (package
     (name "rust-sysctl")
@@ -35717,6 +40404,37 @@ syntax extension expansion.")
         ("rust-errno" ,rust-errno-0.2)
         ("rust-libc" ,rust-libc-0.2))))))
 
+(define-public rust-sysinfo-0.16
+  (package
+    (name "rust-sysinfo")
+    (version "0.16.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sysinfo" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1rj3rdy1jd9la9a5xzwk0gcimln7qvzqf1sqwg9xi6cf0vvy453w"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cc" ,rust-cc-1)
+        ("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.8)
+        ("rust-doc-comment" ,rust-doc-comment-0.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-ntapi" ,rust-ntapi-0.3)
+        ("rust-once-cell" ,rust-once-cell-1)
+        ("rust-rayon" ,rust-rayon-1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/GuillaumeGomez/sysinfo")
+    (synopsis "System handler to interact with processes")
+    (description
+     "This package is a library to get system information such as processes,
+processors, disks, components and networks.")
+    (license license:expat)))
+
 (define-public rust-syslog-4
   (package
     (name "rust-syslog")
@@ -35834,6 +40552,26 @@ provides both a library for wrapping Rust @code{Writer}s and a small program
 that exposes the same functionality at the command line.")
     (license (list license:unlicense license:expat))))
 
+(define-public rust-take-0.1
+  (package
+    (name "rust-take")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "take" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1i8p579k9kq21k7pcm4yzbc12xpshl39jfa5c1j6pxf1ia6qcmxi"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/carllerche/take")
+    (synopsis "Simple container utility for Rust")
+    (description
+     "This package provides a cell allowing the inner value to be consumed
+without a mutable reference.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-take-mut-0.2
   (package
     (name "rust-take-mut")
@@ -36048,23 +40786,22 @@ deleting all contents when it's dropped.")
 (define-public rust-tempfile-3
   (package
     (name "rust-tempfile")
-    (version "3.1.0")
+    (version "3.2.0")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "tempfile" version))
-        (file-name (string-append name "-" version ".crate"))
-        (sha256
-         (base32
-          "1a9cfdqw70n7bcnkx05aih9xdba8lqazmqlkjpkmn2la6gcj8vks"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tempfile" version))
+       (file-name (string-append name "-" version ".crate"))
+       (sha256
+        (base32 "08pbf3c1i42382dc44dil5bgiawcsi0qk6zdibw10f69rxiwdhfs"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-cfg-if" ,rust-cfg-if-0.1)
+       (("rust-cfg-if" ,rust-cfg-if-1)
         ("rust-libc" ,rust-libc-0.2)
-        ("rust-rand" ,rust-rand-0.7)
-        ("rust-redox-syscall" ,rust-redox-syscall-0.1)
+        ("rust-rand" ,rust-rand-0.8)
+        ("rust-redox-syscall" ,rust-redox-syscall-0.2)
         ("rust-remove-dir-all" ,rust-remove-dir-all-0.5)
         ("rust-winapi" ,rust-winapi-0.3))))
     (home-page "https://stebalien.com/projects/tempfile-rs")
@@ -36163,29 +40900,48 @@ directories.")
 template language.")
     (license license:expat)))
 
+(define-public rust-term-0.7
+  (package
+    (name "rust-term")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "term" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "07xzxmg7dbhlirpyfq09v7cfb9gxn0077sqqvszgjvyrjnngi7f5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-dirs-next" ,rust-dirs-next-2)
+        ("rust-rustversion" ,rust-rustversion-1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/Stebalien/term")
+    (synopsis "Terminal formatting library")
+    (description
+     "This package provides a terminal formatting library.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-term-0.6
- (package
-   (name "rust-term")
-   (version "0.6.1")
-   (source
-    (origin
-      (method url-fetch)
-      (uri (crate-uri "term" version))
-      (file-name
-       (string-append name "-" version ".tar.gz"))
-      (sha256
-       (base32
-        "1ddqxq9hrk8zqq1f8pqhz72vrlfc8vh2xcza2gb623z78lrkm1n0"))))
-   (build-system cargo-build-system)
-   (arguments
-    `(#:cargo-inputs
-      (("rust-dirs" ,rust-dirs-2)
-       ("rust-winapi" ,rust-winapi-0.3))))
-   (home-page "https://github.com/Stebalien/term")
-   (synopsis "Terminal formatting library")
-   (description
-    "This package provides a terminal formatting library.")
-   (license (list license:expat license:asl2.0))))
+  (package
+    (inherit rust-term-0.7)
+    (name "rust-term")
+    (version "0.6.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "term" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ddqxq9hrk8zqq1f8pqhz72vrlfc8vh2xcza2gb623z78lrkm1n0"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-dirs" ,rust-dirs-2)
+        ("rust-winapi" ,rust-winapi-0.3))))))
 
 (define-public rust-term-0.5
   (package
@@ -36310,24 +41066,42 @@ grid layout.")
        (("rust-libc" ,rust-libc-0.2)
         ("rust-winapi" ,rust-winapi-0.3))))))
 
+(define-public rust-termbox-sys-0.2
+  (package
+    (name "rust-termbox-sys")
+    (version "0.2.12")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "termbox-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0qbydvrck1vvzk48ck9vy70m58ksisl9dj24imjq04lp4kmh0l32"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/gchp/termbox-sys")
+    (synopsis "Low level bindings for the @code{termbox} library")
+    (description
+     "This package provides low level bindings for the @code{termbox}
+library.")
+    (license license:expat)))
+
 (define-public rust-termcolor-1
   (package
     (name "rust-termcolor")
-    (version "1.1.0")
+    (version "1.1.2")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "termcolor" version))
-        (file-name (string-append name "-" version ".crate"))
-        (sha256
-         (base32
-          "0pyp8vc0gx7124y80ixdl6plbfn1yjhw04i875k5fz2dk8lglsxv"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "termcolor" version))
+       (file-name (string-append name "-" version ".crate"))
+       (sha256
+        (base32 "1x65i1ny4m6z1by62ra6wdcrd557p2ysm866x0pg60zby2cxizid"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-winapi-util" ,rust-winapi-util-0.1))
-       #:cargo-development-inputs
-       (("rust-doc-comment" ,rust-doc-comment-0.3))))
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-winapi-util" ,rust-winapi-util-0.1))))
     (home-page "https://github.com/BurntSushi/termcolor")
     (synopsis "Library for writing colored text to a terminal")
     (description "This package provides a simple cross platform library for
@@ -36335,22 +41109,37 @@ writing colored text to a terminal.")
     (license (list license:unlicense
                    license:expat))))
 
+(define-public rust-termcolor-0.3
+  (package
+    (inherit rust-termcolor-1)
+    (name "rust-termcolor")
+    (version "0.3.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "termcolor" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "10sg0w2xhwz5zn84xnqrba5mc1jcc9dfa0xg25ph3gs1mmz5ii5d"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-wincolor" ,rust-wincolor-0.1))))))
+
 (define-public rust-terminal-size-0.1
   (package
     (name "rust-terminal-size")
-    (version "0.1.13")
+    (version "0.1.16")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "terminal-size" version))
-        (file-name
-         (string-append name "-" version ".tar.gz"))
-        (sha256
-         (base32
-          "04qy9i0k3qkhl749xk30xga0l7w61rf4bj5zy0r44w3jijgws54s"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "terminal-size" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "01i4zlv8dplx8ps328wl14xv7w1ah0ni6i3g0w1dnd07fpnqrjl6"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #f      ; Tests expect access to /dev/stderr
+     `(#:skip-build? #f
        #:cargo-inputs
        (("rust-libc" ,rust-libc-0.2)
         ("rust-winapi" ,rust-winapi-0.3))))
@@ -36977,6 +41766,54 @@ closures after a delay or at a given timestamp.")
 @code{timerfd} API.")
     (license license:expat)))
 
+(define-public rust-tint-1
+  (package
+    (name "rust-tint")
+    (version "1.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tint" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "15k89pp3ddxczfnv2j995yvy02mfpmjrmxmv7mkp8c2acrq4bwks"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-0.2))))
+    (home-page "https://github.com/savage13/tint")
+    (synopsis "Color creation and manipulation")
+    (description "This packages provides tools for color creation and
+manipulation in Rust.")
+    (license license:expat)))
+
+(define-public rust-tiny-http-0.6
+  (package
+    (name "rust-tiny-http")
+    (version "0.6.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tiny_http" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0la95daknfh8g951ddb2zdz6av2459rncp6h9dh02pf98h5glq8n"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ascii" ,rust-ascii-0.8)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-chunked-transfer" ,rust-chunked-transfer-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-openssl" ,rust-openssl-0.10)
+        ("rust-url" ,rust-url-1))))
+    (home-page "https://github.com/tiny-http/tiny-http")
+    (synopsis "Low level HTTP server library")
+    (description "This package provides a low level HTTP server library.")
+    (license license:asl2.0)))
+
 (define-public rust-tinytemplate-1
   (package
     (name "rust-tinytemplate")
@@ -37005,8 +41842,33 @@ closures after a delay or at a given timestamp.")
      "Simple, lightweight template engine.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-tinyvec-1
+  (package
+    (name "rust-tinyvec")
+    (version "1.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tinyvec" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08qhf0a9vxf85bj1hd38i8qzwiwm6v4vvwd11k7c728f59bwlz1i"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1)
+        ("rust-tinyvec-macros" ,rust-tinyvec-macros-0.1))))
+    (home-page "https://crates.io/crates/tinyvec")
+    (synopsis "Safe vec-like data structures")
+    (description
+     "@code{tinyvec} provides 100% safe vec-like data structures.")
+    (license
+     (list license:zlib license:asl2.0 license:expat))))
+
 (define-public rust-tinyvec-0.3
   (package
+    (inherit rust-tinyvec-1)
     (name "rust-tinyvec")
     (version "0.3.4")
     (source
@@ -37018,30 +41880,69 @@ closures after a delay or at a given timestamp.")
        (sha256
         (base32
          "05vijqpckjsnbv07rwadwcny4pkcq7z1wi9ikl7p3ib7s9qy1313"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-development-inputs
-       (("rust-criterion" ,rust-criterion-0.3))))
-    (home-page "https://crates.io/crates/tinyvec")
-    (synopsis "Tiny vec-like types for Rust")
+       (("rust-criterion" ,rust-criterion-0.3))))))
+
+(define-public rust-tinyvec-macros-0.1
+  (package
+    (name "rust-tinyvec-macros")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tinyvec_macros" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0p5zvgbas5nh403fbxica819mf3g83n8g2hzpfazfr56w6klv9yd"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/Soveu/tinyvec_macros")
+    (synopsis "Some macros for tiny containers")
+    (description "This package provides a few useful macros for tiny
+containers.")
+    (license (list license:expat license:asl2.0 license:zlib))))
+
+(define-public rust-titlecase-1
+  (package
+    (name "rust-titlecase")
+    (version "1.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "titlecase" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "05qizspxihjhmzsd9y6kfxzrss4jl4y042wni4m2yk62rw8f8rgm"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-regex" ,rust-regex-1))))
+    (home-page "https://github.com/wezm/titlecase")
+    (synopsis "Tool and Rust crate for transforming text into title case")
     (description
-     "A 100% safe crate of vec-like types.")
-    (license (list license:zlib license:asl2.0 license:expat))))
+     "This package provides a tool and library that capitalizes text according
+to a style defined by John Gruber for post titles on his website ``Daring
+Fireball''.")
+    (license license:expat)))
 
 (define-public rust-tokio-1
   (package
     (name "rust-tokio")
-    (version "1.0.1")
+    (version "1.2.0")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "tokio" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1gd6qc9xvm568kicbkch40kjn5w0q2nsn527gcy80v3baqgj4n6j"))))
+        (base32
+         "0fmfykdp29hjq5264mp6sa4c0wp5mlimbi0dd9mrxsk5qq20s6g8"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #false                  ;FIXME: unresolved import
+     `(#:skip-build? #t
        #:cargo-inputs
        (("rust-autocfg" ,rust-autocfg-1)
         ("rust-bytes" ,rust-bytes-1)
@@ -37055,15 +41956,7 @@ closures after a delay or at a given timestamp.")
         ("rust-signal-hook-registry" ,rust-signal-hook-registry-1)
         ("rust-tokio-macros" ,rust-tokio-macros-1)
         ("rust-tracing" ,rust-tracing-0.1)
-        ("rust-winapi" ,rust-winapi-0.3))
-       #:cargo-development-inputs
-       (("rust-async-stream" ,rust-async-stream-0.3)
-        ("rust-futures" ,rust-futures-0.3)
-        ("rust-loom" ,rust-loom-0.4)
-        ("rust-nix" ,rust-nix-0.19)
-        ("rust-proptest" ,rust-proptest-0.10)
-        ("rust-tokio-stream" ,rust-tokio-stream-0.1)
-        ("rust-tokio-test" ,rust-tokio-test-0.4))))
+        ("rust-winapi" ,rust-winapi-0.3))))
     (home-page "https://tokio.rs")
     (synopsis "Event-driven, non-blocking I/O platform")
     (description
@@ -37471,17 +42364,18 @@ futures efficiently")
 (define-public rust-tokio-macros-1
   (package
     (name "rust-tokio-macros")
-    (version "1.0.0")
+    (version "1.1.0")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "tokio-macros" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "150l6wfcqw2rcjaf22qk3z6ca794x0s2c68n5ar18cfafllpsla2"))))
+        (base32
+         "0mys5zm2gcdgc0iq8nqipzn703q26x1bpw59m04shikgacdb3xya"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:tests? #false                  ;FIXME: undeclared type `tokio`
+     `(#:skip-build? #t
        #:cargo-inputs
        (("rust-proc-macro2" ,rust-proc-macro2-1)
         ("rust-quote" ,rust-quote-1)
@@ -37602,6 +42496,31 @@ applications backed by buffers.")
 Tokio.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tokio-native-tls-0.1
+  (package
+    (name "rust-tokio-native-tls")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-native-tls" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0sd0xmj7kwizybpsg8vh7a6sixj0bs4dzihzgmdf1a0rm69qaq6d"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-tokio" ,rust-tokio-0.2))))
+    (home-page "https://tokio.rs")
+    (synopsis "TLS/SSL streams for Tokio")
+    (description
+     "This package provides an implementation of TLS/SSL streams for Tokio
+using native-tls giving an implementation of TLS for nonblocking I/O
+streams.")
+    (license license:expat)))
+
 (define-public rust-tokio-net-0.2
   (package
     (name "rust-tokio-net")
@@ -37738,6 +42657,40 @@ backed by OpenSSL.")
 futures.")
     (license license:expat)))
 
+(define-public rust-tokio-proto-0.1
+  (package
+    (name "rust-tokio-proto")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-proto" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "12833cckniq3y83zjhk2ayv6qpr99d4mj1h3hz266g1mh6p4gfwg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-net2" ,rust-net2-0.2)
+        ("rust-rand" ,rust-rand-0.3)
+        ("rust-slab" ,rust-slab-0.3)
+        ("rust-smallvec" ,rust-smallvec-0.2)
+        ("rust-take" ,rust-take-0.1)
+        ("rust-tokio-core" ,rust-tokio-core-0.1)
+        ("rust-tokio-io" ,rust-tokio-io-0.1)
+        ("rust-tokio-service" ,rust-tokio-service-0.1))))
+    (home-page "https://tokio.rs")
+    (synopsis
+     "Network application framework for deployment of clients and servers")
+    (description
+     "This package provides a network application framework for rapid
+development and highly scalable production deployments of clients and
+servers.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-tokio-reactor-0.1
   (package
     (name "rust-tokio-reactor")
@@ -37776,8 +42729,35 @@ futures.")
      "Event loop that drives Tokio I/O resources.")
     (license license:expat)))
 
+(define-public rust-tokio-rustls-0.22
+  (package
+    (name "rust-tokio-rustls")
+    (version "0.22.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-rustls" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1dp1s2kai081f3fn9gjq92x2lw7lm7iqpcsl02cg2zg5fbg48s5w"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-rustls" ,rust-rustls-0.19)
+        ("rust-tokio" ,rust-tokio-1)
+        ("rust-webpki" ,rust-webpki-0.21))))
+    (home-page "https://github.com/tokio-rs/tls")
+    (synopsis "Asynchronous TLS/SSL streams for Tokio")
+    (description
+     "This package provides asynchronous TLS/SSL streams for Tokio using
+Rustls.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-tokio-rustls-0.14
   (package
+    (inherit rust-tokio-rustls-0.22)
     (name "rust-tokio-rustls")
     (version "0.14.1")
     (source
@@ -37788,7 +42768,6 @@ futures.")
        (sha256
         (base32
          "16l8kx3j7i3jxq36qs3hnmys6cd2zqcixc1n0kf3kymwanr32a71"))))
-    (build-system cargo-build-system)
     (arguments
      `(;; These tests require network access.
        #:cargo-test-flags '("--release" "--" "--skip=tls12" "--skip=modern")
@@ -37802,12 +42781,7 @@ futures.")
        (("rust-futures-util" ,rust-futures-util-0.3)
         ("rust-lazy-static" ,rust-lazy-static-1)
         ("rust-tokio" ,rust-tokio-0.2)
-        ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
-    (home-page "https://github.com/tokio-rs/tls")
-    (synopsis "Asynchronous TLS/SSL streams for Tokio")
-    (description "This package provides asynchronous TLS/SSL streams for Tokio
-using Rustls.")
-    (license (list license:expat license:asl2.0))))
+        ("rust-webpki-roots" ,rust-webpki-roots-0.20))))))
 
 (define-public rust-tokio-rustls-0.13
   (package
@@ -37918,6 +42892,28 @@ using Rustls.")
        (("rust-lazy-static" ,rust-lazy-static-1)
         ("rust-tokio" ,rust-tokio-0.1))))))
 
+(define-public rust-tokio-service-0.1
+  (package
+    (name "rust-tokio-service")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-service" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0qjinhax0y164kxp887mj8c5ih9829kdrnrb2ramzwg0fz825ni4"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1))))
+    (home-page "https://github.com/tokio-rs/tokio-service")
+    (synopsis "Core @code{Service} trait for Tokio")
+    (description
+     "This package provides the core @code{Service} trait for Tokio.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-tokio-signal-0.2
   (package
     (name "rust-tokio-signal")
@@ -38343,6 +43339,35 @@ implementation of TLS for nonblocking I/O streams.")
     (description "Core primitives for tokio-trace.")
     (license license:expat)))
 
+(define-public rust-tokio-tungstenite-0.11
+  (package
+    (name "rust-tokio-tungstenite")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tokio-tungstenite" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "033jypbksw394h75g5vxk3wafwqr9syrrq6a9mp2iji6sj58g7kd"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures-util" ,rust-futures-util-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-pin-project" ,rust-pin-project-0.4)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-tokio-native-tls" ,rust-tokio-native-tls-0.1)
+        ("rust-tungstenite" ,rust-tungstenite-0.11))))
+    (home-page "https://github.com/snapview/tokio-tungstenite")
+    (synopsis "Tokio binding for Tungstenite")
+    (description
+     "This package provides Tokio binding for Tungstenite, the lightweight
+stream-based WebSocket implementation.")
+    (license license:expat)))
+
 (define-public rust-tokio-udp-0.1
   (package
     (name "rust-tokio-udp")
@@ -39013,6 +44038,29 @@ be used directly.  See @code{rust-trackable} for more information.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-trash-1
+  (package
+    (name "rust-trash")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "trash" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "04nmmh6pnlsdpgz24bwnjpyqcs66414w1sip9whlx0aln6prdpwh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/ArturKovacs/trash-rs")
+    (synopsis "Library for moving files and folders to the recycle bin")
+    (description
+     "This package provides a library for moving files and folders to the
+recycle bin.")
+    (license license:expat)))
+
 (define-public rust-treeline-0.1
   (package
     (name "rust-treeline")
@@ -39678,6 +44726,21 @@ extension for the Trust-DNS client to use rustls for TLS.")
      "This package provides a lightweight atomic lock.")
     (license license:expat)))
 
+(define-public rust-try-lock-0.1
+  (package
+    (inherit rust-try-lock-0.2)
+    (name "rust-try-lock")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "try-lock" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1hp76pyzyxhcxxjacf083gpp6gf8cqwkg188yy02i2a3axqs8apf"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))))
+
 (define-public rust-trybuild-1
   (package
     (name "rust-trybuild")
@@ -39727,6 +44790,38 @@ extension for the Trust-DNS client to use rustls for TLS.")
 parser.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-tui-0.14
+  (package
+    (name "rust-tui")
+    (version "0.14.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tui" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1jfxic8kik3lc9qv541wm327mh958l3m9hmdd2qsb5cjiqm1bvcw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-1)
+        ("rust-cassowary" ,rust-cassowary-0.3)
+        ("rust-crossterm" ,rust-crossterm-0.18)
+        ("rust-easycurses" ,rust-easycurses-0.12)
+        ("rust-pancurses" ,rust-pancurses-0.16)
+        ("rust-rustbox" ,rust-rustbox-0.11)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-termion" ,rust-termion-1)
+        ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
+        ("rust-unicode-width" ,rust-unicode-width-0.1))))
+    (home-page "https://github.com/fdehau/tui-rs")
+    (synopsis "Library to build rich terminal user interfaces or dashboards")
+    (description
+     "This package provides a library to build rich terminal user interfaces
+or dashboards.")
+    (license license:expat)))
+
 (define-public rust-tuikit-0.4
   (package
     (name "rust-tuikit")
@@ -39782,6 +44877,69 @@ parser.")
        #:cargo-development-inputs
        (("rust-env-logger" ,rust-env-logger-0.6))))))
 
+(define-public rust-tungstenite-0.11
+  (package
+    (name "rust-tungstenite")
+    (version "0.11.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tungstenite" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "08ra94x3zqkmbsrcmwszknxv2a8g08gk5xlyif3wa037v208sc7h"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.12)
+        ("rust-byteorder" ,rust-byteorder-1)
+        ("rust-bytes" ,rust-bytes-0.5)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-httparse" ,rust-httparse-1)
+        ("rust-input-buffer" ,rust-input-buffer-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-native-tls" ,rust-native-tls-0.2)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-sha-1" ,rust-sha-1-0.9)
+        ("rust-url" ,rust-url-2)
+        ("rust-utf-8" ,rust-utf-8-0.7))))
+    (home-page "https://github.com/snapview/tungstenite-rs")
+    (synopsis "Lightweight stream-based WebSocket implementation")
+    (description
+     "This library provides an implementation of WebSockets, RFC6455. It
+allows for both synchronous (like TcpStream) and asynchronous usage and is
+easy to integrate into any third-party event loops including MIO.  The API
+design abstracts away all the internals of the WebSocket protocol but still
+makes them accessible for those who wants full control over the network.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-twoway-0.1
+  (package
+    (name "rust-twoway")
+    (version "0.1.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "twoway" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1lbf64snscr3vz71jbl6i2c8zr2ndsiqbk6316z39fj1a8mipcar"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-galil-seiferas" ,rust-galil-seiferas-0.1)
+        ("rust-jetscii" ,rust-jetscii-0.3)
+        ("rust-memchr" ,rust-memchr-2)
+        ("rust-unchecked-index" ,rust-unchecked-index-0.2))))
+    (home-page "https://github.com/bluss/twoway")
+    (synopsis "Fast substring search for strings and byte strings")
+    (description
+     "This package provides a fast substring search for strings and byte
+strings.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-typeable-0.1
   (package
     (name "rust-typeable")
@@ -40069,6 +45227,25 @@ panic-free alternative to @code{core::fmt}.")
     (description "This package provides @code{μfmt}'s @code{uWrite} trait.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-umask-1
+  (package
+    (name "rust-umask")
+    (version "1.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "umask" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0ipyyv82lpy5xpqzmq3ra0d61vsd3bfh6b06c9w8zln41vvznblq"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/Canop/umask")
+    (synopsis "Utility to deal with unix access mode")
+    (description
+     "This package provides an utility to deal with Unix access mode.")
+    (license license:expat)))
+
 (define-public rust-unchecked-index-0.2
   (package
     (name "rust-unchecked-index")
@@ -40305,6 +45482,27 @@ Unicode and Internationalization Crates (UNIC) project.")
      "Implementation of the Unicode Bidirectional Algorithm.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-unicode-categories-0.1
+  (package
+    (name "rust-unicode-categories")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "unicode_categories" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0kp1d7fryxxm7hqywbk88yb9d1avsam9sg76xh36k5qx2arj9v1r"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/swgillespie/unicode-categories")
+    (synopsis "Query Unicode category membership for chars")
+    (description
+     "unicode-categories is a simple crate that adds many extensions to the
+char type that allow for the querying if whether or not a character is
+a member of a certain category of Unicode characters.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-unicode-normalization-0.1
   (package
     (name "rust-unicode-normalization")
@@ -40470,6 +45668,24 @@ whitespace from a string.")
     (description "This package provides traits for universal hash functions.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-universal-hash-0.3
+  (package
+    (inherit rust-universal-hash-0.4)
+    (name "rust-universal-hash")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "universal-hash" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "00aa241pab99z66f0s464vdrxnk3igs8z1qm6j01chcv5w7r036z"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-generic-array" ,rust-generic-array-0.12)
+        ("rust-subtle" ,rust-subtle-2))))))
+
 (define-public rust-unix-socket-0.5
   (package
     (name "rust-unix-socket")
@@ -40633,6 +45849,26 @@ untrusted inputs in Rust.")
         ("rust-rustc-test" ,rust-rustc-test-0.3)
         ("rust-serde-json" ,rust-serde-json-1))))))
 
+(define-public rust-urlencoding-1
+  (package
+    (name "rust-urlencoding")
+    (version "1.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "urlencoding" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "14sm5c8idb5jzib8dwf85p5yhd65vxjh946p80p49d2j6fsjw8y9"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://lib.rs/urlencoding")
+    (synopsis "Rust library for doing URL percentage encoding")
+    (description
+     "This package provides a Rust library for doing URL percentage
+encoding.")
+    (license license:expat)))
+
 (define-public rust-urlocator-0.1
  (package
    (name "rust-urlocator")
@@ -40685,8 +45921,32 @@ untrusted inputs in Rust.")
 See winapi for types and constants.")
     (license license:expat)))
 
+(define-public rust-users-0.11
+  (package
+    (name "rust-users")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "users" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0cmhafhhka2yya66yrprlv33kg7rm1xh1pyalbjp6yr6dxnhzk14"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-log" ,rust-log-0.4))))
+    (home-page "https://github.com/ogham/rust-users")
+    (synopsis "Library for getting information on Unix users and groups")
+    (description "This package provides a library for getting information on
+Unix users and groups.")
+    (license license:expat)))
+
 (define-public rust-users-0.10
   (package
+    (inherit rust-users-0.11)
     (name "rust-users")
     (version "0.10.0")
     (source
@@ -40698,18 +45958,12 @@ See winapi for types and constants.")
         (sha256
          (base32
           "11plda5r3dl8hs0sl0jskazam4ayv3a06vmhzk4l7914agljfhma"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-libc" ,rust-libc-0.2)
         ("rust-log" ,rust-log-0.4))
        #:cargo-development-inputs
-       (("rust-env-logger" ,rust-env-logger-0.7))))
-    (home-page "https://github.com/ogham/rust-users")
-    (synopsis "Library for getting information on Unix users and groups")
-    (description "This package provides a library for getting information on
-Unix users and groups.")
-    (license license:expat)))
+       (("rust-env-logger" ,rust-env-logger-0.7))))))
 
 (define-public rust-users-0.9
   (package
@@ -40850,7 +46104,7 @@ first byte.")
 (define-public rust-uuid-0.8
   (package
     (name "rust-uuid")
-    (version "0.8.1")
+    (version "0.8.2")
     (source
       (origin
         (method url-fetch)
@@ -40859,17 +46113,17 @@ first byte.")
          (string-append name "-" version ".tar.gz"))
         (sha256
          (base32
-          "049w16qwk3d3b9cmpgvd7fvcnwgs75l8rlsagh06w7ga9dm2zplz"))))
+          "1dy4ldcp7rnzjy56dxh7d2sgrcvn4q77y0a8r0a48946h66zjp5w"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-winapi" ,rust-winapi-0.3)
-        ("rust-sha1" ,rust-sha1-0.6)
-        ("rust-md5" ,rust-md5-0.6)
-        ("rust-rand" ,rust-rand-0.7)
+       (("rust-getrandom" ,rust-getrandom-0.2)
+        ("rust-md5" ,rust-md5-0.7)
         ("rust-serde" ,rust-serde-1)
-        ("rust-slog" ,rust-slog-2))))
+        ("rust-sha1" ,rust-sha1-0.6)
+        ("rust-slog" ,rust-slog-2)
+        ("rust-winapi" ,rust-winapi-0.3))))
     (home-page "https://github.com/uuid-rs/uuid")
     (synopsis "Library to generate and parse UUIDs")
     (description
@@ -40933,6 +46187,59 @@ first byte.")
         ("rust-serde" ,rust-serde-1)
         ("rust-sha1" ,rust-sha1-0.2))))))
 
+(define-public rust-v-frame-0.2
+  (package
+    (name "rust-v-frame")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "v_frame" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0xqf7dynsc6fm94jz3hknwi2n4ch1j7wrs0dd333r1ldniw49rf3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-1)
+        ("rust-noop-proc-macro" ,rust-noop-proc-macro-0.3)
+        ("rust-num-derive" ,rust-num-derive-0.3)
+        ("rust-num-traits" ,rust-num-traits-0.2)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))))
+    (home-page "https://github.com/xiph/rav1e")
+    (synopsis "@code{Video Frame} data structures, part of rav1e")
+    (description
+     "This package provides @code{Video Frame} data structures, as a part of
+rav1e.")
+    (license license:bsd-2)))
+
+(define-public rust-value-bag-1
+  (package
+    (name "rust-value-bag")
+    (version "1.0.0-alpha.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "value-bag" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1cas61n2vkf9b82ljv6dzs8hp8s07arl68vw24rr1jamw0860rvb"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ctor" ,rust-ctor-0.1)
+        ("rust-erased-serde" ,rust-erased-serde-0.3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-fmt" ,rust-serde-fmt-1)
+        ("rust-sval" ,rust-sval-1))))
+    (home-page "https://github.com/sval-rs/value-bag")
+    (synopsis "Anonymous structured values")
+    (description "This package provides anonymous structured values.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-vcpkg-0.2
   (package
     (name "rust-vcpkg")
@@ -41446,19 +46753,81 @@ result.")
     (description "Detect when another Future wants a result.")
     (license license:expat)))
 
+(define-public rust-want-0.0
+  (package
+    (inherit rust-want-0.3)
+    (name "rust-want")
+    (version "0.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "want" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1l9mbh4a0r2m3s8nckhy1vz9qm6lxsswlgxpimf4pyjkcyb9spd0"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-try-lock" ,rust-try-lock-0.1))))))
+
+(define-public rust-warp-0.2
+  (package
+    (name "rust-warp")
+    (version "0.2.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "warp" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "01wl8kv5hh1dd7gcwdrmn9xfs7jjsh9yc8xa06ph8yf9akgyc6zl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-async-compression" ,rust-async-compression-0.3)
+        ("rust-bytes" ,rust-bytes-0.5)
+        ("rust-futures" ,rust-futures-0.3)
+        ("rust-headers" ,rust-headers-0.3)
+        ("rust-http" ,rust-http-0.2)
+        ("rust-hyper" ,rust-hyper-0.13)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime" ,rust-mime-0.3)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-multipart" ,rust-multipart-0.17)
+        ("rust-pin-project" ,rust-pin-project-0.4)
+        ("rust-scoped-tls" ,rust-scoped-tls-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.6)
+        ("rust-tokio" ,rust-tokio-0.2)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.14)
+        ("rust-tokio-tungstenite" ,rust-tokio-tungstenite-0.11)
+        ("rust-tower-service" ,rust-tower-service-0.3)
+        ("rust-tracing" ,rust-tracing-0.1)
+        ("rust-tracing-futures" ,rust-tracing-futures-0.2)
+        ("rust-urlencoding" ,rust-urlencoding-1))))
+    (home-page "https://github.com/seanmonstar/warp")
+    (synopsis "Composable web server framework")
+    (description "Warp is a composable, web server framework.")
+    (license license:expat)))
+
 (define-public rust-wasi-0.9
   (package
     (name "rust-wasi")
     (version "0.9.0+wasi-snapshot-preview1")
     (source
-      (origin
-        (method url-fetch)
-        (uri (crate-uri "wasi" version))
-        (file-name
-         (string-append name "-" version ".tar.gz"))
-        (sha256
-         (base32
-          "06g5v3vrdapfzvfq662cij7v8a1flwr2my45nnncdv2galrdzkfc"))))
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "wasi" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "06g5v3vrdapfzvfq662cij7v8a1flwr2my45nnncdv2galrdzkfc"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -42067,6 +47436,26 @@ with webpki.")
        (("rust-untrusted" ,rust-untrusted-0.6)
         ("rust-webpki" ,rust-webpki-0.19))))))
 
+(define-public rust-webpki-roots-0.15
+  (package
+    (inherit rust-webpki-roots-0.20)
+    (name "rust-webpki-roots")
+    (version "0.15.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "webpki-roots" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1gya8j75jnvf9lz36w0l4bf2xnw8qdx6plvhia891mcgj44g9lc5"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-untrusted" ,rust-untrusted-0.6)
+        ("rust-webpki" ,rust-webpki-0.18))))))
+
 (define-public rust-webpki-roots-0.14
   (package/inherit rust-webpki-roots-0.18
     (name "rust-webpki-roots")
@@ -42105,6 +47494,28 @@ with webpki.")
      "This package provides a WebIDL Parser.")
     (license license:expat)))
 
+(define-public rust-weezl-0.1
+  (package
+    (name "rust-weezl")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "weezl" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0v16mvdmsicinbhgsm1l7gq1jmcaqrvm22rgn9lrhkhg71wb6cja"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-futures" ,rust-futures-0.3))))
+    (home-page "https://github.com/image-rs/lzw.git")
+    (synopsis "Fast LZW compression and decompression")
+    (description
+     "This package provides fast LZW compression and decompression.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-wepoll-sys-3
   (package
     (name "rust-wepoll-sys")
@@ -42151,8 +47562,33 @@ with webpki.")
 using @code{bindgen}.")
     (license license:mpl2.0)))
 
+(define-public rust-which-4
+  (package
+    (name "rust-which")
+    (version "4.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "which" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1vqih4glz0kh3p08bl8mdzk4c02195ws7v6mfpyfrf5qw7vlxhc7"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-thiserror" ,rust-thiserror-1))))
+    (home-page "https://github.com/harryfei/which-rs.git")
+    (synopsis "Rust equivalent of Unix command @command{which}")
+    (description
+     "This package provides a Rust equivalent of Unix command @command{which}.
+It locates installed executable in cross platforms.")
+    (license license:expat)))
+
 (define-public rust-which-3
   (package
+    (inherit rust-which-4)
     (name "rust-which")
     (version "3.1.1")
     (source
@@ -42164,21 +47600,15 @@ using @code{bindgen}.")
         (sha256
          (base32
           "094pw9pi48szshn9ln69z2kg7syq1jp80h5ps1qncbsaw4d0f4fh"))))
-    (build-system cargo-build-system)
     (arguments
       `(#:skip-build? #t
         #:cargo-inputs
         (("rust-failure" ,rust-failure-0.1)
-         ("rust-libc" ,rust-libc-0.2))))
-    (home-page "https://github.com/harryfei/which-rs.git")
-    (synopsis "Rust equivalent of Unix command \"which\"")
-    (description
-     "This package provides a Rust equivalent of Unix command \"which\".  Locate
-installed executable in cross platforms.")
-    (license license:expat)))
+         ("rust-libc" ,rust-libc-0.2))))))
 
 (define-public rust-which-2
   (package
+    (inherit rust-which-4)
     (name "rust-which")
     (version "2.0.1")
     (source
@@ -42190,20 +47620,13 @@ installed executable in cross platforms.")
        (sha256
         (base32
          "0r7i793sc0xqnd2fxnqbksj7j1kx65bwn81b8z49750v4c8cnymm"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
        (("rust-failure" ,rust-failure-0.1)
         ("rust-libc" ,rust-libc-0.2))
        #: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 executable in cross platforms.")
-    (license license:expat)))
+       (("rust-tempdir" ,rust-tempdir-0.3))))))
 
 (define-public rust-which-1
   (package
@@ -42467,6 +47890,23 @@ color in a Windows console.")
     (license (list license:unlicense
                    license:expat))))
 
+(define-public rust-wincolor-0.1
+  (package
+    (inherit rust-wincolor-1)
+    (name "rust-wincolor")
+    (version "0.1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "wincolor" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0rvpvv26a8c4dla5i5hsxlkvjcjjbl0dylhhg4147m54lfcn9c7f"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-win-crypto-ng-0.4
   (package
     (name "rust-win-crypto-ng")
@@ -42583,6 +48023,26 @@ API.")
      "This package provides Rust bindings to MS Windows Registry API.")
     (license license:expat)))
 
+(define-public rust-winreg-0.5
+  (package
+    (inherit rust-winreg-0.7)
+    (name "rust-winreg")
+    (version "0.5.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "winreg" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0jkh4jj2g8g0bl7r1xvq9vv9hr4gdzphg9ndqm65q6f1jn9paym2"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clippy" ,rust-clippy-0.0)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-winapi" ,rust-winapi-0.3))))))
+
 (define-public rust-winutil-0.1
   (package
     (name "rust-winutil")
@@ -42891,6 +48351,26 @@ to XDG Base Directory specification.")
      "Push based streaming parser for xml.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-xmlparser-0.13
+  (package
+    (name "rust-xmlparser")
+    (version "0.13.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "xmlparser" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1n73ymdxpdq30fgz698095zvh8k5r264rl6pcxnyyrr19nra4jqi"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/RazrFalcon/xmlparser")
+    (synopsis "Pull-based, zero-allocation XML parser")
+    (description
+     "@code{xmlparser} is a low-level, pull-based, zero-allocation XML 1.0
+parser.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-xz2-0.1
   (package
     (name "rust-xz2")
@@ -42963,6 +48443,26 @@ Read/Write streams as well as low-level in-memory encoding and decoding.")
        (("rust-clippy" ,rust-clippy-0.0)
         ("rust-linked-hash-map" ,rust-linked-hash-map-0.3))))))
 
+(define-public rust-yansi-0.5
+  (package
+    (name "rust-yansi")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "yansi" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0wdx8syhc61lphmgw5cw1vq73isi4szjqriz1k07z19r3r59ziwz"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/SergioBenitez/yansi")
+    (synopsis "Simple ANSI terminal color painting library")
+    (description
+     "This package provides a dead simple ANSI terminal color painting
+library.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-zbase32-0.1
   (package
     (name "rust-zbase32")
@@ -43039,7 +48539,7 @@ implementation that works everywhere, even WASM!")
 (define-public rust-zip-0.5
   (package
     (name "rust-zip")
-    (version "0.5.6")
+    (version "0.5.9")
     (source
      (origin
        (method url-fetch)
@@ -43048,19 +48548,17 @@ implementation that works everywhere, even WASM!")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0zfv0ascxl8gqqxgjck99kypcb0f67lg2k1a3zwza1w5swl7qa2q"))))
+         "1i9axf7h9l04l1cy14js30svjb6zcira5yj1d4v42b14b93rca6c"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
-       (("rust-bzip2" ,rust-bzip2-0.3)
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1)
+        ("rust-bzip2" ,rust-bzip2-0.3)
         ("rust-crc32fast" ,rust-crc32fast-1)
         ("rust-flate2" ,rust-flate2-1)
-        ("rust-podio" ,rust-podio-0.1)
-        ("rust-time" ,rust-time-0.1))
-       #:cargo-development-inputs
-       (("rust-bencher" ,rust-bencher-0.1)
-        ("rust-rand" ,rust-rand-0.4)
-        ("rust-walkdir" ,rust-walkdir-1))))
+        ("rust-thiserror" ,rust-thiserror-1)
+        ("rust-time" ,rust-time-0.1))))
     (home-page "https://github.com/mvdnes/zip-rs.git")
     (synopsis
      "Library to support the reading and writing of zip files")
@@ -43241,6 +48739,36 @@ formatters with per-field documentation generated for each structure.
      "This crate provides async pipes, channels, mutexes, and more.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-ptree-0.3
+  (package
+    (name "rust-ptree")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ptree" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1bp6r88hcw0ygmdfdf1gwsj6krcah2qhwp3kw284wvni080l1zcm"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-ansi-term" ,rust-ansi-term-0.12)
+        ("rust-atty" ,rust-atty-0.2)
+        ("rust-config" ,rust-config-0.10)
+        ("rust-directories" ,rust-directories-2)
+        ("rust-petgraph" ,rust-petgraph-0.5)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-value" ,rust-serde-value-0.6)
+        ("rust-tint" ,rust-tint-1))))
+    (home-page "https://gitlab.com/Noughmad/ptree")
+    (synopsis "Pretty-print tree-like structures")
+    (description
+     "The @code{ptree} crate supports output formatting due to a user-provided
+configuration file and/or environment variables.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-xmltree-0.8
   (package
     (name "rust-xmltree")
@@ -43295,6 +48823,51 @@ formatters with per-field documentation generated for each structure.
       "This package provides a CMSIS-SVD file parser")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-sxd-document-0.3
+  (package
+    (name "rust-sxd-document")
+    (version "0.3.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sxd-document" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0y10shqmy9xb73g403rg1108wsagny9d8jrcm081pbwzpqvjzn4l"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-peresil" ,rust-peresil-0.3)
+        ("rust-typed-arena" ,rust-typed-arena-1))))
+    (home-page "https://github.com/shepmaster/sxd-document")
+    (synopsis "Rust XML DOM library")
+    (description "This package provides a Rust XML DOM library.")
+    (license license:expat)))
+
+(define-public rust-sxd-xpath-0.4
+  (package
+    (name "rust-sxd-xpath")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sxd-xpath" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1sin3g8lzans065gjcwrpm7gdpwdpdg4rpi91rlvb1q8sfjrvqrn"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-peresil" ,rust-peresil-0.3)
+        ("rust-quick-error" ,rust-quick-error-1)
+        ("rust-sxd-document" ,rust-sxd-document-0.3))))
+    (home-page "https://github.com/shepmaster/sxd-xpath")
+    (synopsis "Rust XML XPath library")
+    (description "This package provides a Rust XML XPath library.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-inflections-1
   (package
     (name "rust-inflections")