From b448592a20fcdb3398dd8e27fa3dcafe8d6d2fc6 Mon Sep 17 00:00:00 2001 From: Zsolt Tasnadi Date: Sat, 1 Aug 2026 17:25:00 +0200 Subject: [PATCH] translate to english --- Makefile | 16 ++++---- README.md | 89 +++++++++++++++++++++--------------------- WIKI_CONNECTION.md | 48 +++++++++++------------ scripts/check-repos.sh | 24 ++++++------ scripts/clone-repos.sh | 22 +++++------ scripts/install-tea.sh | 14 +++---- scripts/repos.ignore | 6 +-- scripts/repos.list | 14 +++---- 8 files changed, 117 insertions(+), 116 deletions(-) diff --git a/Makefile b/Makefile index fad4595..8f2a799 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ -# TTG devarea — workspace-kezelő targetek +# TTG devarea — workspace management targets # -# A workspace gyökere alapból a devarea szülőkönyvtára; felülírható: +# The workspace root defaults to the parent directory of devarea; override: # make clone ROOT=/path/to/workspace SHELL := /bin/bash @@ -11,19 +11,19 @@ ROOT ?= $(abspath ..) .PHONY: help tea clone check setup -help: ## Elérhető targetek listája - @echo "TTG devarea — használat: make " +help: ## List available targets + @echo "TTG devarea — usage: make " @echo @grep -E '^[a-zA-Z_-]+:.*?## ' $(MAKEFILE_LIST) | \ awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-8s\033[0m %s\n", $$1, $$2}' -tea: ## tea (Gitea CLI) telepítése és login ellenőrzése +tea: ## Install tea (Gitea CLI) and verify login @$(SCRIPTS)/install-tea.sh -clone: ## Összes repo klónozása a workspace-be (ROOT-tal felülírható) +clone: ## Clone all repos into the workspace (override with ROOT) @$(SCRIPTS)/clone-repos.sh $(ROOT) -check: ## Klón lista összevetése a Gitea szerverrel +check: ## Compare the clone list against the Gitea server @$(SCRIPTS)/check-repos.sh -setup: tea clone check ## Teljes setup: tea + klónozás + ellenőrzés +setup: tea clone check ## Full setup: tea + clone + check diff --git a/README.md b/README.md index 7c8deaf..db59e40 100644 --- a/README.md +++ b/README.md @@ -1,72 +1,73 @@ # devarea -A TTG workspace kezelő repója: innen klónozható le a teljes workspace a -kategória-mappás struktúrában, és itt ellenőrizhető, hogy a klón lista -szinkronban van-e a Gitea szerverrel (`git.teletypegames.org`). +Workspace management repo for TTG: use it to clone the whole workspace in +its category-folder structure, and to verify that the clone list is in sync +with the Gitea server (`git.teletypegames.org`). -## Gyors start +## Quick start -Új gépen: +On a fresh machine: ```sh mkdir TTG && cd TTG git clone ssh://git@git.teletypegames.org:2222/tools/devarea cd devarea -make setup # tea telepítés + összes repo klónozása + ellenőrzés +make setup # install tea + clone all repos + check ``` -A repók a devarea szülőkönyvtárába (a workspace gyökerébe) kerülnek. Más -célmappa: `make clone ROOT=/path/to/workspace`. +Repos are cloned into the parent directory of the devarea checkout (the +workspace root). To use a different target: `make clone ROOT=/path/to/workspace`. -## Make targetek +## Make targets -| Target | Mit csinál | +| Target | What it does | |---|---| -| `make help` | Elérhető targetek listája (alapértelmezett) | -| `make tea` | tea (Gitea CLI) telepítése Homebrew-val, ha hiányzik, és a login ellenőrzése | -| `make clone` | Az összes repo klónozása a `scripts/repos.list` alapján; a már létezőket kihagyja | -| `make check` | A klón lista összevetése a szerverrel (`tea repo list --output json`) | -| `make setup` | Mindhárom egyben: tea + clone + check | +| `make help` | List available targets (default) | +| `make tea` | Install tea (Gitea CLI) via Homebrew if missing, and verify the login | +| `make clone` | Clone all repos based on `scripts/repos.list`; existing ones are skipped | +| `make check` | Compare the clone list against the server (`tea repo list --output json`) | +| `make setup` | All three in one: tea + clone + check | -## Scriptek +## Scripts -Minden script a `scripts/` alatt van, és önállóan is futtatható: +All scripts live under `scripts/` and can also be run standalone: -- **`install-tea.sh`** — tea telepítés + login ellenőrzés. Login nélkül - kiírja a beállító parancsot (`tea login add --name ttg --url +- **`install-tea.sh`** — installs tea and verifies the login. Without a + login it prints the setup command (`tea login add --name ttg --url https://git.teletypegames.org`). -- **`clone-repos.sh [cél-mappa]`** — a `repos.list` minden sorát leklónozza - a megadott struktúrában. Idempotens: a már létező klónokat kihagyja. -- **`check-repos.sh`** — két irányban ellenőriz: ami a szerveren van, de a - listából hiányzik (**HIÁNYZIK**), és ami a listában Gitea repóként - szerepel, de a szerveren nincs (**FELESLEG**). Bármelyik találat esetén - 1-gyel lép ki, így CI-ban is használható. +- **`clone-repos.sh [target-dir]`** — clones every line of `repos.list` + into the given structure. Idempotent: existing clones are skipped. +- **`check-repos.sh`** — checks in both directions: repos that exist on + the server but are missing from the list (**MISSING**), and repos listed + as Gitea repos but absent from the server (**STALE**). Exits with 1 on + any hit, so it is CI-friendly. -## Adatfájlok +## Data files -- **`scripts/repos.list`** — a klónozandó repók, soronként - `|` formában. Új repó a szerveren → - ide kell felvenni (a `make check` szól, ha kimaradt). Nem-Gitea repók - (GitHub) is szerepelhetnek benne, azokat a check kihagyja. -- **`scripts/repos.ignore`** — szerveren létező, de szándékosan nem - klónozott repók (`/`), ezeket a check nem jelzi hiányzóként. +- **`scripts/repos.list`** — the repos to clone, one per line in + `|` form. New repo on the server → + add it here (`make check` will complain if it is missing). Non-Gitea + repos (GitHub) may also appear; the check skips those. +- **`scripts/repos.ignore`** — repos that exist on the server but are + intentionally not cloned (`/`); the check does not report + these as missing. -## Workspace struktúra +## Workspace structure ``` TTG/ -├── devarea/ # ez a repo +├── devarea/ # this repo ├── teletypegames/ # public site monorepo (GitHub) ├── wiki-pages/ # wiki mirror (Grav) -├── archive/ # lezárt projektek -├── demos/ # engine-demók, kísérletek -├── games/ # játékok -├── media/ # asset-ek, képek (nem git) -├── tools/ # önálló toolok, infra -├── tools_bbs/ # BBS-es cuccok -├── tools_build/ # engine/build toolchainek (*-tools) -└── tools_libs/ # saját libek (inkwell, rubbs, gorpg) +├── archive/ # retired projects +├── demos/ # engine demos, experiments +├── games/ # games +├── media/ # assets, images (not git) +├── tools/ # standalone tools, infra +├── tools_bbs/ # BBS-related repos +├── tools_build/ # engine/build toolchains (*-tools) +└── tools_libs/ # own libraries (inkwell, rubbs, gorpg) ``` -A repók és a wiki oldalak kapcsolatát a [WIKI_CONNECTION.md](WIKI_CONNECTION.md) -írja le. +The mapping between repos and wiki pages is described in +[WIKI_CONNECTION.md](WIKI_CONNECTION.md). diff --git a/WIKI_CONNECTION.md b/WIKI_CONNECTION.md index beea079..d22391a 100644 --- a/WIKI_CONNECTION.md +++ b/WIKI_CONNECTION.md @@ -1,12 +1,12 @@ # Wiki Connections -Azok a mappák (repók) ebben a workspace-ben, amelyekhez **már létezik** wiki oldal a `wiki-pages` mirrorban. A wiki **Grav CMS**-en fut, a tartalom sémája: `wiki-pages/pages/<út>/default.md`. A wiki bázis URL: `https://wiki.teletypegames.org/` (az oldalak belső linkjei alapján `/en/` előtag nélkül). +Folders (repos) in this workspace that **already have** a wiki page in the `wiki-pages` mirror. The wiki runs on **Grav CMS**; the content schema is `wiki-pages/pages//default.md`. Wiki base URL: `https://wiki.teletypegames.org/` (without the `/en/` prefix, based on the pages' internal links). -A workspace 2026-08-01-én kategória-mappákba lett rendezve: `demos/`, `games/`, `media/`, `tools/`, `tools_bbs/`, `tools_build/`, `tools_libs/`, `archive/`; a `teletypegames`, a `wiki-pages` és a `devarea` a gyökérben van. A táblázat első oszlopa a workspace-relatív út. +The workspace was reorganized into category folders on 2026-08-01: `demos/`, `games/`, `media/`, `tools/`, `tools_bbs/`, `tools_build/`, `tools_libs/`, `archive/`; `teletypegames`, `wiki-pages` and `devarea` live in the root. The first column of the table is the workspace-relative path. -Ez a fájl a `devarea` repóban (`tools/devarea`) él. A repó `scripts/` mappájában vannak a workspace-kezelő scriptek (`clone-repos.sh` — a teljes workspace klónozása ebben a struktúrában a `repos.list` alapján; `check-repos.sh` — a lista összevetése a Gitea szerverrel; `install-tea.sh` — tea CLI telepítés), amelyeket a gyökérben lévő `Makefile` köt össze (`make help`). A táblázat útvonalai a workspace gyökeréhez (a `devarea` szülőmappájához) képest értendők. +This file lives in the `devarea` repo (`tools/devarea`). The repo's `scripts/` folder holds the workspace management scripts (`clone-repos.sh` — clones the whole workspace in this structure based on `repos.list`; `check-repos.sh` — compares the list against the Gitea server; `install-tea.sh` — tea CLI installation), tied together by the `Makefile` in the root (`make help`). Paths in the table are relative to the workspace root (the parent directory of `devarea`). -| Mappa | Title | Wiki fájl | URL | +| Folder | Title | Wiki file | URL | |---|---|---|---| | `demos/bevy-demo` | Bevy | `wiki-pages/pages/development/bevy/default.md` | https://wiki.teletypegames.org/development/bevy | | `demos/c64-demo` | Teletype Games C64 Demo | `wiki-pages/pages/projects/c64-demo/default.md` | https://wiki.teletypegames.org/projects/c64-demo | @@ -37,24 +37,24 @@ Ez a fájl a `devarea` repóban (`tools/devarea`) él. A repó `scripts/` mappá | `tools_libs/rubbs` | rubbs | `wiki-pages/pages/others/rubbs/default.md` | https://wiki.teletypegames.org/others/rubbs | | `wiki-pages` | Wiki Site | `wiki-pages/pages/infrastructure/wiki-site/default.md` | https://wiki.teletypegames.org/infrastructure/wiki-site | -## Megjegyzések +## Notes -- **Struktúraváltás**: a korábbi Wiki.js mirror (`wiki-pages/wiki/<út>.md`) helyett a wiki most Grav CMS-en fut, `wiki-pages/pages/<út>/default.md` sémával. Az oldal wiki-útvonala a frontmatter `wikipath` mezőjében is szerepel. -- **pncdsl → inkwell átnevezés**: a korábbi `pncdsl` repó `inkwell` néven él tovább (`tools_libs/inkwell`), a `pncdsl-demo` pedig `inkwell-demo` néven (`demos/inkwell-demo`). A wiki oldal is átköltözött: `development/ebitengine/pncdsl` → `development/ebitengine/inkwell` (mindkét repót ugyanaz az oldal dokumentálja: framework-bemutató + companion demo). -- A `games/realworld` repóhoz a `projects/realworld` oldal(fa) a fejlesztői/projekt doksi (login-védett, aloldalak: catalog, entities, story); emellett létezik a NU lore-oldala is: `projects/neumatronic-universe/arcs/norman-arc/games/02-realworld`. -- A `*-tools` repók korábbi külön `pipeline.md` + `makefile.md` oldalai **beolvadtak** az engine-átfogó oldalakba (`development/ebitengine`, `development/love`, `development/tic80`): egy oldalon van az engine-bemutató, a Makefile-doksi és a CI pipeline. -- A `tic80pro-dockerfile` repónak nincs többé önálló `builder-image` oldala; a TIC-80 Pro builder image (`git.teletype.hu/internal/tic80pro`) a TIC-80 oldal pipeline/export szekciójában van dokumentálva. -- Az `impostor` repóhoz a fejlesztői doksi a `projects/impostor` oldal(fa) (adatlap: git repo, Redmine, Woodpecker + alávetett howto/design oldalak); emellett létezik a Neumatronic Universe **lore-oldala** is: `projects/neumatronic-universe/arcs/norman-arc/games/01-definitely-not-an-impostor`. -- Az `impostor-bbs` esetében a wiki oldal továbbra is a NU lore-oldal (Game 1.5), nem klasszikus repó-dokumentáció. -- A `sermo-bbs` repóhoz (rubbs-alapú SERMO-DOS telnet szimulátor) a kapcsolódó oldal a Sermo OS Showcase design-/lore-doksi (a testvéroldala a `scratchpad/sermo-os2`), nem klasszikus repó-dokumentáció. -- A `media/nokiapunk` mappa a Nokia-Punk oldalhoz tartozó valós referenciafotókat tartalmazza (Apple II, ThinkPad, Nokia Communicator stb.); az oldal ezekre az eszközökre hivatkozik. -- A `teletypegames` repo monorepo (`apps/api`: Rails 8 Catalog API + ActiveAdmin, `apps/frontend`: Vue 3 SPA), amelyet az `infrastructure/public-site` oldal ír le. -- A `blog-writer` repó korábbi oldala (`others/blog-writer`) **megszűnt** — jelenleg nincs hozzá wiki oldal. -- A `c64-demo`, `rabbitc64`, `rabbitroller` és `blessingofra` repók projekt oldalai 2026-07-28-án készültek (adatlap + ismertető + irányítás + build, az `impostor`/`realworld` oldalak formátumában). A projekt oldalak login-védettek, és a sidebar Projects szekciójában is szerepelnek (`config/sitenav.yaml`). -- A `c64-tools` repót a `development/c64` oldal dokumentálja (ACME + VICE toolchain, közös Makefile, CI pipeline) — az engine-oldalak mintájára; az oldal a három C64 projektre is linkel. -- A `rabbitc64` a `rabbitroller` C64 portja; mindkettőnek saját projekt oldala van, kereszthivatkozásokkal. -- A `wiki-pages` repó (maga a wiki: Grav + fetcher + BBS front-end) önmagát az `infrastructure/wiki-site` oldalon dokumentálja. -- A `bevy-tools` / `bevy-demo` és a `phaser-tools` / `phaser-demo` repókat (2026-07-31) az engine-átfogó `development/bevy`, ill. `development/phaser` oldalak dokumentálják — a demók külön projekt oldal nélkül, az inkwell/inkwell-demo mintájára. Mindkét oldal szerepel a sidebar Development szekciójában (`config/sitenav.yaml`). -- Az `demos/ebitengine-demo` határeset: a `development/bevy` és `development/phaser` oldalak hivatkoznak rá ("the same demo"), és a `development/ebitengine` oldal példaprojektje is (`ebitenginedemo`), de az oldalnak nincs a bevy/phaser oldalakéhoz hasonló, a demót bemutató reference-project szekciója. -- A `games/nyuller` repó 2026-08-01-én lett leklónozva a Giteáról (`games/nyuller`); wiki oldala nincs. -- **Wiki oldal nélküli mappák** (nem szerepelnek a táblázatban): `devarea`; `archive/mranderson`; `demos/c64-demo-cpp`, `demos/escoria-demo-game-main`, `demos/love-demo`, `demos/new-game-wireframe`, `demos/trickster-tiles`; `games/bombexpert`, `games/nyuller`, `games/pong`; `media/impostor-info`; `tools/blog-writer`, `tools/nginx-conf`, `tools/redmine-tree`, `tools/social-updater`, `tools/tic80-draw-image`, `tools/ttg-marketplace`; `tools_libs/gorpg`. +- **Structure change**: instead of the former Wiki.js mirror (`wiki-pages/wiki/.md`), the wiki now runs on Grav CMS with the `wiki-pages/pages//default.md` schema. Each page's wiki path is also stored in the `wikipath` frontmatter field. +- **pncdsl → inkwell rename**: the former `pncdsl` repo lives on as `inkwell` (`tools_libs/inkwell`), and `pncdsl-demo` as `inkwell-demo` (`demos/inkwell-demo`). The wiki page moved too: `development/ebitengine/pncdsl` → `development/ebitengine/inkwell` (both repos are documented by the same page: framework intro + companion demo). +- For `games/realworld`, the `projects/realworld` page (tree) is the developer/project doc (login-protected, subpages: catalog, entities, story); there is also a NU lore page: `projects/neumatronic-universe/arcs/norman-arc/games/02-realworld`. +- The former separate `pipeline.md` + `makefile.md` pages of the `*-tools` repos were **merged** into the engine-wide pages (`development/ebitengine`, `development/love`, `development/tic80`): a single page holds the engine intro, the Makefile docs and the CI pipeline. +- The `tic80pro-dockerfile` repo no longer has a standalone `builder-image` page; the TIC-80 Pro builder image (`git.teletype.hu/internal/tic80pro`) is documented in the pipeline/export section of the TIC-80 page. +- For the `impostor` repo, the developer doc is the `projects/impostor` page (tree) (fact sheet: git repo, Redmine, Woodpecker + subordinate howto/design pages); there is also a Neumatronic Universe **lore page**: `projects/neumatronic-universe/arcs/norman-arc/games/01-definitely-not-an-impostor`. +- For `impostor-bbs`, the wiki page is still the NU lore page (Game 1.5), not classic repo documentation. +- For the `sermo-bbs` repo (rubbs-based SERMO-DOS telnet simulator), the related page is the Sermo OS Showcase design/lore doc (its sibling page is `scratchpad/sermo-os2`), not classic repo documentation. +- The `media/nokiapunk` folder contains real reference photos for the Nokia-Punk page (Apple II, ThinkPad, Nokia Communicator, etc.); the page references these devices. +- The `teletypegames` repo is a monorepo (`apps/api`: Rails 8 Catalog API + ActiveAdmin, `apps/frontend`: Vue 3 SPA), described by the `infrastructure/public-site` page. +- The former page of the `blog-writer` repo (`others/blog-writer`) is **gone** — it currently has no wiki page. +- The project pages of the `c64-demo`, `rabbitc64`, `rabbitroller` and `blessingofra` repos were created on 2026-07-28 (fact sheet + overview + controls + build, in the format of the `impostor`/`realworld` pages). The project pages are login-protected and also appear in the sidebar's Projects section (`config/sitenav.yaml`). +- The `c64-tools` repo is documented by the `development/c64` page (ACME + VICE toolchain, shared Makefile, CI pipeline) — following the engine pages' pattern; the page also links to the three C64 projects. +- `rabbitc64` is the C64 port of `rabbitroller`; both have their own project pages with cross-references. +- The `wiki-pages` repo (the wiki itself: Grav + fetcher + BBS front-end) documents itself on the `infrastructure/wiki-site` page. +- The `bevy-tools` / `bevy-demo` and `phaser-tools` / `phaser-demo` repos (2026-07-31) are documented by the engine-wide `development/bevy` and `development/phaser` pages — the demos have no separate project pages, following the inkwell/inkwell-demo pattern. Both pages appear in the sidebar's Development section (`config/sitenav.yaml`). +- `demos/ebitengine-demo` is a borderline case: the `development/bevy` and `development/phaser` pages reference it ("the same demo"), and it is also the example project of the `development/ebitengine` page (`ebitenginedemo`), but that page has no reference-project section presenting the demo like the bevy/phaser pages do. +- The `games/nyuller` repo was cloned from Gitea (`games/nyuller`) on 2026-08-01; it has no wiki page. +- **Folders without a wiki page** (not in the table): `devarea`; `archive/mranderson`; `demos/c64-demo-cpp`, `demos/escoria-demo-game-main`, `demos/love-demo`, `demos/new-game-wireframe`, `demos/trickster-tiles`; `games/bombexpert`, `games/nyuller`, `games/pong`; `media/impostor-info`; `tools/blog-writer`, `tools/nginx-conf`, `tools/redmine-tree`, `tools/social-updater`, `tools/tic80-draw-image`, `tools/ttg-marketplace`; `tools_libs/gorpg`. diff --git a/scripts/check-repos.sh b/scripts/check-repos.sh index a2e419c..c0a0ef8 100755 --- a/scripts/check-repos.sh +++ b/scripts/check-repos.sh @@ -1,13 +1,13 @@ #!/usr/bin/env bash # -# Összeveti a scripts/repos.list klón listát a Gitea szerver tartalmával +# Compare the scripts/repos.list clone list against the Gitea server # (tea repo list --output json). # -# - HIÁNYZIK: a szerveren létezik, de nincs a klón listában és a -# repos.ignore-ban sem -# - FELESLEG: a listában Gitea repóként szerepel, de a szerveren nincs +# - MISSING: exists on the server but is neither in the clone list +# nor in repos.ignore +# - STALE: listed as a Gitea repo but does not exist on the server # -# Kilépési kód: 0, ha minden stimmel; 1, ha bármelyik listában van találat. +# Exit code: 0 if everything matches; 1 if either list has hits. set -euo pipefail @@ -17,17 +17,17 @@ IGNORE="$SCRIPT_DIR/repos.ignore" GITEA_HOST="git.teletypegames.org" command -v tea >/dev/null 2>&1 || { - echo "HIBA: nincs tea CLI. Futtasd: make tea" >&2 + echo "ERROR: tea CLI not found. Run: make tea" >&2 exit 1 } -# Szerveren lévő repók: owner/name +# Repos on the server: owner/name server=$(tea repo list --output json --limit 1000 | jq -r '.[] | .owner + "/" + .name' | sort) -# A klón listában szereplő Gitea repók: owner/name a clone URL-ből +# Gitea repos in the clone list: owner/name extracted from the clone URL listed=$(sed -nE "s#^[^|#]+\|ssh://git@${GITEA_HOST}:[0-9]+/(.+)\$#\1#p" "$LIST" | sed 's/\.git$//' | sort) -# Szándékosan kihagyott repók +# Intentionally excluded repos ignored=$(sed -e 's/#.*//' -e '/^[[:space:]]*$/d' "$IGNORE" 2>/dev/null | sort || true) missing=$(comm -23 <(echo "$server") <(sort -u <(echo "$listed") <(echo "$ignored"))) @@ -36,19 +36,19 @@ stale=$(comm -13 <(echo "$server") <(echo "$listed")) status=0 if [ -n "$missing" ]; then - echo "HIÁNYZIK a klón listából (a szerveren létezik):" + echo "MISSING from the clone list (exists on the server):" echo "$missing" | sed 's/^/ - /' status=1 fi if [ -n "$stale" ]; then - echo "FELESLEG a klón listában (a szerveren nincs):" + echo "STALE in the clone list (not on the server):" echo "$stale" | sed 's/^/ - /' status=1 fi if [ "$status" -eq 0 ]; then - echo "OK: a klón lista lefedi a szerver mind a(z) $(echo "$server" | wc -l | tr -d ' ') repóját ($(echo "$ignored" | grep -c . || true) szándékosan kihagyva)." + echo "OK: the clone list covers all $(echo "$server" | wc -l | tr -d ' ') repos on the server ($(echo "$ignored" | grep -c . || true) intentionally excluded)." fi exit "$status" diff --git a/scripts/clone-repos.sh b/scripts/clone-repos.sh index fcd96f4..20cc520 100755 --- a/scripts/clone-repos.sh +++ b/scripts/clone-repos.sh @@ -1,14 +1,14 @@ #!/usr/bin/env bash # -# A TTG workspace repóinak leklónozása a kategória-mappás struktúrába -# a scripts/repos.list alapján. +# Clone the TTG workspace repos into the category-folder structure, +# based on scripts/repos.list. # -# Használat: -# ./clone-repos.sh [cél-mappa] +# Usage: +# ./clone-repos.sh [target-dir] # -# Cél-mappa nélkül a devarea checkout szülőkönyvtárába (a workspace -# gyökerébe) klónoz. A már létező mappákat kihagyja, így ismételten -# futtatható. +# Without a target dir it clones into the parent directory of the devarea +# checkout (the workspace root). Existing directories are skipped, so the +# script can be re-run safely. set -euo pipefail @@ -21,13 +21,13 @@ skipped=0 failed=0 while IFS='|' read -r path url; do - # kommentek és üres sorok + # comments and empty lines [[ -z "$path" || "$path" == \#* ]] && continue target="$ROOT/$path" if [ -e "$target/.git" ]; then - echo "skip $path (már létezik)" + echo "skip $path (already exists)" skipped=$((skipped + 1)) continue fi @@ -36,11 +36,11 @@ while IFS='|' read -r path url; do if git clone "$url" "$target"; then cloned=$((cloned + 1)) else - echo "HIBA $path ($url)" >&2 + echo "ERROR $path ($url)" >&2 failed=$((failed + 1)) fi done < "$LIST" echo -echo "Kész: $cloned klónozva, $skipped kihagyva, $failed hiba." +echo "Done: $cloned cloned, $skipped skipped, $failed failed." [ "$failed" -eq 0 ] diff --git a/scripts/install-tea.sh b/scripts/install-tea.sh index 95cd12b..440f739 100755 --- a/scripts/install-tea.sh +++ b/scripts/install-tea.sh @@ -1,31 +1,31 @@ #!/usr/bin/env bash # -# A tea (Gitea CLI) telepítése, ha még nincs fent, és a login ellenőrzése. +# Install tea (the Gitea CLI) if it is not present, and verify the login. set -euo pipefail GITEA_URL="https://git.teletypegames.org" if command -v tea >/dev/null 2>&1; then - echo "tea már telepítve: $(command -v tea) ($(tea --version | head -1))" + echo "tea already installed: $(command -v tea) ($(tea --version | head -1))" else if ! command -v brew >/dev/null 2>&1; then - echo "HIBA: nincs se tea, se Homebrew. Telepítsd kézzel:" >&2 + echo "ERROR: neither tea nor Homebrew found. Install manually:" >&2 echo " https://gitea.com/gitea/tea/releases" >&2 exit 1 fi - echo "tea telepítése Homebrew-val..." + echo "Installing tea via Homebrew..." brew install tea fi -# Login ellenőrzés: enélkül a tea repo list nem működik. +# Login check: tea repo list does not work without it. if tea login list --output json 2>/dev/null | grep -q '"name"'; then echo "tea login OK:" tea login list else echo - echo "Még nincs tea login beállítva. Hozz létre egyet:" + echo "No tea login configured yet. Create one:" echo " tea login add --name ttg --url $GITEA_URL" - echo "(token generálás: $GITEA_URL/user/settings/applications)" + echo "(generate a token at: $GITEA_URL/user/settings/applications)" exit 1 fi diff --git a/scripts/repos.ignore b/scripts/repos.ignore index ca83151..462a52f 100644 --- a/scripts/repos.ignore +++ b/scripts/repos.ignore @@ -1,4 +1,4 @@ -# Szerveren létező repók, amelyeket szándékosan NEM klónozunk. -# Formátum: /, soronként egy. A check-repos.sh ezeket nem -# jelzi hiányzóként. +# Repos that exist on the server but are intentionally NOT cloned. +# Format: /, one per line. check-repos.sh will not report +# these as missing. mr.zero/nas-website diff --git a/scripts/repos.list b/scripts/repos.list index 32d4ccb..5911f5b 100644 --- a/scripts/repos.list +++ b/scripts/repos.list @@ -1,11 +1,11 @@ -# A TTG workspace repói: | -# A clone-repos.sh és a check-repos.sh közös adatfájlja. +# TTG workspace repos: | +# Shared data file for clone-repos.sh and check-repos.sh. # -# Nem klónozható (ezért nincs a listában): -# - demos/new-game-wireframe — lokális repo, nincs remote-ja -# - demos/escoria-demo-game-main — sima letöltött mappa, nem git repo -# - media/, archive egyéb tartalma — nem git repók -# Szándékosan kihagyott szerver-repók: lásd repos.ignore +# Not clonable (hence not listed): +# - demos/new-game-wireframe — local repo, has no remote +# - demos/escoria-demo-game-main — plain downloaded folder, not a git repo +# - media/, other archive content — not git repos +# Intentionally excluded server repos: see repos.ignore devarea|ssh://git@git.teletypegames.org:2222/tools/devarea teletypegames|git@github.com:rastasi/teletypegames.git