apply_update's binary swap called `sudo install -m 0755 src /usr/local/bin/archipelago`. install opens the destination for write with O_TRUNC; the kernel returns ETXTBSY (exit 1) when the path is a currently-running executable, which it always is during apply because apply_update is called by the archipelago RPC handler — running as archipelago itself. Every previous "Failed to apply update" was this one root cause; the manual sideload path only worked because we stopped the service first. rename() doesn't modify the file it replaces — it repoints the path at a new inode while the old inode stays alive for any process that has it mapped. `mv` uses rename(). Switched to `sudo mv` (with prior chmod+chown on the staging file) so the swap is atomic and tolerant of the running binary. Frontend tarball byte-identical to v1.7.7-alpha; only the binary version string changes. Artefacts: archipelago 2753daec…48094d 40377648 archipelago-frontend-1.7.8-alpha.tar.gz 4fb79664…0172e9 76984615 (reused) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
26 lines
1.2 KiB
JSON
26 lines
1.2 KiB
JSON
{
|
|
"version": "1.7.8-alpha",
|
|
"release_date": "2026-04-20",
|
|
"changelog": [
|
|
"Install Update finally works end-to-end over the air. The installer was trying to overwrite the running backend binary with a tool that fails on in-use files (ETXTBSY) — swapped it for an atomic rename, which the kernel allows on a live executable. Every previous 'Failed to apply update' attempt was this one root cause."
|
|
],
|
|
"components": [
|
|
{
|
|
"name": "archipelago",
|
|
"current_version": "1.7.7-alpha",
|
|
"new_version": "1.7.8-alpha",
|
|
"download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.8-alpha/archipelago",
|
|
"sha256": "2753daec113bb4fbbc2a68148ef1579524a26707733eea410faf400b9948094d",
|
|
"size_bytes": 40377648
|
|
},
|
|
{
|
|
"name": "archipelago-frontend-1.7.8-alpha.tar.gz",
|
|
"current_version": "1.7.7-alpha",
|
|
"new_version": "1.7.8-alpha",
|
|
"download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.8-alpha/archipelago-frontend-1.7.8-alpha.tar.gz",
|
|
"sha256": "4fb796643cc9dc8469078ca3392f7cc5541071f6849979922b3259e5f20172e9",
|
|
"size_bytes": 76984615
|
|
}
|
|
]
|
|
}
|