860 B
860 B
Bundle Archive v1
Downloaded updates are bundle archives rather than installer executables.
Archive requirements:
- top-level
bundle.json - payload files stored relative to the install root
- no absolute paths
- no
..path traversal - provider checksum must match the downloaded archive before staging
bundle.json:
{
"schemaVersion": 1,
"entrypoint": "MyApp.exe",
"files": [
{ "path": "MyApp.exe", "mode": "0755" },
{ "path": "resources/config.json", "mode": "0644" }
]
}
Install roots:
- macOS: the
.appbundle directory - Windows: the directory containing the running
.exe - Linux: the directory containing the running binary
The helper-mode apply flow stages the archive, validates bundle.json, backs up existing files, copies payload files into the install root, and relaunches the app using entrypoint.