Commit Graph
862 Commits
Author SHA1 Message Date
Abdessamad Derraz a7a27028ab feat: give assistants each page as markdown
The build writes <page>/index.md beside each page, named in its head,
and llms-full.txt. llms.txt and the setup skill say how to answer from
the site, not from memory, and the setup_bios_files WebMCP tool gives a
setup's folder and exact file names from the picker data.
2026-11-09 06:04:42 +01:00
Abdessamad Derraz ae5b6219bb chore: merge origin/main 2026-11-07 03:28:27 +01:00
Abdessamad Derraz 097914507b feat: install for the card's games without asking
--yes alone installed the whole list, 6.4 GB on a dArkOS card holding
two games, while the screen offers what the games need first. A run that
asks nothing now takes that first choice when the card holds games, and
says so. --all-files installs the whole list. A run given its list
(the screen's own runs) or narrowed by name is unchanged.
2026-11-07 03:16:06 +01:00
Abdessamad Derraz 16f8c869a5 chore: merge installer fixes, fifth pass 2026-11-07 00:11:09 +01:00
Abdessamad Derraz 70f530516d chore: merge pack and resolver fixes 2026-11-07 00:06:15 +01:00
Abdessamad Derraz 399b5c33c1 chore: merge origin/main 2026-11-06 21:18:18 +01:00
Abdessamad Derraz cfc950b834 chore: merge origin/main 2026-11-06 21:09:17 +01:00
Abdessamad Derraz 65a5dfecc7 feat: show the installer demo on readme and site
The README shows the GIF under the commands. The home page and Get your
files show the video through InstallDemo.astro: nothing is fetched until
it is on screen, reduced motion and Save-Data keep the poster with a play
button, and a description is read to screen readers.
2026-11-06 20:46:07 +01:00
Abdessamad Derraz e310723893 feat: record an installer demo with vhs
scripts/make_demo.py builds an ArkOS card under tmp/demo/, mounts it in a
user mount namespace, serves the checkout on loopback and runs
docs_assets/demo/install.tape with VHS, then encodes the GIF, WebM, MP4
and poster and holds them to their size targets.
2026-11-06 20:45:58 +01:00
Abdessamad Derraz b56dc64609 chore: merge origin/main 2026-11-06 20:38:15 +01:00
Abdessamad Derraz 24d7db0ab3 feat: guide AI agents to the fewest files
llms.txt and an ARD manifest name the pages and the JSON API, and lead
an agent setting up a device to --for-games --required-only. Every page
registers four read-only WebMCP tools: the setup command, a hash lookup,
an emulator's files and the site search.
2026-11-06 19:58:42 +01:00
Abdessamad Derraz 072380c268 feat: install the fewest files for a card's games
--for-games --required-only on a dArkOS card from a computer kept every
file of the list: --dest skipped the card's detection, so its rom
folders were never found. The games part beside the BIOS folder now
names them. The manifest marks a data tree every core runs without
(optional), and --required-only leaves it out: one GBA and one SNES game
took FBNeo's cheats and samples, 3,472 files no game opened.
2026-11-06 19:58:41 +01:00
Abdessamad Derraz f04b3c6324 chore: merge the gate branch (7db9fe14e) 2026-11-06 19:55:51 +01:00
Abdessamad Derraz 4a167f7cca chore: mame recipes start at 0.177 now
The site's neogeo.zip line, the identification note and the recipe count sentence follow the 113 imported releases.
2026-11-06 19:18:38 +01:00
Abdessamad Derraz 91991774da docs: archive recipes, build command, zlib finding 2026-11-06 18:38:00 +01:00
Abdessamad Derraz 2e949a8cc6 docs: describe profile copies without field names 2026-11-06 17:35:23 +01:00
Abdessamad Derraz b9f309940c chore: merge site and docs fixes, fifth pass 2026-11-06 17:15:57 +01:00
Abdessamad Derraz 84cffe3f8d chore: merge origin/main 2026-11-06 16:42:16 +01:00
Abdessamad Derraz 8e3ba2cfd3 chore: merge scraper and tool fixes 2026-11-06 16:36:32 +01:00
Abdessamad Derraz 0d52df4ea7 docs: update the RetroDECK report excerpt
MinivMacBootv2.dsk left the minivmac profile: RetroDECK packs 1763 core
files.
2026-11-06 16:01:04 +01:00
Abdessamad Derraz f69a142a1c docs: list test_proven_name in the testing guide 2026-11-06 16:01:04 +01:00
Abdessamad Derraz 8477cda1ca feat: end a check with files missing on code 3 2026-11-06 15:44:14 +01:00
Abdessamad Derraz 7d99685ce1 fix: drop the Recalbox boot disk from minivmac
Mini vMac opens no MinivMacBootv2.dsk at babdf7b5: disks come from a .cmd
(libretro-core.c:181-195) or disk1.dsk to disk9.dsk
(OSGLUERETRO.c:563-579). The name is the one Recalbox's configgen writes
into its .cmd, already recorded in its launchers: layer. Nine manifests
no longer send the 24 MB image to platforms that never open it.
2026-11-06 15:25:02 +01:00
Abdessamad Derraz 7d8a3486e6 fix: count data trees in the free space check 2026-11-06 15:20:50 +01:00
Abdessamad Derraz 4eba10d1ad fix: name every board system in --target help 2026-11-06 15:19:32 +01:00
Abdessamad Derraz 01a13c6457 feat: derive standalone copies from profiles 2026-11-06 15:19:01 +01:00
Abdessamad Derraz ed6643022d fix: write the cut md5 rule once
Six places read an md5 shorter than 32 digits, each with its own bound.
digest_verdict accepted any prefix down to one digit, while Batocera
compares the whole string (batocera-systems:1088). A cut value now names
a dump only when one held md5 starts with it (cut_md5_owner, read by the
scraper, the resolver and --from-md5), and every verdict compares whole
digests.
2026-11-06 15:18:38 +01:00
Abdessamad Derraz 057fd2d0f6 fix: isolate every test module however it runs
tests/__init__.py keeps a run offline, its scratch under tmp/ and its
installer cache its own, but only discover -s tests -t . imported it.
discover tests ran with RETROBIOS_OFFLINE unset, scratch on the /tmp
tmpfs and the user's real installer cache, the setting in which e2e
fixtures had written into the shared .cache/large. Every test module now
imports the package first, and a test fails on a module that does not.
test_verify_listing.py took its line with the previous commit.
2026-11-06 15:14:05 +01:00
Abdessamad Derraz 7dcb427e27 fix: hint at --verbose when no bundled name shows
With no required firmware among the bundled entries the line read
'20 (20 more, --verbose lists them)'. It now reads '20 (--verbose lists
them)', and reading-reports.md quotes the run as it prints.
2026-11-06 15:13:55 +01:00
Abdessamad Derraz 8bdf19c7dd feat: progress lines for online profile_sync 2026-11-06 15:02:53 +01:00
Abdessamad Derraz 7a34c2ddec fix: align the privacy page with what is counted 2026-11-06 15:02:00 +01:00
Abdessamad Derraz 6bf62d5746 fix: refuse profile narrowings without cores
MiSTer and BizHawk declare cores: []. --region, --one-per-slot and
--no-game-data read the profiles of the cores a platform runs, so their
packs and manifests withdrew nothing under a name and README that said
they had. generate_pack and verify now refuse the flags for a named
platform and leave it out under --all.
2026-11-06 15:01:58 +01:00
Abdessamad Derraz 093b1b21cf docs: document the commit rules and their hook 2026-11-06 15:00:49 +01:00
Abdessamad Derraz 13a10da993 fix: serve the dump a name's hashes prove
dsi_bios7.bin and dsi_bios9.bin hold the DSi Panda devkit boot ROMs, eMMC
key-Y zeroed. Every md5 and crc32 declared under those names designates
a retail dump in the same directory, yet hashless entries (RetroBat,
dsperate) got the devkit ROMs by name. by_proven_name maps such a name to
the proven primaries beside it. kick13.rom, dsi_firmware.bin and
spectrum.zip follow the same rule.
2026-11-06 15:00:28 +01:00
Abdessamad Derraz 7080459011 fix: read No-Intro from a mirror that rebuilds 2026-11-06 14:59:40 +01:00
Abdessamad Derraz 0abe83da33 fix: give full hashes in the auto_fetch issue body 2026-11-06 14:58:30 +01:00
Abdessamad Derraz f4b45c641d feat: run the PR checks with one command 2026-11-06 14:55:03 +01:00
Abdessamad Derraz 26be1152ea feat: find Steam libraries from the client folder 2026-11-06 14:53:53 +01:00
Abdessamad Derraz 92e374328f feat: find the RetroArch AppImage portable home 2026-11-06 14:51:44 +01:00
Abdessamad Derraz af6936055b docs: quote the pip lines CI pins for PR checks 2026-11-06 14:51:00 +01:00
Abdessamad Derraz bd50b08133 docs: fetch platform files before the PR tests 2026-11-06 14:49:06 +01:00
Abdessamad Derraz 2571acc820 fix: say when Windows does not answer under WSL 2026-11-06 14:48:29 +01:00
Abdessamad Derraz 747d40e988 docs: give the clone command and size for packs 2026-11-06 14:47:47 +01:00
Abdessamad Derraz b56ec21728 feat: check type hints in CI against a baseline
Every signature carries annotations and nothing read them. mypy 1.18.2
over install.py and scripts/ reports 993 errors today, among them the
six pack helpers typed zipfile.ZipFile that every caller also hands a
PackRecord. The errors sit in mypy-baseline.txt and the schema job fails
on any error outside it, or on an entry that no longer occurs. Third-party
packages are left out so the result does not depend on the machine: 6 s
locally, run twice and on 3.12 and 3.13 with the same errors.
2026-11-06 14:47:20 +01:00
Abdessamad Derraz f693cd3ec6 fix: lock a data archive while a run holds it 2026-11-06 14:46:38 +01:00
Abdessamad Derraz 7657d4aa02 docs: name where psxonpsp660.bin is not world 2026-11-06 14:43:31 +01:00
Abdessamad Derraz 2d1c889d41 refactor: name the database option --db everywhere 2026-11-06 14:42:05 +01:00
Abdessamad Derraz a99682beeb chore: merge origin/main 2026-11-06 13:46:16 +01:00
Abdessamad Derraz b8d9b2a90c fix: send searched words only as file names
A search that found nothing sent any short text, which a name could be.
Its words now go out only as a file name or a hash, every other search
is counted as "other" without them.
2026-11-06 13:11:15 +01:00
Abdessamad Derraz 8100d671f9 chore: merge origin/main 2026-11-06 13:02:20 +01:00