diff options
author | YummyOreo <bobgim20@gmail.com> | 2024-03-10 12:31:35 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-10 17:31:35 +0000 |
commit | ba0fe21795f3930f4939f91530a2227ee0988155 (patch) | |
tree | 5b6fe72daaf64e2d3cf8567fc501f25d063e1cc7 | |
parent | a3c3dad9005c6ab2e9965632779da613d7a36f17 (diff) |
feat: adds info command to show env vars and config files (#1841)
* feat: adds info command to show env vars and config files
* fix: clippy
* refactor: clippy and format again
-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}");
+}
|