3196fe0143
There's various bits and pieces in tvix-cli that use both the store and evaluator, as well as nix-compat. For example, builtins.derivation, as well as the reference scanning implementation. This "glue code" currently isn't accessible from anywhere else, but it'd be very useful if it were. Move it out into a `glue` crate, and make `tvix-cli` a consumer of it. All the KnownPaths setup and passing around, as well as NIX_PATH handling is also something that should probably be moved into the glue crate as well, but that's something left for a future CL. Change-Id: I080ed3d1825ab23790666486840f301f00856277 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9908 Autosubmit: flokli <flokli@flokli.de> Tested-by: BuildkiteCI Reviewed-by: raitobezarius <tvl@lahfa.xyz>
38 lines
1.1 KiB
TOML
38 lines
1.1 KiB
TOML
# This Cargo file is a workspace configuration as per
|
|
# https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html
|
|
#
|
|
# We add this file to get a coherent set of dependencies across Tvix
|
|
# crates by sharing a Cargo.lock. This is necessary because of the
|
|
# currently limited support for Rust builds in Nix.
|
|
#
|
|
# Note that this explicitly does *not* mean that //tvix should be
|
|
# considered "one project": This is simply a workaround for a
|
|
# technical limitation and it should be our aim to remove this
|
|
# workspace file and make the subprojects independent.
|
|
#
|
|
# Note also that CI targets for actual projects should *not* be tied
|
|
# to //tvix, but to its subprojects. A potential file at
|
|
# //tvix/default.nix should likely *not* expose anything other than
|
|
# extra steps or other auxiliary targets.
|
|
|
|
[workspace]
|
|
resolver = "2"
|
|
|
|
members = [
|
|
"castore",
|
|
"cli",
|
|
"eval",
|
|
"eval/builtin-macros",
|
|
"glue",
|
|
"nix_cli",
|
|
"nix-compat",
|
|
"serde",
|
|
"store",
|
|
]
|
|
|
|
# Add a profile to all targets that enables release optimisations, but
|
|
# retains debug symbols. This is great for use with
|
|
# benchmarking/profiling tools.
|
|
[profile.release-with-debug]
|
|
inherits = "release"
|
|
debug = true
|