Dotfiles-Manager

Memoria de Proyecto

← AnteriorSiguiente →

5.1. Entorno del Cliente (Local)

Las herramientas seleccionadas para el cliente están optimizadas para ejecutarse de forma nativa y eficiente en distribuciones Linux (como Arch Linux, Manjaro o Debian).

Python 3.x

Elegido como lenguaje principal del cliente por su insuperable capacidad para interactuar con el sistema operativo (lectura de directorios, ejecución de subprocesos, manejo de expresiones regulares). Su naturaleza multiparadigma permite implementar una arquitectura orientada a objetos (POO) limpia y mantenible.

PySide6 (Qt)

Framework para la Interfaz Gráfica de Usuario (GUI). Se ha descartado Tkinter en favor de las librerías oficiales de Qt para Python. Permite crear interfaces modernas, fluidas y con un aspecto nativo en entornos de escritorio Linux, facilitando además la separación de la lógica mediante el patrón MVC.

SQLite + SQLAlchemy

Motor de base de datos relacional integrado (serverless). Se manipulará íntegramente a través de SQLAlchemy, un potente Mapeador Objeto-Relacional (ORM) que permite gestionar el caché local de las configuraciones interactuando con los datos como objetos Python puros, aislando al sistema de inyecciones SQL y sentencias en crudo.

Git (Bare Repository)

Herramienta estándar de la industria para el control de versiones. Se utiliza su funcionalidad --bare a través de subprocesos de Python para gestionar el historial de los dotfiles de forma transparente, sin crear la habitual carpeta .git en el directorio $HOME.