2 unstable releases
0.2.0 | Dec 1, 2024 |
---|---|
0.1.0 | Feb 15, 2024 |
#301 in Unix APIs
381 downloads per month
230KB
5K
SLoC
Udisks
An unofficial Rust client crate for udisks2
.
Udisks allows accessing and manipulating disks, storages devices and similar technologies.
Version
Based on https://github.com/storaged-project/udisks/commit/4b1250cdf5897391e449ca0ad3836598c3b00dad for the client and https://github.com/storaged-project/udisks/commit/3e499ea0248ee73043aedab834f32501019830a8 for the generated interfaces.
Example
// we use tokio in this example, but you can use any runtime
#[tokio::main]
async fn main() -> udisks2::Result<()> {
let client = udisks2::Client::new().await?;
let object = client
.object("/org/freedesktop/UDisks2/block_devices/sda")
.expect("No sda device found");
let block = object.block().await?;
let drive = client.drive_for_block(&block).await?;
println!(
"Size: {}",
client.size_for_display(drive.size().await?, true, true)
);
Ok(())
}
Documentation
While this crate provides documentation for the handwritten code, the generated types may be lacking. In this case it is recommended to use the official documentation.
Internationalization
This crate uses the same localization as UDisks2
, which uses gettext. If the locale is left unset, English will be used.
Dependencies
~21–32MB
~337K SLoC