Adds two new releases.conf keys:
arch_map = x64:x86_64 ia32:x86 (upstream:canonical pairs)
os_map = win32:windows
The generic GitHub classifier now applies these after classify.Filename
so packages with non-standard naming don't need a custom classifier.
Also adds a .gz (single-file gunzip) branch to package-install.tpl.sh
so bare-binary-plus-.gz release patterns are fully handled.
Removes the ffmpegdist custom classifier — ffmpeg/releases.conf now
uses source = github with arch_map + os_map + version_prefix = b.
eugeneware/ffmpeg-static uses non-standard filenames (x64, ia32, win32,
arm) and ships both bare binaries and .gz variants. The generic classifier
mishandles the arch mapping and the installer has no bare .gz handler.
Add ffmpegdist custom classifier that:
- Maps non-standard OS/arch names to canonical values
- Filters to bare binaries only (skips .gz, ffprobe, LICENSE, README)
- Strips 'b' version prefix from tags
Also fix installerconf to allow explicit 'source' to override the
inferred source when both are present (e.g. source=ffmpegdist +
github_releases for fetching).
Closes#947
Rewrites the Node.js release classification pipeline in Go. webicached
fetches upstream releases, classifies assets, and writes legacy-format
JSON caches. webid serves the HTTP API (releases, resolve, bootstrap
scripts). Git-clone packages emit git_tag and git_commit_hash from
real repo clones — no fabricated refs.