Commit Graph
366 Commits
Author SHA1 Message Date
Abdessamad Derraz 244bd11075 chore: merge origin/main 2026-11-09 16:46:40 +01:00
Abdessamad Derraz 6c14468862 feat: say the installer and setup pages plainly
- The installer speaks without "you": the first screen asks "Where
  to install?", rows read "Copy the BIOS files from an old card or a
  folder", a close match reads "Close matches: ...". The handheld
  launchers and their port text follow, and the pronoun guard no
  longer lists any installer message.
- A setup that runs as an app opens on its one-line command, the
  folder table after it; a setup that runs on its own device keeps
  the network folder first, which its ZIP route needs.
- The home steps say what to do: "Its page gives one line to copy",
  "Paste it, press Enter".
2026-11-09 16:33:56 +01:00
Abdessamad Derraz 7d23d8f40b chore: merge origin/main 2026-11-09 10:57:37 +01:00
Abdessamad Derraz 602945faf0 feat: logos, build stamps and exact wording
- The installer says "Every file on the list is in place." where it
  said "Everything is in place.": a check covers the files the
  collection holds, and the required ones it lacks follow.
- The FAQ, first install, legal and home pages state only what the
  code shows (PlayStation 1 and Saturn run without a BIOS on some
  emulators, save files are never touched, records are added).
- MinUI and MyMinUI show their own boot logos, and the Android,
  Linux handheld and iPhone tiles show the Android robot, Tux and a
  plain device icon, each credited in sources.json.
- Each Markdown copy, llms.txt and llms-full.txt name the commit
  they were built from, version.json the current one, and the
  answering rules tell assistants to fetch a stale copy again.
- The deploy lists the pages whose words changed (digests.json) and
  posts them to IndexNow once the site is live.
2026-11-09 10:47:37 +01:00
Abdessamad Derraz 19264db538 chore: merge issue 87 and platform refresh 2026-11-09 07:24:48 +01:00
Abdessamad Derraz 0179de844c feat: keep firmware of cores the list lacks
--installed-cores treated a core with no profile as one that reads no
file, and dropped dc/dc_boot.bin for parallel_dc without a word (issue 87).
Such a core is now named, and the firmware its RetroArch .info declares is
kept. core_names lists every core a platform runs, so a profile with no
file is not reported unknown.
2026-11-09 06:52:44 +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 6cc646acd6 fix: type errors the merged batches brought
The name step reused one variable for paths and for (path, md5, size)
tuples, the standalone copies reused targets inside its own loop, and
the WSL state read as object. Ten baseline entries no longer occur.
2026-11-07 00:55:46 +01:00
Abdessamad Derraz 16f8c869a5 chore: merge installer fixes, fifth pass 2026-11-07 00:11:09 +01:00
Abdessamad Derraz 68c8dca41d feat: offer the games of a handheld's card
An ArkOS EASYROMS card plugged into a computer was never offered "for
the games on this card": its console folders sit beside bios, with no
roms folder above. A games part now counts as a card that may hold
games.
2026-11-06 21:01:23 +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 2ae34b9497 fix: keep the --target help a literal string 2026-11-06 16:18:35 +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 c24738a81d fix: say a full drive as such, not a read error 2026-11-06 15:21:59 +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 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 2571acc820 fix: say when Windows does not answer under WSL 2026-11-06 14:48:29 +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 44565a07bb feat: read the EmuELEC device in the installer
EmuELEC's scripts/image writes COREELEC_DEVICE to os-release (v4.8, line
189), as a GameForce image shows. The installer reads it the way it does
for AmberELEC and applies install/targets/emuelec.json. MiSTer FPGA takes
EmuELEC's place in the test of a platform without targets.
2026-11-06 12:09:09 +01:00
Abdessamad Derraz c0e4bd8379 chore: merge resolver fixes, fourth pass 2026-11-06 10:28:27 +01:00
Abdessamad Derraz 333f1ac3ca fix: resume a cut data archive
A data archive cut mid-download was deleted on every failure: the retry and the next run started from zero, while the run said nothing was lost. The archive is now kept beside its tree with the validator its server sent, and the rest is asked for with Range and If-Range. Checked against the release: fbneo-samples stopped at 16 MB, the next run downloaded 34.6 MB of 50.5.
2026-11-06 09:04:52 +01:00
Abdessamad Derraz 43cb0f84ab feat: add AmberELEC hardware targets
AmberELEC's metapackage adds LIBRETRO_CORES_EXTRA (bsnes, Mesen, melonDS, geolith) only on RG552, RG353 and RG503, and deletes those cores from es_systems.cfg on every other device (packages/amberelec/package.mk:23-31, 45-58 at a21975bf). The new target scraper reads the Makefile's device images, that test and es_systems.cfg the way the platform scraper does: RG351P, RG351V and RG351MP list 125 cores, the other three 136. The installer reads the device from COREELEC_DEVICE in os-release (scripts/image:168).
2026-11-06 09:04:51 +01:00
Abdessamad Derraz 725325f0a1 fix: announce a data tree at its archive size
A tarball tree was announced at its extracted size: yaps2 at 6.5 MB for a 21.2 MB download, Cemu's game profiles at 9.9 KB for 21.4 MB. refresh_data_dirs records the size of each archive it downloads (a tree current from before is measured, not refetched), the install lists carry it as archive_size, and the plan, the menu and the data event count it.
2026-11-06 08:59:10 +01:00
Abdessamad Derraz eb99131a6e fix: stop advising --save-dir a list cannot serve
RetroPie, ROCKNIX, AmberELEC, EmuELEC and RomM keep their save directory in no fixed place, and their lists leave those files out with no hash or address. The run said to name the folder with --save-dir, and said it again when --save-dir was given. It now says the list holds none of them.
2026-11-06 08:45:03 +01:00
Abdessamad Derraz b3f8f64395 fix: refuse options a listing does not read
Two listing options printed one list, and --list-platforms, --list-targets and --list-emulators printed the same output with --system, --region or --core as without, code 0. A run now prints one list, and an option a listing ignores is refused.
2026-11-06 08:33:01 +01:00
Abdessamad Derraz f696d4974f fix: name a --dest that is a file
A BIOS folder that is a file, or lies under one, failed at mkdir with EEXIST or ENOTDIR, and the run blamed permissions and offered sudo. It is now refused before anything is checked, with an error event whose reason is not_a_folder.
2026-11-06 08:22:18 +01:00
Abdessamad Derraz 97d0a478d2 fix: read RetroArch's config under XDG_CONFIG_HOME
Native RetroArch on Linux keeps retroarch.cfg under $XDG_CONFIG_HOME/retroarch when the variable is set, and falls back to ~/.retroarch.cfg (file_path_special.c fill_pathname_application_data, configuration.c open_default_config_file at e98e1da0). Detection read ~/.config/retroarch only.
2026-11-06 08:18:59 +01:00
Abdessamad Derraz 7e504e8469 fix: show and count data archive downloads
A data tree's archive came with no progress line, and the run ended on the BIOS bytes alone (310.5 KB where 82 MB arrived). Its download now draws the progress line and adds its bytes and time to the end line, a cut attempt taken back. It writes no progress event: those count the download event's files.
2026-11-06 03:51:36 +01:00
Abdessamad Derraz 2ecbea56b5 fix: skip data trees a read-only folder refuses
A BIOS folder this user cannot write no longer tries each data tree's archive and blames its URL with a raw errno. The tree is counted failed for the same cause as the BIOS files, so the summary keeps its one line and its advice.
2026-11-06 03:44:17 +01:00
Abdessamad Derraz f8702a19f7 feat: treat a Lakka card as a card setup
Lakka keeps its BIOS on its STORAGE partition (/storage/system). A computer now tells that partition by the retroarch.cfg RetroArch writes there, whose system_directory is Lakka's /tmp/system overlay, and --platform lakka on a computer asks for the card instead of writing to /storage/system here.
2026-11-06 03:41:18 +01:00
Abdessamad Derraz a2e8809945 fix: map a card's image name to its board
Batocera and KNULLI write the image name, not the board, to the card's board file (post-image-script.sh). The target scraper now records each board's images from Config.in, the target lists carry them, and the installer maps a card's image to its board. KNULLI's boot/knulli.board is read too.
2026-11-06 03:40:34 +01:00
Abdessamad Derraz 349914fda2 fix: list boards offline from the given list
--list-targets offline was refused, and its advice to give --manifest or --from-pack was refused in turn. It now reads the boards where --target reads them: the pack's list or targets/<platform>.json beside --manifest.
2026-11-06 03:16:00 +01:00
Abdessamad Derraz cbe98d5fec fix: keep the mister row among the platforms 2026-11-05 19:51:12 +01:00
Abdessamad Derraz a78d5ea316 fix: count data files in the check fetch line 2026-11-05 19:35:27 +01:00
Abdessamad Derraz 0624d9f735 fix: note a case twin only when its pair is there 2026-11-05 19:34:48 +01:00
Abdessamad Derraz 101757675b fix: say in place only with data files in place 2026-11-05 19:33:05 +01:00
Abdessamad Derraz aaaafd5771 fix: name the address a download was refused at 2026-11-05 19:31:42 +01:00
Abdessamad Derraz d78af1b00d feat: narrow a retropie install to its pi 2026-11-05 19:29:58 +01:00
Abdessamad Derraz fbc530123e fix: say offline that a platform has no targets 2026-11-05 19:28:28 +01:00
Abdessamad Derraz 73b82375d9 feat: recognise a mister card on a computer 2026-11-05 19:25:30 +01:00
Abdessamad Derraz 66dae2a974 fix: refuse a cores folder that cannot be listed 2026-11-05 19:20:14 +01:00
Abdessamad Derraz c0bb3443c0 fix: read a batocera zen3 board as its target 2026-11-05 19:18:50 +01:00
Abdessamad Derraz 289c180bfa feat: narrow a knulli install to its board 2026-11-05 19:18:29 +01:00
Abdessamad Derraz 83f5d161ab fix: say a config detection fails to read 2026-11-05 19:15:35 +01:00
Abdessamad Derraz 59c8217280 fix: say a settings file detection cannot read 2026-11-05 19:11:08 +01:00
Abdessamad Derraz 494e390de8 fix: take an elec bios folder as its games part 2026-11-05 19:09:43 +01:00