Commit Graph
171 Commits
Author SHA1 Message Date
Abdessamad Derraz 8f8817a6f3 chore: regenerate database, manifests and readme 2026-10-04 23:48:32 +02:00
Abdessamad Derraz ded1b49b98 chore: regenerate database, manifests and readme 2026-10-04 22:49:58 +02:00
Abdessamad Derraz cc5a30c46d feat: collect two msx2+ roms recalbox pins 2026-10-04 21:08:01 +02:00
Abdessamad Derraz 243e95725b fix: print the released pack counts, not main's 2026-10-04 20:26:09 +02:00
Abdessamad Derraz d0279fe4d5 chore: regenerate database, manifests and readme 2026-10-04 20:16:18 +02:00
Abdessamad Derraz 73be130e65 chore: drop the apple2e unenhanced duplicate 2026-09-14 10:58:26 +02:00
Abdessamad Derraz 68960b1457 feat: collect the pom2 dumps and floppy samples 2026-09-14 05:55:31 +02:00
Abdessamad Derraz 5bd98fbe3a feat: profile pom2 2026-09-14 05:18:31 +02:00
Abdessamad Derraz 08bce47668 fix: keep install manifests and release assets true 2026-09-14 01:17:49 +02:00
Abdessamad Derraz 1873b9fa37 chore: refile two ds firmware dumps under nintendo 2026-09-07 04:34:12 +02:00
Abdessamad Derraz 691ccbfca7 feat: make the native export round-trip a platform file 2026-09-05 17:32:48 +02:00
Abdessamad Derraz 3c16f6f640 fix: let a deep path answer for the file it names 2026-09-05 09:41:04 +02:00
Abdessamad Derraz 45e21fca51 docs: cover android in the installer pages 2026-09-05 07:02:57 +02:00
Abdessamad Derraz 96920785ad feat: take the shader pack idtech4a++ expects now
Three refs cited paths under Q3E/src/main/jni that the repository does
not carry: xash3d-fwgs and SeriousSamClassic are git submodules, so the
parent tree holds pointers and nothing else. They read as the separate
repositories they are, which is what the external form is for.

Reading the last two changed blocks turned up the substance.
ETQW_GLSL_SHADER_VERSION went from .3 to .6, and the bundled
zzz_etqwbase.pk4 grew from 136061 to 141815 bytes: the size, md5 and
sha1 the profile recorded describe the pack that was replaced. The new
one is in, the old one kept as a variant for builds that still expect
it, and GameResourceUrl gained two Quake 4 mod entries along the way.

70 refs, 68 anchored and 2 external, none left to read.
2026-09-05 04:56:53 +02:00
Abdessamad Derraz e6d325ed1b docs: regenerate for the linapple icon 2026-09-04 15:11:14 +02:00
Abdessamad Derraz 1a96853aee feat: sign the release checksum list
SHA256SUMS.txt sat beside the artifacts it vouches for, so whoever could
rewrite a release rewrote the list with it. The packs were already
reproducible, which answers corruption and lets a third party rebuild an
archive byte for byte; nothing answered a rewritten release.

The list is now signed with an ed25519 key kept for this alone, and the
public half is allowed_signers at the repository root, so verification
does not go through the release page: ssh-keygen -Y verify against the
committed file, then sha256sum --check. Rehearsed on all three outcomes:
a good signature, a tampered pack caught by the sums, a rewritten list
caught by the signature.

The release steps sign and upload the signature, the README points a
downloader at the procedure, and the reproducibility section says what
each half proves. Rotation keeps retired lines so past releases stay
verifiable. Three tests hold the trust root, the signing step and the
documented principal in agreement.
2026-09-04 14:01:05 +02:00
Abdessamad Derraz d368b37165 docs: surface region filtering in the readme 2026-09-04 08:31:05 +02:00
Abdessamad Derraz 7ff6ea20d1 docs: one pack per platform, the complete one 2026-09-04 04:10:15 +02:00
Abdessamad Derraz 26df60db75 chore: build releases locally, retire the ci build 2026-09-04 03:37:01 +02:00
Abdessamad Derraz e2863b13ca chore: regenerate database, manifests and readme 2026-09-03 23:21:17 +02:00
Abdessamad Derraz 27e722d8f3 chore: remove 177 duplicate copies
dedup.py removes a copy only when another file has the same SHA-1 and
the same name, keeping the higher-priority path, so resolution by hash
still finds the content. Verified rather than assumed: all 17268
manifest entries ship the same bytes as before, no destination gained
or lost, only the source paths consolidate. Every deleted path's content
is still held elsewhere.

12.1 MB and 48 empty directories go with them. The index and the
published artefacts are regenerated on top.
2026-08-23 14:14:14 +02:00
Abdessamad Derraz 3a266be7a5 fix: keep the contributors when the request fails
The contributors block is the only part of the README that comes from
the network, and a refused request returned an empty list, which deleted
the section. That happened during a pipeline run and the result was
committed; the freshness check then regenerated the section and failed
on the difference.

An unavailable list now republishes the one already there and says so.
Losing it is a worse answer than a stale one, and it makes an offline
regeneration additive rather than destructive. Reverting the change and
simulating the same outage empties the section again.
2026-08-23 09:59:26 +02:00
Abdessamad Derraz 31b0cab1d3 chore: regenerate the index and the published figures
Rebuilt from the complete state: 8923 files indexed, 436 emulators, and
coverage up on every platform that gained a profile. The gap count falls
from 9 to 7, the three that closed being the C128 kernal, the Cave Story
build and Supermodel's Games.xml.

Whole pipeline green on this revision: database, provenance, recipes,
data directories, hash scrapers, truth, verify, packs, manifests,
consistency and pack integrity across the twelve platforms.
2026-08-23 09:37:25 +02:00
Abdessamad Derraz 87ff398f9a chore: refresh the pack sizes in the readme
The manifests moved and the table did not. Most packs grow by about
1.4 GB: a filename-agnostic core takes any file of the declared shape in
its directory, and melonDS now finds all six regional DSi NAND images
where the anchor previously settled on one. The Android app assets that
left in the same pass were small by comparison.
2026-08-23 08:15:05 +02:00
Abdessamad Derraz 22eac1e3db chore: match the readme to the committed profiles
The counts were generated from a working tree holding profiles that are
still being written and are not committed, so the freshness check
regenerated different numbers from the same revision. They are read from
the committed set now, which is what the check compares against.
2026-08-12 13:17:41 +02:00
Abdessamad Derraz bcad05eaf7 chore: refresh database and readme 2026-08-12 13:08:32 +02:00
Abdessamad Derraz 52ace172b4 chore: refresh database, manifests and readme
The findable gap moves from five to nine: the files the builder drops
under a digest mode are reported absent instead of counted as held.
2026-08-12 05:52:37 +02:00
Abdessamad Derraz 50dd523493 chore: refresh database, manifests and readme 2026-08-11 20:42:36 +02:00
Abdessamad Derraz fec53f7a20 chore: refresh database, manifests and readme
Regenerated with the large-file cache populated, the state CI builds
from: without it ten preserved entries resolve differently and the
counts drift by one file.
2026-08-11 19:28:08 +02:00
Abdessamad Derraz cffb067a59 chore: refresh database, manifests and readme 2026-08-11 19:06:19 +02:00
Abdessamad Derraz 8a3c4ea2fb chore: refresh database, manifests and readme 2026-08-11 17:14:25 +02:00
Abdessamad Derraz 80ea7f5764 chore: refresh database, manifests and readme 2026-08-11 16:05:57 +02:00
Abdessamad Derraz 4b1ab7cb74 fix: separate findable gaps from unsourceable ones
The README said 14 files were 'not in the collection yet', which
implies somebody could still put them there. Nine of them cannot be:
WHDLoad.key is a per-user signed registration, Custom.dat and key.txt
are slots the emulator expects the user to fill, gpib.rom and
dragonfly-2.3.rom have never been dumped, CARTS.CRC belongs to a dead
code path. The profiles already record why, so the two are now counted
apart: five still to be found, nine that cannot be.
2026-08-11 15:56:26 +02:00
Abdessamad Derraz b890998a94 chore: refresh database, manifests and readme 2026-08-11 14:45:18 +02:00
Abdessamad Derraz 759d3c0341 chore: refresh manifests, readme and nav 2026-08-11 06:22:49 +02:00
Abdessamad Derraz cf3302efd9 chore: refresh database, manifests and readme 2026-08-11 06:01:01 +02:00
Abdessamad Derraz dbb055f4ac feat: add the thomson cd90-640 controller rom
Clock Signal loads it from Thomson/cd90-640.rom.
2026-08-11 05:45:46 +02:00
Abdessamad Derraz 7c79e4ff4f chore: refresh database and readme 2026-08-11 01:46:46 +02:00
Abdessamad Derraz e32ae3a558 chore: refresh database, manifests and readme
The database drops the duplicate PS3UPDAT.PUP entry and regains
adler32 on every file. RetroPie gains an install manifest, so the
download table reports its size instead of a dash.
2026-08-11 01:13:36 +02:00
Abdessamad Derraz 47182f4cb1 chore: refresh database, manifests and readme
7851 files.
2026-08-10 15:13:15 +02:00
Abdessamad Derraz 8ef73daca3 chore: refresh database, manifests and readme
7847 files. Regenerated after the laserdisc acquisition.
2026-08-10 14:34:34 +02:00
Abdessamad Derraz 0d4a4b3355 chore: refresh database, manifests and readme
7779 files. Regenerated after the archive renames, the Triforce filing
and the fourteen acquired runtimes.
2026-08-10 13:37:25 +02:00
Abdessamad Derraz 45f89cc6c0 feat: add region filters and profiles 2026-08-09 14:15:56 +02:00
Abdessamad Derraz f4a8d8c54b chore: rebuild manifests and docs 2026-08-08 13:36:57 +02:00
Abdessamad Derraz b00ca4d237 docs: state only what the data supports 2026-08-08 13:16:17 +02:00
Abdessamad Derraz 088caef45e docs: use one plain vocabulary across surfaces 2026-08-08 12:59:46 +02:00
Abdessamad Derraz c94771459c chore: rebuild manifests and docs 2026-08-08 12:51:42 +02:00
Abdessamad Derraz 38e39af561 docs: say what each platform actually checks 2026-08-08 12:42:06 +02:00
Abdessamad Derraz af52c7ed24 chore: rebuild manifests and docs 2026-08-08 11:31:05 +02:00
Abdessamad Derraz eb2c064518 fix: create scratch dir and scope catalog ratio 2026-08-08 11:05:23 +02:00