2024-05-05 04:05:33 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
# @file Atuin Initialization
|
|
|
|
# @brief Registers with atuin, logs in, imports command history, and synchronizes
|
|
|
|
|
2024-05-28 03:45:14 +00:00
|
|
|
set -Eeuo pipefail
|
2024-05-28 03:50:11 +00:00
|
|
|
trap "gum log -sl error 'Script encountered an error!'" ERR
|
2024-05-27 11:15:03 +00:00
|
|
|
|
2024-05-05 04:05:33 +00:00
|
|
|
if command -v atuin > /dev/null; then
|
2024-05-28 03:45:14 +00:00
|
|
|
if get-secret --exists ATUIN_USERNAME ATUIN_EMAIL ATUIN_PASSWORD ATUIN_KEY; then
|
2024-05-28 03:50:11 +00:00
|
|
|
gum log -sl info 'Registering Atuin account'
|
2024-05-28 06:55:42 +00:00
|
|
|
atuin register -u "$(get-secret ATUIN_USERNAME)" -e "$(get-secret ATUIN_EMAIL)" -p "$(get-secret ATUIN_PASSWORD)" || true
|
2024-05-28 03:50:11 +00:00
|
|
|
gum log -sl info 'Logging into Atuin account'
|
2024-05-28 03:45:14 +00:00
|
|
|
atuin login -u "$(get-secret ATUIN_USERNAME)" -p "$(get-secret ATUIN_PASSWORD)" -k "$(get-secret ATUIN_KEY)"
|
2024-05-28 03:50:11 +00:00
|
|
|
gum log -sl info 'Running atuin import auto'
|
2024-05-28 03:45:14 +00:00
|
|
|
atuin import auto
|
2024-05-28 03:50:11 +00:00
|
|
|
gum log -sl info 'Running atuin sync'
|
2024-05-28 03:45:14 +00:00
|
|
|
atuin sync
|
|
|
|
fi
|
2024-05-05 04:05:33 +00:00
|
|
|
else
|
2024-05-28 03:50:11 +00:00
|
|
|
gum log -sl info 'atuin is not available in the PATH'
|
2024-05-05 04:05:33 +00:00
|
|
|
fi
|