This is the main website for OpenTTD, as can be seen on https://www.openttd.org/.
main is always deployed on production.
Pull Request can be reviewed on their preview URL.
This is a Jekyll website, and is served by nginx as a static site.
By default _downloads is empty, so when building the website locally there is no latest stable/nightly.
This can be resolved by running fetch_downloads.
This script will download the latest available binaries, and populate _downloads.
python3 -m venv .env
.env/bin/pip install -r requirements.txt
.env/bin/python -m fetch_downloads
If you do not want to run a server, but just build the current site, replace serve with build in the examples below.
Under _site Jekyll will put the compiled result in both serve and build.
bundle installJEKYLL_ENV=production jekyll servemain.
main is automatically deployed to production.Please set JEKYLL_ENV to production.
Without this, the symlink ua-parser.js is copied, instead of following it.
With production it does the right thing.
To recover, remove _site/static/js/ua-parser.js manually.
On download pages, you notice that every binary has a human readable description.
windows-win64.exe is for most people to cryptic.
Windows 7 / 8 / 10 / 11 (64bit) (installer) is much more clear.
This file takes care of that mapping, based on the postfix of the file.
Because this is a static website, but we do want to show in the header what the latest version is, we need to find a solution. We picked a solution where we fetch some files to know what the latest version is, and create a static version out of it. This means that every time the latest version changes, the website has to be recreated. As new versions are rare (once or sometimes twice a day at most), it is very cheaper to do it this way. It avoids any dynamic component in production.
Yes. By lack of better, we are doing this.