summaryrefslogtreecommitdiffstats
path: root/src/command/login.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/command/login.rs')
-rw-r--r--src/command/login.rs12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/command/login.rs b/src/command/login.rs
index eacb2105..9a144580 100644
--- a/src/command/login.rs
+++ b/src/command/login.rs
@@ -22,6 +22,16 @@ pub struct Cmd {
impl Cmd {
pub fn run(&self, settings: &Settings) -> Result<()> {
+ let session_path = atuin_common::utils::data_dir().join("session");
+
+ if session_path.exists() {
+ println!(
+ "You are already logged in! Please run 'atuin logout' if you wish to login again"
+ );
+
+ return Ok(());
+ }
+
let session = api_client::login(
settings.sync_address.as_str(),
self.username.as_str(),
@@ -34,7 +44,7 @@ impl Cmd {
let key_path = settings.key_path.as_str();
let mut file = File::create(key_path)?;
- file.write_all(&base64::decode(self.key.clone())?)?;
+ file.write_all(self.key.as_bytes())?;
println!("Logged in!");