Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,9 @@ Kettle is available from GitHub Releases or from source via Cargo, the Rust buil
### From GitHub Releases

```bash
curl -LO https://github.com/lunal-dev/kettle/releases/latest/download/kettle
curl -LO https://github.com/lunal-dev/kettle/releases/latest/download/kettle-installer.sh
# don't forget to read the source before you run random scripts from the internet :)
bash kettle-installer.sh
```

### From source
Expand All @@ -62,6 +64,17 @@ apt-get install -y libtss2-dev
cargo install --features attest --git https://github.com/lunal-dev/kettle
```

### Reproducible build

Every release of Kettle includes a full reproducible binary, with support for attestation, built inside a fully reproducible environment in Docker. Download and use the fully reproducible binary by running:

```bash
curl -LO https://github.com/lunal-dev/kettle/releases/latest/download/kettle-reproducible-x86_64-unknown-linux-gnu.tar.xz
tar xfvj kettle-reproducible-x86_64-unknown-linux-gnu.tar.xz
chmod +x kettle
./kettle attest
```

## Using Kettle

### Build anywhere
Expand Down Expand Up @@ -126,3 +139,5 @@ Planned toolchain support includes:
Use `cargo nextest run` to run the tests for any platform.

In a TEE, use `cargo nextest run --ignored all` to run the full integration tests that checkout Rust and Nix projects, build them, attest them, and verify them.

Run `bin/build-reproducible` to use Docker images provided by the StageX project to build a byte-for-byte reproducible build of Kettle into `./target/reproducible/kettle`.
File renamed without changes.