mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-01 00:27:20 -05:00
docs: say the installer opens a full screen
The README, the installer steps, the choice of what to install and platform detection still described the line prompts as what a terminal shows. They now name the full-screen interface first, with --plain for the questions, and say that no default folder is taken where detection was refused.
This commit is contained in:
1 parent
eba5936cf3
commit
fbe5ba4e3e
4 files changed
+30
-15
No files matched your search
@@ -24,7 +24,8 @@ irm https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1 | iex
|
|||||||
# Android (Termux, after pkg install python and termux-setup-storage)
|
# Android (Termux, after pkg install python and termux-setup-storage)
|
||||||
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh
|
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh
|
||||||
|
|
||||||
# SD card mounted on a PC: --dest is the BIOS folder on the card
|
# SD card mounted on a PC: a muOS, KNULLI, ROCKNIX, Onion, spruceOS or MinUI card
|
||||||
|
# is found by itself. For another card, --dest is its BIOS folder
|
||||||
# (RetroArch on Switch: retroarch/cores/system, on Android: RetroArch/system)
|
# (RetroArch on Switch: retroarch/cores/system, on Android: RetroArch/system)
|
||||||
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh -s -- --platform retroarch --dest /path/to/sdcard/retroarch/cores/system
|
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh -s -- --platform retroarch --dest /path/to/sdcard/retroarch/cores/system
|
||||||
|
|
||||||
@@ -32,12 +33,12 @@ curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh |
|
|||||||
&([scriptblock]::Create((irm https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1))) --check
|
&([scriptblock]::Create((irm https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1))) --check
|
||||||
```
|
```
|
||||||
|
|
||||||
The script auto-detects your platform, downloads only missing files, and verifies checksums.
|
The script opens a full-screen installer, driven with the arrow keys and Enter, or with a controller on a handheld. It finds your setup and its BIOS folder, downloads only the missing files and checks each one. It can also copy the BIOS files from your old SD card.
|
||||||
Every option, and what the installer detects and writes, is on the [installer page](https://abdess.github.io/retrobios/wiki/installer/#passing-options).
|
Every option, and what the installer detects and writes, is on the [installer page](https://abdess.github.io/retrobios/wiki/installer/#passing-options).
|
||||||
|
|
||||||
## Download BIOS packs
|
## Download BIOS packs
|
||||||
|
|
||||||
A pack holds everything its platform runs: its own BIOS list plus every file its emulator cores load. Pick your platform, download the ZIP, extract to the BIOS path. Each Download link is a page that keeps its address from one release to the next. The installer above does the same file by file. At a terminal it asks whether to install everything or to choose systems, cores and regions, and `--system`, `--core`, `--region` and `--target` make the same choice without questions. For a bare minimum, build your own pack below.
|
A pack holds everything its platform runs: its own BIOS list plus every file its emulator cores load. Pick your platform, download the ZIP, extract to the BIOS path. Each Download link is a page that keeps its address from one release to the next. The installer above does the same file by file. At a terminal it offers to install everything or to choose systems, cores and regions, and `--system`, `--core`, `--region` and `--target` make the same choice without questions. For a bare minimum, build your own pack below.
|
||||||
|
|
||||||
A pack over 2 GB comes in several parts (`Pack.part1of2.zip`, `Pack.part2of2.zip`), and every part is needed. Each part is an ordinary ZIP: extract them all into the same folder.
|
A pack over 2 GB comes in several parts (`Pack.part1of2.zip`, `Pack.part2of2.zip`), and every part is needed. Each part is an ordinary ZIP: extract them all into the same folder.
|
||||||
|
|
||||||
@@ -199,4 +200,4 @@ The scripts and tooling are released under the [MIT License](LICENSE).
|
|||||||
The BIOS and firmware files are not covered by that license: they are third-party system software, preserved and provided for personal backup, archival, and interoperability with emulation software. [NOTICE](NOTICE) sets out their status and how to ask for a file to be removed.
|
The BIOS and firmware files are not covered by that license: they are third-party system software, preserved and provided for personal backup, archival, and interoperability with emulation software. [NOTICE](NOTICE) sets out their status and how to ask for a file to be removed.
|
||||||
The reasoning, and where it is weakest, is in [the project's legal position](https://abdess.github.io/retrobios/wiki/legal/).
|
The reasoning, and where it is weakest, is in [the project's legal position](https://abdess.github.io/retrobios/wiki/legal/).
|
||||||
|
|
||||||
*Auto-generated on 2026-10-24T00:06:47Z*
|
*Auto-generated on 2026-10-24T01:44:28Z*
|
||||||
@@ -562,7 +562,8 @@ def generate_readme(db: dict, platforms_dir: str, db_path: str = "database.json"
|
|||||||
"# Android (Termux, after pkg install python and termux-setup-storage)",
|
"# Android (Termux, after pkg install python and termux-setup-storage)",
|
||||||
"curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh",
|
"curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh",
|
||||||
"",
|
"",
|
||||||
"# SD card mounted on a PC: --dest is the BIOS folder on the card",
|
"# SD card mounted on a PC: a muOS, KNULLI, ROCKNIX, Onion, spruceOS or MinUI card",
|
||||||
|
"# is found by itself. For another card, --dest is its BIOS folder",
|
||||||
"# (RetroArch on Switch: retroarch/cores/system, on Android: RetroArch/system)",
|
"# (RetroArch on Switch: retroarch/cores/system, on Android: RetroArch/system)",
|
||||||
"curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh -s -- --platform retroarch --dest /path/to/sdcard/retroarch/cores/system",
|
"curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh -s -- --platform retroarch --dest /path/to/sdcard/retroarch/cores/system",
|
||||||
"",
|
"",
|
||||||
@@ -570,12 +571,14 @@ def generate_readme(db: dict, platforms_dir: str, db_path: str = "database.json"
|
|||||||
"&([scriptblock]::Create((irm https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1))) --check",
|
"&([scriptblock]::Create((irm https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1))) --check",
|
||||||
"```",
|
"```",
|
||||||
"",
|
"",
|
||||||
"The script auto-detects your platform, downloads only missing files, and verifies checksums.",
|
"The script opens a full-screen installer, driven with the arrow keys and Enter, or with a"
|
||||||
|
" controller on a handheld. It finds your setup and its BIOS folder, downloads only the missing"
|
||||||
|
" files and checks each one. It can also copy the BIOS files from your old SD card.",
|
||||||
f"Every option, and what the installer detects and writes, is on the [installer page]({SITE_URL}wiki/installer/#passing-options).",
|
f"Every option, and what the installer detects and writes, is on the [installer page]({SITE_URL}wiki/installer/#passing-options).",
|
||||||
"",
|
"",
|
||||||
"## Download BIOS packs",
|
"## Download BIOS packs",
|
||||||
"",
|
"",
|
||||||
"A pack holds everything its platform runs: its own BIOS list plus every file its emulator cores load. Pick your platform, download the ZIP, extract to the BIOS path. Each Download link is a page that keeps its address from one release to the next. The installer above does the same file by file. At a terminal it asks whether to install everything or to choose systems, cores and regions, and `--system`, `--core`, `--region` and `--target` make the same choice without questions. For a bare minimum, build your own pack below.",
|
"A pack holds everything its platform runs: its own BIOS list plus every file its emulator cores load. Pick your platform, download the ZIP, extract to the BIOS path. Each Download link is a page that keeps its address from one release to the next. The installer above does the same file by file. At a terminal it offers to install everything or to choose systems, cores and regions, and `--system`, `--core`, `--region` and `--target` make the same choice without questions. For a bare minimum, build your own pack below.",
|
||||||
"",
|
"",
|
||||||
"A pack over 2 GB comes in several parts (`Pack.part1of2.zip`,"
|
"A pack over 2 GB comes in several parts (`Pack.part1of2.zip`,"
|
||||||
" `Pack.part2of2.zip`), and every part is needed. Each part is an"
|
" `Pack.part2of2.zip`), and every part is needed. Each part is an"
|
||||||
|
|||||||
@@ -742,8 +742,11 @@ class ARefusalTheProbeDoesNotRaise(unittest.TestCase):
|
|||||||
install._DETECTION_REFUSED.clear()
|
install._DETECTION_REFUSED.clear()
|
||||||
self.addCleanup(install._DETECTION_REFUSED.clear)
|
self.addCleanup(install._DETECTION_REFUSED.clear)
|
||||||
quiet = mock.patch.object(install.Path, "exists", lambda self: False)
|
quiet = mock.patch.object(install.Path, "exists", lambda self: False)
|
||||||
with quiet, mock.patch.object(install._SETUP_SEARCH, "active", True, create=True), \
|
# What _detection_guarded sets while it looks for setups.
|
||||||
contextlib.redirect_stderr(io.StringIO()):
|
outer = getattr(install._SETUP_SEARCH, "active", False)
|
||||||
|
install._SETUP_SEARCH.active = True
|
||||||
|
self.addCleanup(setattr, install._SETUP_SEARCH, "active", outer)
|
||||||
|
with quiet, contextlib.redirect_stderr(io.StringIO()):
|
||||||
self.assertFalse(install._exists(target))
|
self.assertFalse(install._exists(target))
|
||||||
self.assertFalse(install._exists(base / "absent"))
|
self.assertFalse(install._exists(base / "absent"))
|
||||||
self.assertEqual(install.closed_folder(target), (closed, "Permission denied"))
|
self.assertEqual(install.closed_folder(target), (closed, "Permission denied"))
|
||||||
|
|||||||
+14
-6
@@ -197,8 +197,10 @@ file list is downloaded once and handed to each run.
|
|||||||
always come from one commit.
|
always come from one commit.
|
||||||
3. Prints the file count and total size, then a safety notice counting the
|
3. Prints the file count and total size, then a safety notice counting the
|
||||||
entries the collection cannot serve, how many of those the platform marks
|
entries the collection cannot serve, how many of those the platform marks
|
||||||
required, and why. At a terminal, it then offers to install everything or
|
required, and why. At a terminal, the
|
||||||
to choose systems, cores and regions (see below).
|
[full-screen interface](#the-full-screen-interface) then offers to install
|
||||||
|
everything or to choose systems, cores and regions, and `--plain` asks the
|
||||||
|
same as questions (see below).
|
||||||
4. Hashes what is already in the destination and reports how many entries are
|
4. Hashes what is already in the destination and reports how many entries are
|
||||||
present, verified, or present with the wrong contents.
|
present, verified, or present with the wrong contents.
|
||||||
5. Copies from this machine what it already holds: a file misplaced in the
|
5. Copies from this machine what it already holds: a file misplaced in the
|
||||||
@@ -551,7 +553,10 @@ counts them (`3 fixed from copies already in the BIOS folder`).
|
|||||||
## Choosing what to install
|
## Choosing what to install
|
||||||
|
|
||||||
By default the installer fetches everything the platform runs. At a terminal,
|
By default the installer fetches everything the platform runs. At a terminal,
|
||||||
after detection, it asks:
|
the plan screen of the [full-screen interface](#the-full-screen-interface)
|
||||||
|
offers **Install**, **Choose systems** and **Options**. With `--plain`, or where
|
||||||
|
the full screen cannot open (a terminal smaller than 40x12, `TERM=dumb`), the
|
||||||
|
same choice comes as questions after detection:
|
||||||
|
|
||||||
```
|
```
|
||||||
RetroArch: 8069 files, 6.5 GB.
|
RetroArch: 8069 files, 6.5 GB.
|
||||||
@@ -905,10 +910,13 @@ forced `--platform minui` stops and asks for the card's root as `--dest`, and a
|
|||||||
card (its `Bios/`) is refused with the root to name instead. On Android a forced `--platform retroarch` falls back to
|
card (its `Bios/`) is refused with the root to name instead. On Android a forced `--platform retroarch` falls back to
|
||||||
`<shared storage>/RetroArch/system` instead, a home directory there belonging
|
`<shared storage>/RetroArch/system` instead, a home directory there belonging
|
||||||
to Termux rather than to the frontend. Pass `--dest` to say where instead of
|
to Termux rather than to the frontend. Pass `--dest` to say where instead of
|
||||||
relying on that.
|
relying on that. When detection met a folder this user cannot open, under the
|
||||||
|
home folder or above the default, no default is taken: the frontend's own
|
||||||
|
configuration there may name another folder, so the run asks for `--dest`.
|
||||||
|
|
||||||
With nothing detected, the installer lists the platforms and asks. With several
|
With nothing detected, the setup screen lists the platforms to choose from,
|
||||||
detected, it asks which one. Both prompts need a terminal: piped into a script
|
and `--plain` gives the same list numbered. With several detected, the setup
|
||||||
|
screen lists each one, and `--plain` asks which. Both need a terminal: piped into a script
|
||||||
with no platform to install for, it prints the manual invocation, in the form
|
with no platform to install for, it prints the manual invocation, in the form
|
||||||
the run was started with (the one-line command for a one-liner user), and
|
the run was started with (the one-line command for a one-liner user), and
|
||||||
exits 1.
|
exits 1.
|
||||||
|
|||||||
Reference in new issue
Block a user