summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorSteve George <steve@futurile.net>2023-10-23 23:20:55 +0100
committerEfraim Flashner <efraim@flashner.co.il>2023-10-24 14:25:49 +0300
commita0640794b4ee1e7f340a25f963883551b9a3b2db (patch)
tree7c0713a94a3961a5085a26774e501c56ffd8acd7 /gnu
parent69c11e51cafe04b370362e8849b57d6da8bafc0c (diff)
gnu: Add rust-alsa-0.7.
* gnu/packages/crates-io.scm (rust-alsa-0.7): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Change-Id: I8b2c8ea71a38d492bdb9cfa65271657c7b651034
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/crates-io.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 2ed7f0cd10..cbe9acdee8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -3092,6 +3092,45 @@ be used with the stdlib.")
(description "Mirror of Rust's allocator API.")
(license (list license:expat license:asl2.0))))
+(define-public rust-alsa-0.7
+ (package
+ (name "rust-alsa")
+ (version "0.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "alsa" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0iwbdgb6lr81iji9sr4f91mys24pia5avnkgbkv8kxzhvkc2lmp2"))))
+ (build-system cargo-build-system)
+ (arguments
+ (list #:cargo-test-flags `(list "--release"
+ ;; Not the doc tests.
+ "--lib" "--bins" "--tests"
+ "--"
+ ;; These try to use the audio interface
+ "--skip=pcm::drop"
+ "--skip=pcm::info_from_default"
+ "--skip=pcm::playback_to_default"
+ "--skip=pcm::record_from_default"
+ "--skip=seq::print_seqs"
+ "--skip=seq::seq_loopback"
+ "--skip=seq::seq_portsubscribeiter"
+ "--skip=seq::seq_subscribe")
+ #:cargo-inputs `(("rust-alsa-sys" ,rust-alsa-sys-0.3)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-nix" ,rust-nix-0.24))))
+ (native-inputs (list pkg-config alsa-lib))
+ (home-page "https://github.com/diwic/alsa-rs")
+ (synopsis "Thin and safe wrapper around ALSA")
+ (description
+ "A thin and safe wrapper around ALSA. Provides APIs for
+many parts of ALSA including audio playback, audio recording, HCtl API, raw
+MIDI and MIDI sequencer.")
+ (license license:expat)))
+
(define-public rust-alsa-sys-0.3
(package
(name "rust-alsa-sys")