GUI installer v2

This commit is contained in:
2026-03-21 22:10:13 +02:00
parent 18ab62a7c5
commit 3db6de2d2c
22 changed files with 9348 additions and 72 deletions

128
README.md
View File

@@ -285,6 +285,130 @@ JiboAutoMod/
- devsparx for the T124 port
- The Jibo preservation community
## License
CLI Arguments
This page documents the CLI flags for the two main tools:
This tool is provided as-is for educational and preservation purposes. See individual component licenses in the Shofel directory.
../jibo_automod.py (installer/mod tool)
../jibo_updater.py (OS updater)
If youre using launchers (.sh/.bat), they forward all arguments through.
jibo_automod.py
Modes (mutually exclusive)
(no mode flag)
Full mod workflow (full eMMC dump, extract/modify/write /var).
--dump-only
Only dump eMMC; dont modify anything.
--write-partition FILE
Write an already-prepared partition image to eMMC.
You must tell it where to write using --start-sector.
--mode-json-only
Fast path:
read GPT (small)
read /var only (~500MB)
modify /var/jibo/mode.json
write back either a patch (default) or full /var
Common options
--dump-path FILE
Use an existing dump file instead of reading from the device.
--output FILE / -o FILE
Output file for dumps.
--start-sector HEX
Start sector for --write-partition.
Parsed with base autodetect (0x... works).
Default is 0x7E9022 (but the full/fast workflows usually compute the start sector from GPT).
--force-dump
Re-dump even if a dump exists.
--rebuild-shofel
Force rebuilding ShofEL (make clean then make).
--skip-detection
Skip USB “is Jibo connected” checks.
--no-verify
Skip verification read-back.
Fast mode options
--full-var-write
Only meaningful with --mode-json-only.
If set: write the full /var partition back (slower).
If not set: compute sector diffs and only write changed ranges (faster).
Examples
Full mod:
python3 jibo_automod.py
Dump only:
python3 jibo_automod.py --dump-only -o my_dump.bin
Use existing dump:
python3 jibo_automod.py --dump-path jibo_work/jibo_full_dump.bin
Fast mode:
python3 jibo_automod.py --mode-json-only
Write a prepared partition:
python3 jibo_automod.py --write-partition var_partition.bin --start-sector 0x7E9022
jibo_updater.py
The updater assumes you already have SSH access to the robot.
Required
--ip <host> (alias: --host)
IP or hostname of your Jibo.
Connection
--user <name> (default root)
--password <pass> (default jibo)
--ssh-timeout <seconds> (default 15)
Release selection
--releases-api <url>
API endpoint for Gitea releases.
--stable
Ignore prereleases.
--tag <tag>
Install a specific tag instead of “latest”.
Archive layout
--build-path <relative/path>
If the updater cant find the build/ folder automatically, specify where it is inside the extracted archive.
Safety / UX
--state-file <path>
Where it remembers the last applied version per host.
--force
Re-download and re-install even if the local state says youre already on that version.
--yes
Dont prompt for confirmation.
--dry-run
Download/extract + connect, but dont upload files and dont touch mode.json.
Returning to normal mode
--return-normal
After update, set /var/jibo/mode.json back to normal (no prompt).
--no-return-normal
Never prompt and never change mode back.
Examples
Update to latest:
python3 jibo_updater.py --ip 192.168.1.50
Stable only:
python3 jibo_updater.py --ip 192.168.1.50 --stable
Specific tag:
python3 jibo_updater.py --ip 192.168.1.50 --tag v3.3.0
Dry run:
python3 jibo_updater.py --ip 192.168.1.50 --dry-run