Commit Graph
9 Commits
Author SHA1 Message Date
Abdessamad Derraz e38764627b feat: remove installed files and list backups
--remove deletes for good, or moves into a backup with --backup, only what the install record proves the installer placed: unchanged bytes, a regular file below the BIOS folder reached through no link, a SHA-1 the list still serves. Shared, changed, hand-added and unservable files stay and are named. --backups lists, --delete-backup deletes, --restore now updates the record. The full screen gains More, Remove files, the removal plan, Backups and their confirms. Events removal_plan, removed, restored and backup.
2026-11-11 13:20:42 +01:00
Abdessamad Derraz b9481977e1 feat: add device and emulator screens
Change replaces Options and groups every option by intent. Device chooses --target or --every-board, the board read on the device or named by the card first and chosen. Emulators ticks --emulator. From a pack and Without the internet are rows of their own. Parity tests install the screen's argv and the flag's into two folders and compare dest and sha1.
2026-11-11 10:44:02 +01:00
Abdessamad Derraz 5f3f4cff38 fix: check the install record before using it
A record's choice holds only the options of the choice and their
values, or the whole record is said once and ignored: it no longer reaches
the commands printed for the user. A recorded games folder is kept only
under the folder that holds the BIOS folder. A recorded option the list
can no longer apply is left out in one line, never refused. The record is
read only when it is a regular file of at most 16 MiB, its day is unknown
when no clock can show it, one a newer installer wrote is left as it is,
and a setup that cannot be used is dropped alone. The plan opened on the
one setup found keeps that screen's notes under Details.
2026-11-10 12:17:08 +01:00
Abdessamad Derraz 8f2018e7c2 feat: remember the install and open on the plan
An install writes retrobios-backup/<folder>.install.json beside the BIOS
folder: each file it placed with its sha1, size and source, and the choice
it made. The next run for the same setup and folder takes that choice when
the command line chose nothing, in line mode and on the full screen, and
says so. A record that cannot be read is said once and ignored. A record
event reports it.

With one setup found, the full screen opens on its plan, Change where one
row away. The plan's Install row says the size its headline says.
2026-11-10 11:46:57 +01:00
Abdessamad Derraz e8e2215a49 fix: clear the raw error flag on each run
--verbose set it and no run cleared it, so a later run in the same process ended its clock message with the raw SSL text. Also: --target named again in its refusal, three names mypy read as another type, a semicolon and a tooling file named in test comments.
2026-11-10 08:43:20 +01:00
Abdessamad Derraz b82c4be6c9 fix: say what to act on by default
Five lines the default text hid are back where the user reads them:
- the result names each failed file again, after Exit too;
- a run, --check, the plan and the result count the files an emulator
  needs that are not available here, --verbose or Details naming them;
- --check names each copy that fails its check, the files that sit too
  deep and what a run copies, and says such a copy is backed up; only
  the plain missing files wait on --verbose;
- the plan and the result keep the count of save files left out and the
  remedy, the reason going to Details;
- the plan counts the --from files that could not be read where no row
  names them, and says another drive to add.

Exit codes are unchanged. The result's word budget rises by the failed
file line.
2026-11-10 01:46:23 +01:00
Abdessamad Derraz d57120ec0e chore: give each journey a word budget
The full-screen journeys sum the words of every screen they stop on,
and one screen of them may show 90 at most. The same journeys in line
mode keep to their lines and words, print every default line again with
--verbose, and run to their end with no terminal and no --yes. A path
is no word: its length is the machine's.
2026-11-10 01:12:39 +01:00
Abdessamad Derraz 0ea7a349df fix: journey tests wait for the plain titles
The setup screen is titled Where to install? and Confirm says Counted again for these choices since the plain-words pass.
2026-11-09 21:37:38 +01:00
Abdessamad Derraz faa5ca89d0 chore: count the keys of the five journeys
Each journey of the full screen runs on a pty against a loopback list
and asserts its key count: a first install (2 to start, 3 in all), a
muOS card holding a game (2, 3, its games read since the fix), an update
(2, 3), one system then the same again (14, 15, then 2, 3 for the whole
list), what is missing (5, 6), a folder for another device (19, 20).
2026-11-09 07:03:03 +01:00