Skip to main content

Configurar el terminal en Fedora 43

Instalación de paquetes base

  • zsh: Shell que reemplaza a Bash.
  • git: Sistema de control de versiones.
  • util-linux-user: Paquete específico de Fedora que contiene el comando chsh. Es obligatorio para poder cambiar la shell por defecto.
  • fzf: Fuzzy Finder. Permite búsquedas instantáneas en el historial (Ctrl+R) y archivos (Ctrl+T).
  • zoxide: Un cd inteligente. Aprende las rutas que más visitas para saltar a ellas escribiendo solo z nombre en lugar de la ruta completa.
  • eza: El reemplazo moderno de ls. Lista archivos con colores, iconos y estado de Git.
  • bat: El reemplazo moderno de cat. Muestra el contenido de archivos con resaltado de sintaxis y números de línea.
# Actualizar repositorios e instalar paquetes
sudo dnf install zsh git util-linux-user fzf zoxide eza bat

Instalación de Oh My Zsh

Instalamos el gestor de configuración Oh My Zsh.

sh -c "$(curl -fsSL [https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh](https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh))"

Instalación de plugins de Zsh

Descargamos los plugins para autocompletado y resaltado de sintaxis en la carpeta de plugins de Oh My Zsh.

# 1. zsh-autosuggestions (Autocompletado gris tipo Fish)
git clone [https://github.com/zsh-users/zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions) ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

# 2. zsh-syntax-highlighting (Colores para comandos correctos/incorrectos)
git clone [https://github.com/zsh-users/zsh-syntax-highlighting.git](https://github.com/zsh-users/zsh-syntax-highlighting.git) ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

Configuración de .zshrc

Editamos el archivo de configuración principal para activar los plugins y las herramientas.

1. Activar plugins

En el archivo ~/.zshrc, buscamos la línea plugins=(git) y la reemplazamos por:

plugins=(git zsh-autosuggestions zsh-syntax-highlighting)

2. Integrar herramientas modernas

Agregamos el siguiente bloque al final del archivo ~/.zshrc para inicializar FZF, Zoxide y los alias de Eza/Bat.

# FZF (Búsqueda difusa)
eval "$(fzf --zsh)"

# Zoxide (Navegación inteligente 'z')
eval "$(zoxide init zsh)"

# Aliases Modernos
alias cat='bat'
alias ls='eza --git'
alias ll='eza -l --git --group-directories-first'

Definir Zsh como shell por defecto

Forzamos al sistema a usar Zsh para el usuario actual (requiere cerrar sesión o reiniciar para aplicar cambios).

sudo usermod -s /usr/bin/zsh $USER