diff --git a/bin/fj_login.sh b/bin/fj_login.sh index 07ffaf3..10a8fb6 100755 --- a/bin/fj_login.sh +++ b/bin/fj_login.sh @@ -107,17 +107,34 @@ get_forgejo_url() { fi } -# Función para crear alias fj para berg en memoria +# Función para crear alias fj para berg create_fj_alias() { - # Crear alias en la sesión actual - alias fj='berg' - echo "Alias 'fj' creado" + # Crear script wrapper en ~/.local/bin + mkdir -p "$HOME/.local/bin" + + # Crear script fj que llama a berg + cat > "$HOME/.local/bin/fj" << EOF +#!/bin/bash +berg "\$@" +EOF + + # Hacer ejecutable el script + chmod +x "$HOME/.local/bin/fj" + + # Verificar si ~/.local/bin está en PATH y añadirlo si no lo está + if [[ ":$PATH:" != *":$HOME/.local/bin:"* ]]; then + echo "Para usar el comando 'fj', ejecute: export PATH=\"\$HOME/.local/bin:\$PATH\"" + else + echo "Comando 'fj' creado" + fi } # Función para eliminar alias fj remove_fj_alias() { - # Eliminar alias de la sesión actual - unalias fj 2>/dev/null + # Eliminar script fj + if [ -f "$HOME/.local/bin/fj" ]; then + rm -f "$HOME/.local/bin/fj" + fi } # Función para iniciar sesión con token @@ -160,13 +177,14 @@ login() { # Función para cerrar sesión logout() { - echo "Cerrando sesión de Forgejo..." - berg auth logout - local logout_status=$? - + # Eliminar alias fj remove_fj_alias + echo "Cerrando sesión de Forgejo..." + berg auth logout -s + local logout_status=$? + if [ $logout_status -eq 0 ]; then echo "Sesión cerrada correctamente." else