Add an uninstall wrapper, and move to the stores org

uninstall.sh mirrors install.sh: it names the store and lets the engine do the
work, passing STORE_ID rather than a config URL. install.sh gained what the
Batocera wrapper already had — run from a checkout, it uses the config next to
it rather than the one on the forge.

Both wrappers are POSIX sh now, and neither pipes curl into a shell any more: a
failed download would feed an empty script to sh and look like success, so the
installer is fetched to a file and run from there.

The repository moved from the tools org to stores. The old raw URLs still
redirect.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-18 08:32:47 +02:00
co-authored by Claude Opus 5
parent 48aeeebaf7
commit 66ddf87d03
3 changed files with 71 additions and 12 deletions
+24 -5
View File
@@ -4,16 +4,16 @@ Puts the <https://teletypegames.org> catalog into RetroArch's library: two
playlists — *Teletype Games - Commodore 64* and *Teletype Games - TIC-80* — with
box art, on any machine RetroArch runs on.
This repository is only the store definition — `config.json` plus a wrapper
installer. All the logic lives in the shared engine,
[`warp-engine-retroarch-store`](https://git.teletypegames.org/tools/warp-engine-retroarch-store),
This repository is only the store definition — `config.json` plus the two wrapper
scripts. All the logic lives in the shared engine,
[`warp-engine-retroarch-store`](https://git.teletypegames.org/stores/warp-engine-retroarch-store),
which works with any WarpEngine-based site; this is just the Teletype Games
configuration of it.
## Install
```sh
curl -fsSL https://git.teletypegames.org/tools/ttg-retroarch-store/raw/branch/master/install.sh | bash
curl -fsSL https://git.teletypegames.org/stores/ttg-retroarch-store/raw/branch/master/install.sh | sh
```
Or from a checkout of this repo:
@@ -55,6 +55,25 @@ Keep it current from `crontab`:
0 * * * * ~/.local/bin/ttg-retroarch-store sync >>~/.local/share/warp-engine-store/ttg/store.log 2>&1
```
## Uninstall
```sh
curl -fsSL https://git.teletypegames.org/stores/ttg-retroarch-store/raw/branch/master/uninstall.sh | sh
```
Or `./uninstall.sh` from a checkout. It takes out the six games, the two
playlists and their thumbnails, then the launcher and the store home. Close
RetroArch first, for the same reason as for a sync.
```sh
DRY_RUN=1 ./uninstall.sh # show what would go, remove nothing
KEEP_HOME=1 ./uninstall.sh # keep state.json and the log, for a reinstall
```
Nothing of yours goes with it: content you put in the `teletypegames/` folder
keeps its directory, a playlist that still has an entry of yours is rewritten
rather than deleted, and any `*.lpl.ttg-backup` is listed and left alone.
## What this store installs
| Catalog platform | Playlist | Core | Extension |
@@ -73,7 +92,7 @@ Statuses `released` and `archived`, whole catalog, no owner filter — **six tit
That is the cartridge half of the catalog. Our other games are native builds and
web builds, and no libretro core runs those — on a Batocera box they install as
Ports instead, see
[`ttg-batocera-store`](https://git.teletypegames.org/tools/ttg-batocera-store).
[`ttg-batocera-store`](https://git.teletypegames.org/stores/ttg-batocera-store).
Everything lands under the `teletypegames/` subfolder of RetroArch's content
directory, so a prune can never reach content you put there yourself. To change