diff options
author | Mark H Weaver <mhw@netris.org> | 2019-09-06 20:46:00 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2019-09-06 20:46:00 -0400 |
commit | 65542a8852759f35e19959149ac92297c8b54be5 (patch) | |
tree | bc8f398c7b10a4725b20aa59ab1452d30f358ea3 /gnu/packages/crates-io.scm | |
parent | bc60349b5bc58a0b803df5adce1de6db82453744 (diff) | |
parent | f66aee3d0d2f573187ed5d44ae7c13d73cd4097a (diff) | |
download | patches-65542a8852759f35e19959149ac92297c8b54be5.tar patches-65542a8852759f35e19959149ac92297c8b54be5.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/crates-io.scm')
-rw-r--r-- | gnu/packages/crates-io.scm | 1358 |
1 files changed, 1346 insertions, 12 deletions
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index c3d2419f88..e138b93e9b 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com> ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,12 +24,73 @@ #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages gcc) + #:use-module (gnu packages jemalloc) + #:use-module (gnu packages llvm) + #:use-module (gnu packages maths) #:use-module (gnu packages pkg-config)) ;;; ;;; Please: Try to add new module packages in alphabetic order. ;;; +(define-public rust-adler32 + (package + (name "rust-adler32") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "adler32" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0p7fxlnks9l7p7rwfqi7aqgnk2bps5zc0rjiw00mdw19nnbjjlky")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs (("rust-rand" ,rust-rand)))) + (home-page "https://github.com/remram44/adler32-rs") + (synopsis "Implementation of the Adler32 rolling hash algorithm") + (description + "This library is an implementation of the Adler32 rolling hash algorithm in +the Rust programming language.") + (license (list license:bsd-3 + license:zlib)))) + +(define-public rust-ansi-term + (package + (name "rust-ansi-term") + (version "0.11.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "ansi_term" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-winapi" ,rust-winapi)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + ;; https://github.com/ogham/rust-ansi-term/commit/5ff6af6f38790abcb3aafee1239286c10ef69576.patch + (lambda _ + (substitute* "src/debug.rs" + (("^ *Blue") " Blue,") + (("underline: false") "underline: false,")) + #t))))) + (home-page "https://github.com/ogham/rust-ansi-term") + (synopsis "Library for ANSI terminal colours and styles") + (description + "This is a library for controlling colours and formatting, such as red bold +text or blue underlined text, on ANSI terminals.") + (license license:expat))) + (define-public rust-antidote (package (name "rust-antidote") @@ -96,6 +158,29 @@ support.") (license (list license:asl2.0 license:expat)))) +(define-public rust-base-x + (package + (name "rust-base-x") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "base-x" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0hv4y5cdhv6bk0ghk2434clw8v4mmk5cc9lsh6qrpri92zlfmx3n")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-bencher" ,rust-bencher) + ("rust-json" ,rust-json) + ("rust-rand" ,rust-rand-0.3)))) + (home-page "https://github.com/OrKoN/base-x-rs") + (synopsis "Encode/decode any base") + (description "This library provides for encoding and decoding any base.") + (license license:expat))) + (define-public rust-bencher (package (name "rust-bencher") @@ -160,6 +245,29 @@ behave like a set of bitflags.") (license (list license:asl2.0 license:expat)))) +(define-public rust-cargon + (package + (name "rust-cargon") + (version "0.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "cargon" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1cszlab7jk736p0lb50ag4l9nv72m7j41bwrmygl0lr4iz0350w2")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-gcc" ,rust-gcc)))) + (home-page "https://github.com/bryant/argon2rs") + (synopsis "Thin wrapper around the Argon2 C library") + (description + "This package provides a thin wrapper around the Argon2 C library. It is +used in argon2rs' bench suite.") + (license license:wtfpl2))) + (define-public rust-cblas-sys (package (name "rust-cblas-sys") @@ -182,6 +290,45 @@ behave like a set of bitflags.") (license (list license:asl2.0 license:expat)))) +(define-public rust-cc + (package + (name "rust-cc") + (version "1.0.41") + (source + (origin + (method url-fetch) + (uri (crate-uri "cc" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1zxzd559dbbf1iwdzmkj7czapzccs17kqqmsj9ayijpdix5rrbld")))) + (build-system cargo-build-system) + (arguments + `(;#:cargo-inputs + ;(("rust-rayon" ,rust-rayon)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-optional-deps + (lambda _ + (substitute* "Cargo.toml.orig" + ((".*optional.*") "\n") + ((".*features.*") "") + ((".*parallel.*") "")) + (delete-file "Cargo.toml") + (copy-file "Cargo.toml.orig" "Cargo.toml") + #t))) + #:tests? #f)) ; Tests require cc-test from git repo. + (home-page "https://github.com/alexcrichton/cc-rs") + (synopsis "Invoke the native C compiler") + (description + "This package provides a build-time dependency for Cargo build scripts to +assist in invoking the native C compiler to compile native C code into a static +archive to be linked into Rustcode.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-cfg-if (package (name "rust-cfg-if") @@ -203,6 +350,42 @@ depending on a large number of #[cfg] parameters. Structured like an (license (list license:asl2.0 license:expat)))) +(define-public rust-clang-sys + (package + (name "rust-clang-sys") + (version "0.28.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "clang-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ls8zcqi5bmmrvrk3b6r1ym4wlivinbv590d2dvg2xn9f44mbpl1")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-glob" ,rust-glob) + ("rust-libc" ,rust-libc) + ("rust-libloading" ,rust-libloading)) + #:cargo-development-inputs + (("rust-glob" ,rust-glob)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-environmental-variable + (lambda* (#:key inputs #:allow-other-keys) + (let ((clang (assoc-ref inputs "libclang"))) + (setenv "LIBCLANG_PATH" + (string-append clang "/lib"))) + #t))))) + (inputs + `(("libclang" ,clang))) + (home-page "https://github.com/KyleMayes/clang-sys") + (synopsis "Rust bindings for libclang") + (description + "This package provides Rust bindings for @code{libclang}.") + (license license:asl2.0))) + (define-public rust-clicolors-control (package (name "rust-clicolors-control") @@ -251,6 +434,81 @@ colorization.") "Low level interface to CloudABI. Contains all syscalls and related types.") (license license:bsd-2))) +(define-public rust-cmake + (package + (name "rust-cmake") + (version "0.1.42") + (source + (origin + (method url-fetch) + (uri (crate-uri "cmake" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0qkwibkvx5xjazvv9v8gvdlpky2jhjxvcz014nrixgzqfyv2byw1")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs (("rust-cc" ,rust-cc)))) + (home-page "https://github.com/alexcrichton/cmake-rs") + (synopsis "Rust build dependency for running cmake") + (description + "This package provides a build dependency for running @code{cmake} to build +a native library. The CMake executable is assumed to be @code{cmake} unless the +CMAKE environmental variable is set.") + (license (list license:asl2.0 + license:expat)))) + +;; This package requires features which are unavailable +;; on the stable releases of Rust. +(define-public rust-compiler-builtins + (package + (name "rust-compiler-builtins") + (version "0.1.19") + (source + (origin + (method url-fetch) + (uri (crate-uri "compiler_builtins" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1fpabpmg8paj4r5a37vmidh1jx1b7a6ilxm4s3xsxczx27ybjcjf")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-rustc-std-workspace-core" + ,rust-rustc-std-workspace-core)))) + (home-page "https://github.com/rust-lang-nursery/compiler-builtins") + (synopsis "Compiler intrinsics used by the Rust compiler") + (description + "This package provides compiler intrinsics used by the Rust compiler. This +package is primarily useful when building the @code{core} crate yourself and you +need compiler-rt intrinsics.") + (properties `((hidden? . #t))) + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-constant-time-eq + (package + (name "rust-constant-time-eq") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "constant_time_eq" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "083icpr9xb72rrdxw3p4068dcspn6ai22jy7rhl2a8grfz448nlr")))) + (build-system cargo-build-system) + (home-page "https://github.com/cesarb/constant_time_eq") + (synopsis + "Compares two equal-sized byte strings in constant time") + (description + "This package compares two equal-sized byte strings in constant time. +It is inspired by the Linux kernel's @code{crypto_memneq}.") + (license license:cc0))) + (define-public rust-core-foundation-sys (package (name "rust-core-foundation-sys") @@ -405,6 +663,38 @@ provides implementations for @code{HashMap} and @code{HashSet}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-filetime + (package + (name "rust-filetime") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "filetime" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sflihq2l77xjrza7yjalnxsc7dxzg25rhzcfbd9vmyfah5kimvb")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if) + ("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)))) + (home-page "https://github.com/alexcrichton/filetime") + (synopsis "Platform-agnostic accessors of timestamps in File metadata") + (description + "This library contains a helper library for inspecting and setting the +various timestamps of files in Rust. This library takes into account +cross-platform differences in terms of where the timestamps are located, what +they are called, and how to convert them into a platform-independent +representation.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-findshlibs (package (name "rust-findshlibs") @@ -443,7 +733,7 @@ cross platform API.") (base32 "0czam11mi80dbyhf4rd4lz0ihcf7vkfchrdcrn45wbs0h40dxm46")))) (build-system cargo-build-system) - (home-page "https://github.com/bluss/fixedbitset") + (home-page "https://github.com/petgraph/fixedbitset") (synopsis "FixedBitSet is a simple bitset collection") (description "FixedBitSet is a simple bitset collection.") (license (list license:asl2.0 @@ -610,7 +900,7 @@ featuring zero allocations, composability, and iterator-like interfaces.") `(#:cargo-inputs (("rust-futures" ,rust-futures) ("rust-num-cpus" ,rust-num-cpus)))) - (home-page "https://github.com/alexcrichton/futures-rs") + (home-page "https://github.com/rust-lang-nursery/futures-rs") (synopsis "Implementation of thread pools which hand out futures") (description "An implementation of thread pools which hand out futures to the results of @@ -638,6 +928,125 @@ the computation on the threads themselves.") (license (list license:asl2.0 license:expat)))) +(define-public rust-gcc + (package + (inherit rust-cc) + (name "rust-gcc") + (version "0.3.55") + (source + (origin + (method url-fetch) + (uri (crate-uri "gcc" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1hng1sajn4r67hndvhjysswz8niayjwvcj42zphpxzhbz89kjpwg")))) + (build-system cargo-build-system) + (arguments + `(;#:cargo-inputs + ;(("rust-rayon" ,rust-rayon)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-optional-deps + (lambda _ + (substitute* "Cargo.toml.orig" + ((".*optional.*") "\n") + ((".*features.*") "") + ((".*parallel.*") "")) + (delete-file "Cargo.toml") + (copy-file "Cargo.toml.orig" "Cargo.toml") + #t))) + #:tests? #f)) + (home-page "https://github.com/alexcrichton/cc-rs") + (synopsis "Library to compile C/C++ code into a Rust library/application") + (description + "This package provides a build-time dependency for Cargo build scripts to +assist in invoking the native C compiler to compile native C code into a static +archive to be linked into Rustcode.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-getopts + (package + (name "rust-getopts") + (version "0.2.17") + (source + (origin + (method url-fetch) + (uri (crate-uri "getopts" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "018yhq97zgcrcxwhj3pxh31h83704sgaiijdnpl0r1ir366c005r")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-log" ,rust-log)))) + (home-page "https://github.com/rust-lang-nursery/getopts") + (synopsis "Rust library for option parsing for CLI utilities") + (description "This library provides getopts-like option parsing.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-glob + (package + (name "rust-glob") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "glob" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + ;; This test assumes /root exists but is unreadable by the user. + (lambda _ + (substitute* "src/lib.rs" + (("cfg\\(all\\(unix,.*") "cfg(windows)]\n")) + #t))))) + (home-page "https://github.com/rust-lang-nursery/glob") + (synopsis "Match file paths against Unix shell style patterns") + (description + "This package provides support for matching file paths against Unix +shell style patterns.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-glob-0.2 + (package + (inherit rust-glob) + (name "rust-glob") + (version "0.2.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "glob" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb")))) + (arguments + `(#:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + ;; This test assumes /root exists but is unreadable by the user. + (lambda _ + (substitute* "src/lib.rs" + (("cfg\\(unix") "cfg(windows")) + #t))))))) + (define-public rust-heapsize (package (name "rust-heapsize") @@ -664,6 +1073,54 @@ heap.") (license (list license:asl2.0 license:expat)))) +(define-public rust-heapsize-0.3 + (package + (inherit rust-heapsize) + (name "rust-heapsize") + (version "0.3.9") + (source + (origin + (method url-fetch) + (uri (crate-uri "heapsize" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0dmwc37vgsdjzk10443dj4f23439i9gch28jcwzmry3chrwx8v2m")))) + (arguments + `(#:cargo-inputs (("rust-kernel32-sys" ,rust-kernel32-sys)) + #:tests? #f)))) ;; No flexible-tests feature flags on this release. + +;; This package makes use of removed features +(define-public rust-heapsize-plugin + (package + (name "rust-heapsize-plugin") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (crate-uri "heapsize_plugin" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1i72isf699q9jl167g2kg4xd6h3cd05rc79zaph58aqjy0g0m9y9")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs (("rust-heapsize" ,rust-heapsize-0.3)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-Cargo-toml + (lambda _ + (substitute* "Cargo.toml" + (("path = \"..\", ") "")) + #t))))) + (home-page "https://github.com/servo/heapsize") + (synopsis "Measure runtime size of an object on the heap") + (description + "This package automatically generates infrastructure for measuring the +total runtime size of an object on the heap") + (properties `((hidden? . #t))) + (license license:mpl2.0))) + (define-public rust-hex (package (name "rust-hex") @@ -751,6 +1208,41 @@ primitives to an @code{io::Write}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-jemalloc-sys + (package + (name "rust-jemalloc-sys") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "jemalloc-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ify9vlql01qhfxlj7d4p9jvcp90mj2h69nkbq7slccvbhzryfqd")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-cc" ,rust-cc) + ("rust-fs-extra" ,rust-fs-extra)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'override-jemalloc + (lambda* (#:key inputs #:allow-other-keys) + (let ((jemalloc (assoc-ref inputs "jemalloc"))) + (delete-file-recursively "jemalloc") + (setenv "JEMALLOC_OVERRIDE" + (string-append jemalloc "/lib/libjemalloc_pic.a"))) + #t))))) + (inputs + `(("jemalloc" ,jemalloc))) + (home-page "https://github.com/gnzlbg/jemallocator") + (synopsis "Rust FFI bindings to jemalloc") + (description "This package provides Rust FFI bindings to jemalloc.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-json (package (name "rust-json") @@ -801,6 +1293,34 @@ friction with idiomatic Rust structs to ease interopability.") kernel32.") (license license:expat))) +(define-public rust-language-tags + (package + (name "rust-language-tags") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "language-tags" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "16hrjdpa827carq5x4b8zhas24d8kg4s16m6nmmn1kb7cr5qh7d9")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-heapsize" ,rust-heapsize-0.3)) + #:cargo-development-inputs + (("rust-heapsize-plugin" ,rust-heapsize-plugin)))) + (home-page "https://github.com/pyfisch/rust-language-tags") + (synopsis "Language tags for Rust") + (description + "Language tags can be used identify human languages, scripts e.g. Latin +script, countries and other regions. They are commonly used in HTML and HTTP +@code{Content-Language} and @code{Accept-Language} header fields. This package +currently supports parsing (fully conformant parser), formatting and comparing +language tags.") + (license license:expat))) + (define-public rust-lazy-static (package (name "rust-lazy-static") @@ -859,6 +1379,89 @@ the platform that libc is compiled for.") (license (list license:expat license:asl2.0)))) +(define-public rust-libloading + (package + (name "rust-libloading") + (version "0.5.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "libloading" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0lyply8rcqc8agajzxs7bq6ivba9dnn1i68kgb9z2flnfjh13cgj")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://github.com/nagisa/rust_libloading/") + (synopsis "Rust library for loading dynamic libraries") + (description + "A memory-safer wrapper around system dynamic library loading primitives. +The most important safety guarantee by this library is prevention of +dangling-Symbols that may occur after a Library is unloaded. Using this library +allows loading dynamic libraries (also known as shared libraries) as well as use +functions and static variables these libraries contain.") + (license license:isc))) + +(define-public rust-log + (package + (name "rust-log") + (version "0.3.8") + (source + (origin + (method url-fetch) + (uri (crate-uri "log" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0nsn28syc49vvjhxcfc8261rd1frhjc0r4bn9v3mqvps3ra7f3w8")))) + (build-system cargo-build-system) + (home-page "https://github.com/rust-lang-nursery/log") + (synopsis "Lightweight logging") + (description + "This package provides a lightweight logging facade for Rust") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-lzma-sys + (package + (name "rust-lzma-sys") + (version "0.1.15") + (source + (origin + (method url-fetch) + (uri (crate-uri "lzma-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "14gyj256yh0wm77jbvmlc39v7lfn0navpfrja4alczarzlc8ir2k")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-libc" ,rust-libc) + ("rust-pkg-config" ,rust-pkg-config)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unbundle-xz + (lambda* (#:key inputs #:allow-other-keys) + (let ((xz (assoc-ref inputs "xz"))) + (delete-file-recursively "xz-5.2")) + #t))))) + (inputs + `(("pkg-config" ,pkg-config) + ("xz" ,xz))) + (home-page "https://github.com/alexcrichton/xz2-rs") + (synopsis "Bindings to liblzma for lzma and xz stream encoding/decoding") + (description + "This package contains the raw bindings to liblzma which contains an +implementation of LZMA and xz stream encoding/decoding.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-maplit (package (name "rust-maplit") @@ -917,6 +1520,53 @@ whether an expression matches a pattern.") (license (list license:asl2.0 license:expat)))) +(define-public rust-memmap + (package + (name "rust-memmap") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "memmap" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ns7kkd1h4pijdkwfvw4qlbbmqmlmzwlq3g2676dcl5vwyazv1b5")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)))) + (home-page "https://github.com/danburkert/memmap-rs") + (synopsis "Rust library for cross-platform memory mapped IO") + (description + "This package provides a cross-platform Rust API for memory-mapped +file IO.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-memmap-0.6 + (package + (inherit rust-memmap) + (name "rust-memmap") + (version "0.6.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "memmap" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1zy6s0ni0lx9rjzq3gq2zz9r8zgjmbp02332g3gsj4fyhv4s5zz2")))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)))))) + (define-public rust-mime (package (name "rust-mime") @@ -940,6 +1590,110 @@ whether an expression matches a pattern.") (license (list license:asl2.0 license:expat)))) +(define-public rust-miniz-oxide + (package + (name "rust-miniz-oxide") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "miniz_oxide" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "041s41l5w7z8pkp93pdzn8rngxr93q4wxp034pr0cvc7bgway23i")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-adler32" ,rust-adler32)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + (lambda _ + (substitute* "tests/test.rs" + (("../miniz/miniz.c") "Cargo.toml")) + #t))))) + (home-page "https://github.com/Frommi/miniz_oxide/tree/master/miniz_oxide") + (synopsis "Pure rust replacement for the miniz DEFLATE/zlib encoder/decoder") + (description + "A pure rust replacement for the miniz DEFLATE/zlib encoder/decoder. Using +@code{flate2} with the @code{rust_backend} feature provides an easy to use +streaming API for miniz_oxide.") + (license license:expat))) + +(define-public rust-miniz-sys + (package + (name "rust-miniz-sys") + (version "0.1.12") + (source + (origin + (method url-fetch) + (uri (crate-uri "miniz-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "00l2r4anm8g35x0js2zfdnwfbrih9m43vphdpb77c5ga3kjkm7hy")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cc" ,rust-cc) + ("rust-libc" ,rust-libc)))) + (home-page "https://github.com/alexcrichton/flate2-rs") + (synopsis "Bindings to the miniz.c library") + (description + "This package provides bindings to the @code{miniz.c} library.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-miow + (package + (name "rust-miow") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "miow" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "09ljvx6wg30f2xlv7b7hhpkw7k312n3hjgmrbhwzhz9x03ra0sir")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-socket2" ,rust-socket2) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand)))) + (home-page "https://github.com/alexcrichton/miow") + (synopsis "Rust I/O library for Windows") + (description + "This package provides a zero overhead I/O library for Windows, focusing on +IOCP and Async I/O abstractions.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-miow-0.2 + (package + (inherit rust-miow) + (name "rust-miow") + (version "0.2.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "miow" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "06g9b8sqlh5gxakwqq4rrib07afwanfnxgxajrldwcgk3hxjy7wc")))) + (arguments + `(#:cargo-inputs + (("rust-kernel32-sys" ,rust-kernel32-sys) + ("rust-net2" ,rust-net2) + ("rust-winapi" ,rust-winapi-0.2) + ("rust-ws2-32-sys" ,rust-ws2-32-sys)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))))) + (define-public rust-modifier (package (name "rust-modifier") @@ -986,6 +1740,42 @@ types as proposed in RFC 1158.") (license (list license:asl2.0 license:expat)))) +(define-public rust-netlib-src + (package + (name "rust-netlib-src") + (version "0.7.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "netlib-src" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "112hwfw1zzdj10h3j213xxqjrq38iygb3nb3ijay65ycmrg819s4")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-cmake" ,rust-cmake) + ("rust-libc" ,rust-libc)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'use-system-lapack + (lambda _ + (delete-file-recursively "source") + (substitute* "Cargo.toml" + (("default .*") + "default = [\"system\"]\n")) + #t))))) + (inputs + `(("gfortran:lib" ,gfortran "lib") + ("lapack" ,lapack))) + (home-page "https://github.com/blas-lapack-rs/netlib-src") + (synopsis "Source of BLAS and LAPACK via Netlib") + (description + "The package provides a source of BLAS and LAPACK via Netlib.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-nodrop (package (name "rust-nodrop") @@ -1133,6 +1923,76 @@ implementation (which is unstable / requires nightly).") (license (list license:asl2.0 license:expat)))) +(define-public rust-openssl-probe + (package + (name "rust-openssl-probe") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "openssl-probe" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1pijrdifgsdwd45b08c2g0dsmnhz7c3kmagb70839ngrd7d29bvp")))) + (build-system cargo-build-system) + (home-page "https://github.com/alexcrichton/openssl-probe") + (synopsis "Find SSL certificate locations") + (description + "This package provides a tool to find SSL certificate locations on the +system for OpenSSL.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-owning-ref + (package + (name "rust-owning-ref") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "owning_ref" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "04zgwy77lin8qz398s6g44467pd6kjhbrlqifkia5rkr47mbi929")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-stable-deref-trait" ,rust-stable-deref-trait)))) + (home-page "https://github.com/Kimundi/owning-ref-rs") + (synopsis "Create references that carry their owner with them") + (description + "This package provides a library for creating references that carry their +owner with them. This can sometimes be useful because Rust borrowing rules +normally prevent moving a type that has been borrowed from.") + (license license:expat))) + +(define-public rust-parity-wasm + (package + (name "rust-parity-wasm") + (version "0.40.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "parity-wasm" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1p84f0k36q05j18jy66n122lyali794cj78hbxgy9wj6si84plqd")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-time" ,rust-time)) + #:tests? #f)) ; Test files are not included in release. + (home-page "https://github.com/paritytech/parity-wasm") + (synopsis "Low-level WebAssembly format library") + (description + "This package provides a WebAssembly binary format serialization, +deserialization, and interpreter in Rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-peeking-take-while (package (name "rust-peeking-take-while") @@ -1197,6 +2057,29 @@ algorithm.") (license (list license:asl2.0 license:expat)))) +(define-public rust-pico-sys + (package + (name "rust-pico-sys") + (version "0.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "pico-sys" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1q5pg0ms6szz6b5h26h4k40zb76zbwwjgyigac4wly9qngdj4yl5")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-gcc" ,rust-gcc) + ("rust-libc" ,rust-libc)))) + (home-page "https://github.com/reem/rust-pico-sys") + (synopsis "Bindings to the PicoHTTPParser") + (description + "This package provides bindings to the PicoHTTPParser.") + (license license:expat))) + (define-public rust-pin-utils (package (name "rust-pin-utils") @@ -1234,7 +2117,7 @@ algorithm.") (("rust-lazy-static" ,rust-lazy-static)))) (inputs `(("pkg-config" ,pkg-config))) - (home-page "https://github.com/alexcrichton/pkg-config-rs") + (home-page "https://github.com/rust-lang/pkg-config-rs") (synopsis "Library to run the pkg-config system tool") (description "A library to run the pkg-config system tool at build time in order to be @@ -1340,7 +2223,7 @@ for x86.") "0nd71fl24sys066jrha6j7i34nfkjv44yzw8yww9742wmc8j0gfg")))) (build-system cargo-build-system) (arguments - `(#:cargo-inputs (("rust-unicode-xid" ,rust-unicode-xid)) + `(#:cargo-inputs (("rust-unicode-xid" ,rust-unicode-xid-0.1)) #:cargo-development-inputs (("rust-quote" ,rust-quote)))) (home-page "https://github.com/alexcrichton/proc-macro2") (synopsis "Stable implementation of the upcoming new `proc_macro` API") @@ -1363,7 +2246,7 @@ in terms of the upstream unstable API.") (base32 "1w6kgwwv7p7zr0yyg5rb315lkk24bimywklwx7fsvsbwi10bjx4j")))) (build-system cargo-build-system) - (home-page "http://github.com/tailhook/quick-error") + (home-page "https://github.com/tailhook/quick-error") (synopsis "Macro which makes error types pleasant to write") (description "This crate provides a macro which makes error types pleasant to write.") @@ -1392,6 +2275,50 @@ to write.") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) +(define-public rust-rand + (package + (name "rust-rand") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1gfgnqfj2pyh27dcb720jpawskllwnbvxh816ddyykv269xz8ml3")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-fuchsia-zircon" ,rust-fuchsia-zircon) + ("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://crates.io/crates/rand") + (synopsis "Random number generators and other randomness functionality") + (description + "Rand provides utilities to generate random numbers, to convert them to +useful types and distributions, and some randomness-related algorithms.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-rand-0.3 + (package + (inherit rust-rand) + (name "rust-rand") + (version "0.3.23") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0v679h38pjjqj5h4md7v2slsvj6686qgcn7p9fbw3h43iwnk1b34")))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-rand" ,rust-rand)))))) + (define-public rust-rawpointer (package (name "rust-rawpointer") @@ -1413,6 +2340,28 @@ and @code{ptrdistance}.") (license (list license:asl2.0 license:expat)))) +;; This package requires features which are unavailable +;; on the stable releases of Rust. +(define-public rust-redox-syscall ; guix upstreamable + (package + (name "rust-redox-syscall") + (version "0.1.56") + (source + (origin + (method url-fetch) + (uri (crate-uri "redox_syscall" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "110y7dyfm2vci4x5vk7gr0q551dvp31npl99fnsx2fb17wzwcf94")))) + (build-system cargo-build-system) + (home-page "https://gitlab.redox-os.org/redox-os/syscall") + (synopsis "Rust library to access raw Redox system calls") + (description "This package provides a Rust library to access raw Redox +system calls.") + (properties '((hidden? . #t))) + (license license:expat))) + (define-public rust-regex-syntax (package (name "rust-regex-syntax") @@ -1460,7 +2409,7 @@ and @code{ptrdistance}.") ;; The test phase expects there to be a README.md in the root directory. (lambda _ (invoke "touch" "README.md")))))) - (home-page "https://github.com/XAMPPRocky/remove_dir_all.git") + (home-page "https://github.com/XAMPPRocky/remove_dir_all") (synopsis "Implementation of remove_dir_all for Windows") (description "This package provides a safe, reliable implementation of @@ -1493,6 +2442,58 @@ and @code{ptrdistance}.") (license (list license:asl2.0 license:expat)))) +(define-public rust-rustc-demangle + (package + (name "rust-rustc-demangle") + (version "0.1.16") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-demangle" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "10qp42sl1wrdbgbbh8rnay2grm976z7hqgz32c4y09l1c071qsac")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-compiler-builtins" + ,rust-compiler-builtins) + ("rust-rustc-std-workspace-core" + ,rust-rustc-std-workspace-core)))) + (home-page "https://github.com/alexcrichton/rustc-demangle") + (synopsis "Rust compiler symbol demangling") + (description + "This package demanges the symbols from the Rust compiler.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-rustc-serialize + (package + (name "rust-rustc-serialize") + (version "0.3.24") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-serialize" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1nkg3vasg7nk80ffkazizgiyv3hb1l9g3d8h17cajbkx538jiwfw")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))) + (home-page "https://github.com/rust-lang-deprecated/rustc-serialize") + (synopsis "Generic serialization/deserialization support") + (description + "This package provides generic serialization/deserialization support +corresponding to the @code{derive(RustcEncodable, RustcDecodable)} mode in the +compiler. Also includes support for hex, base64, and json encoding and +decoding.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-rustc-std-workspace-core (package (name "rust-rustc-std-workspace-core") @@ -1581,6 +2582,34 @@ paths point to the same file.") server functionality.") (license license:expat))) +(define-public rust-scoped-threadpool + (package + (name "rust-scoped-threadpool") + (version "0.1.9") + (source + (origin + (method url-fetch) + (uri (crate-uri "scoped_threadpool" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1a26d3lk40s9mrf4imhbik7caahmw2jryhhb6vqv6fplbbgzal8x")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static)))) + (home-page "https://github.com/Kimundi/scoped-threadpool-rs") + (synopsis "library for scoped and cached threadpools") + (description + "This crate provides a stable, safe and scoped threadpool. It can be used +to execute a number of short-lived jobs in parallel without the need to respawn +the underlying threads. Jobs are runnable by borrowing the pool for a given +scope, during which an arbitrary number of them can be executed. These jobs can +access data of any lifetime outside of the pools scope, which allows working on +non-'static references in parallel.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-scoped-tls (package (name "rust-scoped-tls") @@ -1697,6 +2726,20 @@ with one of the implemented strategies.") (license (list license:asl2.0 license:expat)))) +(define-public rust-semver-parser-0.7 + (package + (inherit rust-semver-parser) + (name "rust-semver-parser") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "semver-parser" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "18vhypw6zgccnrlm5ps1pwa0khz7ry927iznpr88b87cagr1v2iq")))))) + (define-public rust-shlex (package (name "rust-shlex") @@ -1736,6 +2779,60 @@ words, like Python's shlex.") data type.") (license license:expat))) +(define-public rust-socket2 + (package + (name "rust-socket2") + (version "0.3.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "socket2" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "11bdcz04i106g4q7swkll0qxrb4287srqd2k3aq2q6i22zjlvdz8")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if) + ("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:tests? #f)) ; Tests expect network connectivity. + (home-page "https://github.com/alexcrichton/socket2-rs") + (synopsis "Networking sockets in Rust") + (description + "This package provides utilities for handling networking sockets with a +maximal amount of configuration possible intended.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-sourcefile + (package + (name "rust-sourcefile") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "sourcefile" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lwa6973zs4bgj29my7agfjgk4nw9hp6j7dfnr13nid85fw7rxsb")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile)))) + (home-page "https://github.com/derekdreery/sourcefile-rs") + (synopsis "Concatenate source from multiple files") + (description + "A library for concatenating source from multiple files, whilst keeping +track of where each new file and line starts.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-spin (package (name "rust-spin") @@ -1749,7 +2846,7 @@ data type.") (base32 "0m9clchsj0rf13bggsgvbv9haiy0f6rhvnvkpvkk8720a5pkydj4")))) (build-system cargo-build-system) - (home-page "https://github.com/mvdnes/spin-rs.git") + (home-page "https://github.com/mvdnes/spin-rs") (synopsis "Synchronization primitives based on spinning") (description "This crate provides synchronization primitives based on spinning. They may contain data, are usable without @code{std},and static @@ -1780,6 +2877,33 @@ to the same address.") (license (list license:asl2.0 license:expat)))) +(define-public rust-stacker + (package + (name "rust-stacker") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "stacker" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0js0axz5nla1mkr2dm2vrv9rj964ng1lrv4l43sqlnfgawplhygv")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if) + ("rust-libc" ,rust-libc) + ("rust-winapi" ,rust-winapi) + ("rust-cc" ,rust-cc)))) + (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.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-stdweb-internal-runtime (package (name "rust-stdweb-internal-runtime") @@ -1886,6 +3010,92 @@ and Jaro-Winkler.") "This package provides helper test traits for synstructure doctests.") (license license:expat))) +(define-public rust-tar + (package + (name "rust-tar") + (version "0.4.26") + (source + (origin + (method url-fetch) + (uri (crate-uri "tar" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lr6v3cpkfxd2lk5ll2jd8wr1xdskwj35smnh5sfb8xvzzxnn6dk")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-filetime" ,rust-filetime) + ("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-xattr" ,rust-xattr)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir)) + #:tests? #f)) ; Test archives are not distributed in the crate tarball. + (home-page "https://github.com/alexcrichton/tar-rs") + (synopsis "Tar file reading/writing for Rust") + (description + "This package provides a Rust implementation of a TAR file reader and +writer. This library does not currently handle compression, but it is abstract +over all I/O readers and writers. Additionally, great lengths are taken to +ensure that the entire contents are never required to be entirely resident in +memory all at once.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-tempdir + (package + (name "rust-tempdir") + (version "0.3.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "tempdir" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1n5n86zxpgd85y0mswrp5cfdisizq2rv3la906g6ipyc03xvbwhm")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-rand" ,rust-rand) + ("rust-remove-dir-all" ,rust-remove-dir-all)))) + (home-page "https://github.com/rust-lang-deprecated/tempdir") + (synopsis "Temporary directory management for Rust") + (description + "This package provides a library for managing a temporary directory and +deleting all contents when it's dropped.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-tempfile + (package + (name "rust-tempfile") + (version "3.0.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "tempfile" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ny1cdbcsrmwjpy4k9366xm6p0jqkrmrvr0cln2djxspp1inyxs7")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-rand" ,rust-rand) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-remove-dir-all" ,rust-remove-dir-all) + ("rust-winapi" ,rust-winapi)))) + (home-page "http://stebalien.com/projects/tempfile-rs") + (synopsis "Library for managing temporary files and directories") + (description + "This package provides a library for managing temporary files and +directories.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-termcolor (package (name "rust-termcolor") @@ -1933,6 +3143,32 @@ bindings are a small wrapper around the raw C functions, which converts integer return values to @code{std::io::Result} to indicate success or failure.") (license license:expat))) +(define-public rust-thread-id + (package + (name "rust-thread-id") + (version "3.3.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "thread-id" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1h90v19fjz3x9b25ywh68z5yf2zsmm6h5zb4rl302ckbsp4z9yy7")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-winapi" ,rust-winapi)))) + (home-page "https://github.com/ruuda/thread-id") + (synopsis "Get a unique ID for the current thread in Rust") + (description + "For diagnostics and debugging it can often be useful to get an ID that is +different for every thread.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-thread-local (package (name "rust-thread-local") @@ -1979,6 +3215,37 @@ fixed set of worker threads.") (license (list license:asl2.0 license:expat)))) +(define-public rust-time + (package + (name "rust-time") + (version "0.1.39") + (source + (origin + (method url-fetch) + (uri (crate-uri "time" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "161hqx0gw722ikydanpahky447vaxqncwmkj66rny282vzqpalx1")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc) + ("rust-redox-syscall" ,rust-redox-syscall) + ("rust-rustc-serialize" ,rust-rustc-serialize) + ("rust-winapi" ,rust-winapi)) + #:cargo-development-inputs + (("rust-log" ,rust-log) + ("rust-winapi" ,rust-winapi)) + #:tests? #f)) ; Tests have difficulty with the timezones. + (home-page "https://github.com/rust-lang-deprecated/time") + (synopsis "Simple time handling in Rust") + (description + "This package provides utilities for working with time-related functions +in Rust.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-tokio-mock-task (package (name "rust-tokio-mock-task") @@ -2035,7 +3302,7 @@ fixed set of worker threads.") (base32 "0yb0n8822mr59j200fyr2fxgzzgqljyxflx9y8bdy3rlaqngilgg")))) (build-system cargo-build-system) - (home-page "https://github.com/reem/rust-traitobject.git") + (home-page "https://github.com/reem/rust-traitobject") (synopsis "Unsafe helpers for dealing with raw trait objects") (description "Unsafe helpers for dealing with raw trait objects.") (license (list license:asl2.0 @@ -2232,7 +3499,7 @@ with the Unicode character database.") (define-public rust-unicode-xid (package (name "rust-unicode-xid") - (version "0.1.0") + (version "0.2.0") (source (origin (method url-fetch) @@ -2240,8 +3507,8 @@ with the Unicode character database.") (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 - "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw")))) + (base32 + "0z09fn515xm7zyr0mmdyxa9mx2f7azcpv74pqmg611iralwpcvl2")))) (build-system cargo-build-system) (home-page "https://github.com/unicode-rs/unicode-xid") @@ -2251,6 +3518,20 @@ or XID_Continue properties according to Unicode Standard Annex #31.") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) +(define-public rust-unicode-xid-0.1 + (package + (inherit rust-unicode-xid) + (name "rust-unicode-xid") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "unicode-xid" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw")))))) + (define-public rust-unindent (package (name "rust-unindent") @@ -2313,6 +3594,32 @@ whitespace from a string.") untrusted inputs in Rust.") (license license:isc))) +(define-public rust-vcpkg + (package + (name "rust-vcpkg") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "vcpkg" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "15dzk1b96q946v9aisbd1bbhi33n93wvgziwh1shmscn1xflbp9k")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static) + ("rust-tempdir" ,rust-tempdir)) + #:tests? #f)) ; tests try to link libmysql, graphite2, harfbuzz + (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.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-version-check (package (name "rust-version-check") @@ -2364,7 +3671,7 @@ If that fails, no determination is made, and calls return None.") (base32 "0zc8f0ksxvmhvgx4fdg0zyn6vdnbxd2xv9hfx4nhzg6kbs4f80ka")))) (build-system cargo-build-system) - (home-page "https://github.com/reem/rust-void.git") + (home-page "https://github.com/reem/rust-void") (synopsis "Void type for use in statically impossible cases") (description "The uninhabited void type for use in statically impossible cases.") @@ -2698,6 +4005,33 @@ color in a Windows console.") "Contains function definitions for the Windows API library ws2_32.") (license license:expat))) +(define-public rust-xattr + (package + (name "rust-xattr") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "xattr" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0k556fb6f5jc907975j9c8iynl2fqz3rf0w6fiig83i4yi0kfk14")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc)) + #:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile)) + #:tests? #f)) ; Tests assume read access to /var. + (home-page "https://github.com/Stebalien/xattr") + (synopsis "Unix extended filesystem attributes") + (description + "This package provide a small library for setting, getting, and listing +extended attributes.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-xdg (package (name "rust-xdg") |