#xdg #basedir #app-dirs #path #folder

app dirs-cli

A tiny low-level command line application that provides platform-specific standard locations of directories for config, cache and other data on Linux, Windows, macOS and Redox by leveraging the mechanisms defined by the XDG base/user directory specifications on Linux, the Known Folder API on Windows, and the Standard Directory guidelines on macOS

2 releases

Uses old Rust 2015

new 0.0.2 Jun 22, 2022
0.0.1 Jun 21, 2022

#7 in #folder

44 downloads per month

MPL-2.0 license

71 lines

crates.io actively developed License: MPL-2.0



  • a tiny low-level command line application with a minimal API
  • that provides the platform-specific, user-accessible locations
  • for retrieving and storing configuration, cache and other data
  • on Linux, Redox, Windows (≥ Vista), macOS and other platforms.

The application provides the location of these directories by leveraging the mechanisms defined by


This application is written in Rust, and supports Linux, Redox, macOS and Windows. Other platforms are also supported; they use the Linux conventions.



Add the application as a dependency to your project by inserting

dirs-cli = "4.0"

into the [dependencies] section of your Cargo.toml file.


It's possible to cross-compile this application if the necessary toolchains are installed with rustup. This is helpful to ensure a change hasn't broken code on a different platform.

The following commands will build this application on Linux, macOS and Windows:

cargo build --target=x86_64-unknown-linux-gnu
cargo build --target=x86_64-pc-windows-gnu
cargo build --target=x86_64-apple-darwin
cargo build --target=x86_64-unknown-redox

The Cargo.toml file contains additional information on how to minimize the binary size.



  • Initial release, based on dirs-rs version 4


Licensed under the MPL 2.0 (LICENSE-MPL-2.0 or https://opensource.org/licenses/MPL-2.0).


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