mirror of
https://github.com/marcogll/omarchy_setup.git
synced 2026-01-13 21:35:16 +00:00
- Updated the installation menu to include DaVinci Resolve in the "Install All" option. - Added a new function `run_module_with_retry` to retry failed module executions. - Integrated retry logic into the installation process for background tasks. - Improved logging messages for better clarity during installation. - Created a dedicated logs directory to store installation logs and updated the log file path. - Added a .gitignore file to exclude the logs directory from version control.
712 lines
19 KiB
Markdown
712 lines
19 KiB
Markdown
# 🚀 Omarchy Setup Script v3.0.0
|
||
|
||
Script de instalación y configuración **modular** para **Arch Linux / Omarchy** con menú interactivo.
|
||
|
||
## 🎯 Características Principales
|
||
|
||
- **✅ Estructura Modular**: Scripts independientes para cada componente
|
||
- **🎨 Menú Interactivo**: Selecciona qué instalar según tus necesidades
|
||
- **🎨 Interfaz Mejorada**: Colores y mensajes claros durante la instalación
|
||
- **🔧 Fácil de Extender**: Agrega nuevos módulos fácilmente
|
||
|
||
## ⚡ Instalación rápida
|
||
|
||
```bash
|
||
# Clonar el repositorio
|
||
git clone https://github.com/marcogll/omarchy_setup.git
|
||
cd omarchy_setup
|
||
|
||
# Ejecutar el script maestro
|
||
./omarchy-setup.sh
|
||
```
|
||
|
||
## 📦 Estructura Modular
|
||
|
||
```
|
||
omarchy_zsh_setup/
|
||
├── omarchy-setup.sh # Script maestro con menú interactivo
|
||
├── modules/
|
||
│ ├── common.sh # Funciones comunes (colores, logging, etc.)
|
||
│ ├── apps.sh # Instalación de aplicacionesç
|
||
│ ├── zsh-config.sh # Configuración de Zsh
|
||
│ ├── docker.sh # Docker y Portainer
|
||
│ ├── zerotier.sh # ZeroTier VPN
|
||
│ ├── printer.sh # Configuración de impresoras (CUPS)
|
||
│ ├── mouse_cursor.sh # Tema de cursor Bibata
|
||
│ ├── icon_manager.sh # Gestor de temas de iconos
|
||
│ ├── davinci-resolve.sh # DaVinci Resolve (Intel Edition)
|
||
└── Readme.md
|
||
```
|
||
|
||
## 🎮 Uso del Menú Interactivo
|
||
|
||
Al ejecutar `./omarchy-setup.sh`, verás un menú con las siguientes opciones:
|
||
|
||
```
|
||
╔════════════════════════════════════════════════════════════╗
|
||
║ 🌀 Omarchy Setup Script — Configuración Modular ║
|
||
╚════════════════════════════════════════════════════════════╝
|
||
|
||
Selecciona las opciones que deseas instalar:
|
||
|
||
1) 📦 Instalar Aplicaciones (VS Code, VLC, drivers, etc.)
|
||
2) 🐚 Configurar Zsh (shell, plugins, config)
|
||
3) 🐳 Instalar Docker y Portainer
|
||
4) 🌐 Instalar ZeroTier VPN
|
||
5) 🖨️ Configurar Impresoras (CUPS)
|
||
6) 🖱️ Instalar Tema de Cursor (Bibata)
|
||
7) 🎨 Gestionar Temas de Iconos (Papirus, Tela, etc.)
|
||
8) 🎬 Instalar DaVinci Resolve (Intel Edition)
|
||
A) ✅ Instalar Todo (opciones 1, 2, 3, 4, 5, 6, 8)
|
||
F) 💾 Formatear un Disco (FAT32, exFAT, NTFS, ext4)
|
||
H) 🎨 Instalar Configuración de Hyprland
|
||
0) 🚪 Salir
|
||
```
|
||
|
||
> ℹ️ **Nota:** La opción `A) Instalar Todo` ejecuta los módulos 1, 2, 3, 4, 5, 6 y 8. Antes de usarla asegúrate de haber descargado manualmente el instalador de DaVinci Resolve (ZIP) en `~/Downloads/`.
|
||
|
||
## 📋 Módulos Disponibles
|
||
|
||
### 1. 📦 Aplicaciones (`apps.sh`)
|
||
- Editores como VS Code y Cursor (desde AUR)
|
||
|
||
### 2. 🐚 Zsh (`zsh-config.sh`)
|
||
- Modifica `.bashrc` para lanzar Zsh automáticamente
|
||
|
||
### 3. 🐳 Docker (`docker.sh`)
|
||
- Instalación de Docker y Docker Compose
|
||
- Configuración de servicios
|
||
- Instalación de Portainer
|
||
- Agregar usuario al grupo docker
|
||
|
||
### 4. 🌐 ZeroTier (`zerotier.sh`)
|
||
- Instalación de ZeroTier One
|
||
- Configuración de servicio
|
||
- Instrucciones para unirse a redes
|
||
|
||
### 5. 🖨️ Impresoras (`printer.sh`)
|
||
- Instalación de CUPS
|
||
- Drivers comunes de impresora
|
||
|
||
### 6. 🖱️ Tema de Cursor (`mouse_cursor.sh`)
|
||
- Instala el tema de cursor `Bibata-Modern-Ice`.
|
||
- Configura el cursor para Hyprland y aplicaciones GTK.
|
||
|
||
### 7. 🎨 Gestor de Iconos (`icon_manager.sh`)
|
||
- Menú interactivo para instalar y cambiar entre temas de iconos como Papirus, Tela y Candy.
|
||
|
||
### 8. 🎬 DaVinci Resolve (`davinci-resolve.sh`)
|
||
- Configuración de librerías y wrapper
|
||
|
||
## 🔧 Ejecutar Módulos Individualmente
|
||
|
||
Cada módulo puede ejecutarse de forma independiente:
|
||
|
||
```bash
|
||
# Instalar solo aplicaciones
|
||
./modules/apps.sh
|
||
|
||
# Configurar solo Zsh
|
||
./modules/zsh-config.sh
|
||
|
||
# Instalar Docker
|
||
./modules/docker.sh
|
||
```
|
||
|
||
## 🌐 Instalación desde URL
|
||
|
||
**Nota**: El script requiere que los módulos estén presentes localmente. Se recomienda clonar el repositorio completo.
|
||
|
||
```bash
|
||
# Clonar el repositorio
|
||
git clone https://github.com/marcogll/omarchy_setup.git
|
||
cd omarchy_setup
|
||
./omarchy-setup.sh
|
||
```
|
||
|
||
---
|
||
|
||
## ✨ Características de los Módulos
|
||
|
||
### 📦 Aplicaciones
|
||
- **Herramientas base**: git, curl, wget, base-devel, stow
|
||
- **Editores**:
|
||
- VS Code (desde AUR: visual-studio-code-bin)
|
||
- Cursor (desde AUR: cursor-bin)
|
||
- **Multimedia**:
|
||
- VLC con todos los plugins (vlc-plugins-all)
|
||
- Audacity (editor de audio)
|
||
- Inkscape (editor gráfico vectorial)
|
||
- ffmpeg, gstreamer con plugins
|
||
- yt-dlp (descarga de videos)
|
||
- **Red y transferencia**:
|
||
- FileZilla (cliente FTP)
|
||
- Telegram Desktop
|
||
- scrcpy (control Android desde PC)
|
||
- **Utilidades**: neofetch, htop, fastfetch, btop, vim, nano, tmux
|
||
- **Flatpak**: Sistema de paquetes universal
|
||
- **Drivers Intel Iris Xe**:
|
||
- Mesa y Vulkan (gráficos 3D)
|
||
- Intel Media Driver (aceleración de video VA-API)
|
||
- OpenCL (Intel Compute Runtime desde AUR)
|
||
- Codecs y herramientas de hardware acceleration
|
||
- **Desde AUR**:
|
||
- keyd (remapeo de teclado)
|
||
- fragments (cliente BitTorrent)
|
||
- logiops (driver Logitech)
|
||
- ltunify (Logitech Unifying Receiver)
|
||
- TeamViewer (acceso remoto, con daemon habilitado)
|
||
- intel-compute-runtime (OpenCL para Intel)
|
||
|
||
### 🐚 Zsh
|
||
- Modifica `.bashrc` para lanzar Zsh automáticamente
|
||
|
||
### 🐳 Docker
|
||
- Portainer (interfaz web de gestión)
|
||
- Usuario agregado al grupo docker
|
||
- Servicios habilitados y configurados
|
||
|
||
### 🌐 ZeroTier
|
||
- ZeroTier One VPN
|
||
- Servicio configurado y habilitado
|
||
- Instrucciones para unirse a redes
|
||
|
||
### 🖨️ Impresoras
|
||
- CUPS (Common Unix Printing System)
|
||
- Drivers comunes de impresora
|
||
- Interfaz web en http://localhost:631
|
||
- Soporte para impresoras de red
|
||
|
||
### 🎬 DaVinci Resolve
|
||
- Instalación para Intel GPU
|
||
- Configuración de OpenCL
|
||
- Ajuste de librerías del sistema
|
||
- Wrapper para ejecución
|
||
|
||
---
|
||
|
||
## 📦 Paquetes instalados
|
||
|
||
<details>
|
||
<summary>Ver lista completa (click para expandir)</summary>
|
||
|
||
### Sistema Base
|
||
- **zsh**, **zsh-completions**
|
||
- **oh-my-posh-bin** (desde AUR)
|
||
- **git**, **curl**, **wget**
|
||
- **yay** (AUR helper, compilado desde AUR)
|
||
|
||
### Desarrollo
|
||
- **python**, **python-pip**, **python-virtualenv**
|
||
- **nodejs**, **npm**
|
||
- **go** (Golang)
|
||
- **docker**, **docker-compose**
|
||
- **base-devel** (herramientas de compilación)
|
||
|
||
### Utilidades de Terminal
|
||
- **eza** (ls mejorado)
|
||
- **bat** (cat mejorado)
|
||
- **zoxide** (cd inteligente)
|
||
- **fastfetch** (info del sistema)
|
||
- **htop**, **btop** (monitores del sistema)
|
||
- **tree** (visualización de directorios)
|
||
|
||
### Multimedia y Control
|
||
- **yt-dlp**, **ffmpeg**
|
||
- **playerctl**, **brightnessctl**, **pamixer**
|
||
- **audacity**, **inkscape**
|
||
|
||
### Red y Seguridad
|
||
- **zerotier-one** (desde AUR)
|
||
- **gnome-keyring**, **libsecret**, **seahorse**
|
||
- **lsof**, **net-tools**
|
||
- **teamviewer**
|
||
|
||
### Utilidades del Sistema
|
||
- **nano**, **unzip**, **tar**
|
||
- **p7zip**, **unrar**
|
||
|
||
### Instalaciones Adicionales
|
||
- **speedtest-cli** (vía pip)
|
||
|
||
</details>
|
||
|
||
---
|
||
|
||
## 🎯 Durante la instalación
|
||
|
||
El script ejecuta los siguientes pasos:
|
||
|
||
1. **Verificación de requerimientos** (root, Arch Linux, conexión a Internet)
|
||
2. **Instalación de paquetes base** desde repositorios oficiales
|
||
3. **Instalación de yay** desde AUR (si no está instalado)
|
||
4. **Configuración de Docker** (servicio y permisos de usuario)
|
||
5. **Instalación de Oh My Zsh y plugins**
|
||
6. **Configuración de .zshrc y tema Catppuccin** desde GitHub
|
||
7. **Configuración de TeamViewer** (servicio)
|
||
8. **Instalación de ZeroTier One** desde AUR (opcional)
|
||
9. **Configuración de GNOME Keyring** (opcional)
|
||
10. **Configuración de claves SSH** (opcional)
|
||
|
||
### Preguntas interactivas:
|
||
|
||
- **ZeroTier Network ID**: Si deseas unirte a una red ZeroTier (opcional)
|
||
- **GNOME Keyring**: Si deseas configurar el almacén de contraseñas
|
||
- **Claves SSH**: Si deseas añadir claves SSH existentes al agente
|
||
|
||
---
|
||
|
||
## 🔑 GNOME Keyring
|
||
|
||
El keyring guarda contraseñas de forma segura:
|
||
- **Git** (credential helper)
|
||
- **SSH keys** (almacenadas de forma segura)
|
||
- **Aplicaciones GNOME**
|
||
|
||
### Configuración automática:
|
||
|
||
El script configura automáticamente:
|
||
- PAM para auto-desbloqueo del keyring
|
||
- Inicio automático de gnome-keyring-daemon
|
||
- Integración con SSH agent
|
||
|
||
### Comandos útiles:
|
||
|
||
```bash
|
||
# Abrir gestor de contraseñas
|
||
seahorse
|
||
|
||
# Ver estado del keyring
|
||
gnome-keyring-daemon --version
|
||
|
||
# Comandos de ZeroTier (aliases en .zshrc)
|
||
zt # Alias de sudo zerotier-cli
|
||
ztstatus # Ver redes conectadas (listnetworks)
|
||
ztinfo # Info del nodo (info)
|
||
```
|
||
|
||
---
|
||
|
||
## ⚙️ Configuración incluida
|
||
|
||
### Aliases de Arch Linux
|
||
```bash
|
||
pacu # Actualizar sistema
|
||
paci <pkg> # Instalar paquete
|
||
pacr <pkg> # Remover paquete
|
||
pacs <query> # Buscar paquete
|
||
yayu # Actualizar AUR
|
||
yayi <pkg> # Instalar desde AUR
|
||
```
|
||
|
||
### Git shortcuts
|
||
```bash
|
||
gs # git status
|
||
ga # git add
|
||
gc # git commit
|
||
gcm "msg" # git commit -m
|
||
gp # git push
|
||
gl # git pull
|
||
gco <branch> # git checkout
|
||
gcb <branch> # git checkout -b
|
||
glog # git log gráfico
|
||
gac "msg" # add + commit
|
||
```
|
||
|
||
### Docker
|
||
```bash
|
||
dc # docker compose
|
||
d # docker
|
||
dps # docker ps -a
|
||
di # docker images
|
||
dex <name> sh # docker exec -it
|
||
dlog <name> # docker logs -f
|
||
```
|
||
|
||
### Python
|
||
```bash
|
||
py # python
|
||
venv create # Crear .venv
|
||
venv on # Activar
|
||
venv off # Desactivar
|
||
pir # pip install -r requirements.txt
|
||
pipf # pip freeze > requirements.txt
|
||
```
|
||
|
||
### yt-dlp
|
||
```bash
|
||
ytm <URL> # Descargar audio MP3 320kbps
|
||
ytm "lofi beats" # Buscar y descargar
|
||
ytv <URL> # Descargar video MP4 (calidad por defecto)
|
||
ytv <URL> 1080 # Descargar video en 1080p
|
||
ytv <URL> 720 # Descargar video en 720p
|
||
ytls # Listar últimos descargas
|
||
```
|
||
|
||
Descargas en: `~/Videos/YouTube/{Music,Videos}/`
|
||
|
||
### NPM
|
||
```bash
|
||
nrs # npm run start
|
||
nrd # npm run dev
|
||
nrb # npm run build
|
||
nrt # npm run test
|
||
ni # npm install
|
||
nid # npm install --save-dev
|
||
nig # npm install -g
|
||
```
|
||
|
||
### Utilidades
|
||
```bash
|
||
mkcd <dir> # mkdir + cd
|
||
extract <file> # Extraer cualquier archivo
|
||
killport <port> # Matar proceso en puerto
|
||
serve [port] # Servidor HTTP (default 8000)
|
||
clima # Ver clima Saltillo
|
||
```
|
||
|
||
---
|
||
|
||
## 🌐 ZeroTier Network ID
|
||
|
||
Tu Network ID tiene formato: `a0cbf4b62a1234567` (16 caracteres hex)
|
||
|
||
### Dónde encontrarlo:
|
||
1. Ve a https://my.zerotier.com
|
||
2. Selecciona tu red
|
||
3. Copia el Network ID
|
||
|
||
### Después de la instalación:
|
||
1. Ve a tu panel de ZeroTier
|
||
2. Busca el nuevo dispositivo
|
||
3. **Autorízalo** marcando el checkbox
|
||
|
||
### Comandos útiles:
|
||
```bash
|
||
# Ver redes
|
||
ztstatus
|
||
|
||
# Unirse a red
|
||
sudo zerotier-cli join <network-id>
|
||
|
||
# Salir de red
|
||
sudo zerotier-cli leave <network-id>
|
||
|
||
# Info del nodo
|
||
ztinfo
|
||
```
|
||
|
||
---
|
||
|
||
## 📂 Estructura creada
|
||
|
||
```
|
||
$HOME/
|
||
├── .zshrc # Configuración de Zsh (descargado desde GitHub)
|
||
├── .zshrc.local # Config local (opcional, no creado automáticamente)
|
||
├── .oh-my-zsh/ # Oh My Zsh
|
||
│ └── custom/plugins/ # Plugins adicionales
|
||
│ ├── zsh-autosuggestions/
|
||
│ └── zsh-syntax-highlighting/
|
||
├── .poshthemes/ # Temas Oh My Posh
|
||
│ └── catppuccin_frappe.omp.json # Tema Catppuccin Frappe
|
||
├── .zsh_functions/ # Funciones personalizadas (directorio creado)
|
||
├── Videos/YouTube/ # Descargas de yt-dlp
|
||
│ ├── Music/ # Audios MP3
|
||
│ └── Videos/ # Videos MP4
|
||
├── .ssh/ # Claves SSH (si existen)
|
||
└── omarchy-setup.log # Log de instalación
|
||
```
|
||
|
||
---
|
||
|
||
## 🔄 Después de la instalación
|
||
|
||
### 1. Reiniciar sesión o terminal (IMPORTANTE)
|
||
|
||
**⚠️ REINICIO REQUERIDO** si se instalaron servicios como TeamViewer o ZeroTier.
|
||
|
||
```bash
|
||
# Cerrar y volver a abrir la terminal para usar Zsh
|
||
# O cerrar sesión y volver a entrar para aplicar:
|
||
# - Cambio de shell a Zsh
|
||
# - Grupos (docker)
|
||
# - Permisos del sistema
|
||
```
|
||
|
||
### 2. Verificar instalación
|
||
|
||
```bash
|
||
# Ver versión de Zsh
|
||
zsh --version
|
||
|
||
# Ver tema Oh My Posh
|
||
oh-my-posh version
|
||
|
||
# Verificar Docker
|
||
docker ps
|
||
|
||
# Ver ZeroTier (si se configuró)
|
||
ztstatus
|
||
|
||
# Ver TeamViewer (si se instaló)
|
||
teamviewer info
|
||
|
||
# Actualizar sistema
|
||
pacu
|
||
```
|
||
|
||
### 3. Configuraciones opcionales
|
||
|
||
```bash
|
||
# Crear archivo de configuración local
|
||
nano ~/.zshrc.local
|
||
|
||
# Ejemplo de contenido:
|
||
export OPENAI_API_KEY="sk-..."
|
||
export GITHUB_TOKEN="ghp_..."
|
||
alias miproyecto="cd ~/Projects/mi-app && code ."
|
||
```
|
||
|
||
---
|
||
|
||
## 🛠️ Solución de problemas
|
||
|
||
### Docker no funciona sin sudo
|
||
|
||
```bash
|
||
# Verificar que estás en el grupo docker
|
||
groups # Debe incluir 'docker'
|
||
|
||
# Si no aparece, reinicia sesión o ejecuta:
|
||
newgrp docker
|
||
|
||
# Verificar acceso
|
||
docker ps
|
||
```
|
||
|
||
### Git sigue pidiendo contraseña
|
||
|
||
```bash
|
||
# Verificar credential helper
|
||
git config --global credential.helper
|
||
|
||
# Debe ser: libsecret
|
||
|
||
# Si no, configurar:
|
||
git config --global credential.helper libsecret
|
||
|
||
# Abrir Seahorse y verificar keyring
|
||
seahorse
|
||
|
||
# Verificar que el keyring está corriendo
|
||
pgrep -u "$USER" gnome-keyring-daemon
|
||
```
|
||
|
||
### ZeroTier no conecta
|
||
|
||
```bash
|
||
# Verificar servicio
|
||
sudo systemctl status zerotier-one
|
||
|
||
# Ver logs
|
||
sudo journalctl -u zerotier-one -f
|
||
|
||
# Reiniciar servicio
|
||
sudo systemctl restart zerotier-one
|
||
|
||
# Verificar que autorizaste el nodo en https://my.zerotier.com
|
||
ztinfo
|
||
ztstatus
|
||
```
|
||
|
||
### Oh My Posh no se muestra correctamente
|
||
|
||
```bash
|
||
# Verificar instalación
|
||
which oh-my-posh
|
||
oh-my-posh version
|
||
|
||
# Verificar que el tema existe
|
||
ls ~/.poshthemes/catppuccin_frappe.omp.json
|
||
|
||
# Verificar que tienes una Nerd Font instalada
|
||
# (El script NO instala fuentes automáticamente)
|
||
fc-list | grep -i nerd
|
||
|
||
# Si no tienes Nerd Font, instala una:
|
||
# - Nerd Fonts: https://www.nerdfonts.com/
|
||
```
|
||
|
||
### El shell no cambió a Zsh
|
||
|
||
```bash
|
||
# Verificar shell actual
|
||
echo $SHELL
|
||
|
||
# Cambiar manualmente
|
||
chsh -s $(which zsh)
|
||
|
||
# Cerrar y abrir nueva terminal
|
||
```
|
||
|
||
---
|
||
|
||
## 📚 Recursos
|
||
|
||
- **Arch Wiki**: https://wiki.archlinux.org/
|
||
- **Oh My Zsh**: https://ohmyz.sh/
|
||
- **Oh My Posh**: https://ohmyposh.dev/
|
||
- **Catppuccin Theme**: https://github.com/catppuccin/catppuccin
|
||
- **ZeroTier**: https://www.zerotier.com/
|
||
- **yt-dlp**: https://github.com/yt-dlp/yt-dlp
|
||
- **Nerd Fonts**: https://www.nerdfonts.com/ (requerido para iconos del prompt)
|
||
- **yay AUR Helper**: https://github.com/Jguer/yay
|
||
|
||
---
|
||
|
||
## 🆘 Soporte
|
||
|
||
Si encuentras problemas:
|
||
|
||
1. Revisa los mensajes de error durante la instalación
|
||
2. Verifica que cerraste sesión después de instalar (para aplicar grupos)
|
||
3. Comprueba que los grupos se aplicaron: `groups`
|
||
4. Verifica que los módulos están presentes: `ls modules/`
|
||
5. Ejecuta módulos individualmente para aislar problemas
|
||
6. Abre un issue en: https://github.com/marcogll/scripts_mg/issues
|
||
|
||
### Verificar Instalación de Módulos
|
||
|
||
```bash
|
||
# Verificar que todos los módulos existen
|
||
ls -la modules/
|
||
|
||
# Ejecutar un módulo individual para debug
|
||
bash -x modules/apps.sh
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 Agregar Nuevos Módulos
|
||
|
||
Para agregar un nuevo módulo:
|
||
|
||
1. Crea un archivo en `modules/nombre-modulo.sh`:
|
||
|
||
```bash
|
||
#!/usr/bin/env bash
|
||
# ===============================================================
|
||
# nombre-modulo.sh - Descripción del módulo
|
||
# ===============================================================
|
||
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
source "${SCRIPT_DIR}/common.sh"
|
||
|
||
install_nombre_modulo() {
|
||
log_step "Instalación de Nombre Módulo"
|
||
|
||
# Tu código aquí
|
||
log_info "Instalando paquetes..."
|
||
sudo pacman -S --noconfirm --needed paquete1 paquete2 || {
|
||
log_error "Error al instalar paquetes"
|
||
return 1
|
||
}
|
||
|
||
log_success "Módulo instalado correctamente"
|
||
return 0
|
||
}
|
||
|
||
# Ejecutar si se llama directamente
|
||
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
||
install_nombre_modulo "$@"
|
||
fi
|
||
```
|
||
|
||
2. Agrega el módulo al menú en `omarchy-setup.sh`:
|
||
|
||
Dentro del script `omarchy-setup.sh`, localiza el array asociativo `MODULES` y añade una nueva línea.
|
||
|
||
```bash
|
||
# --- Definición de Módulos ---
|
||
# Clave: Opción del menú
|
||
# Valor: "Nombre del Fichero;Función Principal;Descripción;Tipo (bg/fg)"
|
||
declare -A MODULES
|
||
MODULES=(
|
||
["1"]="apps;run_module_main;📦 Instalar Aplicaciones;bg"
|
||
# ... otros módulos ...
|
||
["N"]="nombre-modulo;install_nombre_modulo;🚀 Mi Nuevo Módulo;fg"
|
||
)
|
||
```
|
||
|
||
- **Clave (`"N"`):** La tecla que el usuario presionará en el menú.
|
||
- **Valor:** Una cadena de texto con 4 partes separadas por punto y coma (`;`):
|
||
1. `nombre-modulo`: El nombre del fichero `.sh` sin la extensión.
|
||
2. `install_nombre_modulo`: La función dentro de ese fichero que se debe ejecutar.
|
||
3. `🚀 Mi Nuevo Módulo`: La descripción que aparecerá en el menú.
|
||
4. `fg` o `bg`: `fg` (foreground) para scripts interactivos, `bg` (background) para tareas que pueden usar un spinner.
|
||
|
||
3. Si quieres incluirlo en la opción "Instalar Todo", añade la clave del menú (en este caso, `"N"`) al array `INSTALL_ALL_CHOICES`.
|
||
|
||
---
|
||
|
||
## 📝 Changelog
|
||
|
||
### v3.0.0 (2025-01-XX)
|
||
- ✨ **Nueva estructura modular**: Scripts independientes para cada componente
|
||
- 🎨 **Menú interactivo**: Selecciona qué instalar según tus necesidades
|
||
- 🎨 **Interfaz mejorada**: Colores y mensajes claros durante la instalación
|
||
- 📦 **Módulos disponibles**:
|
||
- Aplicaciones (apps.sh)
|
||
- Zsh (zsh-config.sh)
|
||
- Docker y Portainer (docker.sh)
|
||
- ZeroTier (zerotier.sh)
|
||
- Impresoras CUPS (printer.sh)
|
||
- Tema de Cursor (mouse_cursor.sh)
|
||
- DaVinci Resolve (davinci-resolve.sh)
|
||
- Gestor de Iconos (icon_manager.sh)
|
||
|
||
### v2.8.1 (2025-11-02)
|
||
- Versión unificada con estética Catppuccin
|
||
- Instalación mejorada de paquetes con manejo de errores robusto
|
||
- **oh-my-posh** instalado desde AUR automáticamente
|
||
- Configuración `.zshrc` descargada desde GitHub
|
||
|
||
---
|
||
|
||
## 📄 Licencia
|
||
|
||
MIT License - Libre de usar y modificar
|
||
|
||
---
|
||
|
||
## 👤 Autor
|
||
|
||
**Marco**
|
||
- GitHub: [@marcogll](https://github.com/marcogll)
|
||
- Repo: [scripts_mg](https://github.com/marcogll/scripts_mg)
|
||
|
||
---
|
||
|
||
|
||
```bash
|
||
# Instalar en una línea
|
||
bash <(curl -fsSL https://raw.githubusercontent.com/marcogll/scripts_mg/main/omarchy_zsh_setup/omarchy-setup.sh)
|
||
```
|
||
|
||
## 📝 Notas importantes
|
||
|
||
- **Shell por defecto**: El módulo de Zsh modifica `.bashrc` para que las terminales nuevas usen Zsh.
|
||
|
||
## 🚀 Próximos Pasos
|
||
|
||
1. Ejecuta `./omarchy-setup.sh` para ver el menú interactivo
|
||
2. Selecciona los módulos que deseas instalar
|
||
3. Revisa los mensajes durante la instalación
|
||
4. Reinicia o cierra sesión después de instalar servicios
|
||
5. Disfruta de tu configuración personalizada
|
||
|
||
---
|
||
|
||
🚀 **¡Disfruta tu nuevo setup modular de Omarchy!**
|