wrote functions that are os specific
This commit is contained in:
parent
e753a7bf52
commit
ceb7557f76
@ -18,6 +18,7 @@ impl Configuration {
|
||||
let mut settings = config::Config::default();
|
||||
let mut location: Vec<String> = Vec::new();
|
||||
|
||||
// TODO: add condition for target os
|
||||
location.push("config.json".to_string());
|
||||
location.push("/etc/gt/config.json".to_string());
|
||||
location.push(format!("{}/.config/gt/config.json", home_dir_env));
|
||||
@ -28,8 +29,42 @@ impl Configuration {
|
||||
.unwrap();
|
||||
}
|
||||
|
||||
let config = settings.try_into::<Configuration>().expect("Couldn't load config into gt!");
|
||||
let config = settings
|
||||
.try_into::<Configuration>()
|
||||
.expect("Couldn't load config into gt!");
|
||||
|
||||
config
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(target_os = "linux")]
|
||||
fn set_location_linux(
|
||||
location: &mut Vec<String>,
|
||||
home: String
|
||||
) -> Vec<String> {
|
||||
location.push("config.json".to_string());
|
||||
location.push("/etc/gt/config.json".to_string());
|
||||
location.push(format!("{}/.config/gt/config.json", home));
|
||||
|
||||
location.to_vec()
|
||||
}
|
||||
|
||||
#[cfg(target_os = "macos")]
|
||||
fn set_location_macos(
|
||||
location: &mut Vec<String>,
|
||||
home: String
|
||||
) -> Vec<String> {
|
||||
location.push("config.json".to_string());
|
||||
|
||||
location.to_vec()
|
||||
}
|
||||
|
||||
#[cfg(target_os = "windows")]
|
||||
fn set_location_windows(
|
||||
location: &mut Vec<String>,
|
||||
home: String
|
||||
) -> Vec<String> {
|
||||
location.push("config.json".to_string());
|
||||
|
||||
location.to_vec()
|
||||
}
|
Loading…
Reference in New Issue
Block a user