Bundle selection is now architecture-aware, not just codename-aware, and the no-compatible-bundle failure names the host architecture. Merged into the fpagent-installer spec and archived the change.
1.7 KiB
1.7 KiB
Tasks
- 1. Hosted installer (
tools/public/fpagent/install.sh): resolve the host architecture fromuname -m(x86_64/i386, else die) before any download, and pass it to the asset picker. Verify:bash -n install.sh; a stubbedunameprintingi686reaches the metadata fetch, and one printingaarch64dies without fetching. - 2. Hosted installer: pick
-ubuntu-<codename>-<arch>.tar.gzfirst, then-linux-<arch>.tar.gz, and make the "no compatible bundle" message name the host architecture. Verify: with a release offering onlyfpagent-<hash>-linux-i386.tar.gz, a stubbed i686 host requests that asset; with only-linux-x86_64, the same host fails and installs nothing. - 3. Hosted installer: derive the version from the asset name for every
supported architecture (
linux-x86_64,linux-i386,ubuntu-<codename>-x86_64). Verify: an i386 asset name yields the git hash, not an empty string. - 4. Hosted installer: correct the help text — service and self-update are
on by default; list
--no-service,--no-updates,--update-base, and keep the note that options are forwarded to the bundle installer. Verify:install.sh --helpmentions the three flags and no longer implies--enable-serviceis required. - 5. Tests (
tools/test/fpagent-install.test.js): stubunameonPATHand assert i386 selection, cross-architecture rejection, and i386 version parsing. Verify:node --test tools/test/fpagent-install.test.jspasses. - 6. Docs (
README.md): installer section notes x86_64 and i386 bundles and the on-by-default service/self-update. Verify: reading the section, no flag claims contradictinstall.sh --help.