From 6445f9ac51bf73c5bdbbbb398042f6048fba3278 Mon Sep 17 00:00:00 2001 From: David Jensenius Date: Fri, 5 Dec 2025 18:24:49 -0500 Subject: [PATCH] Fix atuin login thing --- fish/config.fish | 8 +++++--- install.sh | 18 +++++++++++++++--- scripts/parallel-install.sh | 10 +++++++--- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/fish/config.fish b/fish/config.fish index b974dec..3872d27 100644 --- a/fish/config.fish +++ b/fish/config.fish @@ -18,9 +18,11 @@ if status is-interactive # Atuin (login once on Codespaces; then init every interactive shell) if test -d /workspaces - if not test -e ~/.atuin_logged_in - command -q atuin; and ~/.cargo/bin/atuin login -u $ATUIN_USERNAME -p $ATUIN_PASSWORD -k $ATUIN_KEY - touch ~/.atuin_logged_in + if command -q atuin + # Check if already logged in by looking for Username in status + if not ~/.cargo/bin/atuin status | grep -q "Username:" + ~/.cargo/bin/atuin login -u $ATUIN_USERNAME -p $ATUIN_PASSWORD -k $ATUIN_KEY + end end end atuin init fish | source diff --git a/install.sh b/install.sh index d81cc70..24f3396 100755 --- a/install.sh +++ b/install.sh @@ -287,7 +287,11 @@ function install_software() { if [ -n "$ATUIN_USERNAME" ] && [ -n "$ATUIN_PASSWORD" ] && [ -n "$ATUIN_KEY" ] && [ $atuin_exit -eq 0 ]; then start_time=$(start_operation "Atuin login setup") echo "🔐 Setting up Atuin login..." - ~/.cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" + if ! ~/.cargo/bin/atuin status | grep -q "Username:"; then + ~/.cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" + else + echo "✅ Atuin already logged in" + fi log_with_timing "Atuin login setup" "$start_time" fi @@ -459,9 +463,17 @@ function install_software() { start_time=$(start_operation "Logging into Atuin") echo "Log in to atuin" if [ -d /workspaces/github ]; then - ~/.cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" + if ! ~/.cargo/bin/atuin status | grep -q "Username:"; then + ~/.cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" + else + echo "✅ Atuin already logged in" + fi else - /usr/local/cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" + if ! /usr/local/cargo/bin/atuin status | grep -q "Username:"; then + /usr/local/cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" + else + echo "✅ Atuin already logged in" + fi fi log_with_timing "Logging into Atuin" "$start_time" diff --git a/scripts/parallel-install.sh b/scripts/parallel-install.sh index 8c51ea2..8018e4d 100755 --- a/scripts/parallel-install.sh +++ b/scripts/parallel-install.sh @@ -168,10 +168,14 @@ install_cargo_packages_background() { # Immediately setup atuin if credentials are available (don't wait for other tools) if [ -n "$ATUIN_USERNAME" ] && [ -n "$ATUIN_PASSWORD" ] && [ -n "$ATUIN_KEY" ]; then echo "[$(date '+%Y-%m-%d %H:%M:%S')] 🔧 Setting up Atuin immediately after installation..." >> "$LOG_FILE" - if ~/.cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" >> "$LOG_FILE" 2>&1; then - echo "[$(date '+%Y-%m-%d %H:%M:%S')] ✅ Atuin login completed immediately" >> "$LOG_FILE" + if ! ~/.cargo/bin/atuin status | grep -q "Username:"; then + if ~/.cargo/bin/atuin login -u "$ATUIN_USERNAME" -p "$ATUIN_PASSWORD" -k "$ATUIN_KEY" >> "$LOG_FILE" 2>&1; then + echo "[$(date '+%Y-%m-%d %H:%M:%S')] ✅ Atuin login completed immediately" >> "$LOG_FILE" + else + echo "[$(date '+%Y-%m-%d %H:%M:%S')] ⚠️ Atuin login failed - check credentials" >> "$LOG_FILE" + fi else - echo "[$(date '+%Y-%m-%d %H:%M:%S')] ⚠️ Atuin login failed - check credentials" >> "$LOG_FILE" + echo "[$(date '+%Y-%m-%d %H:%M:%S')] ✅ Atuin already logged in" >> "$LOG_FILE" fi fi else