refactor: renombra el paquet a jail_launcher i l'app a «Jail Launcher»
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# jlauncher
|
||||
# jail-launcher
|
||||
|
||||
Lanzador de juegos de **jailgames**. A partir de `games.toml`, lista los juegos, los
|
||||
clona/actualiza desde sus repos Gitea, lee su icono y descripción, y los compila/ejecuta.
|
||||
@@ -15,14 +15,14 @@ GUI en **Python + PySide6**, pensada para compilarse a binario nativo con **Nuit
|
||||
|
||||
```bash
|
||||
pip install PySide6
|
||||
python -m jlauncher
|
||||
python -m jail_launcher
|
||||
```
|
||||
|
||||
La app crea una carpeta `jlauncher_data/` junto al proyecto (o junto al binario, si está
|
||||
La app crea una carpeta `jail_launcher_data/` junto al proyecto (o junto al binario, si está
|
||||
compilado) con esta estructura **anidada (Versión 1)**:
|
||||
|
||||
```
|
||||
jlauncher_data/
|
||||
jail_launcher_data/
|
||||
<id_juego>/
|
||||
repo/ # git clone del juego
|
||||
metadata/
|
||||
@@ -40,7 +40,7 @@ jlauncher_data/
|
||||
- icono desde `release/icons/icon.png`.
|
||||
- **Juga**: si hay `build_cmd`, compila primero; luego ejecuta `run_cmd`. Para estos
|
||||
juegos basta `run_cmd = "make run"` (compila y ejecuta), con `build_cmd` vacío.
|
||||
- **Esborra**: elimina la descarga local (carpeta del juego en `jlauncher_data/`),
|
||||
- **Esborra**: elimina la descarga local (carpeta del juego en `jail_launcher_data/`),
|
||||
sin quitar el juego del `games.toml`.
|
||||
|
||||
Menú **Opcions**: *Amaga els jocs no descarregats* (filtro persistente) y
|
||||
@@ -55,7 +55,7 @@ Una entrada `[[game]]` por juego. Campos:
|
||||
|
||||
| Campo | Obligatorio | Descripción |
|
||||
|---------------|-------------|--------------------------------------------------------------------|
|
||||
| `id` | sí | slug → nombre de carpeta en `jlauncher_data/` |
|
||||
| `id` | sí | slug → nombre de carpeta en `jail_launcher_data/` |
|
||||
| `name` | sí | nombre visible |
|
||||
| `clone_url` | sí | URL de git clone / pull |
|
||||
| `run_cmd` | sí | comando que ejecuta el juego (cwd = repo) |
|
||||
@@ -68,16 +68,16 @@ Una entrada `[[game]]` por juego. Campos:
|
||||
|
||||
`build.sh` lo hace todo: crea el `.venv`, instala dependencias (PySide6 + Nuitka +
|
||||
zstandard) y compila un único ejecutable comprimido, empaquetándolo en
|
||||
`dist/jlauncher-v<versión>-<os>-<arch>.tar.gz` junto a `games.toml`.
|
||||
`dist/jail-launcher-v<versión>-<os>-<arch>.tar.gz` junto a `games.toml`.
|
||||
|
||||
```bash
|
||||
./build.sh
|
||||
# binario: dist/jlauncher (+ dist/games.toml)
|
||||
# binario: dist/jail-launcher (+ dist/games.toml)
|
||||
```
|
||||
|
||||
El binario crea `jlauncher_data/` y `settings.json` **junto a sí mismo** (resuelto vía
|
||||
El binario crea `jail_launcher_data/` y `settings.json` **junto a sí mismo** (resuelto vía
|
||||
`NUITKA_ONEFILE_DIRECTORY`). El punto de entrada para empaquetar es `app.py` (desde
|
||||
fuente se ejecuta con `python -m jlauncher`).
|
||||
fuente se ejecuta con `python -m jail_launcher`).
|
||||
|
||||
### Prerequisitos del sistema (no los instala el script)
|
||||
|
||||
@@ -95,8 +95,8 @@ binario suelto sino una **app nativa**:
|
||||
|
||||
```bash
|
||||
./build.sh
|
||||
# -> dist/jlauncher.app
|
||||
# -> dist/jlauncher-v<versión>-macos-<arch>.dmg (arrastrar la app a Aplicaciones)
|
||||
# -> dist/Jail Launcher.app
|
||||
# -> dist/jail-launcher-v<versión>-macos-<arch>.dmg (arrastrar la app a Aplicaciones)
|
||||
```
|
||||
|
||||
El icono vive en `icon/`: el build usa `icon/icon.icns` para el bundle y copia
|
||||
@@ -105,9 +105,9 @@ sustituye esos ficheros (regenerables con `icon/create_icons.py`).
|
||||
|
||||
A diferencia del onefile, la `.app` **no** escribe junto a sí misma (rompería al moverla a
|
||||
`/Applications`): guarda sus datos en
|
||||
`~/Library/Application Support/jailgames/jlauncher/` (`jlauncher_data/`, `settings.json` y
|
||||
`~/Library/Application Support/jailgames/jail-launcher/` (`jail_launcher_data/`, `settings.json` y
|
||||
una copia editable de `games.toml`, sembrada la primera vez desde el bundle).
|
||||
|
||||
La app va **sin firma Developer ID** (firma ad-hoc), así que Gatekeeper avisará la primera
|
||||
vez: ábrela con **clic derecho → Abrir**, o ejecuta
|
||||
`xattr -dr com.apple.quarantine /Applications/jlauncher.app`.
|
||||
`xattr -dr com.apple.quarantine "/Applications/Jail Launcher.app"`.
|
||||
|
||||
Reference in New Issue
Block a user