#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

#1248 in Filesystem

Download history 508/week @ 2024-04-11 847/week @ 2024-04-18 593/week @ 2024-04-25 754/week @ 2024-05-02 905/week @ 2024-05-09 667/week @ 2024-05-16 610/week @ 2024-05-23 610/week @ 2024-05-30 498/week @ 2024-06-06 444/week @ 2024-06-13 492/week @ 2024-06-20 573/week @ 2024-06-27 847/week @ 2024-07-04 817/week @ 2024-07-11 803/week @ 2024-07-18 679/week @ 2024-07-25

3,231 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–6.5MB
~28K SLoC