Updates (post-install patches)¶
Generic update framework for recipes that apply patches after the first install (e.g. ElAmigos updates).
Not covered: Rezeptor app/recipe-bundle updates (rezeptor-update.sh) — see LAUNCHER.md.
Contract (recipe.yml)¶
| Field | Meaning |
|---|---|
fix_kind: none\|optional\|required |
Enables updates for the recipe |
update: update.sh |
Required when fix_kind != none (lint ERROR otherwise) |
install_steps → apply_updates |
Optional: apply updates during install |
Hook update.sh:
Discovery (hybrid)¶
- Under the install source (auto): folder
updates/,Updates/, orupdate/with numbered children1 - …,2 - …— including a wrapperupdates/<pack name>/1 - …/(ElAmigos) - Or numbered folders
1 - …directly under the root - Plus optional Update / Fix field in the source dialog (
RECIPE_UPDATE_ROOT/ aliasRECIPE_FIX_ROOT)
Order: numeric by leading integer (1 before 2 before 10).
Each unit: directory with .exe (+ optional .bin) or a single .exe.
GUI¶
- Install: Target = free location for the software (no forced path). The dialog detects updates under the source (
updates/1 - …) and shows a status line; the “?” info button explains the layout. Optional Update/Fix field for separate packs. - More → Apply update…: dedicated dialog for the update source only (when installed and
fix_kind != none). - More → Move target…: move the whole data tree (including prefix) to another folder/disk; updates
data_root.pathand shortcuts. - Idempotency: applied IDs in
recipe.envasAPPLIED_UPDATES=1,2,…— re-runs skip them.
Core API¶
See CORE-API.md — short:
| Function | Role |
|---|---|
recipe_updates::discover |
Ordered ID\|PATH list |
recipe_updates::roots_from_env |
Roots from env |
recipe_updates::apply_all |
Run + state |
recipe_updates::status |
Log/validate |
Large game ISOs: core/recipe-iso.sh — mount (udisksctl), no full extract.
Example layout¶
Halo Campaign Evolved/ ← source
Halo Campaign Evolved.iso
updates/
1 - Halo … update …/
*.exe
elamigos-1.bin
# or separate update root:
… update 29.07.2026/
1 - …
Reference recipe: halo-campaign-evolved.