epaatampistle
This commit is contained in:
@@ -82,6 +82,40 @@ Las operaciones de copia corren en un hilo daemon separado para no bloquear la U
|
||||
### Extensibilidad de backends
|
||||
`core/sync_engine.py` define la ABC `SyncEngine`. `RobocopySyncEngine` es la implementación concreta. Para añadir rsync u otro backend: crear un nuevo archivo en `core/` que implemente la misma interfaz.
|
||||
|
||||
## Build (generar PocketSync.exe)
|
||||
|
||||
### Requisitos previos (una sola vez)
|
||||
|
||||
```bash
|
||||
py -m venv .venv
|
||||
.venv\Scripts\activate
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### Icono (opcional pero recomendado)
|
||||
|
||||
Coloca tu icono en `assets\pocketsync.ico` antes de empaquetar. Sin él, el `.exe` usará el icono genérico de Python. El `.spec` detecta automáticamente si el archivo existe.
|
||||
|
||||
### Empaquetar
|
||||
|
||||
```bash
|
||||
.venv\Scripts\activate
|
||||
pyinstaller pocketsync.spec
|
||||
```
|
||||
|
||||
El ejecutable final queda en `dist\PocketSync.exe`. No requiere Python instalado en el equipo destino.
|
||||
|
||||
### Archivos de build
|
||||
|
||||
| Archivo | Descripción |
|
||||
|---|---|
|
||||
| `requirements.txt` | Solo `pyinstaller>=6.0` |
|
||||
| `pocketsync.spec` | Configuración de PyInstaller (versionado) |
|
||||
| `assets/pocketsync.ico` | Icono del `.exe` (no versionado, añadir manualmente) |
|
||||
| `dist/` | Salida del build (ignorado por git) |
|
||||
| `build/` | Archivos temporales de PyInstaller (ignorado por git) |
|
||||
| `.venv/` | Entorno virtual (ignorado por git) |
|
||||
|
||||
## Plataforma
|
||||
|
||||
Windows 10/11 obligatorio (depende de `robocopy`). Python 3.6+, sin dependencias externas.
|
||||
|
||||
Reference in New Issue
Block a user