Skip to content

docs: toolchain & setup for Linux/macOS/Windows — core + formal-verification track#230

Merged
hartsock merged 1 commit into
mainfrom
docs/toolchain-setup
Jul 15, 2026
Merged

docs: toolchain & setup for Linux/macOS/Windows — core + formal-verification track#230
hartsock merged 1 commit into
mainfrom
docs/toolchain-setup

Conversation

@hartsock

Copy link
Copy Markdown
Member

What this PR does

  • Adds docs/TOOLCHAIN.md: setup instructions for Linux (apt), macOS
    (brew), Windows (choco)
    covering:
    • §1 Core toolchain — git/rustup/just/cargo-llvm-cov, hook install,
      the brew-rust-vs-rustup conflict warning (lifted from Charon's own
      docs), Windows POSIX-shell note (Git Bash or WSL2).
    • §2 Formal track — elan/Lean (pin auto-fetched from
      lean-toolchain), opam/OCaml 5 switch + the Aeneas dependency set,
      Charon via make setup-charon (the pin file owns the commit; no
      hand-cloning), Aeneas build, and an end-to-end smoke checklist.
    • §0 Version pins — points at the pin files as source of truth
      (charon rust-toolchain.toml, aeneas charon-pin,
      backends/lean/lean-toolchain) instead of hardcoding versions that
      would drift.
  • Honest verified-state line: Linux exercised (§1 + Lean/rustup); macOS and
    Windows columns follow upstream documentation and are marked unexecuted.
    WSL2 is the recommended path for the OCaml leg on Windows.

Test plan

Out of scope

Refs #225. Companion to #229 (the obligations this toolchain discharges).

)

Core contributor setup (rustup/just/llvm-cov + hooks, with the
brew-rust conflict warning from Charon's docs) and the formal-verification
track (elan/Lean, opam/OCaml 5, Charon via make setup-charon, Aeneas
build), per-OS tables assuming apt/brew/choco. Version pins point at the
pin FILES as source of truth rather than hardcoding. Honest verified-state
line: Linux exercised; macOS/Windows columns follow upstream docs and are
marked unexecuted. WSL2 recommended for the OCaml leg on Windows.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@hartsock hartsock added the documentation Improvements or additions to documentation label Jul 15, 2026
@hartsock
hartsock merged commit ed892c2 into main Jul 15, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant