aboutsummaryrefslogtreecommitdiffstats
path: root/zellij-utils/src/home_windows.rs
blob: 4b9e1006b7f99a3cefb5e786791eee6ce6133a70 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use std::path::PathBuf;

pub(crate) fn home_config_dir() -> Option<PathBuf> {
    // On Windows there is no ~/.config convention.
    // Return the ProjectDirs config_dir (Roaming AppData) directly.
    Some(crate::home::xdg_config_dir())
}

pub(crate) fn try_create_home_config_dir() {
    let config_dir = crate::home::xdg_config_dir();
    if let Err(e) = std::fs::create_dir_all(config_dir) {
        log::error!("Failed to create config dir: {:?}", e);
    }
}

/// System-wide data directory (`C:\ProgramData\Zellij\data`).
pub(crate) fn system_data_dir() -> PathBuf {
    use crate::consts::SYSTEM_DEFAULT_DATA_DIR_PREFIX;
    std::path::Path::new(SYSTEM_DEFAULT_DATA_DIR_PREFIX).join("data")
}