-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.rs
23 lines (20 loc) · 856 Bytes
/
build.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use std::borrow::Borrow;
/// Creates a config folder for fm with default config files.
/// The source is `config_files/fm`.
/// The destination is `~/.config/fm`.
/// If there's already some configuration files, no overwrite is done.
fn main() {
let Ok(mut default_config_files) = std::env::current_dir() else {
eprintln!("Environment variable $PWD should be set. Couldn't find the source folder.");
return;
};
default_config_files.push("config_files/fm");
let config_folder_cow = shellexpand::tilde("~/.config");
let config_folder: &str = config_folder_cow.borrow();
let mut copy_options = fs_extra::dir::CopyOptions::new();
copy_options.skip_exist = true;
match fs_extra::dir::copy(default_config_files, config_folder, ©_options) {
Ok(_) => (),
Err(e) => eprintln!("{e:?}"),
}
}