Thoth SDK
sdk v0.1.15 / proxy v0.3.4

Release Channels + Verification

Enterprise release distribution pathways for thoth and thothctl, including Homebrew, notarized PKG, signatures, SBOMs, and provenance verification.

Use this guide to choose the right thoth/v* release pathway and verify release authenticity before endpoint rollout.

Current stable release

  • Binary line: thoth/v0.3.4
  • Repository: atensecurity/thoth
brew tap atensecurity/tap
brew install thoth

Upgrade:

brew update
brew upgrade thoth

Validate:

thoth --version
thothctl --version

thothctl is installed with thoth; there is no separate thothctl formula.

Download thoth-macos-universal.pkg from the matching v* release in atensecurity/thoth.

Install locally:

sudo installer -pkg thoth-macos-universal.pkg -target /

Validate Apple trust:

pkgutil --check-signature thoth-macos-universal.pkg
spctl --assess --type install --verbose=4 thoth-macos-universal.pkg

Post-install validation:

thoth --version
thothctl --version
thoth health --json

Channel 3: Direct binaries (Linux/Windows/macOS automation)

Download platform-specific assets from atensecurity/thoth release v<version>:

  • thoth-linux-x86_64
  • thoth-linux-arm64
  • thoth-windows-x86_64.exe
  • thoth-macos-universal
  • matching thothctl-* binaries

Always verify checksums before install:

sha256sum -c checksums.sha256

Required release artifact verification

1) Sigstore keyless signatures

Each asset has:

  • <asset>.sig
  • <asset>.sigstore.json

Verify one asset (example for checksums.sha256):

cosign verify-blob \
  --bundle checksums.sha256.sigstore.json \
  checksums.sha256

Use sigstore-metadata.json from the same release to validate expected certificate identity and OIDC issuer.

2) SBOMs

Artifacts included:

  • sbom.cdx.json (CycloneDX)
  • sbom.spdx.json (SPDX)

Sanity check:

jq -e '.bomFormat == "CycloneDX"' sbom.cdx.json
jq -e '.spdxVersion | startswith("SPDX-")' sbom.spdx.json

3) Provenance + manifest

Artifacts included:

  • provenance.json
  • release-manifest.json

Sanity check:

jq -e '.provenanceType == "release-artifact-provenance"' provenance.json
jq -e '.artifacts | length > 0' release-manifest.json

4) GitHub attestations

Verify attestation for a downloaded asset:

gh attestation verify checksums.sha256 --repo atensecurity/thoth

MDM packaging recommendations

  • Jamf: deploy notarized PKG + managed config + setup policy.
  • Intune: deploy PKG/Win32 + managed config + setup script.
  • Kandji: deploy notarized PKG + custom script for config enforcement.
  • Santa: apply Team ID and designated requirement rules from santa-metadata.json.