EN /HU | Belépés

FTP-szerver

A DOS-os és Windows 9x-es eszközök nem tudnak HTTPS-t, ezért FTP-t olvasnak. Egyetlen szerver kínál nekik mindent: anonim, csak olvasható, csak passzív mód, a 21-es porton. Bármely FTP-kliensnek a portál WarpEngine-játékfájljait is kínálja. Önálló stackként fut. Akik írnak bele, máshol futnak.

A mappák

TXT
/
  APPS/           a DOSINST programtára, a DOS-polc: programonként egy mappa, mindegyikben INFO.INI és FILES.LST
  C64/            a C64-polc: minden C64-játék legfrissebb buildje, verzió nélküli néven, INDEX.TXT
  PLUS4/          a Plus/4-polc, ugyanígy
  WARP/           a teletypegames.org WarpEngine-fájljai: minden játék minden buildje
  WIKI/           a TTGWIKI exportja: WIKI.INI, FILES.LST, EN/, HU/
Mappa Ki olvassa Ki írja
APPS DOSINST (PATH=/APPS) a teletypegames.org WarpEngine-je: a DOS-polca (layout: "folders"), a DOSINST, a GMENU, a BMAGIC és a TTGWIKI minden publikálásakor újraépítve
C64 a WARP64U HTTP-n, és bármely FTP-kliens a WarpEngine: a C64-polca, minden publikáláskor újraépítve
PLUS4 bármely FTP- vagy HTTP-kliens a WarpEngine: a Plus/4-polca
WARP bármely FTP-kliens (a nevek nem DOS-os 8.3-as nevek) minden WarpEngine-build, ami a teletypegames.org-ra kerül: ugyanazok a fájlok, mint a https://teletypegames.org/file/... alatt
WIKI TTGWIKI (PATH=/WIKI) a ttgwiki stack exportere, 15 percenként

A WARP nem másolat. A portál tároló mappája (/srv/stacks/teletype-games/data/softwares), csak olvashatóan csatolva, így egy új build azonnal megjelenik benne. A régi verziók is benne vannak, és a katalógusból törölt szoftverek fájljai is, amíg a mappában maradnak.

Az APPS, a C64 és a PLUS4 sem másolat. A WarpEngine által ugyanebben a mappában tartott polcok (shelves/APPS, shelves/C64, shelves/PLUS4) csak olvasható csatolásai; lásd a Polcok részt a WarpEngine oldalán. A WarpEngine 1.7 óta egyetlen pipeline sem írja SSH-n az APPS-ot: az engine minden publikáláskor a katalógusból építi újra, a programok beállításfájljai nélkül, így egy a katalógusban elrejtett vagy törölt program kikerül a programtárból. Egy kézzel odatett mappa (például egy tesztprogram) megmarad: a /srv/stacks/teletype-games/data/softwares/shelves/APPS/ alá kell másolni, és lefuttatni rá a DOSINST server/mkfiles.sh-ját.

Ugyanez a fa sima HTTP-n is elérhető a http://archive.teletypegames.org/ címen (HTTPS-re irányítás nélkül), a TLS-t nem beszélő gépeknek: http://archive.teletypegames.org/C64, /PLUS4, /APPS.

A gyökérben csak ez az öt mappa van. A 0.6.0 előtti DOSINST DOSINST.CFG-jében PATH=/ áll, és a frissítés ezt a fájlt sosem írja át: a gyökérben nem talál programot, ezért kézzel kell PATH=/APPS-ra átírni. 2026-10-15-ig a szerver az ilyen DOSINST kedvéért az APPS mappáit a gyökérben is mutatta.

A szerver

/srv/stacks/ftp-server a vps.teletype.hu-n. A szerver egyetlen konténer: pyftpdlib 2.2.0, root nélkül és csak olvasható fájlrendszerrel.

  • Az aktív módra (PORT/EPRT) 502 a válasz, így a konténer nem nyit kimenő kapcsolatot.
  • A feltöltésre és a törlésre 550 a válasz.
  • Legfeljebb 50 kapcsolat összesen, egy IP-ről 5.
  • A PASV válasz a .env FTP_MASQUERADE-jét jelenti be. A DOS-os kliensek ezt nem használják, a szerver saját címére kapcsolódnak.

A stack mappája nem git checkout. A master ágra pusholt, a szervert érintő változást a pipeline telepíti, pontosabban csak megkéri rá a szervert: a deploy lépés SSH-n hívja a szerver deploy felhasználóját (deploy-ssh image, digest szerint), akinek a kulcsa egyetlen rögzített parancshoz, a ci-deploy ftp-server-hez kötött (infra/host-config). A szerver maga klónozza a mastert a Giteáról, egy szabályzat szerint ellenőrzi a compose.yaml-t (nincs privileged mód, extra capability vagy hoszt-névtér, docker socket; bind mount csak a stacken belül és a csak olvasható WarpEngine-mappára; nyilvános port csak a 21 és a 30000–30019), bemásolja a compose.yaml-t és a server/-t, aztán docker compose up -d --build; trusted volume-ok nem kellenek. A teszt lépés a Gitea-registry pyftpdlib image-ében fut (git.teletypegames.org/build/pyftpdlib:3.13, a szerver Pythonja a pyftpdlib 2.2.0-val), és csak akkor telepíti a pyftpdlib-et, ha az image-ben más verzió van. A root/WIKI és a .env nem változik; a root/APPS, a root/C64, a root/PLUS4 és a root/WARP csak üres csatolási pont.

2026-10-14-ig a DOSINST-nek (21-es port, dosinst stack) és a TTGWIKI-nek (2121-es port) külön FTP-szervere volt.