Skip to content

xport update

Terminal window
xport update # check, download, verify, install
xport update --check # only report, never download
xport update --download-only # verified file in /tmp, no install

Compares the running version against the signed release manifest (update.feed_url, default https://releases.xport.dev/version.json). When a newer release exists, the command downloads the binary for your platform and verifies it before anything is written:

  1. The manifest points at checksums.txt and its Ed25519 signature.
  2. The signature is verified against the public key compiled into the binary (key rotation therefore always ships with a release you already trusted).
  3. The downloaded binary must match its SHA-256 entry in the signed checksums.

Any failure aborts — nothing touches your installation.

When the checks pass, xport update swaps the running binary automatically (no sudo install dance):

  • macOS / Linux — the new binary replaces the old one in place; running xport processes keep their version until they exit, new invocations run the update. The previous binary is kept next to it as xport.bak-<version> for a quick rollback.
  • Windows — the running binary is locked by the OS, so a small helper finishes the swap after the command exits.

If the install directory isn’t writable (e.g. /usr/local/bin without root), the verified binary is kept in a temp file and the command prints the sudo install … line instead of guessing.

Option Description
--check Only check and report, never download
--download-only Download and verify to a temp file, never install
-h, --help Show help for update
Code Meaning
0 Check completed or update installed
1 No feed configured, or the feed could not be reached