gnu: Add rust-wait-timeout-0.2.
[jackhill/guix/guix.git] / gnu / packages / crates-io.scm
index d6cf021..c3995f8 100644 (file)
@@ -456,6 +456,58 @@ and no more (caveat: black_box is still missing!).")
 that uses Serde for transforming structs into bytes and vice versa!")
     (license license:expat)))
 
+(define-public rust-bit-set-0.5
+  (package
+    (name "rust-bit-set")
+    (version "0.5.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bit-set" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "100ac8867bvbx9kv634w4xjk98b71i8nq4wdcvpf3cf4ha4j6k78"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bit-vec" ,rust-bit-vec-0.5))
+       #:cargo-development-inputs
+       (("rust-rand" ,rust-rand-0.4))))
+    (home-page "https://github.com/contain-rs/bit-set")
+    (synopsis "Set of bits")
+    (description
+     "This package provides a set of bits.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-bit-vec-0.5
+  (package
+    (name "rust-bit-vec")
+    (version "0.5.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bit-vec" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1fyh8221s6cxlmng01v8v2ljhavzawqqs8r1xjc66ap5sjavx6zm"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-serde-json" ,rust-serde-json-1.0))))
+    (home-page "https://github.com/contain-rs/bit-vec")
+    (synopsis "Vector of bits")
+    (description
+     "This package provides a vector of bits.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-bitflags-1
   (package
     (name "rust-bitflags")
@@ -498,6 +550,84 @@ behave like a set of bitflags.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-blobby-0.1
+  (package
+    (name "rust-blobby")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "blobby" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1xicpf3s2mi5xqnx8ps5mdych4ib5nh2nfsbrsg8ar8bjk1girbg"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1.3))
+       #:cargo-development-inputs
+       (("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-hex" ,rust-hex-0.3))))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Iterator over simple binary blob storage")
+    (description
+     "Iterator over simple binary blob storage.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-block-buffer-0.7
+  (package
+    (name "rust-block-buffer")
+    (version "0.7.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "block-buffer" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12v8wizynqin0hqf140kmp9s38q223mp1b0hkqk8j5pk8720v560"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-block-padding" ,rust-block-padding-0.1)
+        ("rust-byte-tools" ,rust-byte-tools-0.3)
+        ("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-generic-array" ,rust-generic-array-0.12))))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Fixed size buffer for block processing of data")
+    (description
+     "Fixed size buffer for block processing of data.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-block-padding-0.1
+  (package
+    (name "rust-block-padding")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "block-padding" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "02fz9wx5dmgpc79ndrb9xfxqlrkk7lg5wki2blz2zqg27spw6kbd"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byte-tools" ,rust-byte-tools-0.3))))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Padding and unpadding of messages divided into blocks")
+    (description
+     "Padding and unpadding of messages divided into blocks.")
+    (license (list license:asl1.1 license:expat))))
+
 (define-public rust-bumpalo-2.5
   (package
     (name "rust-bumpalo")
@@ -571,6 +701,26 @@ UTF-8.")
         (base32
          "0nzi9vqhl56ws8gq39f3aj4qjrr4l3g5lbkkcj8xq1x4cb74wq2r"))))))
 
+(define-public rust-byte-tools-0.3
+  (package
+    (name "rust-byte-tools")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "byte-tools" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1mqi29wsm8njpl51pfwr31wmpzs5ahlcb40wsjyd92l90ixcmdg3"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Bytes related utility functions")
+    (description "Bytes related utility functions.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-byteorder-1.3
   (package
     (name "rust-byteorder")
@@ -630,6 +780,35 @@ little-endian.")
      "Types and traits for working with bytes.")
     (license license:expat)))
 
+(define-public rust-c2-chacha-0.2
+  (package
+    (name "rust-c2-chacha")
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "c2-chacha" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00a11qdc8mg3z0k613rhprkc9p6xz0y7b1681x32ixg0hr3x0r3x"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-ppv-lite86" ,rust-ppv-lite86-0.2)
+        ("rust-stream-cipher" ,rust-stream-cipher-0.3))
+       #:cargo-development-inputs
+       (("rust-hex-literal" ,rust-hex-literal-0.2))))
+    (home-page "https://github.com/cryptocorrosion/cryptocorrosion")
+    (synopsis "The ChaCha family of stream ciphers")
+    (description
+     "The ChaCha family of stream ciphers.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-cargon-0.0
   (package
     (name "rust-cargon")
@@ -983,6 +1162,39 @@ need compiler-rt intrinsics.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-console-0.7
+  (package
+    (name "rust-console")
+    (version "0.7.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "console" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0a4n2syzik9lh02v2i4wdazvm05d99bib7dw0lqvz8mq2hn7r9cc"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-atty" ,rust-atty-0.2)
+        ("rust-clicolors-control" ,rust-clicolors-control-1.0)
+        ("rust-encode-unicode" ,rust-encode-unicode-0.3)
+        ("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-parking-lot" ,rust-parking-lot-0.8)
+        ("rust-regex" ,rust-regex-1.1)
+        ("rust-termios" ,rust-termios-0.3)
+        ("rust-unicode-width" ,rust-unicode-width-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/mitsuhiko/console")
+    (synopsis "Terminal and console abstraction for Rust")
+    (description
+     "This package provides a terminal and console abstraction for Rust.")
+    (license license:expat)))
+
 (define-public rust-console-error-panic-hook-0.1
   (package
     (name "rust-console-error-panic-hook")
@@ -1610,6 +1822,58 @@ hexadecimal, base32, and base64.")
      "An LCS based slice and string diffing implementation.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-difference-2.0
+  (package
+    (name "rust-difference")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "difference" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1621wx4k8h452p6xzmzzvm7mz87kxh4yqz0kzxfjj9xmjxlbyk2j"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-getopts" ,rust-getopts-0.2))
+       #:cargo-development-inputs
+       (("rust-quickcheck" ,rust-quickcheck-0.8)
+        ("rust-term" ,rust-term-0.5))))
+    (home-page "https://github.com/johannhof/difference.rs")
+    (synopsis "Rust text diffing and assertion library")
+    (description
+     "This package provides a Rust text diffing and assertion library.")
+    (license license:expat)))
+
+(define-public rust-digest-0.8
+  (package
+    (name "rust-digest")
+    (version "0.8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "digest" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1madjl27f3kj5ql7kwgvb9c8b7yb7bv7yfgx7rqzj4i3fp4cil7k"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-blobby" ,rust-blobby-0.1)
+        ("rust-generic-array" ,rust-generic-array-0.13))))
+    (home-page "https://github.com/RustCrypto/traits")
+    (synopsis "Traits for cryptographic hash functions")
+    (description
+     "Traits for cryptographic hash functions.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-dirs-1.0
   (package
     (name "rust-dirs")
@@ -1790,6 +2054,149 @@ floating-point primitives to an @code{io::Write}.")
 char, u8 and u16.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-encoding-index-japanese-1.20141219
+  (package
+    (name "rust-encoding-index-japanese")
+    (version "1.20141219.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "encoding-index-japanese" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "148c1lmd640p1d7fzk0nv7892mbyavvwddgqvcsm78798bzv5s04"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-index-tests" ,rust-encoding-index-tests-0.1))))
+    (home-page "https://github.com/lifthrasiir/rust-encoding")
+    (synopsis "Index tables for Japanese character encodings")
+    (description
+     "Index tables for Japanese character encodings.")
+    (license license:cc0)))
+
+(define-public rust-encoding-index-korean-1.20141219
+  (package
+    (name "rust-encoding-index-korean")
+    (version "1.20141219.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "encoding-index-korean" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10cxabp5ppygbq4y6y680856zl9zjvq7ahpiw8zj3fmwwsw3zhsd"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-index-tests" ,rust-encoding-index-tests-0.1))))
+    (home-page "https://github.com/lifthrasiir/rust-encoding")
+    (synopsis "Index tables for Korean character encodings")
+    (description
+     "Index tables for Korean character encodings.")
+    (license license:cc0)))
+
+(define-public rust-encoding-index-simpchinese-1.20141219
+  (package
+    (name "rust-encoding-index-simpchinese")
+    (version "1.20141219.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "encoding-index-simpchinese" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1xria2i7mc5dqdrpqxasdbxv1qx46jjbm53if3y1i4cvj2a72ynq"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-index-tests" ,rust-encoding-index-tests-0.1))))
+    (home-page "https://github.com/lifthrasiir/rust-encoding")
+    (synopsis "Index tables for simplified Chinese character encodings")
+    (description
+     "Index tables for simplified Chinese character encodings.")
+    (license license:cc0)))
+
+(define-public rust-encoding-index-singlebyte-1.20141219
+  (package
+    (name "rust-encoding-index-singlebyte")
+    (version "1.20141219.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "encoding-index-singlebyte" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0jp85bz2pprzvg9m95w4q0vibh67b6w3bx35lafay95jzyndal9k"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-index-tests" ,rust-encoding-index-tests-0.1))))
+    (home-page "https://github.com/lifthrasiir/rust-encoding")
+    (synopsis "Index tables for various single-byte character encodings")
+    (description
+     "Index tables for various single-byte character encodings.")
+    (license license:cc0)))
+
+(define-public rust-encoding-index-tests-0.1
+  (package
+    (name "rust-encoding-index-tests")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "encoding_index_tests" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0s85y091gl17ixass49bzaivng7w8p82p6nyvz2r3my9w4mxhim2"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/lifthrasiir/rust-encoding")
+    (synopsis
+     "Macros used to test index tables for character encodings")
+    (description
+     "Helper macros used to test index tables for character
+encodings.")
+    (license license:cc0)))
+
+(define-public rust-encoding-index-tradchinese-1.20141219
+  (package
+    (name "rust-encoding-index-tradchinese")
+    (version "1.20141219.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "encoding-index-tradchinese" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "060ci4iz6xfvzk38syfbjvs7pix5hch3mvxkksswmqwcd3aj03px"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding-index-tests" ,rust-encoding-index-tests-0.1))))
+    (home-page "https://github.com/lifthrasiir/rust-encoding")
+    (synopsis "Index tables for traditional Chinese character encodings")
+    (description
+     "Index tables for traditional Chinese character encodings.")
+    (license license:cc0)))
+
 (define-public rust-env-logger-0.6
   (package
     (name "rust-env-logger")
@@ -1817,60 +2224,134 @@ char, u8 and u16.")
     (synopsis
      "Logging implementation for @code{log}")
     (description
-     "This package provides a logging implementation for @code{log} which
-is configured via an environment variable.")
-    (license (list license:expat license:asl2.0))))
+     "This package provides a logging implementation for @code{log} which
+is configured via an environment variable.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-envmnt-0.6
+  (package
+    (name "rust-envmnt")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "envmnt" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "12zkq3p999bypyxmjnpiqw9r3hmifb3bcikd7j3as1fdcbq01fyl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-indexmap" ,rust-indexmap-1.0))))
+    (home-page "https://github.com/sagiegurari/envmnt")
+    (synopsis "Environment variables utility functions")
+    (description
+     "Environment variables utility functions.")
+    (license license:asl2.0)))
+
+(define-public rust-erased-serde-0.3
+  (package
+    (name "rust-erased-serde")
+    (version "0.3.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "erased-serde" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0q7bnxs5zskfq5iillig55g7891dllcxh2p8y8k1p2j72syf9viv"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-serde-cbor" ,rust-serde-cbor-0.10)
+        ("rust-serde-derive" ,rust-serde-derive-1.0)
+        ("rust-serde-json" ,rust-serde-json-1.0))))
+    (home-page "https://github.com/dtolnay/erased-serde")
+    (synopsis "Type-erased Serialize and Serializer traits")
+    (description
+     "Type-erased Serialize and Serializer traits.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-fake-simd-0.1
+  (package
+    (name "rust-fake-simd")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "fake-simd" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1vfylvk4va2ivqx85603lyqqp0zk52cgbs4n5nfbbbqx577qm2p8"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Crate for mimicking simd crate on stable Rust")
+    (description
+     "Crate for mimicking simd crate on stable Rust.")
+    (license (list license:asl2.0 license:expat))))
 
-(define-public rust-envmnt-0.6
+(define-public rust-failure-0.1
   (package
-    (name "rust-envmnt")
-    (version "0.6.0")
+    (name "rust-failure")
+    (version "0.1.5")
     (source
      (origin
        (method url-fetch)
-       (uri (crate-uri "envmnt" version))
+       (uri (crate-uri "failure" version))
        (file-name
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "12zkq3p999bypyxmjnpiqw9r3hmifb3bcikd7j3as1fdcbq01fyl"))))
+         "1qppmgv4i5jj6vrss91qackqnl0a12h7lnby4l7j5fdy78yxhnvr"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-indexmap" ,rust-indexmap-1.0))))
-    (home-page "https://github.com/sagiegurari/envmnt")
-    (synopsis "Environment variables utility functions")
+       (("rust-backtrace" ,rust-backtrace-0.3)
+        ("rust-failure-derive" ,rust-failure-derive-0.1))))
+    (home-page "https://rust-lang-nursery.github.io/failure/")
+    (synopsis "Experimental error handling abstraction")
     (description
-     "Environment variables utility functions.")
-    (license license:asl2.0)))
+     "Experimental error handling abstraction.")
+    (license (list license:asl2.0 license:expat))))
 
-(define-public rust-erased-serde-0.3
+(define-public rust-failure-derive-0.1
   (package
-    (name "rust-erased-serde")
-    (version "0.3.9")
+    (name "rust-failure-derive")
+    (version "0.1.5")
     (source
      (origin
        (method url-fetch)
-       (uri (crate-uri "erased-serde" version))
+       (uri (crate-uri "failure_derive" version))
        (file-name
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0q7bnxs5zskfq5iillig55g7891dllcxh2p8y8k1p2j72syf9viv"))))
+         "1q97n7dp51j5hndzic9ng2fgn6f3z5ya1992w84l7vypby8n647a"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
        #:cargo-inputs
-       (("rust-serde" ,rust-serde-1.0))
+       (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-1.0)
+        ("rust-syn" ,rust-syn-0.15)
+        ("rust-synstructure" ,rust-synstructure-0.10))
        #:cargo-development-inputs
-       (("rust-serde-cbor" ,rust-serde-cbor-0.10)
-        ("rust-serde-derive" ,rust-serde-derive-1.0)
-        ("rust-serde-json" ,rust-serde-json-1.0))))
-    (home-page "https://github.com/dtolnay/erased-serde")
-    (synopsis "Type-erased Serialize and Serializer traits")
-    (description
-     "Type-erased Serialize and Serializer traits.")
+       (("rust-failure" ,rust-failure-0.1))))
+    (home-page "https://rust-lang-nursery.github.io/failure/")
+    (synopsis "Derives for the failure crate")
+    (description "Derives for the failure crate.")
     (license (list license:asl2.0 license:expat))))
 
 (define-public rust-fallible-iterator-0.2
@@ -1963,6 +2444,59 @@ cross platform API.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-flame-0.2
+  (package
+    (name "rust-flame")
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "flame" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0c5bmhyimzxch3pmh0w3z9n57saasgix4bmbbksr9vp1c5j71hhz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1.3)
+        ("rust-serde" ,rust-serde-1.0)
+        ("rust-serde-derive" ,rust-serde-derive-1.0)
+        ("rust-serde-json" ,rust-serde-json-1.0)
+        ("rust-thread-id" ,rust-thread-id-3.3))))
+    (home-page "https://github.com/llogiq/flame")
+    (synopsis "Profiling and flamegraph library")
+    (description "A profiling and flamegraph library.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-flamer-0.3
+  (package
+    (name "rust-flamer")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "flamer" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1b2d7jx80f3p7hqpgdi7wksaiq18k9w23p0cs2sxf7jbx2jx3bgj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-flame" ,rust-flame-0.2)
+        ("rust-quote" ,rust-quote-1.0)
+        ("rust-syn" ,rust-syn-0.15))))
+    (home-page "https://github.com/llogiq/flamer")
+    (synopsis "Macro to insert @code{flame::start_guard(_)}")
+    (description
+     "A procedural macro to insert @code{flame::start_guard(_)} calls.")
+    (license license:asl2.0)))
+
 (define-public rust-flate2-1.0
   (package
     (name "rust-flate2")
@@ -2446,6 +2980,36 @@ archive to be linked into Rustcode.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-generic-array-0.13
+  (package
+    (name "rust-generic-array")
+    (version "0.13.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "generic-array" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1kddwxpd58y807y1r3lijg7sw3gxm6nczl6wp57gamhv6mhygl8f"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1.0)
+        ("rust-typenum" ,rust-typenum-1.10))
+       #:cargo-development-inputs
+       (("rust-bincode" ,rust-bincode-1.1)
+        ("rust-serde-json" ,rust-serde-json-1.0))))
+    (home-page
+     "https://github.com/fizyk20/generic-array")
+    (synopsis
+     "Generic types implementing functionality of arrays")
+    (description
+     "Generic types implementing functionality of arrays.")
+    (license license:expat)))
+
 (define-public rust-getopts-0.2
   (package
     (name "rust-getopts")
@@ -2792,6 +3356,57 @@ hexadecimal representation.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-hex-literal-0.2
+  (package
+    (name "rust-hex-literal")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hex-literal" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0ni2nv3di0jpih2xnmlnr6s96zypkdr8xrw2cvk4f8fx5wb6inn3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-hex-literal-impl" ,rust-hex-literal-impl-0.2)
+        ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis
+     "Convert hexadecimal string to byte array at compile time")
+    (description
+     "Procedural macro for converting hexadecimal string to byte array at
+compile time.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-hex-literal-impl-0.2
+  (package
+    (name "rust-hex-literal-impl")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "hex-literal-impl" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04m6d1k57a9h3hhdgn0vq1hkfwjv9hfkw6q73bqn0my0qw45s286"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Internal implementation of the hex-literal crate")
+    (description
+     "Internal implementation of the hex-literal crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-humantime-1.2
   (package
     (name "rust-humantime")
@@ -2843,6 +3458,35 @@ SystemTime}}.")
     (properties '((hidden? . #t)))
     (license license:expat)))
 
+(define-public rust-idna-0.1
+  (package
+    (name "rust-idna")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "idna" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0kl4gs5kaydn4v07c6ka33spm9qdh2np0x7iw7g5zd8z1c7rxw1q"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-matches" ,rust-matches-0.1)
+        ("rust-unicode-bidi" ,rust-unicode-bidi-0.3)
+        ("rust-unicode-normalization" ,rust-unicode-normalization-0.1))
+       #:cargo-development-inputs
+       (("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-rustc-test" ,rust-rustc-test-0.3))))
+    (home-page "https://github.com/servo/rust-url/")
+    (synopsis "Internationalizing Domain Names in Applications and Punycode")
+    (description
+     "IDNA (Internationalizing Domain Names in Applications) and Punycode.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-indexmap-1.0
   (package
     (name "rust-indexmap")
@@ -3954,6 +4598,37 @@ known as zlib).")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-linked-hash-map-0.5
+  (package
+    (name "rust-linked-hash-map")
+    (version "0.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "linked-hash-map" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10qgbvh00q36ql0jh00rxh2jlq6qvl11n6mig0cvkpf4xf5bd4df"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clippy" ,rust-clippy-0.0)
+        ("rust-heapsize" ,rust-heapsize-0.4)
+        ("rust-serde" ,rust-serde-1.0)
+        ("rust-serde-test" ,rust-serde-test-1.0))))
+    (home-page
+     "https://github.com/contain-rs/linked-hash-map")
+    (synopsis
+     "HashMap wrapper that holds key-value pairs in insertion order")
+    (description
+     "This package provides a HashMap wrapper that holds key-value
+pairs in insertion order.")
+    (license (list license:asl2.0
+                   license:expat))))
+
 (define-public rust-nodrop-0.1
   (package
     (name "rust-nodrop")
@@ -4214,6 +4889,27 @@ slices (@code{.find()}, @code{RevSlice}), strings and other things.
 Things in odds may move to more appropriate crates if we find them.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-opaque-debug-0.2
+  (package
+    (name "rust-opaque-debug")
+    (version "0.2.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "opaque-debug" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "02942l2gc7w5r4js7i9063x99szic5mzzk1055j83v4diqpbpxck"))))
+    (build-system cargo-build-system)
+    (arguments `(#:skip-build? #t))
+    (home-page "https://github.com/RustCrypto/utils")
+    (synopsis "Macro for opaque Debug trait implementation")
+    (description
+     "Macro for opaque Debug trait implementation.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-openssl-0.10
   (package
     (name "rust-openssl")
@@ -4553,15 +5249,118 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}.
          (base32
           "0b1pzh48j86v46wxngch6k1kx9cdw3jr3lwa86gd6jd4bmxzz1xn"))))
     (build-system cargo-build-system)
-    (home-page "https://github.com/bluss/permutohedron")
-    (synopsis "Generate permutations of sequences")
+    (home-page "https://github.com/bluss/permutohedron")
+    (synopsis "Generate permutations of sequences")
+    (description
+     "Generate permutations of sequences.  Either lexicographical order
+permutations, or a minimal swaps permutation sequence implemented using Heap's
+algorithm.")
+    (properties '((hidden? . #t)))
+    (license (list license:asl2.0
+                   license:expat))))
+
+(define-public rust-pest-2.1
+  (package
+    (name "rust-pest")
+    (version "2.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pest" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "134686mwxm73asbiads53zfchqvvcrsrsyax2cghfcizmvg8ac4k"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-serde" ,rust-serde-1.0)
+        ("rust-serde-json" ,rust-serde-json-1.0)
+        ("rust-ucd-trie" ,rust-ucd-trie-0.1))))
+    (home-page "https://pest.rs/")
+    (synopsis "The Elegant Parser")
+    (description "The Elegant Parser.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-pest-derive-2.1
+  (package
+    (name "rust-pest-derive")
+    (version "2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pest_derive" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1l5jfa6ril71cw5nsiw0r45br54dd8cj2r1nc2d1wq6wb3jilgc3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-pest" ,rust-pest-2.1)
+        ("rust-pest-generator" ,rust-pest-generator-2.1))))
+    (home-page "https://pest.rs/")
+    (synopsis "Pest's derive macro")
+    (description "Pest's derive macro.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-pest-generator-2.1
+  (package
+    (name "rust-pest-generator")
+    (version "2.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pest_generator" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0ipnv77lqhj4d4fpfxi8m168lcjp482kszaknlardmpgqiv0a4k3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-pest" ,rust-pest-2.1)
+        ("rust-pest-meta" ,rust-pest-meta-2.1)
+        ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-1.0)
+        ("rust-syn" ,rust-syn-0.15))))
+    (home-page "https://pest.rs/")
+    (synopsis "Pest code generator")
+    (description "Pest code generator.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-pest-meta-2.1
+  (package
+    (name "rust-pest-meta")
+    (version "2.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "pest_meta" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0kaprdz3jis9bjfwhri1zncbsvack5m3gx2g5flspdy7wxnyljgj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-maplit" ,rust-maplit-1.0)
+        ("rust-pest" ,rust-pest-2.1))
+       #:cargo-development-inputs
+       (("rust-sha-1" ,rust-sha-1-0.8))))
+    (home-page "https://pest.rs")
+    (synopsis "Pest meta language parser and validator")
     (description
-     "Generate permutations of sequences.  Either lexicographical order
-permutations, or a minimal swaps permutation sequence implemented using Heap's
-algorithm.")
-    (properties '((hidden? . #t)))
-    (license (list license:asl2.0
-                   license:expat))))
+     "Pest meta language parser and validator.")
+    (license (list license:asl2.0 license:expat))))
 
 (define-public rust-petgraph-0.4
   (package
@@ -4966,8 +5765,35 @@ useful types and distributions, and some randomness-related algorithms.")
          (base32
           "0v679h38pjjqj5h4md7v2slsvj6686qgcn7p9fbw3h43iwnk1b34"))))))
 
+(define-public rust-rand-chacha-0.2
+  (package
+    (name "rust-rand-chacha")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rand_chacha" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "178d36jfkc4v95s25scc2vibj2hd2hlk64cs6id4hvzg89whd4z1"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-c2-chacha" ,rust-c2-chacha-0.2)
+        ("rust-rand-core" ,rust-rand-core-0.5))
+       #:cargo-development-inputs
+       (("rust-autocfg" ,rust-autocfg-0.1))))
+    (home-page "https://crates.io/crates/rand-chacha")
+    (synopsis "ChaCha random number generator")
+    (description "ChaCha random number generator.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-rand-chacha-0.1
   (package
+    (inherit rust-rand-chacha-0.2)
     (name "rust-rand-chacha")
     (version "0.1.1")
     (source
@@ -4978,13 +5804,12 @@ useful types and distributions, and some randomness-related algorithms.")
         (sha256
          (base32
           "1vxwyzs4fy1ffjc8l00fsyygpiss135irjf7nyxgq2v0lqf3lvam"))))
-    (build-system cargo-build-system)
-    (home-page "https://crates.io/crates/rand_chacha")
-    (synopsis "ChaCha random number generator")
-    (description "ChaCha random number generator")
-    (properties '((hidden? . #t)))
-    (license (list license:asl2.0
-                   license:expat))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-rand-core" ,rust-rand-core-0.3))
+       #:cargo-development-inputs
+       (("rust-autocfg" ,rust-autocfg-0.1))))))
 
 (define-public rust-rand-core-0.5
   (package
@@ -5541,6 +6366,35 @@ uses finite automata and guarantees linear time matching on all inputs.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-ron-0.4
+  (package
+    (name "rust-ron")
+    (version "0.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "ron" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1mrqdgw3w0yypg24jyq9mphp4zr9lr0ks7yam82m4n34x6njijyr"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-base64" ,rust-base64-0.10)
+        ("rust-bitflags" ,rust-bitflags-1)
+        ("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-serde-bytes" ,rust-serde-bytes-0.11)
+        ("rust-serde-json" ,rust-serde-json-1.0))))
+    (home-page "https://github.com/ron-rs/ron")
+    (synopsis "Rusty Object Notation")
+    (description "Rusty Object Notation.")
+    (license (list license:asl2.0
+                   license:expat))))
+
 (define-public rust-rustc-demangle-0.1
   (package
     (name "rust-rustc-demangle")
@@ -6161,6 +7015,67 @@ Pwrite traits from the scroll crate.")
      "Token De/Serializer for testing De/Serialize implementations.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-serde-yaml-0.8
+  (package
+    (name "rust-serde-yaml")
+    (version "0.8.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde_yaml" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10mmjpnshgrwij01a13679nxy1hnh5yfr0343kh0y9p5j2d8mc1q"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-dtoa" ,rust-dtoa-0.4)
+        ("rust-linked-hash-map" ,rust-linked-hash-map-0.5)
+        ("rust-serde" ,rust-serde-1.0)
+        ("rust-yaml-rust" ,rust-yaml-rust-0.4))
+       #:cargo-development-inputs
+       (("rust-serde-derive" ,rust-serde-derive-1.0)
+        ("rust-unindent" ,rust-unindent-0.1)
+        ("rust-version-sync" ,rust-version-sync-0.8))))
+    (home-page
+     "https://github.com/dtolnay/serde-yaml")
+    (synopsis "YAML support for Serde")
+    (description "YAML support for Serde.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-sha-1-0.8
+  (package
+    (name "rust-sha-1")
+    (version "0.8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sha-1" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0s6fdy5wp3x4h2z4fcl2d9vjvrpzr87v4h49r51xcq8nm4qj35i3"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-block-buffer" ,rust-block-buffer-0.7)
+        ("rust-digest" ,rust-digest-0.8)
+        ("rust-fake-simd" ,rust-fake-simd-0.1)
+        ("rust-opaque-debug" ,rust-opaque-debug-0.2)
+        ("rust-sha1-asm" ,rust-sha1-asm-0.4))
+       #:cargo-development-inputs
+       (("rust-digest" ,rust-digest-0.8)
+        ("rust-hex-literal" ,rust-hex-literal-0.2))))
+    (home-page "https://github.com/RustCrypto/hashes")
+    (synopsis "SHA-1 hash function")
+    (description "SHA-1 hash function.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-sha1-0.6
   (package
     (name "rust-sha1")
@@ -6189,6 +7104,30 @@ Pwrite traits from the scroll crate.")
      "Minimal implementation of SHA1 for Rust.")
     (license license:bsd-3)))
 
+(define-public rust-sha1-asm-0.4
+  (package
+    (name "rust-sha1-asm")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "sha1-asm" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1i1i8viy6y30mv9v5hwhg9w6b722qkyh9c6n8bn4d27jpv14pg0s"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-development-inputs
+       (("rust-cc" ,rust-cc-1.0))))
+    (home-page "https://github.com/RustCrypto/asm-hashes")
+    (synopsis "Assembly implementation of SHA-1 compression function")
+    (description
+     "Assembly implementation of SHA-1 compression function.")
+    (license license:expat)))
+
 (define-public rust-shlex-0.1
   (package
     (name "rust-shlex")
@@ -6422,6 +7361,32 @@ deeply recursive algorithms that may accidentally blow the stack.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-stackvector-1.0
+  (package
+    (name "rust-stackvector")
+    (version "1.0.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "stackvector" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1bv820fhdad16islwli1g3iksk39ivf0zaqz4j1m08vq15jjaiqw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-unreachable" ,rust-unreachable-1.0))
+       #:cargo-development-inputs
+       (("rust-rustc-version" ,rust-rustc-version-0.2))))
+    (home-page "https://github.com/Alexhuszagh/rust-stackvector")
+    (synopsis "Vector-like facade for stack-allocated arrays")
+    (description
+     "StackVec: vector-like facade for stack-allocated arrays.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-static-assertions-0.3
   (package
     (name "rust-static-assertions")
@@ -6544,6 +7509,30 @@ crate.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-stream-cipher-0.3
+  (package
+    (name "rust-stream-cipher")
+    (version "0.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "stream-cipher" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1g1nd8r6pph70rzk5yyvg7a9ji7pkap9ddiqpp4v9xa9ys0bqqc8"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-blobby" ,rust-blobby-0.1)
+        ("rust-generic-array" ,rust-generic-array-0.13))))
+    (home-page "https://github.com/RustCrypto/traits")
+    (synopsis "Stream cipher traits")
+    (description "Stream cipher traits.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-streaming-stats-0.2
   (package
     (name "rust-streaming-stats")
@@ -6648,6 +7637,35 @@ and Jaro-Winkler.")
         ("rust-walkdir" ,rust-walkdir-2.2))))
     (properties '())))
 
+(define-public rust-synstructure-0.10
+  (package
+    (name "rust-synstructure")
+    (version "0.10.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "synstructure" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0grirdkgh2wl4hf9a3nbiazpgccxgq54kn52ms0xrr6njvgkwd82"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-quote" ,rust-quote-1.0)
+        ("rust-syn" ,rust-syn-0.15)
+        ("rust-unicode-xid" ,rust-unicode-xid-0.1))
+       #:cargo-development-inputs
+       (("rust-synstructure-test-traits" ,rust-synstructure-test-traits-0.1))))
+    (home-page "https://github.com/mystor/synstructure")
+    (synopsis "Helper methods and macros for custom derives")
+    (description
+     "Helper methods and macros for custom derives.")
+    (license license:expat)))
+
 (define-public rust-synstructure-test-traits-0.1
   (package
     (name "rust-synstructure-test-traits")
@@ -7570,6 +8588,62 @@ with the Unicode character database.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-unicode-bidi-0.3
+  (package
+    (name "rust-unicode-bidi")
+    (version "0.3.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "unicode-bidi" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1malx8ljgm7v1gbaazkn7iicy5wj0bwcyadj3l727a38ch6bvwj9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-flame" ,rust-flame-0.2)
+        ("rust-flamer" ,rust-flamer-0.3)
+        ("rust-matches" ,rust-matches-0.1)
+        ("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-serde-test" ,rust-serde-test-1.0))))
+    (home-page "https://github.com/servo/unicode-bidi")
+    (synopsis "Implementation of the Unicode Bidirectional Algorithm")
+    (description
+     "Implementation of the Unicode Bidirectional Algorithm.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-unicode-normalization-0.1
+  (package
+    (name "rust-unicode-normalization")
+    (version "0.1.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "unicode-normalization" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "09i49va90rvia1agvgni4gicnqv50y5zy1naw8mr8bcqifh3j4ql"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-smallvec" ,rust-smallvec-0.6))))
+    (home-page "https://github.com/unicode-rs/unicode-normalization")
+    (synopsis
+     "This crate provides functions for normalization of Unicode strings")
+    (description
+     "This crate provides functions for normalization of Unicode strings,
+including Canonical and Compatible Decomposition and Recomposition, as
+described in Unicode Standard Annex #15.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-unicode-width-0.1
   (package
     (name "rust-unicode-width")
@@ -7710,6 +8784,41 @@ untrusted inputs in Rust.")
     (properties '((hidden? . #t)))
     (license license:isc)))
 
+(define-public rust-url-1.7
+  (package
+    (name "rust-url")
+    (version "1.7.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "url" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0nim1c90mxpi9wgdw2xh8dqd72vlklwlzam436akcrhjac6pqknx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-encoding" ,rust-encoding-0.2)
+        ("rust-heapsize" ,rust-heapsize-0.4)
+        ("rust-idna" ,rust-idna-0.1)
+        ("rust-matches" ,rust-matches-0.1)
+        ("rust-percent-encoding" ,rust-percent-encoding-1.0)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-bencher" ,rust-bencher-0.1)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-rustc-test" ,rust-rustc-test-0.3)
+        ("rust-serde-json" ,rust-serde-json-1.0))))
+    (home-page "https://github.com/servo/rust-url")
+    (synopsis "URL library for Rust, based on the WHATWG URL Standard")
+    (description
+     "URL library for Rust, based on the WHATWG URL Standard.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-utf8-ranges-1.0
   (package
     (name "rust-utf8-ranges")
@@ -7873,6 +8982,30 @@ If that fails, no determination is made, and calls return None.")
     (properties '((hidden? . #t)))
     (license license:expat)))
 
+(define-public rust-wait-timeout-0.2
+  (package
+    (name "rust-wait-timeout")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "wait-timeout" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1xpkk0j5l9pfmjfh1pi0i89invlavfrd9av5xp0zhxgb29dhy84z"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
+    (home-page "https://github.com/alexcrichton/wait-timeout")
+    (synopsis "Wait on a child process with a timeout")
+    (description
+     "This package provides a crate to wait on a child process with a timeout
+specified across Unix and Windows platforms.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-walkdir-2.2
   (package
     (name "rust-walkdir")
@@ -8360,3 +9493,29 @@ to XDG Base Directory specification")
     (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
+
+(define-public rust-yaml-rust-0.4
+  (package
+    (name "rust-yaml-rust")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "yaml-rust" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0ka3qhqc5lvk3hz14wmsj32jhmh44blcbfrx5hfxli2gg38kv4k5"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-linked-hash-map" ,rust-linked-hash-map-0.5))
+       #:cargo-development-inputs
+       (("rust-quickcheck" ,rust-quickcheck-0.8))))
+    (home-page "http://chyh1990.github.io/yaml-rust/")
+    (synopsis "The missing YAML 1.2 parser for rust")
+    (description
+     "The missing YAML 1.2 parser for rust.")
+    (license (list license:asl2.0 license:expat))))