mirror of
https://github.com/marcogll/omarchy_setup.git
synced 2026-01-13 13:25:16 +00:00
docs: update Readme with new architecture and mg_dotfiles dependency
This commit is contained in:
238
Readme.md
238
Readme.md
@@ -1,215 +1,69 @@
|
|||||||
# 🚀 Omarchy Setup Script v3.0.0
|
# 🌀 Omarchy Setup Script v3.5.0
|
||||||
|
|
||||||
Script de instalación y configuración **modular** para **Arch Linux / Omarchy** con menú interactivo.
|
Script de configuración **modular** y **personalizado** para **Arch Linux / Omarchy**. Esta herramienta automatiza la instalación de aplicaciones y la vinculación de mis dotfiles personales.
|
||||||
|
|
||||||
## 🎯 Características Principales
|
## 🎯 Características Principales
|
||||||
|
|
||||||
- **✅ Estructura Modular**: Scripts independientes para cada componente
|
- **📦 Arquitectura Modular**: Scripts independientes para cada componente del sistema.
|
||||||
- **🎨 Menú Interactivo**: Selecciona qué instalar según tus necesidades
|
- **🔗 Integración con Dotfiles**: Vincula automáticamente configuraciones de Zsh y Hyprland desde el repositorio [mg_dotfiles](https://github.com/marcogll/mg_dotfiles).
|
||||||
- **🌀 Progreso Limpio**: Las tareas en background muestran el estado sin invadir los prompts interactivos
|
- **🎨 Menú Interactivo**: Selecciona exactamente qué componentes deseas configurar.
|
||||||
- **🔐 Sesión Sudo Persistente**: Reutiliza la contraseña durante toda la ejecución para evitar interrupciones
|
- **🔐 Seguridad y Persistencia**: Gestión de sudo optimizada y sincronización con GNOME Keyring.
|
||||||
- **🔧 Fácil de Extender**: Agrega nuevos módulos fácilmente
|
- **🎬 Soporte DaVinci Resolve**: Instalador especializado para GPUs Intel Iris Xe.
|
||||||
|
|
||||||
## ⚡ Instalación rápida
|
## 🚀 Instalación Rápida
|
||||||
|
|
||||||
|
Para un setup completo, se recomienda tener clonado el repositorio de dotfiles en `~/Work/code/mg_dotfiles` antes de empezar.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Clonar el repositorio
|
# 1. Clonar dotfiles (Opcional pero recomendado para Zsh/Hyprland)
|
||||||
|
mkdir -p ~/Work/code
|
||||||
|
git clone https://github.com/marcogll/mg_dotfiles.git ~/Work/code/mg_dotfiles
|
||||||
|
|
||||||
|
# 2. Clonar y ejecutar el setup
|
||||||
git clone https://github.com/marcogll/omarchy_setup.git
|
git clone https://github.com/marcogll/omarchy_setup.git
|
||||||
cd omarchy_setup
|
cd omarchy_setup
|
||||||
|
|
||||||
# Ejecutar el script maestro
|
|
||||||
./omarchy-setup.sh
|
./omarchy-setup.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
## 📦 Estructura Modular
|
## 📦 Estructura del Proyecto
|
||||||
|
|
||||||
```
|
```
|
||||||
omarchy_zsh_setup/
|
omarchy_setup/
|
||||||
├── omarchy-setup.sh # Script maestro con menú interactivo
|
├── omarchy-setup.sh # Script principal (Menú)
|
||||||
├── modules/
|
├── modules/ # Scripts de instalación lógica
|
||||||
│ ├── common.sh # Funciones comunes (colores, logging, etc.)
|
│ ├── common.sh # Funciones compartidas y RUTAS (DOTFILES_DIR)
|
||||||
│ ├── apps.sh # Instalación de aplicaciones
|
│ ├── apps.sh # Apps base, Dev, Multimedia y Drivers Intel
|
||||||
│ ├── zsh-config.sh # Configuración de Zsh
|
│ ├── zsh-config.sh # Enlaza .zshrc y funciones desde mg_dotfiles
|
||||||
│ ├── docker.sh # Docker y Portainer
|
│ ├── hyprland-config.sh # Enlaza configs de Hyprland desde mg_dotfiles
|
||||||
│ ├── zerotier.sh # ZeroTier VPN
|
│ └── ... # Docker, ZeroTier, Impresoras, etc.
|
||||||
│ ├── printer.sh # Configuración de impresoras (CUPS)
|
├── doc_templates/ # Plantillas para ~/Templates
|
||||||
│ ├── mouse_cursor.sh # Tema de cursor Bibata
|
├── themes/ # Temas de apoyo (Oh My Posh)
|
||||||
│ ├── icon_manager.sh # Gestor de temas de iconos
|
└── install.md # Guía detallada de componentes
|
||||||
│ ├── ssh-keyring.sh # Sincronización de claves SSH con GNOME Keyring
|
|
||||||
│ ├── davinci-resolve.sh # DaVinci Resolve (Intel Edition)
|
|
||||||
└── Readme.md
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🎮 Uso del Menú Interactivo
|
## 🎮 Opciones del Menú
|
||||||
|
|
||||||
Al ejecutar `./omarchy-setup.sh`, verás un menú con las siguientes opciones:
|
| Opción | Descripción | Dependencia |
|
||||||
|
| :--- | :--- | :--- |
|
||||||
|
| **1** | **Aplicaciones** | Repositorios Arch/AUR/Flatpak |
|
||||||
|
| **2** | **Zsh Config** | Requiere `mg_dotfiles` |
|
||||||
|
| **3** | **Docker** | Docker + Portainer (Web UI) |
|
||||||
|
| **H** | **Hyprland** | Requiere `mg_dotfiles` |
|
||||||
|
| **R** | **DaVinci** | Requiere ZIP en `~/Downloads` |
|
||||||
|
| **K** | **SSH Keyring** | Sincroniza llaves con GNOME |
|
||||||
|
| **A** | **Instalar Todo** | Ejecuta la mayoría de los módulos |
|
||||||
|
|
||||||
```
|
## 📝 Notas Importantes
|
||||||
╔════════════════════════════════════════════════════════════╗
|
|
||||||
║ 🌀 Omarchy Setup Script — Configuración Modular ║
|
|
||||||
╚════════════════════════════════════════════════════════════╝
|
|
||||||
|
|
||||||
Selecciona las opciones que deseas instalar:
|
- **Dotfiles**: Este script ahora es **opinionated**. Si no encuentra `mg_dotfiles` en la ruta configurada en `common.sh`, los módulos de Zsh e Hyprland fallarán.
|
||||||
|
- **Fuentes**: Es imprescindible usar una **Nerd Font** (ej: `CaskaydiaMono NF`) para que los iconos de la terminal y Hyprland se visualicen correctamente.
|
||||||
|
- **Reinicio**: Tras la instalación de Docker o el cambio de Shell, es necesario **cerrar sesión** para aplicar los cambios de grupos y entorno.
|
||||||
|
|
||||||
1) 📦 Instalar Aplicaciones (VS Code, VLC, drivers, etc.)
|
## 🛠️ Desarrollo
|
||||||
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.)
|
|
||||||
K) 🔐 Sincronizar claves SSH con GNOME Keyring
|
|
||||||
F) 💾 Habilitar Formatos FAT/exFAT/NTFS/ext4
|
|
||||||
H) 🎨 Instalar Configuración de Hyprland
|
|
||||||
R) 🎬 Instalar DaVinci Resolve (Intel Edition)
|
|
||||||
A) ✅ Instalar Todo (opciones 1, 2, K, 3, 4, 5, 6, 7, F, H)
|
|
||||||
0) 🚪 Salir
|
|
||||||
```
|
|
||||||
|
|
||||||
> ℹ️ **Nota:** La opción `A) Instalar Todo` ejecuta los módulos 1, 2, K, 3, 4, 5, 6, 7, F y H. DaVinci Resolve (`R`) no se incluye aquí; instálalo manualmente cuando ya tengas el ZIP en `~/Downloads/`.
|
Para añadir una funcionalidad:
|
||||||
|
1. Crea un script en `modules/`.
|
||||||
> 🌀 **Progreso limpio:** Los módulos en background informan su avance sin animaciones invasivas; toda la salida detallada se imprime limpia y se escribe en `./logs/`.
|
2. Regístralo en el array `MODULES` de `omarchy-setup.sh`.
|
||||||
|
|
||||||
## 📋 Módulos Disponibles
|
|
||||||
|
|
||||||
A continuación se detalla lo que hace cada módulo. Para una descripción técnica completa, consulta la [**DOCUMENTACION.md**](./DOCUMENTACION.md).
|
|
||||||
|
|
||||||
- **`1) 📦 Instalar Aplicaciones`**: Instala un conjunto completo de software esencial, incluyendo herramientas de desarrollo (`python`, `nodejs`, `nvm`, `brew`), aplicaciones multimedia (`VLC`, `Audacity`), drivers optimizados para gráficos Intel Iris Xe y herramientas de gestión de energía como `tlp`. También configura servicios clave del sistema.
|
|
||||||
|
|
||||||
- **`2) 🐚 Configurar Zsh`**: Transforma tu terminal. Instala `Zsh`, el gestor de plugins `Oh My Zsh`, y el prompt visual `Oh My Posh` con el tema Catppuccin. Añade autocompletado, resaltado de sintaxis, una útil función de ayuda (`zsh_help`), y lo establece como tu shell por defecto.
|
|
||||||
|
|
||||||
- **`3) 🐳 Instalar Docker y Portainer`**: Prepara tu sistema para el desarrollo con contenedores. Instala `Docker` y `Docker Compose`, configura los servicios necesarios y, opcionalmente, despliega `Portainer`, una interfaz web para gestionar tus contenedores fácilmente.
|
|
||||||
|
|
||||||
- **`4) 🌐 Instalar ZeroTier VPN`**: Instala el cliente de la VPN `ZeroTier`, una forma sencilla de crear redes virtuales seguras. El módulo te guiará para unirte a una red si lo deseas.
|
|
||||||
|
|
||||||
- **`5) 🖨️ Configurar Impresoras (CUPS)`**: Instala el sistema de impresión de Linux (`CUPS`) y añade drivers para impresoras, con soporte especial para modelos Epson.
|
|
||||||
|
|
||||||
- **`6) 🖱️ Instalar Tema de Cursor (Bibata)`**: Mejora la apariencia de tu escritorio instalando el popular tema de cursores Bibata, dándole un aspecto moderno y pulido.
|
|
||||||
|
|
||||||
- **`7) 🎨 Gestionar Temas de Iconos`**: Te permite instalar y cambiar entre diferentes temas de iconos para personalizar la apariencia de tus aplicaciones y carpetas (incluye Papirus, Tela, etc.).
|
|
||||||
|
|
||||||
- **`K) 🔐 Sincronizar claves SSH con GNOME Keyring`**: Guarda de forma segura las contraseñas de tus claves SSH. Después de introducir la contraseña una vez, el sistema la recordará por ti, facilitando las conexiones a servidores remotos.
|
|
||||||
|
|
||||||
- **`F) 💾 Habilitar Formatos de Disco`**: Añade soporte para que tu sistema pueda leer y escribir en discos duros y memorias USB formateadas con sistemas de archivos de otros sistemas operativos como `NTFS` (Windows) o `exFAT`.
|
|
||||||
|
|
||||||
- **`H) 🎨 Instalar Configuración de Hyprland`**: Instala y configura el gestor de ventanas `Hyprland` y todas las herramientas necesarias para un entorno de escritorio *tiling* completo y funcional (`waybar`, `wofi`, `kitty`, etc.).
|
|
||||||
|
|
||||||
- **`R) 🎬 Instalar DaVinci Resolve`**: Automatiza la compleja instalación del editor de vídeo profesional DaVinci Resolve. **Nota:** Requiere que descargues el instalador `.zip` oficial manualmente en tu carpeta de `~/Downloads`.
|
|
||||||
|
|
||||||
---
|
---
|
||||||
## 📚 Documentación Técnica
|
**Marco** - [GitHub](https://github.com/marcogll) | [mg_dotfiles](https://github.com/marcogll/mg_dotfiles)
|
||||||
|
|
||||||
Para una descripción detallada de la implementación de cada módulo, las funciones que utiliza y las configuraciones específicas que aplica, por favor consulta el archivo [**DOCUMENTACION.md**](./DOCUMENTACION.md).
|
|
||||||
|
|
||||||
Este documento es ideal para desarrolladores que deseen extender la funcionalidad del script o para usuarios avanzados que quieran entender a fondo su funcionamiento.
|
|
||||||
---
|
|
||||||
|
|
||||||
## 🔧 Ejecutar Módulos Individualmente
|
|
||||||
|
|
||||||
Cada módulo puede ejecutarse de forma independiente si lo necesitas:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./modules/apps.sh
|
|
||||||
./modules/docker.sh
|
|
||||||
# etc.
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 🔄 Después de la instalación
|
|
||||||
|
|
||||||
### 1. Reiniciar sesión o terminal (IMPORTANTE)
|
|
||||||
|
|
||||||
Para que todos los cambios surtan efecto (nuevo shell, permisos de `docker`, variables de entorno), es fundamental que **cierres sesión y vuelvas a iniciarla** o reinicies el sistema.
|
|
||||||
|
|
||||||
### 2. Verificar la instalación
|
|
||||||
|
|
||||||
Una vez que hayas vuelto a iniciar sesión, abre una terminal y comprueba que todo funciona como esperas:
|
|
||||||
```bash
|
|
||||||
# Verifica que tu shell es Zsh y el prompt se ve bien
|
|
||||||
echo $SHELL
|
|
||||||
|
|
||||||
# Comprueba que Docker funciona sin sudo
|
|
||||||
docker ps
|
|
||||||
|
|
||||||
# Lista tus claves SSH gestionadas por el agente
|
|
||||||
ssh-add -l
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 🛠️ Solución de problemas
|
|
||||||
|
|
||||||
### El prompt de Zsh se ve con caracteres extraños (▯, ?, etc.)
|
|
||||||
|
|
||||||
Esto ocurre porque no tienes instalada una **Nerd Font**, que contiene los iconos que usa el prompt.
|
|
||||||
|
|
||||||
1. **Instala una Nerd Font.** El propio `oh-my-posh` puede hacerlo por ti:
|
|
||||||
```bash
|
|
||||||
oh-my-posh font install meslo
|
|
||||||
```
|
|
||||||
2. **Configura tu terminal.** Abre las preferencias de tu emulador de terminal (GNOME Terminal, Konsole, Kitty, etc.) y cambia la fuente del perfil a la que acabas de instalar (ej. `MesloLGM Nerd Font`).
|
|
||||||
|
|
||||||
### Docker no funciona sin `sudo`
|
|
||||||
|
|
||||||
Asegúrate de haber **cerrado sesión y vuelto a iniciarla** después de ejecutar el módulo de Docker. Si el problema persiste, verifica que tu usuario pertenece al grupo `docker` con el comando `groups`.
|
|
||||||
|
|
||||||
---
|
|
||||||
## 🔧 Agregar Nuevos Módulos
|
|
||||||
|
|
||||||
La estructura modular facilita la adición de nueva funcionalidad.
|
|
||||||
|
|
||||||
1. Crea un nuevo script en la carpeta `modules/`. Sigue la plantilla de los módulos existentes.
|
|
||||||
2. Añade una entrada para tu nuevo módulo en el array `MODULES` dentro de `omarchy-setup.sh`.
|
|
||||||
3. ¡Listo! Tu módulo aparecerá en el menú principal.
|
|
||||||
|
|
||||||
Para más detalles, consulta la [guía para contribuidores](./.docs/AGENTS.md).
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 📝 Changelog
|
|
||||||
|
|
||||||
### v3.0.0
|
|
||||||
- ✨ **Reestructuración completa a un sistema modular.**
|
|
||||||
- interactive menu para seleccionar componentes.
|
|
||||||
- 📜 **Añadida documentación técnica** (`DOCUMENTACION.md`) y guía para contribuidores (`AGENTS.md`).
|
|
||||||
- 🎨 **Interfaz de usuario mejorada** con logs claros y un indicador de progreso.
|
|
||||||
- 🔧 **Módulos actualizados** y separados por funcionalidad.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 📄 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!**
|
|
||||||
|
|||||||
Reference in New Issue
Block a user