MORE_STORES gains a line under the finished desktop item, REPO_REFACT the repo and a log entry — including the two things worth remembering: the engine grew `--json` so a window could drive it without parsing prose, and the app doubles as the Windows installer because `curl … | sh` does not exist there. check-repos.sh is green at 52. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
118 lines
9.5 KiB
Markdown
118 lines
9.5 KiB
Markdown
# 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 3 repót
|
|
│ │ (a store-ok 2026-08-18-án a stores orgba kerültek).
|
|
│ ├── ttg-marketplace ← ma internal/
|
|
│ ├── devarea
|
|
│ └── tic80-draw-image (vendorolt, GitHub)
|
|
│
|
|
├── stores/ Store: a katalógust egy gazdaplatform saját
|
|
│ │ könyvtárformátumába írja. Motor + a rá épülő store-ok.
|
|
│ │ ← új org, 2026-08-18
|
|
│ ├── warp-engine-batocera-store motor: EmulationStation + gamelist.xml
|
|
│ ├── ttg-batocera-store a mi store-unk rajta
|
|
│ ├── warp-engine-retroarch-store motor: RetroArch .lpl playlistek
|
|
│ ├── ttg-retroarch-store a mi store-unk rajta
|
|
│ ├── warp-engine-desktop-store motor: az OS alkalmazás-menüje
|
|
│ ├── ttg-desktop-store a mi store-unk rajta
|
|
│ └── warp-engine-desktop-gui Electron kliens a desktop store-hoz
|
|
│
|
|
└── 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 `games` mintájára a megjelenítendő nevet és a `Teletypers` csapatot — azonos jogosultságokkal (`includes_all_repositories`, `can_create_org_repo`, private láthatóság, ugyanaz a `units_map`) és ugyanazzal a négy taggal.
|
|
- `devarea/scripts/repos.list` — 30 klón-URL átírva; a `check-repos.sh` zölden fut (45 repo, 1 kizárva).
|
|
- 33 lokális checkout `origin`-ja átállítva, köztük a `warp_engine` régi `git.teletype.hu` hosztja.
|
|
- `WIKI_CONNECTION.md` — új `Org` oszlop.
|
|
- **Go modulnevek rendezve** (2026-08-16): `engines/inkwell`, `engines/gorpg` és `demos/inkwell-demo` `go.mod`-ja a mai orgot viszi; a `gorpg`-é korábban `module game` volt. Mindhárom kiadva, lásd `ECOSYSTEM_PLAN.md`.
|
|
- **Gem git-források rendezve** (2026-08-16): `bbs/bbs-server`, `bbs/sermo-bbs` és `bbs/impostor-bbs` — mindhárom a kanonikus hoszton az `engines/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 `build` org alá került, a `ci_platforms` és a dokumentáció (7 toolchain README + Dockerfile, 2 wiki-oldal) átírva. Az `internal` org ezzel kiüríthető — ez volt az egyetlen, ami visszatartotta.
|
|
- **Wiki `engines/` névtér** (2026-08-16): a `warp-engine`, `rubbs` és `inkwell` oldal egy közös `/engines` szekció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 — az `engines/` definíciója szerint „könyvtár, amitől más repók függnek"), `warp-engine-retroarch-store` és `ttg-retroarch-store`. A `repos.list` és a `WIKI_CONNECTION.md` táblája követi; a `check-repos.sh` 49 repóval zölden fut.
|
|
- **`stores` org** (2026-08-18): a négy store-repó a `tools`-ból egy saját orgba került, mert a `tools` definíciója („egy ember telepíti és futtatja magának”) a motorokra már nem állt — azok termékek, amikre más is építhet. Az org a `games` mintájára kapta a megjelenítendő nevet és a `Teletypers` csapatot: ugyanaz a négy tag, azonos `units_map`, `includes_all_repositories`, `can_create_org_repo`, privát csapat-láthatóság. A műveleteket a `tea api` végzi, amit a `tea` alparancsai nem tudnak: `POST /orgs`, `POST /orgs/{org}/teams`, `PUT /teams/{id}/members/{user}`, `POST /repos/{owner}/{repo}/transfer`. **A transzfer megőrzi a Gitea átirányítását** — a régi `tools/...` raw URL-ek 301-gyel a helyükre mutatnak, tehát a már telepített store-ok `curl`-jei nem törtek el; a hivatkozásokat ettől függetlenül mindenhol átírtuk. A `warpstore` az `engines`-ben maradt: könyvtár, nem store.
|
|
- **Asztali store** (2026-08-18): `stores/warp-engine-desktop-store` és `stores/ttg-desktop-store` — a harmadik motor a közös magon. A `warpstore` ezért kapott két bővítést: a `kind` lehet **lista** (Apple Siliconon `mac_universal` > `mac_arm64` > `mac_x64`, mert az utolsó Rosettát kér), és a rekord viszi az asset katalógus-oldali útját is, mert a `html` build nem letölthető, hanem kiszolgált. Egy ütközés is kiderült és javítva lett: a RetroArch- és az asztali motor ugyanabban a store root-ban él, és a bare `<id>` home-mal osztoztak volna a `config.json`-on és a `state.json`-on — a home mostantól `<id>-<motor>`, a RetroArch-telepítő az elsőnél átmozgatja a régit.
|
|
- **Grafikus kliens** (2026-08-18): `stores/warp-engine-desktop-gui` — Electron-ablak a desktop store CLI-hez. A motor ezért kapott `--json`-t (`list`, `paths`, `sync`, `remove`, `purge`), a mag pedig `set_log_stream()`-et: adat a stdouton, emberi log a stderren. Az app egyben a **Windows-telepítő is**, mert ott a `curl … | sh` nem létezik: store nélkül letölti a motort, a magot és a configot ugyanabba a home-ba. Terjesztés Gitea release-ben; a macOS-csomag megépítve és a kicsomagolt `.app` visszamérve, Windows/Linux artifact CI-t vagy másik gépet kér. **Node 22+ kell a telepítéséhez** (nem a futtatásához): az Electron saját installere ESM-only, a Node 20 `require()`-je elhal rajta.
|
|
- **Workspace mappák igazítva** (2026-08-16): a mappa mostantól egy az egyben az org (`bbs/`, `build/`, `demos/`, `engines/`, `games/`, `infra/`, `services/`, `stores/`, `tools/`). Kivétel a `devarea`, ami a gyökérben marad, mert a `clone-repos.sh` a szülőjébe klónoz.
|
|
|
|
## Nyitott pontok
|
|
|
|
- **Woodpecker** — a `/api/ci/pipelines` tá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 a `woodpecker-cli repo ls` a mérvadó.
|
|
|
|
## Ami magától rendben van
|
|
|
|
- **A `/code` oldal** `owner/name` alakban írja ki a repókat, tehát az új org-nevek külön munka nélkül megjelennek rajta.
|
|
- **A `check-repos.sh`** org-agnosztikus (`tea repo list`-ből olvas), nem kellett hozzányúlni.
|