temper binarytempercurl -fsSL https://raw.githubusercontent.com/tasker-systems/temper/main/scripts/install/install.sh | shirm https://raw.githubusercontent.com/tasker-systems/temper/main/scripts/install/install.ps1 | iexIf PowerShell warns about the execution policy, run: powershell -ExecutionPolicy Bypass -c "irm https://raw.githubusercontent.com/tasker-systems/temper/main/scripts/install/install.ps1 | iex"
.tar.gz on macOS/Linux, .zip ontemper, the bundled libonnxruntime, LICENSE)~/.local/share/temper/ (respects $XDG_DATA_HOME)%LOCALAPPDATA%\Programs\temper\temper entry on your PATH:~/.local/bin/temper → the extracted binarytemper[.exe], a bundled libonnxruntime for the localtemper-v<ver>-<triple>.manifest.jsontemper binary (and the ONNX Runtime libraryinstall.sh verifies every extracted file against this manifest before~/.local/share/temper/.temper-manifest.json) only after a successful,temper version --verify (below) has something to checkinstall.sh is served from main, unversioned, but it installs versioned.sha256; there is no manifest to fetch..sha256 — that check is never skipped — so thetemper version
--verify will report unverifiable afterwards.--version v0.2.6 permanently, and it would buyinstall.sh does not verify the release attestation (that lives intemper update), so the manifest it fetches is uploaded by the same credentialcreate-github-release.sh), before the release is created. So "no manifest"temper — install.sh, temper version
--verify, temper update — reports one of three verdicts, never a bare| Verdict | Meaning |
|---|---|
verified | Every file matched the manifest. |
mismatch | At least one file disagreed — names the file(s). |
unverifiable | There is nothing to check against, or the check itself could not run. |
unverifiable is not mismatch. A cargo install build has no manifest--verify --online means the check nevertemper never collapses the two.temper version --verify — offlinetemper version --verifyverified result here as "this install is internallytemper version --verify --online — the one that carries provenance weighttemper version --verify --onlinetemper updatetemper, and it is stated in full, with the two other trusts thatunverifiable, never a false verified.temper version
--verify works offline from then on. This is not the same as manufacturing--verify reports mismatch), not something to quietly repair.temper update runs the installer that was embedded in the running binary,install.sh: the archivetemper version --verify then reports unverifiable — correctly, sincetemper version --verify --onlinetemper update maintain it. This affects only the one upgrade hop outgh CLI, with no dependency on temper or itsgh attestation verify temper-v0.3.0-aarch64-apple-darwin.tar.gz --repo tasker-systems/tempertemper's own verification code at all — it goes straight totemper's own check doesn't: gh isinstall.ps1) verify the archive checksum but write notemper version --verify on Windows therefore always reportsunverifiable — it can never report verified, because there is nothing# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/tasker-systems/temper/main/scripts/install/install.sh | sh -s -- --version v0.1.0# Windows
$script = irm https://raw.githubusercontent.com/tasker-systems/temper/main/scripts/install/install.ps1
& ([scriptblock]::Create($script)) -Version v0.1.0sh?curl -fsSL -o /tmp/install-temper.sh https://raw.githubusercontent.com/tasker-systems/temper/main/scripts/install/install.sh
less /tmp/install-temper.sh # inspect
sh /tmp/install-temper.sh # runtemper updatetemper update makes attestation verificationinstall.sh --archive for the atomic swap — so the objecttemper update refuses on a cargo
install build (nothing safe to swap) and on Windows (seerm -rf "${XDG_DATA_HOME:-$HOME/.local/share}/temper"
rm -f "${XDG_BIN_HOME:-$HOME/.local/bin}/temper"Remove-Item -Recurse -Force "$env:LOCALAPPDATA\Programs\temper"
# Then manually remove the install dir from your user PATH via:
# rundll32.exe sysdm.cpl,EditEnvironmentVariablescargo install:git clone https://github.com/tasker-systems/temper
cd temper
cargo install --path crates/temper-cli --locked --features embed,extractbrew install onnxruntime suffices.~/.local/bin. Add it:# bash
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc
# zsh
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.zshrc
# fish
fish_add_path ~/.local/bintemper.exe binary is currently unsigned. On first run, you may see alibonnxruntime next to the temper binary for thetemper --version
ls -la ~/.local/share/temper/ # macOS / Linux
dir %LOCALAPPDATA%\Programs\temper # Windowstemper CLI and (by default) leave ittemper init and choose