| Crates.io | freedesktop-core |
| lib.rs | freedesktop-core |
| version | 0.0.3 |
| created_at | 2025-09-16 01:08:08.98818+00 |
| updated_at | 2025-09-23 03:52:04.586412+00 |
| description | Rust implementations of the freedesktop standards |
| homepage | https://github.com/javif89/freedesktop |
| repository | https://github.com/javif89/freedesktop |
| max_upload_size | |
| id | 1840752 |
| size | 8,455 |
Core freedesktop utilities for XDG base directories and desktop environment detection.
use freedesktop_core::{base_directories, current_desktop};
// Get XDG data directories
for dir in base_directories() {
let apps_dir = dir.join("applications");
if apps_dir.exists() {
println!("Applications directory: {}", apps_dir.display());
}
}
// Detect desktop environment
if let Some(desktop) = current_desktop() {
println!("Running on: {}", desktop);
}
This crate implements the XDG Base Directory Specification:
XDG_DATA_DIRS environment variable (defaults to /usr/local/share:/usr/share)XDG_DATA_HOME environment variable (defaults to ~/.local/share)XDG_CURRENT_DESKTOP for desktop environment detection