diff --git a/tvix/README.md b/tvix/README.md index e06b59bef..a00032b91 100644 --- a/tvix/README.md +++ b/tvix/README.md @@ -6,7 +6,22 @@ are interested in people who would like to help us review designs, brainstorm and describe requirements that we may not yet have considered. -## Rust projects +## Building the CLI + +If you are in a full checkout of the TVL depot, you can simply run `mg build` +in the `cli` directory (or `mg build //tvix/cli` from anywhere in the repo). +The `mg` command is found in `/tools/magrathea`. + +**Important note:** We only use and test Nix builds of our software +against Nix 2.3. There are a variety of bugs and subtle problems in +newer Nix versions which we do not have the bandwidth to address, +builds in newer Nix versions may or may not work. + +The CLI can also be built with standard Rust tooling (i.e. `cargo build`), +as long as you are in a shell with the right dependencies (provided by `mg +shell //tvix:shell`). + +## Rust projects, crate2nix Some parts of Tvix are written in Rust. To simplify the dependency management on the Nix side of these builds, we use `crate2nix` in a diff --git a/tvix/eval/README.md b/tvix/eval/README.md index 1f19ceb0e..04bc6c3eb 100644 --- a/tvix/eval/README.md +++ b/tvix/eval/README.md @@ -15,19 +15,12 @@ somewhat, a lot of components are still changing rapidly. Please contact [TVL](https://tvl.fyi) with any questions you might have. -## Building the evaluator +## Building tvix-eval -If you are in a full checkout of the TVL depot, you can simply run `mg -build` in this directory (or `mg build //tvix/eval` from anywhere in -the repo). The `mg` command is found in `/tools/magrathea`. +Please check the `README.md` one level up for instructions on how to build this. -**Important note:** We only use and test Nix builds of our software -against Nix 2.3. There are a variety of bugs and subtle problems in -newer Nix versions which we do not have the bandwidth to address, -builds in newer Nix versions may or may not work. - -The evaluator can also be built with standard Rust tooling (i.e. -`cargo build`). +The evaluator itself can also be built with standard Rust tooling (i.e. `cargo +build`). If you would like to clone **only** the evaluator and build it directly with Rust tooling, you can do: