2021-09-28 18:54:37 -04:00
|
|
|
/*##############################################################################
|
|
|
|
## Author: Shaun Reed ##
|
|
|
|
## Legal: All Content (c) 2021 Shaun Reed, all rights reserved ##
|
|
|
|
## About: Main entry point for Linux configuration manager kot ##
|
|
|
|
## ##
|
|
|
|
## Contact: shaunrd0@gmail.com | URL: www.shaunreed.com | GitHub: shaunrd0 ##
|
|
|
|
##############################################################################*/
|
|
|
|
|
|
|
|
mod kot;
|
|
|
|
|
|
|
|
// =============================================================================
|
|
|
|
// MAIN ENTRY-POINT
|
|
|
|
// =============================================================================
|
|
|
|
|
|
|
|
// -----------------------------------------------------------------------------
|
|
|
|
|
2021-09-25 13:39:37 -04:00
|
|
|
fn main() {
|
2021-12-26 19:08:58 -05:00
|
|
|
// Call augmented kot::cli::from_args() to parse CLI arguments
|
2021-09-28 18:54:37 -04:00
|
|
|
let args = kot::cli::from_args();
|
2021-12-26 19:08:58 -05:00
|
|
|
// At this point all paths exist and have been converted to absolute paths
|
2021-09-28 18:54:37 -04:00
|
|
|
println!("args: {:?}\n", args);
|
|
|
|
|
2021-12-26 19:08:58 -05:00
|
|
|
// Attempt to install the configurations, checking for collisions
|
2021-09-28 18:54:37 -04:00
|
|
|
match kot::install_configs(&args) {
|
2021-12-26 19:08:58 -05:00
|
|
|
Err(e) => {
|
|
|
|
// If there was an error, show the error type and run settings
|
|
|
|
println!(
|
|
|
|
"Error: {:?}\n+ Configs used: {:?}\n+ Install directory: {:?}\n",
|
|
|
|
e.kind(), args.dotfiles_dir, args.install_dir
|
|
|
|
)
|
|
|
|
},
|
|
|
|
// Configurations installed successfully
|
2021-09-28 18:54:37 -04:00
|
|
|
Ok(()) => (),
|
|
|
|
}
|
2021-09-25 13:39:37 -04:00
|
|
|
}
|