Mirror of the latest release assets of every NUSV project, served through GitHub Pages at nusv.github.io/downloads — a faster download channel that does not require a VPN in regions where GitHub release downloads are slow or blocked.
tools/mirror.py, run by .github/workflows/mirror.yml every 6 hours (plus manual dispatch):
- discovers org repositories tagged
nusv-project, - fetches each project's latest release,
- downloads its assets into
public/<repo>/…, - writes
public/downloads.json(consumed by the nusv.github.io generator), - publishes
public/as a single-commit orphan branch, force-pushed tomain.
The orphan-commit + force-push strategy keeps this repository at roughly the size of one snapshot forever — old mirrored versions are discarded automatically (they remain available on each project's GitHub Releases page).
| Path | Purpose |
|---|---|
public/downloads.json |
Manifest: per repo → tag + assets (name, size, mirror URL, GitHub URL) |
public/<repo>/<file> |
Mirrored release assets |
public/index.html |
Simple human-readable listing |
Limits: files over 95 MB and a total snapshot over ~900 MB are skipped (logged in the workflow run).
Actions → Mirror latest releases → Run workflow.