mirror of
https://github.com/marcogll/omarchy_setup.git
synced 2026-01-13 13:25:16 +00:00
Ajuste de .bashrc, para que cargu zsh por default
This commit is contained in:
@@ -6,6 +6,24 @@
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
source "${SCRIPT_DIR}/common.sh"
|
||||
|
||||
install_homebrew() {
|
||||
log_step "Instalación de Homebrew (Linuxbrew)"
|
||||
|
||||
if command_exists brew; then
|
||||
log_success "Homebrew ya está instalado."
|
||||
return 0
|
||||
fi
|
||||
|
||||
log_info "Instalando Homebrew..."
|
||||
# Instalar de forma no interactiva
|
||||
if NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"; then
|
||||
log_success "Homebrew instalado correctamente."
|
||||
else
|
||||
log_error "Falló la instalación de Homebrew."
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
install_apps() {
|
||||
log_step "Instalación de Aplicaciones"
|
||||
|
||||
@@ -20,6 +38,9 @@ install_apps() {
|
||||
return 1
|
||||
}
|
||||
|
||||
# Instalar Homebrew
|
||||
install_homebrew
|
||||
|
||||
# Aplicaciones multimedia
|
||||
log_info "Instalando aplicaciones multimedia..."
|
||||
sudo pacman -S --noconfirm --needed \
|
||||
|
||||
@@ -9,6 +9,39 @@ source "${SCRIPT_DIR}/common.sh"
|
||||
# Usar REPO_BASE si está definido, sino usar el valor por defecto
|
||||
REPO_BASE="${REPO_BASE:-https://raw.githubusercontent.com/marcogll/omarchy_setup/main}"
|
||||
|
||||
configure_bashrc_to_launch_zsh() {
|
||||
local bashrc_file="$HOME/.bashrc"
|
||||
local block_marker="# OMARCHY: AUTO-LAUNCH ZSH"
|
||||
|
||||
if [[ -f "$bashrc_file" ]] && grep -qF "$block_marker" "$bashrc_file"; then
|
||||
log_success ".bashrc ya está configurado para lanzar Zsh."
|
||||
return 0
|
||||
fi
|
||||
|
||||
log_info "Configurando .bashrc para lanzar Zsh automáticamente..."
|
||||
|
||||
# Crear copia de seguridad
|
||||
if [[ -f "$bashrc_file" ]]; then
|
||||
cp "$bashrc_file" "${bashrc_file}.bak_$(date +%F_%T)"
|
||||
log_info "Copia de seguridad de .bashrc creada en ${bashrc_file}.bak_..."
|
||||
fi
|
||||
|
||||
# Añadir el bloque de código a .bashrc
|
||||
cat >> "$bashrc_file" << 'EOF'
|
||||
|
||||
# OMARCHY: AUTO-LAUNCH ZSH
|
||||
# Lanzar Zsh automáticamente si no estamos ya en Zsh
|
||||
if [ -t 1 ] && [ -z "$ZSH_VERSION" ] && command -v zsh &>/dev/null; then
|
||||
# Inicializar Homebrew si existe antes de cambiar de shell
|
||||
if [ -f "/home/linuxbrew/.linuxbrew/bin/brew" ]; then
|
||||
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
|
||||
fi
|
||||
exec zsh
|
||||
fi
|
||||
EOF
|
||||
log_success ".bashrc modificado para iniciar Zsh."
|
||||
}
|
||||
|
||||
install_zsh() {
|
||||
log_step "Configuración de Zsh"
|
||||
|
||||
@@ -23,6 +56,13 @@ install_zsh() {
|
||||
# Descargar configuración personalizada
|
||||
log_info "Descargando configuración de Zsh desde GitHub..."
|
||||
if curl -fsSL "${REPO_BASE}/.zshrc" -o ~/.zshrc; then
|
||||
# Añadir configuración de Homebrew si está instalado
|
||||
if [[ -x "/home/linuxbrew/.linuxbrew/bin/brew" ]]; then
|
||||
log_info "Añadiendo configuración de Homebrew a .zshrc..."
|
||||
echo '' >> ~/.zshrc
|
||||
echo '# Homebrew' >> ~/.zshrc
|
||||
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.zshrc
|
||||
fi
|
||||
log_success "Configuración de Zsh descargada"
|
||||
else
|
||||
log_warning "No se pudo descargar .zshrc desde GitHub"
|
||||
@@ -52,18 +92,8 @@ alias ...='cd ../..'
|
||||
EOF
|
||||
fi
|
||||
|
||||
# Configurar Zsh como shell predeterminada
|
||||
if [ "$SHELL" != "/bin/zsh" ] && [ "$SHELL" != "/usr/bin/zsh" ]; then
|
||||
log_info "Configurando Zsh como shell predeterminada..."
|
||||
if chsh -s /bin/zsh 2>/dev/null || chsh -s /usr/bin/zsh 2>/dev/null; then
|
||||
log_success "Zsh configurado como shell predeterminada"
|
||||
log_warning "Los cambios surtirán efecto en la próxima sesión"
|
||||
else
|
||||
log_warning "No se pudo cambiar la shell. Ejecuta manualmente: chsh -s /bin/zsh"
|
||||
fi
|
||||
else
|
||||
log_success "Zsh ya es la shell predeterminada"
|
||||
fi
|
||||
# Modificar .bashrc para que lance zsh
|
||||
configure_bashrc_to_launch_zsh
|
||||
|
||||
log_success "Configuración de Zsh completada"
|
||||
return 0
|
||||
|
||||
Reference in New Issue
Block a user