|
Some checks failed
CI / test (push) Has been cancelled
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> |
||
|---|---|---|
| .github/workflows | ||
| debian | ||
| site | ||
| tests | ||
| .gitignore | ||
| LICENSE | ||
| Makefile | ||
| README.md | ||
| serve.js | ||
| spustit.bat | ||
ishtaria-web
Primary source: https://git.vitexsoftware.com/Ishtaria/ishtaria-web (development happens there). GitHub (https://github.com/Vitexus/ishtaria-web) is a secondary mirror; packages and binaries are not built from GitHub.
Public portal of Ishtaria: introduction of the game and download instructions for its
Debian packages. English (default) and Czech. Static HTML, generated by build.py
(Python standard library only), shipped as the ishtaria-web Debian package.
Status: three pages (home, download, play) in two languages, with a hero image and five in-game screenshots of the Gilgamesh datadisk (static/screenshot-*.jpg: the stepped tower of Ishtar, the market, the quay seen across the Euphrates, a dialogue and the map of Uruk; captured with the real client from the live game, 1200x675). The home page and the play page link to the browser client at /play/ (default server from site.json, usually /api on the live portal).
Any imagery must come from the approved sources listed in the workspace AGENTS.md.
Layout
| Path | Purpose |
|---|---|
site.json |
Repository URL, package list, which packages are for playing/hosting, and the client release files offered for direct download |
i18n/en.json, i18n/cs.json |
All page text; both files must have the same keys |
build.py |
Generates build/html/ (English at /, Czech at /cs/) |
static/style.css |
Styling (light and dark via prefers-color-scheme) |
tests/check.py |
i18n key parity, every package described, no broken local links |
debian/ |
Packaging, example nginx site, Jenkinsfile |
The page play.html ("Play in your browser") posts a server address to /play/, where nginx serves the files of the package
ishtaria-client-web (the browser build of the client, see its README); debian/nginx-site (nginx) and debian/apache2-site (Apache2, the live site
ishtaria.vitexsoftware.com) have that location and, commented out,
a /server/ proxy for a game server on the same origin (/play/?server=/server: no CORS, no mixed content). Without the
package installed /play/ answers 404.
Adding a package to the download table: add it to packages in site.json and a pkg_<name>
text to both language files, then make test.
Development
make test # build into a temp dir and check
make html # build/html
make serve # http://127.0.0.1:8080
Installation
sudo wget -O /usr/share/keyrings/vitexsoftware.gpg https://repo.vitexsoftware.com/KEY.gpg
echo "deb [signed-by=/usr/share/keyrings/vitexsoftware.gpg] https://repo.vitexsoftware.com $(lsb_release -sc) main games" | sudo tee /etc/apt/sources.list.d/vitexsoftware.list
sudo apt update
sudo apt install ishtaria-web
The site lands in /usr/share/ishtaria-web/html. Example sites are installed for nginx
(/etc/nginx/sites-available/ishtaria-web) and for Apache2
(/etc/apache2/sites-available/ishtaria-web.conf; a2enmod headers mime, then a2ensite ishtaria-web),
conffiles that are not enabled automatically. Enable one and put TLS in front before exposing it. It also serves /doc/ishtaria-doc/ from the
ishtaria-doc package when installed; the portal's "Documentation" link points there.
Package build
dpkg-buildpackage -us -uc -b
CI: .github/workflows/ci.yml (the tests, on the GitHub mirror) and debian/Jenkinsfile (the package, built from the primary repository).
License
MIT. Bundled third-party assets, if ever added, keep their own licenses.
Map of Sumer: static/sumer-map-<lang>.jpg are copies of the maps drawn by make sumer-map in ishtaria-datadisk-gilgamesh (maps/sumer.<lang>.png). After the game has grown, redraw them there and convert them again (JPEG, quality 88) before a release.