diff options
| -rw-r--r-- | atuin/src/command/client.rs | 10 | ||||
| -rw-r--r-- | atuin/src/command/client/info.rs | 31 |
2 files changed, 41 insertions, 0 deletions
diff --git a/atuin/src/command/client.rs b/atuin/src/command/client.rs index 732df7ff..ccd554bf 100644 --- a/atuin/src/command/client.rs +++ b/atuin/src/command/client.rs @@ -17,6 +17,7 @@ mod doctor; mod dotfiles; mod history; mod import; +mod info; mod init; mod kv; mod search; @@ -59,6 +60,10 @@ pub enum Cmd { #[command()] Init(init::Cmd), + /// Information about dotfiles locations and ENV vars + #[command()] + Info, + #[command()] Doctor, @@ -117,6 +122,11 @@ impl Cmd { Self::Init(init) => init.run(&settings).await, + Self::Info => { + info::run(&settings); + Ok(()) + } + Self::Doctor => doctor::run(&settings), Self::DefaultConfig => { diff --git a/atuin/src/command/client/info.rs b/atuin/src/command/client/info.rs new file mode 100644 index 00000000..60ba1fe6 --- /dev/null +++ b/atuin/src/command/client/info.rs @@ -0,0 +1,31 @@ +use atuin_client::settings::Settings;
+
+use crate::VERSION;
+
+pub fn run(settings: &Settings) {
+ let config = atuin_common::utils::config_dir();
+ let mut config_file = config.clone();
+ config_file.push("config.toml");
+ let mut sever_config = config;
+ sever_config.push("server.toml");
+
+ let config_paths = format!(
+ "Config files:\nclient config: {:?}\nserver config: {:?}\nclient db path: {:?}\nkey path: {:?}\nsession path: {:?}",
+ config_file.to_string_lossy(),
+ sever_config.to_string_lossy(),
+ settings.db_path,
+ settings.key_path,
+ settings.session_path
+ );
+
+ let env_vars = format!(
+ "Env Vars:\nATUIN_CONFIG_DIR = {:?}",
+ std::env::var("ATUIN_CONFIG_DIR").unwrap_or_else(|_| "None".into())
+ );
+
+ let general_info = format!("Version info:\nversion: {VERSION}");
+
+ let print_out = format!("{config_paths}\n\n{env_vars}\n\n{general_info}");
+
+ println!("{print_out}");
+}
|
