mod app; mod cli; mod config; mod credentials; mod errors; mod clientinfo; mod ipc; mod state; mod server; mod tray; use crate::errors::ErrorPopup; fn main() { let res = match cli::parser().get_matches().subcommand() { None | Some(("run", _)) => { app::run().error_popup("Creddy failed to start"); Ok(()) }, Some(("show", m)) => cli::show(m), Some(("exec", m)) => cli::exec(m), _ => unreachable!(), }; if let Err(e) = res { eprintln!("Error: {e}"); } }