blob: 30922b184610b03a758d5e3db77fb67825b18e15 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
use directories::BaseDirs;
use std::path::PathBuf;
const CONFIG_LOCATION: &str = ".config/zellij";
pub(crate) fn home_config_dir() -> Option<PathBuf> {
BaseDirs::new().map(|dirs| dirs.home_dir().join(CONFIG_LOCATION))
}
pub(crate) fn try_create_home_config_dir() {
if let Some(user_dirs) = BaseDirs::new() {
let config_dir = user_dirs.home_dir().join(CONFIG_LOCATION);
if let Err(e) = std::fs::create_dir_all(config_dir) {
log::error!("Failed to create config dir: {:?}", e);
}
}
}
/// System-wide data directory (e.g. `/usr/share/zellij` from distro packages).
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("share/zellij")
}
|