gnu: rust-tokio-mock-task-0.1: Don't hide package.
[jackhill/guix/guix.git] / gnu / packages / crates-io.scm
index 7acf241..23a70a0 100644 (file)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages tls)
-  #:use-module (gnu packages version-control))
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages xorg))
 
 ;;;
 ;;; Please: Try to add new module packages in alphabetic order.
@@ -499,6 +501,31 @@ ArrayVec and ArrayString.")
      "This package asserts that a value matches a pattern in Rust.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-aster-0.41
+  (package
+    (name "rust-aster")
+    (version "0.41.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "aster" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1q704kn23wnwnrxml7w1mxw6a3xb6386x5wgys6ibnyramrxzksc"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clippy" ,rust-clippy-0.0)
+        ("rust-compiletest-rs" ,rust-compiletest-rs-0.2)
+        ("rust-syntex-syntax" ,rust-syntex-syntax-0.58))))
+    (home-page "https://github.com/serde-rs/aster")
+    (synopsis "Libsyntax ast builder")
+    (description "This package provides a libsyntax ast builder.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-atty-0.2
   (package
     (name "rust-atty")
@@ -933,6 +960,36 @@ behave like a set of bitflags.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-bitflags-0.8
+  (package
+    (inherit rust-bitflags-1)
+    (name "rust-bitflags")
+    (version "0.8.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bitflags" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1x5z8hmirpnapkx6sww8gkc6x0q8ppni0lbsigm3mrba5byfjw0k"))))))
+
+(define-public rust-bitflags-0.7
+  (package
+    (inherit rust-bitflags-1)
+    (name "rust-bitflags")
+    (version "0.7.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "bitflags" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0v8hh6wdkpk9my8z8442g4hqrqf05h0qj53dsay6mv18lqvqklda"))))))
+
 (define-public rust-blake2-rfc-0.2
   (package
     (name "rust-blake2-rfc")
@@ -1039,6 +1096,30 @@ BLAKE2bp hash functions.")
      "Iterator over simple binary blob storage.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-block-0.1
+  (package
+    (name "rust-block")
+    (version "0.1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "block" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "16k9jgll25pzsq14f244q22cdv0zb4bqacldg3kx6h89d7piz30d"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-development-inputs
+       (("rust-objc-test-utils" ,rust-objc-test-utils-0.0))))
+    (home-page "http://github.com/SSheldon/rust-block")
+    (synopsis "Rust interface for Apple's C language extension of blocks")
+    (description "This package provides a rust interface for Apple's C language
+extension of blocks.")
+    (license license:expat)))
+
 (define-public rust-block-buffer-0.7
   (package
     (name "rust-block-buffer")
@@ -1663,6 +1744,29 @@ Command Line Argument Parser.")
 colorization.")
     (license license:expat)))
 
+(define-public rust-clipboard-win-2.1
+  (package
+    (name "rust-clipboard-win")
+    (version "2.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "clipboard-win" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0431sg4jhabrqf2dliiwhbx9hinb9z4qfcm6914lm5mb17ya5798"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f  ; Tests are for Windows.
+       #:cargo-inputs (("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/DoumanAsh/clipboard-win")
+    (synopsis "Interact with Windows clipboard")
+    (description
+     "This package provides simple way to interact with Windows clipboard.")
+    (license license:expat)))
+
 (define-public rust-clippy-0.0
   (package
     (name "rust-clippy")
@@ -1825,6 +1929,27 @@ need compiler-rt intrinsics.")
 harness.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-compiletest-rs-0.2
+  (package
+    (inherit rust-compiletest-rs-0.3)
+    (name "rust-compiletest-rs")
+    (version "0.2.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "compiletest_rs" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0njz4shbhl1pvb6ngpi1wpz2gr5lf2dcha22lpdk995pzrwd6h97"))))
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-log" ,rust-log-0.3)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-tempdir" ,rust-tempdir-0.3))))))
+
 (define-public rust-console-0.7
   (package
     (name "rust-console")
@@ -2897,6 +3022,27 @@ memory but not other memory.  This package provides a discard trait which allows
 for intentionally leaking memory")
     (license license:expat)))
 
+(define-public rust-dispatch-0.1
+  (package
+    (name "rust-dispatch")
+    (version "0.1.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "dispatch" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "019nzy993hxaiazcdnayx3csv2iki34i535asw11ki96hakkrs84"))))
+    (build-system cargo-build-system)
+    (arguments '(#:tests? #f))  ; Tests only run on Mac.
+    (home-page "http://github.com/SSheldon/rust-dispatch")
+    (synopsis "Rust wrapper for Apple's Grand Central Dispatch")
+    (description "This package provides a Rust wrapper for Apple's Grand
+Central Dispatch.")
+    (license license:expat)))
+
 (define-public rust-doc-comment-0.3
   (package
     (name "rust-doc-comment")
@@ -2943,6 +3089,27 @@ from macros.")
     (description "Command line argument parsing.")
     (license (list license:expat license:unlicense))))
 
+(define-public rust-downcast-rs-1.1
+  (package
+    (name "rust-downcast-rs")
+    (version "1.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "downcast-rs" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1xhs2qj02k9m4mm5fgh19y88850y9jsnwwlblf2ffc91gjs6xfjj"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/marcianx/downcast-rs")
+    (synopsis "Trait object downcasting support using only safe Rust")
+    (description
+     "Trait object downcasting support using only safe Rust.  It supports type
+parameters, associated types, and type constraints.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-dtoa-0.4
   (package
     (name "rust-dtoa")
@@ -3009,6 +3176,35 @@ floating-point primitives to an @code{io::Write}.")
      "A library for running child processes.")
     (license license:expat)))
 
+(define-public rust-dwrote-0.9
+  (package
+    (name "rust-dwrote")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "dwrote" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "03gzl5pd90nlkmwqmbmjmyz47h7wlblbqrwv5a29npnv0ag3dl8b"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-serde" ,rust-serde-1.0)
+        ("rust-serde-derive" ,rust-serde-derive-1.0)
+        ;("rust-wio" ,rust-wio-0.2)
+        ("rust-winapi" ,rust-winapi-0.3))))
+    (home-page "https://github.com/servo/dwrote-rs")
+    (synopsis "Lightweight binding to DirectWrite")
+    (description
+     "This package provides lightweight binding to DirectWrite.")
+    (license license:mpl2.0)))
+
 (define-public rust-either-1.5
   (package
     (name "rust-either")
@@ -4070,6 +4266,31 @@ featuring zero allocations, composability, and iterator-like interfaces.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-futures-channel-0.3
+  (package
+    (name "rust-futures-channel")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-channel" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "11lvk749n61654ad40xn751gmxzwb697nwh36s5gs0ni2z59ibpw"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f
+       #: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")
+    (description
+     "Channels for asynchronous communication using futures-rs.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-futures-channel-preview-0.3
   (package
     (name "rust-futures-channel-preview")
@@ -4095,6 +4316,27 @@ 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-core-0.3
+  (package
+    (name "rust-futures-core")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-core" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rh8q6pg08dizk5hwksvjgvkw26s3sr3b199nggv3ypyg914qmkr"))))
+    (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")
+    (description "This package provides the core traits and types in for the
+@code{futures} library.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-futures-core-preview-0.3
   (package
     (name "rust-futures-core-preview")
@@ -4171,6 +4413,28 @@ the computation on the threads themselves.")
 library.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-futures-io-0.3
+  (package
+    (name "rust-futures-io")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-io" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1zxm41fmkrb0r39ajk3rr9invcd5bdwlafazn8m9aw4y49ymfxp6"))))
+    (build-system cargo-build-system)
+    (home-page "https://rust-lang-nursery.github.io/futures-rs")
+    (synopsis
+     "`AsyncRead` and `AsyncWrite` traits for the futures-rs library")
+    (description
+     "This package provides the @code{AsyncRead} and @code{AsyncWrite} traits
+for the futures-rs library.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-futures-io-preview-0.3
   (package
     (name "rust-futures-io-preview")
@@ -4221,6 +4485,26 @@ library.")
 @code{Future}s at once and handling the first one to complete.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-futures-sink-0.3
+  (package
+    (name "rust-futures-sink")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-sink" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "05iwskzxq3yqvxv9l1kqnd7kkmp0dwc39fnvwrcjsg76z8zf66qp"))))
+    (build-system cargo-build-system)
+    (home-page "https://rust-lang-nursery.github.io/futures-rs")
+    (synopsis "Asynchronous `Sink` trait for the futures-rs library")
+    (description "This package provides the asynchronous @code{Sink} trait for
+the futures-rs library.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-futures-sink-preview-0.3
   (package
     (name "rust-futures-sink-preview")
@@ -4243,6 +4527,26 @@ futures-rs library.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-futures-task-0.3
+  (package
+    (name "rust-futures-task")
+    (version "0.3.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "futures-task" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1yg5d7b3z58mhqbrax5a0qdsfvzfclwyqvw5k3i41x4wnbb55bhb"))))
+    (build-system cargo-build-system)
+    (arguments '(#:tests? #f))
+    (home-page "https://rust-lang-nursery.github.io/futures-rs")
+    (synopsis "Tools for working with tasks")
+    (description "Tools for working with tasks.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-futures-util-preview-0.3
   (package
     (name "rust-futures-util-preview")
@@ -4623,6 +4927,25 @@ the process of matching one or more glob patterns against a single candidate
 path simultaneously, and returning all of the globs that matched.")
     (license (list license:expat license:unlicense))))
 
+(define-public rust-glutin-emscripten-sys-0.1
+  (package
+    (name "rust-glutin-emscripten-sys")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "glutin_emscripten_sys" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ix0jmm8p5if4qarzdfl5mz9rbq4hhgqarakb3bzwvyz13dkynr4"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/tomaka/glutin")
+    (synopsis "Emscripten bindings for glutin")
+    (description "The emscripten bindings for glutin.")
+    (license license:asl2.0)))
+
 (define-public rust-goblin-0.0
   (package
     (name "rust-goblin")
@@ -5405,7 +5728,8 @@ SystemTime}}.")
         ("rust-regex" ,rust-regex-1.1)
         ("rust-same-file" ,rust-same-file-1.0)
         ("rust-thread-local" ,rust-thread-local-1.0)
-        ("rust-walkdir" ,rust-walkdir-2.2))))
+        ("rust-walkdir" ,rust-walkdir-2.2)
+        ("rust-winapi-util" ,rust-winapi-util-0.1))))
     (home-page "https://github.com/BurntSushi/ripgrep/tree/master/ignore")
     (synopsis "Efficiently match ignore files such as .gitignore")
     (description
@@ -5860,6 +6184,26 @@ friction with idiomatic Rust structs to ease interopability.")
 kernel32.")
     (license license:expat)))
 
+(define-public rust-khronos-api-3
+  (package
+    (name "rust-khronos-api")
+    (version "3.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "khronos-api" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1p0xj5mlbagqyvvnv8wmv3cr7l9y1m153888pxqwg3vk3mg5inz2"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/brendanzab/gl-rs/")
+    (synopsis "Khronos XML API Registry")
+    (description
+     "The Khronos XML API Registry, exposed as byte string constants.")
+    (license license:asl2.0)))
+
 (define-public rust-language-tags-0.2
   (package
     (name "rust-language-tags")
@@ -6395,6 +6739,26 @@ implementation of LZMA and xz stream encoding/decoding.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-lzw-0.10
+  (package
+    (name "rust-lzw")
+    (version "0.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "lzw" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1170dfskhzlh8h2bm333811hykjvpypgnvxyhhm1rllyi2xpr53x"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/nwin/lzw.git")
+    (synopsis "LZW compression and decompression")
+    (description
+     "This package provides LZW compression and decompression.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-mac-0.1
   (package
     (name "rust-mac")
@@ -6436,6 +6800,28 @@ implementation of LZMA and xz stream encoding/decoding.")
 platform-independently.")
     (license license:expat)))
 
+(define-public rust-malloc-buf-0.0
+ (package
+   (name "rust-malloc-buf")
+   (version "0.0.6")
+   (source
+    (origin
+      (method url-fetch)
+      (uri (crate-uri "malloc-buf" version))
+      (file-name
+       (string-append name "-" version ".tar.gz"))
+      (sha256
+       (base32
+        "1jqr77j89pwszv51fmnknzvd53i1nkmcr8rjrvcxhm4dx1zr1fv2"))))
+   (build-system cargo-build-system)
+   (arguments
+    `(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
+   (home-page "https://github.com/SSheldon/malloc_buf")
+   (synopsis "Structs for handling malloc'd memory passed to Rust")
+   (description
+    "This package provides structs for handling malloc'd memory passed to Rust.")
+   (license license:expat)))
+
 (define-public rust-maplit-1.0
   (package
     (name "rust-maplit")
@@ -6538,6 +6924,26 @@ parallelize and optimize.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-maybe-uninit-2.0
+  (package
+    (name "rust-maybe-uninit")
+    (version "2.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "maybe-uninit" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "004y0nzmpfdrhz251278341z6ql34iv1k6dp1h6af7d6nd6jwc30"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/est31/maybe-uninit")
+    (synopsis "MaybeUninit for friends of backwards compatibility")
+    (description
+     "This package provides MaybeUninit for friends of backwards compatibility.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-md5-0.6
   (package
     (name "rust-md5")
@@ -6551,14 +6957,28 @@ parallelize and optimize.")
          (base32
           "17b2xm4h4cvxsdjsf3kdrzqv2za60kak961xzi5kmw6g6djcssvy"))))
     (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-memchr-2.2
+(define-public rust-md5-0.3
+  (package
+    (inherit rust-md5-0.6)
+    (name "rust-md5")
+    (version "0.3.8")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "md5" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0j2s8aqdkhwhy7awga2bmv5n8qq8bgy8672iha9f3y871dm6vibr"))))))
+
+(define-public rust-memchr-2.2
   (package
     (name "rust-memchr")
     (version "2.2.1")
@@ -7636,6 +8056,129 @@ giga, kibi.")
      "This package can convert numbers into stack-allocated byte arrays.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-objc-0.2
+  (package
+    (name "rust-objc")
+    (version "0.2.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "objc" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1cbpf6kz8a244nn1qzl3xyhmp05gsg4n313c9m3567625d3innwi"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f  ; Tests require gcc-objc.
+       #:cargo-inputs
+       (("rust-malloc-buf" ,rust-malloc-buf-0.0)
+        ("rust-objc-exception" ,rust-objc-exception-0.1))))
+    (home-page "http://github.com/SSheldon/rust-objc")
+    (synopsis "Objective-C Runtime bindings and wrapper for Rust")
+    (description "This package provides an Objective-C Runtime bindings and
+wrapper for Rust.")
+    (license license:expat)))
+
+(define-public rust-objc-exception-0.1
+  (package
+    (name "rust-objc-exception")
+    (version "0.1.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "objc-exception" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "191cmdmlypp6piw67y4m8y5swlxf5w0ss8n1lk5xd2l1ans0z5xd"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-cc" ,rust-cc-1.0))))
+    (home-page "http://github.com/SSheldon/rust-objc-exception")
+    (synopsis "Rust interface for Objective-C's throw and try/catch statements")
+    (description
+     "This package provides a Rust interface for Objective-C's throw and
+try/catch statements.")
+    (license license:expat)))
+
+(define-public rust-objc-foundation-0.1
+  (package
+    (name "rust-objc-foundation")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "objc-foundation" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1y9bwb3m5fdq7w7i4bnds067dhm4qxv4m1mbg9y61j9nkrjipp8s"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t     ; Only available on macOS.
+       #:cargo-inputs
+       (("rust-block" ,rust-block-0.1)
+        ("rust-objc" ,rust-objc-0.2)
+        ("rust-objc-id" ,rust-objc-id-0.1))))
+    (home-page "http://github.com/SSheldon/rust-objc-foundation")
+    (synopsis "Rust wrapper for Objective-C's Foundation framework")
+    (description "This package provides a rust wrapper for Objective-C's
+Foundation framework.")
+    (license license:expat)))
+
+(define-public rust-objc-id-0.1
+  (package
+    (name "rust-objc-id")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "objc_id" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0fq71hnp2sdblaighjc82yrac3adfmqzhpr11irhvdfp9gdlsbf9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f  ; Tests require gcc-objc.
+       #:cargo-inputs (("rust-objc" ,rust-objc-0.2))))
+    (home-page "http://github.com/SSheldon/rust-objc-id")
+    (synopsis "Rust smart pointers for Objective-C reference counting")
+    (description
+     "This package provides Rust smart pointers for Objective-C reference counting.")
+    (license license:expat)))
+
+(define-public rust-objc-test-utils-0.0
+  (package
+    (name "rust-objc-test-utils")
+    (version "0.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "objc_test_utils" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "09rckmp5h9bbns08xzicdlk7y5lxj2ygbg3yqk1cszfnzd5n8kzx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-gcc" ,rust-gcc-0.3))))
+    (home-page "http://github.com/SSheldon/rust-objc")
+    (synopsis "Utilities for testing Objective-C interop")
+    (description
+     "This package provides utilities for testing Objective-C interop.")
+    (license license:expat)))
+
 (define-public rust-object-0.12
   (package
     (name "rust-object")
@@ -8731,6 +9274,27 @@ used in Cargo build scripts.")
 applications.")
     (license license:expat)))
 
+(define-public rust-podio-0.1
+  (package
+    (name "rust-podio")
+    (version "0.1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "podio" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ga5arhwakj5rwrqzf9410zrbwnf24jd59af8kr9rgwbd6vb83vq"))))
+    (build-system cargo-build-system)
+    ;(arguments '(#:skip-build? #t))
+    (home-page "https://github.com/mvdnes/podio.git")
+    (synopsis "Additional trait to read and write Plain Old Data")
+    (description
+     "Additional trait for Read and Write to read and write Plain Old Data.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-ppv-lite86-0.2
   (package
     (name "rust-ppv-lite86")
@@ -8806,6 +9370,26 @@ dependency to expose a precomputed hash.")
      "Procedural macros in expression position.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-proc-macro-hack-impl-0.4
+  (package
+    (name "rust-proc-macro-hack-impl")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "proc-macro-hack-impl" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0hk8g6s0zsi1ps0w48la2s8q5iqq42g8jfrgq3l2v04l2p5pvi1q"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/dtolnay/proc-macro-hack")
+    (synopsis "Procedural functionlike!() macros using only Macros 1.1")
+    (description
+     "Procedural functionlike!() macros using only Macros 1.1.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-proc-macro-nested-0.1
   (package
     (name "rust-proc-macro-nested")
@@ -8994,6 +9578,85 @@ stack pointer and inspect the properties of the stack.")
      "This package provides a collection of approximate quantile algorithms.")
     (license license:expat)))
 
+(define-public rust-quasi-0.32
+  (package
+    (name "rust-quasi")
+    (version "0.32.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quasi" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1csqqgz3aw85q570ywmhb34r3sqgi1sprf8xadfwzlfnai45ri0q"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clippy" ,rust-clippy-0.0)
+        ("rust-syntex-errors" ,rust-syntex-errors-0.58)
+        ("rust-syntex-syntax" ,rust-syntex-syntax-0.58))))
+    (home-page "https://github.com/serde-rs/quasi")
+    (synopsis "Quasi-quoting macro system")
+    (description
+     "This package provides a quasi-quoting macro system.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-quasi-codegen-0.32
+  (package
+    (name "rust-quasi-codegen")
+    (version "0.32.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quasi_codegen" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1m3nwzn5ip8y86cyfk6hdnbhiinsk2faag7l0cc4q11wl9gy5fai"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-aster" ,rust-aster-0.41)
+        ("rust-clippy" ,rust-clippy-0.0)
+        ("rust-syntex" ,rust-syntex-0.58)
+        ("rust-syntex-errors" ,rust-syntex-errors-0.58)
+        ("rust-syntex-syntax" ,rust-syntex-syntax-0.58))))
+    (home-page "https://github.com/serde-rs/quasi")
+    (synopsis "Quasi-quoting macro system")
+    (description "This package provides a quasi-quoting macro system.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-quasi-macros-0.32
+  (package
+    (name "rust-quasi-macros")
+    (version "0.32.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quasi_macros" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1p825s96wa9xcc01pm5f4nlb01nx0pah50qnwkbncrw1q9xwiki9"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-clippy" ,rust-clippy-0.0)
+        ("rust-quasi-codegen" ,rust-quasi-codegen-0.32))
+       #:cargo-development-inputs
+       (("rust-aster" ,rust-aster-0.41)
+        ("rust-quasi" ,rust-quasi-0.32))))
+    (home-page "https://github.com/serde-rs/quasi")
+    (synopsis "Quasi-quoting macro system")
+    (description "This package provides a quasi-quoting macro system.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-quick-error-1.2
   (package
     (name "rust-quick-error")
@@ -9015,10 +9678,37 @@ to write.")
     (license (list license:asl2.0
                    license:expat))))
 
-;; Many circular dependencies.
-;; Dev dependencies are allowed to have them in crates.io.
+(define-public rust-quickcheck-0.9
+  (package
+    (name "rust-quickcheck")
+    (version "0.9.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "quickcheck" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (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))))
+
 (define-public rust-quickcheck-0.8
   (package
+    (inherit rust-quickcheck-0.9)
     (name "rust-quickcheck")
     (version "0.8.5")
     (source
@@ -9030,25 +9720,16 @@ to write.")
        (sha256
         (base32
          "0mkl4wnvvjk4m32aq3an4ayfyvnmbxnzcybfm7n3fbsndb1xjdcw"))))
-    (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-env-logger" ,rust-env-logger-0.6)
         ("rust-log" ,rust-log-0.4)
-        ("rust-rand" ,rust-rand-0.4)
-        ("rust-rand-core" ,rust-rand-core-0.5))))
-    (home-page
-     "https://github.com/BurntSushi/quickcheck")
-    (synopsis
-     "Automatic property based testing with shrinking")
-    (description
-     "Automatic property based testing with shrinking.")
-    (license (list license:expat license:unlicense))))
+        ("rust-rand" ,rust-rand-0.6)
+        ("rust-rand-core" ,rust-rand-core-0.4))))))
 
 (define-public rust-quickcheck-0.7
   (package
-    (inherit rust-quickcheck-0.8)
+    (inherit rust-quickcheck-0.9)
     (name "rust-quickcheck")
     (version "0.7.2")
     (source
@@ -9061,8 +9742,7 @@ to write.")
          (base32
           "05pqzja6fwdyrs1za5vmxb9ifb993knmpdsrs1fs2wyz9qz7slyl"))))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-env-logger" ,rust-env-logger-0.5)
         ("rust-log" ,rust-log-0.4)
         ("rust-rand" ,rust-rand-0.5)
@@ -9070,7 +9750,7 @@ to write.")
 
 (define-public rust-quickcheck-0.6
   (package
-    (inherit rust-quickcheck-0.8)
+    (inherit rust-quickcheck-0.9)
     (name "rust-quickcheck")
     (version "0.6.2")
     (source
@@ -9083,15 +9763,14 @@ to write.")
          (base32
           "1dyazm2fcq0v9fscq1a7597zsvdl9f0j8c2bfj1jm2nlzz2sn6y0"))))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-env-logger" ,rust-env-logger-0.5)
         ("rust-log" ,rust-log-0.4)
         ("rust-rand" ,rust-rand-0.4))))))
 
 (define-public rust-quickcheck-0.5
   (package
-    (inherit rust-quickcheck-0.8)
+    (inherit rust-quickcheck-0.9)
     (name "rust-quickcheck")
     (version "0.5.0")
     (source
@@ -9103,15 +9782,14 @@ to write.")
          (base32
           "1jzm1ygfbn4igaq14b9nipc8yvsn6c8panpgd1qiy5r2insjllyd"))))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-env-logger" ,rust-env-logger-0.4)
         ("rust-log" ,rust-log-0.3)
         ("rust-rand" ,rust-rand-0.3))))))
 
 (define-public rust-quickcheck-0.2
   (package
-    (inherit rust-quickcheck-0.8)
+    (inherit rust-quickcheck-0.9)
     (name "rust-quickcheck")
     (version "0.2.27")
     (source
@@ -9489,8 +10167,36 @@ generator that uses the HC-128 algorithm.")
      `(#:skip-build? #t
        #:cargo-inputs (("rust-rand-core" ,rust-rand-core-0.3))))))
 
+(define-public rust-rand-isaac-0.2
+  (package
+    (name "rust-rand-isaac")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rand_isaac" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0xlb9415x518ffkazxhvk8b04i9i548nva4i5l5s34crvjrv1xld"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-rand-core" ,rust-rand-core-0.5)
+        ("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-bincode" ,rust-bincode-1.1))))
+    (home-page "https://crates.io/crates/rand_isaac")
+    (synopsis "ISAAC random number generator")
+    (description "This package implements the @code{ISAAC} and @code{ISAAC-64}
+random number generators.  ISAAC stands for \"Indirection, Shift, Accumulate,
+Add, and Count\" which are the principal bitwise operations employed.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-rand-isaac-0.1
   (package
+    (inherit rust-rand-isaac-0.2)
     (name "rust-rand-isaac")
     (version "0.1.1")
     (source
@@ -9501,21 +10207,13 @@ generator that uses the HC-128 algorithm.")
         (sha256
          (base32
           "027flpjr4znx2csxk7gxb7vrf9c7y5mydmvg5az2afgisp4rgnfy"))))
-    (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-rand-core" ,rust-rand-core-0.3)
         ("rust-serde" ,rust-serde-1.0)
         ("rust-serde-derive" ,rust-serde-derive-1.0))
        #:cargo-development-inputs
-       (("rust-bincode" ,rust-bincode-1.1))))
-    (home-page "https://crates.io/crates/rand_isaac")
-    (synopsis "ISAAC random number generator")
-    (description "This package implements the @code{ISAAC} and @code{ISAAC-64}
-random number generators.  ISAAC stands for \"Indirection, Shift, Accumulate,
-Add, and Count\" which are the principal bitwise operations employed.")
-    (license (list license:asl2.0
-                   license:expat))))
+       (("rust-bincode" ,rust-bincode-1.1))))))
 
 (define-public rust-rand-jitter-0.1
   (package
@@ -9699,40 +10397,37 @@ generator based on timing jitter.")
     (license (list license:asl2.0
                    license:expat))))
 
-(define-public rust-rand-xoshiro-0.3
+(define-public rust-rand-xoshiro-0.4
   (package
     (name "rust-rand-xoshiro")
-    (version "0.3.0")
+    (version "0.4.0")
     (source
      (origin
        (method url-fetch)
-       (uri (crate-uri "rand_xoshiro" version))
+       (uri (crate-uri "rand-xoshiro" version))
        (file-name
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "07w3qgrac8r356lz5vqff42rly6yd9vs3g5lx5pbn13rcmb05rqb"))))
+         "013h45rikipv5bda2ixmwx5rwsk9wpc7mr0a77cz20hxi0pdvz59"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
-       (("rust-byteorder" ,rust-byteorder-1.3)
-        ("rust-rand-core" ,rust-rand-core-0.5)
+     `(#:cargo-inputs
+       (("rust-rand-core" ,rust-rand-core-0.5)
         ("rust-serde" ,rust-serde-1.0))
        #:cargo-development-inputs
        (("rust-bincode" ,rust-bincode-1.1))))
-    (home-page "https://github.com/rust-random/rand")
-    (synopsis
-     "Xoshiro, xoroshiro and splitmix64 random number generators")
-    (description
-     "Xoshiro, xoroshiro and splitmix64 random number generators.")
+    (home-page "https://crates.io/crates/rand_xoshiro")
+    (synopsis "Xoshiro, xoroshiro and splitmix64 random number generators")
+    (description "This package provides the xoshiro, xoroshiro and splitmix64
+random number generators.")
     (license (list license:expat license:asl2.0))))
 
-(define-public rust-rand-xoshiro-0.1
+(define-public rust-rand-xoshiro-0.3
   (package
-    (inherit rust-rand-xoshiro-0.3)
+    (inherit rust-rand-xoshiro-0.4)
     (name "rust-rand-xoshiro")
-    (version "0.1.0")
+    (version "0.3.0")
     (source
      (origin
        (method url-fetch)
@@ -9741,11 +10436,32 @@ generator based on timing jitter.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0ac9ha6ll8b6l1930bd99k29jrjpsbpddvr6ycrnbi5rkwb1id03"))))
-    (build-system cargo-build-system)
+         "07w3qgrac8r356lz5vqff42rly6yd9vs3g5lx5pbn13rcmb05rqb"))))
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
+       (("rust-byteorder" ,rust-byteorder-1.3)
+        ("rust-rand-core" ,rust-rand-core-0.5)
+        ("rust-serde" ,rust-serde-1.0))
+       #:cargo-development-inputs
+       (("rust-bincode" ,rust-bincode-1.1))))))
+
+(define-public rust-rand-xoshiro-0.1
+  (package
+    (inherit rust-rand-xoshiro-0.4)
+    (name "rust-rand-xoshiro")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rand_xoshiro" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0ac9ha6ll8b6l1930bd99k29jrjpsbpddvr6ycrnbi5rkwb1id03"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
        (("rust-byteorder" ,rust-byteorder-1.3)
         ("rust-rand-core" ,rust-rand-core-0.3))
        #:cargo-development-inputs
@@ -10525,6 +11241,29 @@ rust-lang/rust integration.")
 require unstable language features.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-rustc-tools-util-0.2
+  (package
+    (name "rust-rustc-tools-util")
+    (version "0.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rustc_tools_util" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1vj4ymv29igs7n52m12k138zbsn5k5d7ya4sys6lig7sx7ddl9dp"))))
+    (build-system cargo-build-system)
+    (arguments '(#:skip-build? #t))
+    (home-page
+     "https://github.com/rust-lang/rust-clippy")
+    (synopsis
+     "small helper to generate version information for git packages")
+    (description
+     "small helper to generate version information for git packages")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-rustc-version-0.2
   (package
     (name "rust-rustc-version")
@@ -10698,8 +11437,7 @@ quickly convert floating point numbers to decimal strings.")
           "00h5j1w87dmhnvbv9l8bic3y7xxsnjmssvifw2ayvgx9mb1ivz4k"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-winapi-util" ,rust-winapi-util-0.1))
        #:cargo-development-inputs
        (("rust-doc-comment" ,rust-doc-comment-0.3))))
@@ -10925,7 +11663,7 @@ proven statistical guarantees.")
 (define-public rust-security-framework-sys-0.3
   (package
     (name "rust-security-framework-sys")
-    (version "0.3.1")
+    (version "0.3.3")
     (source
       (origin
         (method url-fetch)
@@ -10933,13 +11671,15 @@ proven statistical guarantees.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "0mlsakq9kmqyc0fg2hcbgm6rjk55mb0rhjw2wid3hqdzkjcghdln"))))
+          "15gqhhi206lzynd0pcbswxhvqc4p9bmpl2h9qnwfnpb16zy96573"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6))))
     (home-page "https://lib.rs/crates/security-framework-sys")
     (synopsis "Apple `Security.framework` low-level FFI bindings")
     (description
-     "Apple `Security.framework` low-level FFI bindings.")
-    (properties '((hidden? . #t)))
+     "Apple @code{Security.framework} low-level FFI bindings.")
     (license (list license:asl2.0
                    license:expat))))
 
@@ -11131,6 +11871,37 @@ proven statistical guarantees.")
     (description "CBOR support for serde.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-serde-codegen-0.4
+  (package
+    (name "rust-serde-codegen")
+    (version "0.4.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "serde_codegen" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0167ghvqs0n8qin8fjx2ihn3gx92m55685qpv4nzihw48h4rq0vq"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-aster" ,rust-aster-0.41)
+        ("rust-quasi" ,rust-quasi-0.32)
+        ("rust-quasi-macros" ,rust-quasi-macros-0.32)
+        ("rust-syntex" ,rust-syntex-0.58)
+        ("rust-syntex-syntax" ,rust-syntex-syntax-0.58))
+       #:cargo-development-inputs
+       (("rust-quasi-codegen" ,rust-quasi-codegen-0.32)
+        ("rust-syntex" ,rust-syntex-0.58))))
+    (home-page "https://serde.rs")
+    (synopsis "Macros for the serde framework")
+    (description "This package provides macros to auto-generate implementations
+for the serde framework.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-serde-derive-1.0
   (package
     (name "rust-serde-derive")
@@ -11679,6 +12450,22 @@ spinning.  They may contain data, are usable without @code{std},and static
 initializers are available.")
     (license license:expat)))
 
+(define-public rust-spin-0.4
+  (package
+    (inherit rust-spin-0.5)
+    (name "rust-spin")
+    (version "0.4.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "spin" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "07ywqn1vrpi3c43fmvsx7pawk9h3rb77yyqbnhap2micl454kb6f"))))
+    (arguments '(#:skip-build? #t))))
+
 (define-public rust-stable-deref-trait-1.1
   (package
     (name "rust-stable-deref-trait")
@@ -11706,7 +12493,7 @@ to the same address.")
 (define-public rust-stacker-0.1
   (package
     (name "rust-stacker")
-    (version "0.1.5")
+    (version "0.1.6")
     (source
       (origin
         (method url-fetch)
@@ -11714,14 +12501,21 @@ to the same address.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "0js0axz5nla1mkr2dm2vrv9rj964ng1lrv4l43sqlnfgawplhygv"))))
+          "12igajfgqz96c7vcwi91xdfsphawik6g36ndlglqih0a7bqw8vyr"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-psm" ,rust-psm-0.1)
+        ("rust-winapi" ,rust-winapi-0.3))
+       #:cargo-development-inputs
+       (("rust-cc" ,rust-cc-1.0))))
     (home-page "https://github.com/rust-lang/stacker")
     (synopsis "Manual segmented stacks for Rust")
     (description
      "This package provides a stack growth library useful when implementing
 deeply recursive algorithms that may accidentally blow the stack.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -11769,13 +12563,12 @@ deeply recursive algorithms that may accidentally blow the stack.")
     (description
      "This package provides compile-time assertions to ensure that invariants
 are met.")
-    (properties '((hidden? . #t)))
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-stdweb-0.4
   (package
     (name "rust-stdweb")
-    (version "0.4.17")
+    (version "0.4.20")
     (source
      (origin
        (method url-fetch)
@@ -11784,7 +12577,7 @@ are met.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "094giad1v81rxxs4izf88ijc9c6w3c7cr5a7cwwr86mc22xn4hy3"))))
+         "1md14n9rzxzdskz3hpgln8vxfwqsw2cswc0f5nslh4r82rmlj8nh"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -11816,7 +12609,7 @@ Web.")
 (define-public rust-stdweb-derive-0.5
   (package
     (name "rust-stdweb-derive")
-    (version "0.5.1")
+    (version "0.5.3")
     (source
      (origin
        (method url-fetch)
@@ -11825,26 +12618,27 @@ Web.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "0c1rxx6rqcc4iic5hx320ki3vshpi8k58m5600iqzq4x2zcyn88f"))))
+         "1vsh7g0gaxn4kxqq3knhymdn02p2pfxmnd2j0vplpj6c1yj60yn8"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
+     `(#:tests? #f
        #:cargo-inputs
-       (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+       (("rust-proc-macro2" ,rust-proc-macro2-1.0)
         ("rust-quote" ,rust-quote-1.0)
         ("rust-serde" ,rust-serde-1.0)
         ("rust-serde-derive" ,rust-serde-derive-1.0)
-        ("rust-syn" ,rust-syn-0.15))))
+        ("rust-syn" ,rust-syn-1.0))))
     (home-page "https://github.com/koute/stdweb")
     (synopsis "Derive macros for the stdweb crate")
     (description
-     "Derive macros for the @code{stdweb} crate.")
+     "This crate currently defines a derive macro for @code{stdweb} which allows
+you to define custom reference types outside of the @code{stdweb} library.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-stdweb-internal-macros-0.2
   (package
     (name "rust-stdweb-internal-macros")
-    (version "0.2.7")
+    (version "0.2.9")
     (source
      (origin
        (method url-fetch)
@@ -11853,29 +12647,28 @@ Web.")
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "1yjrmkc6sb1035avic383pa3avk2s9k3n17yjcza8yb9nw47v3z6"))))
+         "049fq8fl5ny9l5if2qv7kxwng7g6ns95h4fbm3zx360dmpv5zyjq"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:skip-build? #t
-       #:cargo-inputs
+     `(#:cargo-inputs
        (("rust-base-x" ,rust-base-x-0.2)
-        ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+        ("rust-proc-macro2" ,rust-proc-macro2-1.0)
         ("rust-quote" ,rust-quote-1.0)
         ("rust-serde" ,rust-serde-1.0)
         ("rust-serde-derive" ,rust-serde-derive-1.0)
         ("rust-serde-json" ,rust-serde-json-1.0)
         ("rust-sha1" ,rust-sha1-0.6)
-        ("rust-syn" ,rust-syn-0.15))))
+        ("rust-syn" ,rust-syn-1.0))))
     (home-page "https://github.com/koute/stdweb")
     (synopsis "Internal procedural macros for the stdweb crate")
     (description
-     "Internal procedural macros for the stdweb crate.")
+     "Internal procedural macros for the @code{stdweb} crate.")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-stdweb-internal-runtime-0.1
   (package
     (name "rust-stdweb-internal-runtime")
-    (version "0.1.4")
+    (version "0.1.5")
     (source
       (origin
         (method url-fetch)
@@ -11883,20 +12676,19 @@ Web.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "1nhpyra7glbwcpakhpj5a3d7h7kx1ynif473nzshmk226m91f8ym"))))
+          "1h0nkppb4r8dbrbms2hw9n5xdcs392m0r5hj3b6lsx3h6fx02dr1"))))
     (build-system cargo-build-system)
     (home-page "https://github.com/koute/stdweb")
     (synopsis "Internal runtime for the @code{stdweb} crate")
     (description "This crate provides internal runtime for the @code{stdweb}
 crate.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
 (define-public rust-stdweb-internal-test-macro-0.1
   (package
     (name "rust-stdweb-internal-test-macro")
-    (version "0.1.0")
+    (version "0.1.1")
     (source
       (origin
         (method url-fetch)
@@ -11904,13 +12696,16 @@ crate.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "12rrm7p77xnm3xacgn3rgniiyyjb4gq7902wpbljsvbx045z69l2"))))
+          "0wx3jlm98qrg1pdw149fprzs9x3x3igqkm5ll23jv2v62yddfrjf"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1.0)
+        ("rust-quote" ,rust-quote-1.0))))
     (home-page "https://github.com/koute/stdweb")
     (synopsis "Internal crate of the `stdweb` crate")
     (description
      "Internal crate of the @code{stdweb} crate.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -11941,7 +12736,7 @@ crate.")
 (define-public rust-streaming-stats-0.2
   (package
     (name "rust-streaming-stats")
-    (version "0.2.2")
+    (version "0.2.3")
     (source
       (origin
         (method url-fetch)
@@ -11949,13 +12744,15 @@ crate.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "0l7xz4g6709s80zqpvlhrg0qhgz64r94cwhmfsg8xhabgznbp2px"))))
+          "0iz5dlq51w5hxjrv6a4hpf8rrj91kgvy0s9mhj0j12il9v771mmh"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-num-traits" ,rust-num-traits-0.2))))
     (home-page "https://github.com/BurntSushi/rust-stats")
     (synopsis "Compute basic statistics on streams")
     (description
      "Experimental crate for computing basic statistics on streams.")
-    (properties '((hidden? . #t)))
     (license (list license:unlicense
                    license:expat))))
 
@@ -12047,7 +12844,7 @@ developed as part of the Servo project.")
 (define-public rust-strsim-0.9
   (package
     (name "rust-strsim")
-    (version "0.9.2")
+    (version "0.9.3")
     (source
       (origin
         (method url-fetch)
@@ -12055,14 +12852,13 @@ developed as part of the Servo project.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "1xphwhf86yxxmcpvm4mikj8ls41f6nf7gqyjm98b74mfk81h6b03"))))
+          "0k497pv882qn3q977ckznm13vxx927g8s1swvcv68j3c1pccwik4"))))
     (build-system cargo-build-system)
     (home-page "https://github.com/dguo/strsim-rs")
     (synopsis "Rust implementations of string similarity metrics")
     (description "This crate includes implementations of string similarity
 metrics.  It includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro,
 and Jaro-Winkler.")
-    (properties '((hidden? . #t)))
     (license license:expat)))
 
 (define-public rust-strsim-0.8
@@ -12079,6 +12875,36 @@ and Jaro-Winkler.")
          (base32
           "0sjsm7hrvjdifz661pjxq5w4hf190hx53fra8dfvamacvff139cf"))))))
 
+(define-public rust-strsim-0.6
+  (package
+    (inherit rust-strsim-0.9)
+    (name "rust-strsim")
+    (version "0.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "strsim" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "151ngha649cyybr3j50qg331b206zrinxqz7fzw1ra8r0n0mrldl"))))))
+
+(define-public rust-strsim-0.5
+  (package
+    (inherit rust-strsim-0.9)
+    (name "rust-strsim")
+    (version "0.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "strsim" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0z3zzvmilfldp4xw42qbkjf901dcnbk58igrzsvivydjzd24ry37"))))))
+
 (define-public rust-structopt-0.2
   (package
     (name "rust-structopt")
@@ -12129,6 +12955,28 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct, derive crate.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-subtle-1.0
+  (package
+    (name "rust-subtle")
+    (version "1.0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "subtle" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1vm80mxbwfj334izwm8x8l65v1xl9hr0kwrg36r1rq565fkaarrd"))))
+    (build-system cargo-build-system)
+    (home-page "https://dalek.rs/")
+    (synopsis
+     "Pure-Rust traits and utilities for cryptographic implementations")
+    (description
+     "This package provides Pure-Rust traits and utilities for constant-time
+cryptographic implementations.")
+    (license license:bsd-3)))
+
 (define-public rust-syn-1.0
   (package
     (name "rust-syn")
@@ -12226,6 +13074,109 @@ and Jaro-Winkler.")
     (properties '((hidden? . #t)))
     (license license:expat)))
 
+(define-public rust-syntex-0.58
+ (package
+   (name "rust-syntex")
+   (version "0.58.1")
+   (source
+    (origin
+      (method url-fetch)
+      (uri (crate-uri "syntex" version))
+      (file-name
+       (string-append name "-" version ".tar.gz"))
+      (sha256
+       (base32
+        "03lgd36cxhc6gzaab0wqvckbhml00s6s73lk34ymf6cklymf7xd8"))))
+   (build-system cargo-build-system)
+   (arguments
+    `(#:skip-build? #t
+      #:cargo-inputs
+      (("rust-syntex-errors" ,rust-syntex-errors-0.58)
+       ("rust-syntex-syntax" ,rust-syntex-syntax-0.58))))
+   (home-page "https://github.com/erickt/rust-syntex")
+   (synopsis "Compile time syntax extension expansion")
+   (description
+    "This package provides a library that enables compile time
+syntax extension expansion.")
+   (license (list license:expat license:asl2.0))))
+
+(define-public rust-syntex-errors-0.58
+  (package
+    (name "rust-syntex-errors")
+    (version "0.58.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "syntex_errors" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "176vma7sjv6li17q7dsilryac66b76zyis9ampmff2hlsz1caz46"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-syntex-pos" ,rust-syntex-pos-0.58)
+        ("rust-term" ,rust-term-0.4)
+        ("rust-unicode-xid" ,rust-unicode-xid-0.0))))
+    (home-page "https://github.com/serde-rs/syntex")
+    (synopsis "Backport of librustc_errors")
+    (description "This package provides a backport of @code{librustc_errors}.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-syntex-pos-0.58
+  (package
+    (name "rust-syntex-pos")
+    (version "0.58.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "syntex_pos" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0iqhircpr723da1g97xrrj8smqqz3gxw91cf03sckasjzri4gb8k"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-rustc-serialize" ,rust-rustc-serialize-0.3))))
+    (home-page "https://github.com/serde-rs/syntex")
+    (synopsis "Backport of libsyntax_pos")
+    (description "This package provides a backport of @code{libsyntax_pos}.")
+    (license (list license:expat license:asl2.0))))
+
+(define-public rust-syntex-syntax-0.58
+  (package
+    (name "rust-syntex-syntax")
+    (version "0.58.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "syntex_syntax" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "14f74l7yzwl6fr9i23k4j23k66qn0gakvhk4jjc9ipb3w6x4s3kf"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-bitflags" ,rust-bitflags-0.8)
+        ("rust-log" ,rust-log-0.3)
+        ("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
+        ("rust-syntex-errors" ,rust-syntex-errors-0.58)
+        ("rust-syntex-pos" ,rust-syntex-pos-0.58)
+        ("rust-unicode-xid" ,rust-unicode-xid-0.0))))
+    (home-page "https://github.com/serde-rs/syntex")
+    (synopsis "Backport of libsyntax")
+    (description "This package provides a backport of libsyntax.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-sysctl-0.4
   (package
     (name "rust-sysctl")
@@ -12300,6 +13251,26 @@ memory all at once.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-takeable-option-0.4
+  (package
+    (name "rust-takeable-option")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "takeable-option" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0hvd6vk4ksgg2y99498jw52ric4lxm0i6ygpzqm95gdrhvsxyynp"))))
+    (build-system cargo-build-system)
+    (home-page "https://docs.rs/takeable-option/")
+    (synopsis "A small wrapper around option.")
+    (description
+     "This package provides a small wrapper around option.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-tempdir-0.3
   (package
     (name "rust-tempdir")
@@ -13101,10 +14072,12 @@ futures efficiently")
          (base32
           "1y7q83qfk9ljjfvs82b453pmz9x1v3d6kr4x55j8mal01s6790dw"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-futures" ,rust-futures-0.1))))
     (home-page  "https://github.com/carllerche/tokio-mock-task")
     (synopsis "Mock a Tokio task")
-    (description "Mock a Tokio task")
-    (properties '((hidden? . #t)))
+    (description "Mock a Tokio task.")
     (license license:expat)))
 
 (define-public rust-tokio-process-0.2
@@ -13473,7 +14446,7 @@ serializing Rust structures.")
 (define-public rust-tracing-core-0.1
   (package
     (name "rust-tracing-core")
-    (version "0.1.2")
+    (version "0.1.9")
     (source
       (origin
         (method url-fetch)
@@ -13481,13 +14454,15 @@ serializing Rust structures.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "01fa73wzw2m5ybi3kkd52dgrw97mgc3i6inmhwys46ab28giwnxi"))))
+          "0y0rcvvqq89yaiz0qdx88byxgz8j6hsm9slq8d5vvf3jwc8nz90k"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1))))
     (home-page "https://tokio.rs")
     (synopsis "Core primitives for application-level tracing")
     (description
      "Core primitives for application-level tracing.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -13523,11 +14498,13 @@ serializing Rust structures.")
          (base32
           "12wdd4ja7047sd3rx70hv2056hyc8gcdllcx3a41g1rnw64kng98"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-cfg-if" ,rust-cfg-if-0.1))))
     (home-page "https://github.com/derekjw/try_from")
     (synopsis "TryFrom and TryInto traits for failable conversions")
     (description
-      "TryFrom and TryInto traits for failable conversions that return a Result.")
-    (properties '((hidden? . #t)))
+     "TryFrom and TryInto traits for failable conversions that return a Result.")
     (license license:expat)))
 
 (define-public rust-try-lock-0.2
@@ -13547,7 +14524,6 @@ serializing Rust structures.")
     (synopsis "Lightweight atomic lock")
     (description
      "This package provides a lightweight atomic lock.")
-    (properties '((hidden? . #t)))
     (license license:expat)))
 
 (define-public rust-trybuild-1.0
@@ -13595,7 +14571,6 @@ serializing Rust structures.")
     (home-page "https://github.com/reem/rust-typeable")
     (synopsis "Exposes Typeable, for getting TypeIds at runtime")
     (description "Exposes Typeable, for getting TypeIds at runtime.")
-    (properties '((hidden? . #t)))
     (license license:expat)))
 
 (define-public rust-typed-arena-1.4
@@ -13660,7 +14635,6 @@ serializing Rust structures.")
 compile time.  It currently supports bits, unsigned integers, and signed
 integers.  It also provides a type-level array of type-level numbers, but its
 implementation is incomplete.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -13703,18 +14677,20 @@ Unicode character database.")
          (base32
           "1hh6kyzh5xygwy96wfmsf8v8czlzhps2lgbcyhj1xzy1w1xys04g"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-development-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1))))
     (home-page "https://github.com/BurntSushi/ucd-generate")
     (synopsis "Trie for storing Unicode codepoint sets and maps")
     (description
      "This package provides a trie for storing Unicode codepoint sets and maps.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
 (define-public rust-ucd-util-0.1
   (package
     (name "rust-ucd-util")
-    (version "0.1.5")
+    (version "0.1.7")
     (source
       (origin
         (method url-fetch)
@@ -13722,13 +14698,12 @@ Unicode character database.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "0x088q5z0m09a2jqcfgsnq955y8syn1mgn35cl78qinkxm4kp6zs"))))
+          "13ng291mkc9b132jjf4laj76f5nqm5qd2447rm8bry3wxbdc5kaw"))))
     (build-system cargo-build-system)
     (home-page "https://github.com/BurntSushi/ucd-generate")
     (synopsis "library for working with the Unicode character database")
     (description "This package provides a small utility library for working
 with the Unicode character database.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -13873,7 +14848,7 @@ boundaries according to Unicode Standard Annex #29 rules.")
 (define-public rust-unicode-width-0.1
   (package
     (name "rust-unicode-width")
-    (version "0.1.6")
+    (version "0.1.7")
     (source
       (origin
         (method url-fetch)
@@ -13881,13 +14856,17 @@ boundaries according to Unicode Standard Annex #29 rules.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "082f9hv1r3gcd1xl33whjhrm18p0w9i77zhhhkiccb5r47adn1vh"))))
+          "0yflmxkxmm89ckrb3sz58whn491aycrj8cxra0hzzlb72x9rvana"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
+        ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+        ("rust-rustc-std-workspace-std" ,rust-rustc-std-workspace-std-1.0))))
     (home-page "https://github.com/unicode-rs/unicode-width")
     (synopsis "Determine displayed width according to Unicode rules")
     (description "This crate allows you to determine displayed width of
 @code{char} and @code{str} types according to Unicode Standard Annex #11 rules.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -13905,13 +14884,10 @@ boundaries according to Unicode Standard Annex #29 rules.")
          (base32
           "0z09fn515xm7zyr0mmdyxa9mx2f7azcpv74pqmg611iralwpcvl2"))))
     (build-system cargo-build-system)
-    (home-page
-      "https://github.com/unicode-rs/unicode-xid")
+    (home-page "https://github.com/unicode-rs/unicode-xid")
     (synopsis "Determine Unicode XID related properties")
     (description "Determine whether characters have the XID_Start
 or XID_Continue properties according to Unicode Standard Annex #31.")
-    (properties '((hidden? . #t)))
-    ;; Dual licensed.
     (license (list license:asl2.0 license:expat))))
 
 (define-public rust-unicode-xid-0.1
@@ -13928,6 +14904,21 @@ or XID_Continue properties according to Unicode Standard Annex #31.")
          (base32
           "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw"))))))
 
+(define-public rust-unicode-xid-0.0
+  (package
+    (inherit rust-unicode-xid-0.2)
+    (name "rust-unicode-xid")
+    (version "0.0.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "unicode-xid" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1p5l9h3n3i53cp95fb65p8q3vbwib79ryd9z5z5h5kr9gl6qc7wc"))))))
+
 (define-public rust-unindent-0.1
   (package
     (name "rust-unindent")
@@ -13944,7 +14935,6 @@ or XID_Continue properties according to Unicode Standard Annex #31.")
     (synopsis "Remove a column of leading whitespace from a string")
     (description "This crate allows you to remove a column of leading
 whitespace from a string.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -13961,11 +14951,13 @@ whitespace from a string.")
          (base32
           "0mps2il4xy2mjqc3appas27hhn2xmvixc3bzzhfrjj74gy3i0a1q"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-void" ,rust-void-1.0))))
     (home-page "https://github.com/reem/rust-unreachable")
     (synopsis "Unreachable code optimization hint in rust")
     (description
      "This package provides an unreachable code optimization hint in rust.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -14009,7 +15001,6 @@ whitespace from a string.")
     (description
      "Safe, fast, zero-panic, zero-crashing, zero-allocation parsing of
 untrusted inputs in Rust.")
-    (properties '((hidden? . #t)))
     (license license:isc)))
 
 (define-public rust-url-2.1
@@ -14200,7 +15191,7 @@ Unix users and groups.")
 (define-public rust-vcpkg-0.2
   (package
     (name "rust-vcpkg")
-    (version "0.2.7")
+    (version "0.2.8")
     (source
       (origin
         (method url-fetch)
@@ -14208,14 +15199,18 @@ Unix users and groups.")
         (file-name (string-append name "-" version ".crate"))
         (sha256
          (base32
-          "15dzk1b96q946v9aisbd1bbhi33n93wvgziwh1shmscn1xflbp9k"))))
+          "0s1ijdrsg6917imja2hb07l0z4vbx7ydm8m2i1n9g62fg7r3ki1z"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f      ; Tests want mysql, harfbuzz, graphite2.
+       #:cargo-development-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-tempdir" ,rust-tempdir-0.3))))
     (home-page "https://github.com/mcgoo/vcpkg-rs")
     (synopsis "Find native dependencies in a vcpkg tree at build time")
     (description
      "This package provides a library to find native dependencies in a
 @code{vcpkg} tree at build time in order to be used in Cargo build scripts.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -14232,11 +15227,13 @@ Unix users and groups.")
          (base32
           "06n8hw4hlbcz328a3gbpvmy0ma46vg1lc0r5wf55900szf3qdiq5"))))
     (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-serde" ,rust-serde-1.0))))
     (home-page "https://github.com/contain-rs/vec-map")
     (synopsis "Simple map based on a vector for small integer keys")
     (description
      "This package provides a simple map based on a vector for small integer keys.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -14261,7 +15258,6 @@ version requirements.  The version is queried by calling the Rust compiler with
 @code{--version}.  The path to the compiler is determined first via the
 @code{RUSTC} environment variable.  If it is not set, then @code{rustc} is used.
 If that fails, no determination is made, and calls return None.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -14329,7 +15325,6 @@ updated when the crate version changes.")
     (synopsis "Void type for use in statically impossible cases")
     (description
      "The uninhabited void type for use in statically impossible cases.")
-    (properties '((hidden? . #t)))
     (license license:expat)))
 
 (define-public rust-wait-timeout-0.2
@@ -14400,7 +15395,6 @@ specified across Unix and Windows platforms.")
     (synopsis "Experimental WASI API bindings for Rust")
     (description "This package contains experimental WASI API bindings
 in Rust.")
-    (properties '((hidden? . #t)))
     (license license:asl2.0)))
 
 (define-public rust-wasm-bindgen-0.2
@@ -14761,7 +15755,6 @@ UTF-32 types are provided, including support for malformed encoding.")
     (description "This crate provides import libraries for the
 i686-pc-windows-gnu target.  Please don't use this crate directly, depend on
 @code{winapi} instead.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -14807,7 +15800,6 @@ winapi.")
     (description "This package provides import libraries for the
 x86_64-pc-windows-gnu target.  Please don't use this crate directly, depend on
 @code{winapi} instead.")
-    (properties '((hidden? . #t)))
     (license (list license:asl2.0
                    license:expat))))
 
@@ -14885,6 +15877,78 @@ color in a Windows console.")
      "Contains function definitions for the Windows API library ws2_32.")
     (license license:expat)))
 
+(define-public rust-x11-2
+  (package
+    (name "rust-x11")
+    (version "2.18.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "x11" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0dg2d0yrqmwg6prpxkw3vpmwzwxnaki2cn0v64ylh5gp4cqpws9r"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (home-page "https://github.com/erlepereira/x11-rs.git")
+    (synopsis "X11 library bindings for Rust")
+    (description "X11 library bindings for Rust.")
+    (license license:cc0)))
+
+(define-public rust-x11-clipboard-0.4
+  (package
+    (name "rust-x11-clipboard")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "x11-clipboard" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0nqdnswiyj28b1izjp5rzbc67cxpb5c8p4vh1xyndkirzs84vqqk"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f  ; Tests require display server.
+       #:cargo-inputs (("rust-xcb" ,rust-xcb-0.9))))
+    (native-inputs
+     `(("python" ,python)))
+    (home-page "https://github.com/quininer/x11-clipboard")
+    (synopsis "x11 clipboard support for Rust")
+    (description "This package provides x11 clipboard support for Rust.")
+    (license license:expat)))
+
+(define-public rust-x11-dl-2
+  (package
+    (name "rust-x11-dl")
+    (version "2.18.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "x11-dl" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0n1w837xagxqgwx2880d7c9ks6l3g1kk00yd75afdaiv58sf2rdy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-maybe-uninit" ,rust-maybe-uninit-2.0)
+        ("rust-pkg-config" ,rust-pkg-config-0.3))))
+    (home-page "https://github.com/erlepereira/x11-rs.git")
+    (synopsis "X11 library bindings for Rust")
+    (description "This package provides X11 library bindings for Rust.")
+    (license license:cc0)))
+
 (define-public rust-xattr-0.2
   (package
     (name "rust-xattr")
@@ -14912,6 +15976,40 @@ extended attributes.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-xcb-0.9
+  (package
+    (name "rust-xcb")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "xcb" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "19i2pm8alpn2f0m4jg8bsw6ckw8irj1wjh55h9pi2fcb2diny1b2"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f  ; Building all the features tests the code.
+       #:cargo-build-flags '("--features" "debug_all")
+       #:cargo-inputs
+       (("rust-libc" ,rust-libc-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-x11" ,rust-x11-2))))
+    (inputs
+     `(("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("xcb-proto" ,xcb-proto)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("python" ,python)))
+    (home-page "https://github.com/rtbo/rust-xcb")
+    (synopsis "Rust bindings and wrappers for XCB")
+    (description
+     "This package provides Rust bindings and wrappers for XCB.")
+    (license license:expat)))
+
 (define-public rust-xdg-2.2
   (package
     (name "rust-xdg")