Updates (Post-Install-Patches)¶
Generisches Update-Framework für Rezepte mit Patches nach der Erstinstallation (z. B. ElAmigos-Updates).
Nicht gemeint: App-/Rezept-Bundle-Updates von Rezeptor (rezeptor-update.sh) — siehe LAUNCHER.md.
Vertrag (recipe.yml)¶
| Feld | Bedeutung |
|---|---|
fix_kind: none\|optional\|required |
Schalter „Rezept kann Updates“ |
update: update.sh |
Pflicht wenn fix_kind != none (Lint ERROR sonst) |
install_steps → apply_updates |
Optional: Updates schon bei der Installation anwenden |
Hook update.sh:
Erkennung (Hybrid)¶
- Unter der Install-Quelle (Auto): Ordner
updates/,Updates/oderupdate/mit nummerierten Unterordnern1 - …,2 - …— auch mit Zwischenordnerupdates/<Paketname>/1 - …/(ElAmigos) - Oder direkt unter dem Root: nummerierte Ordner
1 - … - Plus separates Feld Update / Fix im Quellen-Dialog (
RECIPE_UPDATE_ROOT/ AliasRECIPE_FIX_ROOT)
Sortierung: numerisch nach führender Zahl (1 vor 2 vor 10).
Jede Einheit: Ordner mit .exe (+ optional .bin) oder einzelne .exe.
GUI¶
- Installieren: Ziel = freier Ort der Software (kein Zwangspfad). Unter der Quelle erkennt der Dialog Updates (
updates/1 - …) und zeigt eine Statuszeile; Info-Button „?“ erklärt die Ordnerstruktur. Optionales Update-/Fix-Feld für separate Pakete. - Mehr → Update anwenden…: eigener Dialog nur für die Update-Quelle (wenn installiert und
fix_kind != none). - Mehr → Ziel verschieben…: gesamten Datenbaum (inkl. Prefix) auf einen anderen Ordner/eine andere Platte umziehen;
data_root.pathund Verknüpfungen werden angepasst. - Idempotenz: angewandte IDs in
recipe.envalsAPPLIED_UPDATES=1,2,…— erneutes Anwenden überspringt sie.
Core-API¶
Siehe CORE-API.md — Kurz:
| Funktion | Rolle |
|---|---|
recipe_updates::discover |
Geordnete ID\|PATH-Liste |
recipe_updates::roots_from_env |
Roots aus Env |
recipe_updates::apply_all |
Ausführen + State |
recipe_updates::status |
Log/Validate |
ISO großer Spiel-Packs: core/recipe-iso.sh — Mount (udisksctl), kein Voll-Extract.
Beispiel-Layout¶
Halo Campaign Evolved/ ← Quelle
Halo Campaign Evolved.iso
updates/
1 - Halo … update …/
*.exe
elamigos-1.bin
# oder separates Update-Root:
… update 29.07.2026/
1 - …
Referenz-Rezept: halo-campaign-evolved.