RETROARCH_STORE.md is the design, written from measurements rather than documentation: the format samples, thumbnail layout and core names come from a real RetroArch install on this machine, the core availability from the libretro buildbot index, and the CRC32s from the catalog itself. Three findings shaped it. The playlist folder is not necessarily inside the RetroArch directory — on the machine measured, playlist_directory is under ~/Documents while cores and thumbnails are under ~/Library — so reading retroarch.cfg is a requirement, not a nicety. Thumbnails must be PNG, and one of our covers is a GIF, which no store had cared about before. And a .lpl entry has nowhere to put a description, so desc and author do not survive the trip. Built the same day, in three repositories: engines/warpstore (the shared core, extracted immediately rather than in the second phase the plan proposed), tools/warp-engine-retroarch-store and tools/ttg-retroarch-store. The closing section of the design records what the implementation changed about it. MORE_STORES.md item 4 is closed, its "a minta" section now points at the extracted core, and REPO_REFACT.md carries the three new repos — check-repos.sh is green at 49. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
6.6 KiB
6.6 KiB
Gitea org-struktúra
Végrehajtva 2026-08-15-én. 6 új org, 30 repo áthelyezve, 44 repo a helyén.
Előtte a tools org 19 repót tartott hét különböző célra, az internal-t pedig csak az fogta össze, hogy privát. A bontásban az org a rendeltetést jelöli, a titkosságot a repo private kapcsolója. Nyolc org, 44 repo.
A régi útvonalak átirányítanak (Gitea repo_redirect), tehát a meglévő klónok, CI-hivatkozások és wiki-linkek nem törtek el.
git.teletypegames.org/
│
├── games/ Katalógus-termék: valaki játszik vele.
│ │ Szabály: a katalógus status mezője nem "demo".
│ ├── blessingofra
│ ├── impostor
│ ├── realworld (még nincs a katalógusban)
│ ├── rabbitroller
│ ├── rabbitc64
│ ├── bombexpert
│ ├── trickster-tiles
│ ├── nyuller (még nincs a katalógusban)
│ ├── mranderson (archivált)
│ ├── c64-demo ← ma a workspace demos/ mappájában
│ └── c64-demo-cpp
│
├── demos/ Egy platformot mutat be, nem önálló termék.
│ │ Szabály: a katalógus status mezője "demo". A wikiben
│ │ nincs saját projektoldaluk, a motor oldalán szerepelnek.
│ ├── bevy-demo
│ ├── ebitengine-demo
│ ├── love-demo
│ ├── phaser-demo
│ ├── inkwell-demo
│ └── pong ← ma games/, de a katalógusban "demo"
│
├── engines/ Saját motor és könyvtár, amitől más repók függnek.
│ │ A wiki sidebar "Engines" fejléce már ma ezeket sorolja.
│ ├── warp_engine Rails engine: katalógus + API ← ma tools/
│ ├── rubbs Ruby gem: Telnet BBS keretrendszer ← ma tools/
│ ├── inkwell Go: Point'n'Click DSL ← ma games/
│ ├── gorpg Go: Ebitengine RPG motor ← ma games/
│ └── warpstore Python: a store-motorok közös magja ← új, 2026-08-17
│
├── bbs/ BBS szerverek és showcase-ek. A keretrendszerük
│ │ (rubbs) az engines/ alatt van.
│ ├── bbs-server
│ ├── sermo-bbs ← ma internal/
│ └── impostor-bbs ← ma games/
│
├── build/ CI toolchain és builder image.
│ │ Ide tartoznak a ma internal/ névtérben publikált
│ │ *-builder image-ek és a tic80pro is.
│ ├── bevy-tools
│ ├── c64-tools
│ ├── ebitengine-tools
│ ├── godot-tools
│ ├── love-tools
│ ├── phaser-tools
│ └── tic80-tools
│
├── services/ A mi szerverünkön fut.
│ ├── teletypegames a publikus oldal monorepója
│ ├── statusbot Discord bot
│ ├── updater Discord bot
│ ├── social-updater YouTube → Facebook/LinkedIn
│ ├── blog-writer wiki → Gemini → blog pipeline
│ └── redmine-tree Redmine fa nézet
│
├── tools/ Egy ember telepíti és futtatja magának.
│ │ A név marad, de kap definíciót és 19 helyett 5 repót.
│ ├── warp-engine-batocera-store
│ ├── ttg-batocera-store
│ ├── warp-engine-retroarch-store ← új, 2026-08-17
│ ├── ttg-retroarch-store ← új, 2026-08-17
│ ├── ttg-marketplace ← ma internal/
│ ├── devarea
│ └── tic80-draw-image (vendorolt, GitHub)
│
└── infra/ Maga a kiszolgáló-környezet.
├── nginx-conf ← ma internal/
├── backup-scripts ← ma internal/
└── wiki-pages ← ma internal/
Elvégezve
- 6 org létrehozva (
demos,engines,bbs,build,services,infra), 30 repo áthelyezve. - Mind a 6 új org megkapta a
gamesmintájára a megjelenítendő nevet és aTeletyperscsapatot — azonos jogosultságokkal (includes_all_repositories,can_create_org_repo, private láthatóság, ugyanaz aunits_map) és ugyanazzal a négy taggal. devarea/scripts/repos.list— 30 klón-URL átírva; acheck-repos.shzölden fut (45 repo, 1 kizárva).- 33 lokális checkout
origin-ja átállítva, köztük awarp_enginerégigit.teletype.huhosztja. WIKI_CONNECTION.md— újOrgoszlop.- Go modulnevek rendezve (2026-08-16):
engines/inkwell,engines/gorpgésdemos/inkwell-demogo.mod-ja a mai orgot viszi; agorpg-é korábbanmodule gamevolt. Mindhárom kiadva, lásdECOSYSTEM_PLAN.md. - Gem git-források rendezve (2026-08-16):
bbs/bbs-server,bbs/sermo-bbsésbbs/impostor-bbs— mindhárom a kanonikus hoszton azengines/rubbs-ra mutat, a rögzített revíziók változatlanul. - Builder image-ek átköltöztetve (2026-08-16): mind a 8 konténer-csomag a
buildorg alá került, aci_platformsés a dokumentáció (7 toolchain README + Dockerfile, 2 wiki-oldal) átírva. Azinternalorg ezzel kiüríthető — ez volt az egyetlen, ami visszatartotta. - Wiki
engines/névtér (2026-08-16): awarp-engine,rubbsésinkwelloldal egy közös/enginesszekcióba került, a régi URL-ek Grav-átirányítással élnek tovább. - Három új repó a store-vonalon (2026-08-17):
engines/warpstore(a store-motorok kiemelt közös magja — azengines/definíciója szerint „könyvtár, amitől más repók függnek"),tools/warp-engine-retroarch-storeéstools/ttg-retroarch-store. Arepos.listés aWIKI_CONNECTION.mdtáblája követi; acheck-repos.sh49 repóval zölden fut. Atools/ezzel 5 helyett 7 repó. - Workspace mappák igazítva (2026-08-16): a mappa mostantól egy az egyben az org (
bbs/,build/,demos/,engines/,games/,infra/,services/,tools/). Kivétel adevarea, ami a gyökérben marad, mert aclone-repos.sha szülőjébe klónoz.
Nyitott pontok
- Woodpecker — a
/api/ci/pipelinestábla hiányos: 10 repót mutat, miközben a Woodpecker 19-et ismer és mind aktív, és a tulajdonos több sorban a költözés előtti orgot mutatja. A szinkron lefuttatása rendbe teszi; addig awoodpecker-cli repo lsa mérvadó.
Ami magától rendben van
- A
/codeoldalowner/namealakban írja ki a repókat, tehát az új org-nevek külön munka nélkül megjelennek rajta. - A
check-repos.shorg-agnosztikus (tea repo list-ből olvas), nem kellett hozzányúlni.