- Añadir declaración de codificación UTF-8 en el encabezado del script - Especificar codificación UTF-8 en todas las operaciones de lectura de archivos - Especificar codificación UTF-8 en todas las operaciones de escritura de archivos - Mejorar compatibilidad con caracteres internacionales en múltiples sistemas 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> |
||
---|---|---|
bin | ||
inventory | ||
sops | ||
.gitignore | ||
README.md |
MRDevs Tools
📋 Descripción
MRDevs Tools es un conjunto integral de herramientas para entornos de desarrollo que facilita la instalación, configuración y gestión de aplicaciones y servicios en múltiples sistemas operativos. Diseñado para aumentar la productividad de los desarrolladores, este toolkit automatiza tareas repetitivas y estandariza entornos de desarrollo.
🚀 Inicio Rápido
Requisitos Previos
- Git instalado en su sistema
- Permisos de administrador (para algunas operaciones)
- Conexión a Internet
Instalación
# Clonar el repositorio
cd $HOME
git clone https://git.rosero.one/mrosero/devs.git
# Instalar herramientas básicas
cd $HOME/devs
bin/bootstrap.sh
# Actualizar el entorno (opcional)
bin/update.sh
🔧 Funcionalidades Principales
Gestión del Entorno de Desarrollo
Comando | Descripción |
---|---|
bin/bootstrap.sh |
Instala herramientas básicas y configura la gestión de contenedores |
bin/update.sh |
Actualiza el entorno de desarrollo con las últimas funcionalidades |
bin/npm_install.sh |
Instala NodeJS y npm de forma interactiva |
Herramientas de IA y Productividad
Comando | Descripción |
---|---|
bin/cortana_install.sh |
Instala Claude Code CLI (Cortana) |
bin/cortana_install.sh -u |
Desinstala Claude Code CLI |
bin/cortana_token.sh |
Gestiona la encriptación del token de Cortana vía SOPS |
bin/cortana_alias.sh |
Configura alias de línea de comandos para Cortana |
bin/cortana_enable.sh |
Activa el uso de Cortana |
bin/cortana_disable.sh |
Desactiva temporalmente Cortana |
Herramientas para Editores de Código
Comando | Descripción |
---|---|
bin/helix_install.sh |
Instala Helix Editor con soporte multiplataforma (apt, snap, pacman, etc.) |
Seguridad y Acceso
Comando | Descripción |
---|---|
bin/vpn_install.sh |
Instala el cliente Pritunl VPN |
bin/vpn_install.sh --update |
Actualiza el cliente VPN a la última versión |
bin/vpn_users.sh |
Gestiona usuarios de la VPN |
bin/gpg_init.sh |
Inicializa configuración GPG para cifrado seguro |
Gestión de Perfiles
Comando | Descripción |
---|---|
bin/profile_backup.sh |
Realiza copia de seguridad del perfil del desarrollador |
bin/profile_restore.sh <archivo> |
Restaura perfil desde copia de seguridad |
Desarrollo Especializado
Comando | Descripción |
---|---|
bin/odoo_set.sh |
Crea un nuevo proyecto Odoo con estructura completa |
📚 Guía de Usuario
Preparación del Entorno
El directorio $HOME/devs
sirve como área principal de desarrollo donde se gestionan diversos ambientes y proyectos. Por razones de seguridad, se prioriza podman sobre docker como gestor de contenedores.
Si desea usar Docker en lugar de Podman, debe instalarlo manualmente antes de ejecutar bootstrap.sh
.
Configuración de Claude Code (Cortana)
MRDevs Tools facilita el trabajo con herramientas de IA como Claude Code CLI:
# Instalación
bin/cortana_install.sh
# Gestión del token de forma segura
bin/cortana_token.sh
# Crear alias para facilitar su uso
bin/cortana_alias.sh
# Habilitar uso de Cortana
bin/cortana_enable.sh
# Deshabilitar temporalmente Cortana
bin/cortana_disable.sh
El token se encripta usando SOPS y se almacena de forma segura en $HOME/.cortana/cortana.sops.yaml
.
La configuración de proyectos se almacena en bin/config/projects.dat
, donde se encuentra el nombre de la carpeta de proyectos utilizada por el sistema.
Instalación de Helix Editor
Helix es un editor de código moderno similar a Vim/Neovim pero con una curva de aprendizaje más amigable:
# Instalación automatizada
bin/helix_install.sh
El script detecta automáticamente tu sistema operativo y utiliza el método de instalación más adecuado:
- En Ubuntu: Instala mediante snap para obtener la versión más reciente
- En Arch Linux: Utiliza pacman
- En Fedora: Instala a través de dnf
- En otros sistemas: Descarga e instala desde el tarball oficial
Copias de Seguridad
Para respaldar configuraciones importantes:
bin/profile_backup.sh
Esto crea un archivo ZIP en $HOME/secure/backups
. La carpeta puede contener múltiples archivos de respaldo con un archivo gpg.secret
que contiene la contraseña encriptada. La pérdida de este archivo imposibilitará la restauración.
Para restaurar:
bin/profile_restore.sh <archivo-zip-backup>
Desarrollo con Odoo
MRDevs Tools facilita el desarrollo de proyectos Odoo con el script especializado:
# Crear un nuevo proyecto Odoo
bin/odoo_set.sh
El script odoo_set.sh
crea automáticamente una estructura completa para un proyecto Odoo:
- Estructura de carpetas (addons, build, settings, data, scripts, etc.)
- Archivos de configuración iniciales (Dockerfile, docker-compose.yml)
- Scripts de utilidad para el desarrollo
- Marca el proyecto con el archivo
.typset
para identificarlo como proyecto Odoo
Para iniciar el entorno Odoo después de la creación:
cd [ruta-al-proyecto]
./scripts/start.sh
🔌 Arquitectura del Sistema
Estructura de Directorios
bin/
├── lib/ # Bibliotecas compartidas
├── msg/ # Archivos de mensajes multilingües
├── config/ # Configuraciones y parámetros
└── ansible/ # Recursos para automatización
Componentes Principales
- Bibliotecas Base: Conjunto de funciones reutilizables (
base.lib
,bootstrap.lib
, etc.) - Sistema de Mensajes: Soporte multilingüe para internacionalización
- Gestión de Configuración: Archivos de configuración centralizados
- Herramientas de Automatización: Scripts y playbooks de Ansible
💻 Compatibilidad
El proyecto está diseñado para funcionar en múltiples sistemas operativos:
- Ubuntu/Debian (apt)
- Red Hat/Fedora (dnf/yum)
- Arch Linux (pacman)
- BSD (pkg)
- macOS (brew)
🤝 Contribución
Para contribuir al proyecto:
- Asegúrese de seguir las convenciones de codificación
- Use los mensajes de commit con prefijos estándar: [ADDED], [IMPROVED], [FIXED], [SOPS]
- Documente cualquier nueva funcionalidad añadida
📄 Licencia
Este proyecto está licenciado bajo la Licencia Pública General Affero (AGPL) - vea el archivo LICENSE para más detalles.
📞 Soporte
Para dudas o problemas, contacte con:
- Email: mauro@rosero.one
- Web: https://rosero.one
MRDevs Tools - Simplificando el entorno de desarrollo © 2025 Mauro Rosero P.