summaryrefslogtreecommitdiff
path: root/gnu/packages/crates-compression.scm
diff options
context:
space:
mode:
authorEfraim Flashner <[email protected]>2024-12-26 21:32:53 +0200
committerEfraim Flashner <[email protected]>2025-01-06 12:19:34 +0200
commit18e8bf56294bb736fe2c6a6fa3acbfa04158c71e (patch)
tree62bed663a70114146846f6f8380eb6faacbcc5a5 /gnu/packages/crates-compression.scm
parent5fd24a1d8d750a09308dc31bd3166a42037efc34 (diff)
gnu: rust-bzip2: Move to (gnu packages crates-compression).
* gnu/packages/crates-io.scm (rust-bzip2-0.4, rust-bzip2-0.3, rust-bzip2-rs-0.1, rust-bzip2-sys-0.1): Move from here ... * gnu/packages/crates-compression.scm: ... to here. Change-Id: I1e4030b29cd47cd8f764f00b2b891e5a9044bc6f
Diffstat (limited to 'gnu/packages/crates-compression.scm')
-rw-r--r--gnu/packages/crates-compression.scm128
1 files changed, 128 insertions, 0 deletions
diff --git a/gnu/packages/crates-compression.scm b/gnu/packages/crates-compression.scm
index 1676717858..a8693c72e4 100644
--- a/gnu/packages/crates-compression.scm
+++ b/gnu/packages/crates-compression.scm
@@ -1,6 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 Valentin Ignatev <[email protected]>
;;; Copyright © 2020 Arun Isaac <[email protected]>
;;; Copyright © 2020 Nicolas Goaziou <[email protected]>
+;;; Copyright © 2020 Hartmut Goebel <[email protected]>
;;; Copyright © 2020, 2023, 2024 Efraim Flashner <[email protected]>
;;; Copyright © 2022 Aleksandr Vityazev <[email protected]>
;;;
@@ -192,3 +194,129 @@ and kernels.")
decompression and compression to Rust.")
(license (list license:expat license:asl2.0))))
+(define-public rust-bzip2-0.4
+ (package
+ (name "rust-bzip2")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bzip2" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1y27wgqkx3k2jmh4k26vra2kqjq1qc1asww8hac3cv1zxyk1dcdx"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-bzip2-sys" ,rust-bzip2-sys-0.1)
+ ("rust-futures" ,rust-futures-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-tokio-io" ,rust-tokio-io-0.1))
+ #:cargo-development-inputs
+ (("rust-partial-io" ,rust-partial-io-0.3)
+ ("rust-quickcheck" ,rust-quickcheck-1)
+ ("rust-rand" ,rust-rand-0.8)
+ ("rust-tokio-core" ,rust-tokio-core-0.1))))
+ (home-page "https://github.com/alexcrichton/bzip2-rs")
+ (synopsis
+ "Rust bindings to libbzip2 for bzip2 compression and decompression")
+ (description
+ "Bindings to @code{libbzip2} for @code{bzip2} compression and decompression
+exposed as Reader/Writer streams.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-bzip2-0.3
+ (package
+ (inherit rust-bzip2-0.4)
+ (name "rust-bzip2")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bzip2" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0fvfwanp42j1zpig880jhb5mc0na50bijmwd6211p77sy35w7ds2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-bzip2-sys" ,rust-bzip2-sys-0.1)
+ ("rust-futures" ,rust-futures-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-tokio-io" ,rust-tokio-io-0.1))
+ #:cargo-development-inputs
+ (("rust-partial-io" ,rust-partial-io-0.2)
+ ("rust-quickcheck" ,rust-quickcheck-0.4)
+ ("rust-rand" ,rust-rand-0.3)
+ ("rust-tokio-core" ,rust-tokio-core-0.1))))))
+
+(define-public rust-bzip2-rs-0.1
+ (package
+ (name "rust-bzip2-rs")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bzip2-rs" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0dgp83kixqrqj6q6574qr5zsfpbsiiwhqs3krhvsn4f8wkkmksxy"))
+ (snippet
+ #~(begin (use-modules (guix build utils))
+ ;; Don't suggest nightly features of tinyvec.
+ (substitute* "Cargo.toml"
+ (("\"tinyvec/nightly_const_generics\", ") ""))))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-tinyvec" ,rust-tinyvec-1))
+ #:cargo-development-inputs
+ (("rust-bzip2" ,rust-bzip2-0.4)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-pretty-assertions" ,rust-pretty-assertions-0.6))))
+ (home-page "https://github.com/paolobarbolini/bzip2-rs")
+ (synopsis "Pure Rust bzip2 decompressor")
+ (description "Pure Rust bzip2 decompressor.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-bzip2-sys-0.1
+ (package
+ (name "rust-bzip2-sys")
+ (version "0.1.11+1.0.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bzip2-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1p2crnv8d8gpz5c2vlvzl0j55i3yqg5bi0kwsl1531x77xgraskk"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "bzip2-1.0.8")
+ (delete-file "build.rs")
+ ;; Inspired by Debian's patch.
+ (with-output-to-file "build.rs"
+ (lambda _
+ (format #t "fn main() {~@
+ println!(\"cargo:rustc-link-lib=bz2\");~@
+ }~%")))))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-cc" ,rust-cc-1)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/alexcrichton/bzip2-rs")
+ (synopsis "Rust bindings to libbzip2")
+ (description
+ "Bindings to @code{libbzip2} for bzip2 compression and decompression
+exposed as Reader/Writer streams.")
+ (license (list license:expat license:asl2.0))))
+