#path #xdg #directory #folder #filetime #userdir

xdg-user

A library for accessing common user file directories according to xdg-user-dirs

5 releases

0.2.1 May 14, 2020
0.2.0 May 4, 2020
0.1.2 May 4, 2020
0.1.1 May 4, 2020
0.1.0 May 3, 2020

#1242 in Filesystem

Download history 530/week @ 2024-01-24 515/week @ 2024-01-31 456/week @ 2024-02-07 775/week @ 2024-02-14 688/week @ 2024-02-21 567/week @ 2024-02-28 508/week @ 2024-03-06 521/week @ 2024-03-13 686/week @ 2024-03-20 785/week @ 2024-03-27 809/week @ 2024-04-03 510/week @ 2024-04-10 836/week @ 2024-04-17 556/week @ 2024-04-24 735/week @ 2024-05-01 959/week @ 2024-05-08

3,160 downloads per month
Used in tuisic

MIT/Apache

17KB
264 lines

crates.io docs.rs

xdg-user

This simple crate allows you to get paths to well known user directories, using xdg-user-dirss user-dirs.dirs file.

There are two ways of using this crate - with functions in the root of the crate, or with the UserDirs struct. UserDirs will read and parse the config file only once - when you call the UserDirs::new function. Functions in the root will read and parse the config file EVERY TIME you call them - so use them ONLY if you need to get one or two folders one or two times.

Example

println!("Pictures folder: {:?}", xdg_user::pictures()?);
println!("Music folder:    {:?}", xdg_user::music()?);

let dirs = xdg_user::UserDirs::new()?;
println!("Documents folder: {:?}", dirs.documents());
println!("Downloads folder: {:?}", dirs.downloads());

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~0–7MB
~41K SLoC