You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
devenv: Add Kani and extract shared installation scripts
Add Kani formal verification tool - a bounded model checker for Rust
that can verify safety properties and absence of undefined behavior.
Kani requires rustup because it bundles a specific nightly toolchain.
Also deduplicate the installation logic between c10s and debian
Containerfiles by extracting into shared shell scripts:
- fetch-tools.sh: Downloads bcvk and scorecard binaries
- install-rust.sh: Installs rustup/cargo system-wide to /usr/local
- install-kani.sh: Installs kani formal verification tool
Key changes:
- Add rustup symlink at $CARGO_HOME/bin/rustup (required for rustup's
self-update check which looks for itself there)
- Add new 'kani' build stage that compiles kani-verifier and runs setup
- Set KANI_HOME=/usr/local/kani for system-wide installation
- Copy kani bundle (compiler, libraries, CBMC) to final image
The kani version is renovate-managed via the kaniversion ARG.
Assisted-by: OpenCode (Claude Sonnet 4)
Signed-off-by: Colin Walters <walters@verbum.org>
0 commit comments