tatara-vm 0.2.310

Typed VM definitions — Darwin-hosted Linux guests for tatara-os, authored in tatara-lisp, emitted as vfkit/qemu config
Documentation
[package]
name = "tatara-vm"
description = "Typed VM definitions — Darwin-hosted Linux guests for tatara-os, authored in tatara-lisp, emitted as vfkit/qemu config"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true

[dependencies]
tatara-lisp = { path = "../tatara-lisp" , version = "0.3" }
tatara-lisp-derive = { path = "../tatara-lisp-derive" , version = "0.3" }
tatara-nix = { path = "../tatara-nix" , version = "0.2.65" }
tatara-os = { path = "../tatara-os" , version = "0.2.65" }
tatara-ui = { path = "../tatara-ui" , version = "0.2.65" }
tatara-wasm = { path = "../tatara-wasm" , version = "0.2.65" }
tatara-build-remote = { path = "../tatara-build-remote" , version = "0.2.65" }

# Typed-dispatcher catalog integration
# (theory/UNIFIED-COMPUTING-MODEL.md §VI).
gen-platform = "0.1"
gen-types = "0.1"

# Backend-neutral máquina VM lifecycle trait (theory/MAQUINA.md §X M0). The
# core (MaquinaEngine trait, VmShape, NetworkMode, ShareMount, …) is
# host-agnostic and dependency-light — always present. The heavy,
# macOS-only FFI backends (tateru/libkrun, kasou/VZ) are pulled in only via
# the `engines` feature below, mirroring maquina-engine's own
# tateru-backend/kasou-backend split.
maquina-engine = { version = "0.1", optional = true }

serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "2"
blake3 = "1"

[features]
# Rust-native, in-process VmEngine backends (zero shell-out). macOS-only —
# turns on maquina-engine's own backend features. Without this feature,
# `engine::engine_for` still exists but always reports
# `EngineSelectError::Unavailable`, keeping the default build
# dependency-light (no tateru/kasou FFI).
engines = ["dep:maquina-engine", "maquina-engine/tateru-backend", "maquina-engine/kasou-backend"]

[[bin]]
name = "tatara-boot-gen"
path = "src/bin/tatara-boot-gen.rs"

[[bin]]
name = "tatara-vmctl"
path = "src/bin/tatara-vmctl.rs"

[target.'cfg(unix)'.dependencies]
libc = "0.2"