From dd00ff091b9c3d1f35549a9b38e2c9a43ea5d52a Mon Sep 17 00:00:00 2001 From: Roey Darwish Dror Date: Wed, 21 Nov 2018 22:17:31 +0200 Subject: [PATCH] Turn off debug logs by default --- src/main.rs | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/src/main.rs b/src/main.rs index 5a51b30..f7ceacd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -41,7 +41,16 @@ SystemMaxUse=16M #[derive(StructOpt)] #[structopt(name = "alma", about = "Arch Linux Mobile Appliance")] -enum App { +struct App { + #[structopt(short = "v", long = "verbose", help = "Verbose output")] + verbose: bool, + + #[structopt(subcommand)] + cmd: Command, +} + +#[derive(StructOpt)] +enum Command { #[structopt(name = "create", about = "Create a new Arch Linux USB")] Create(CreateCommand), @@ -247,9 +256,12 @@ extern "C" fn handle_sigint(_: i32) { fn main() { let app = App::from_args(); - CombinedLogger::init(vec![ - TermLogger::new(LevelFilter::Debug, Config::default()).unwrap(), - ]).unwrap(); + let log_level = if app.verbose { + LevelFilter::Debug + } else { + LevelFilter::Info + }; + CombinedLogger::init(vec![TermLogger::new(log_level, Config::default()).unwrap()]).unwrap(); let sig_action = signal::SigAction::new( signal::SigHandler::Handler(handle_sigint), @@ -262,9 +274,9 @@ fn main() { signal::sigaction(signal::SIGQUIT, &sig_action).unwrap(); } - let result = match app { - App::Create(command) => create(command), - App::Chroot(command) => chroot(command), + let result = match app.cmd { + Command::Create(command) => create(command), + Command::Chroot(command) => chroot(command), }; match result {