DEVELOPERS & DEVOPS LOCAL ENVIRONMENT
Find a file
Mauro Rosero P. 7b01fbf6ee
[REFACTORED] Usar prompt de archivo rates.prompt para consultas de tarifas
- Leer el prompt desde el archivo rates.prompt en lugar de tenerlo hardcoded
- Traducir tipos de programadores a sus equivalentes en inglés
- Adaptar sistema de prompts para trabajar con textos en inglés
- Mejorar instrucciones al modelo para obtener solo valores numéricos
- Agregar manejo de errores si el archivo del prompt no existe

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-03-12 12:17:17 -05:00
bin [REFACTORED] Usar prompt de archivo rates.prompt para consultas de tarifas 2025-03-12 12:17:17 -05:00
inventory [MODIFIED] Se agregan credenciales de acceso para clientes smtp y se modifican organizaciones vpn (pritunl) 2025-01-08 11:19:23 -05:00
sops [SOPS] 28/01/2025 04:10 - Add freekv token for devs 2025-01-28 04:10:28 -05:00
.gitignore [IMPROVED] Agregar función de alias cortana y actualizar .gitignore 2025-03-11 04:44:49 -05:00
README.md [IMPROVED] Actualizar README con comandos de Cortana y referencia al archivo de proyectos 2025-03-12 06:10:14 -05:00

MRDevs Tools

License: AGPL-3.0 Version: 1.0.0

📋 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:

  1. Asegúrese de seguir las convenciones de codificación
  2. Use los mensajes de commit con prefijos estándar: [ADDED], [IMPROVED], [FIXED], [SOPS]
  3. 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:


MRDevs Tools - Simplificando el entorno de desarrollo © 2025 Mauro Rosero P.