- Add workspace Cargo.toml with shared dependencies - Remove .gitmodules file - Remove components/ directory (will be replaced with subtrees) - Prepare for workspace-based component management
55 lines
1.3 KiB
TOML
55 lines
1.3 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"components/zinit",
|
|
"components/mycelium",
|
|
"components/rfs",
|
|
]
|
|
|
|
[workspace.dependencies]
|
|
# Common dependencies used across Zero-OS components
|
|
tokio = { version = "1.0", features = ["full"] }
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
clap = { version = "4.0", features = ["derive"] }
|
|
anyhow = "1.0"
|
|
thiserror = "1.0"
|
|
log = "0.4"
|
|
env_logger = "0.10"
|
|
futures = "0.3"
|
|
async-trait = "0.1"
|
|
|
|
# Networking
|
|
reqwest = { version = "0.11", features = ["json"] }
|
|
hyper = { version = "0.14", features = ["full"] }
|
|
tonic = { version = "0.10", features = ["default"] }
|
|
|
|
# Crypto and encoding
|
|
base64 = "0.21"
|
|
hex = "0.4"
|
|
sha2 = "0.10"
|
|
rand = "0.8"
|
|
|
|
# System and filesystem
|
|
nix = "0.27"
|
|
libc = "0.2"
|
|
tempfile = "3.0"
|
|
|
|
# Async runtime and utilities
|
|
parking_lot = "0.12"
|
|
dashmap = "5.0"
|
|
uuid = { version = "1.0", features = ["v4"] }
|
|
|
|
[profile.release]
|
|
# Optimize for size and performance
|
|
opt-level = "z" # Optimize for size
|
|
lto = true # Link-time optimization
|
|
codegen-units = 1 # Better optimization
|
|
panic = "abort" # Smaller binaries
|
|
strip = true # Remove symbols
|
|
|
|
[profile.dev]
|
|
# Faster debug builds
|
|
opt-level = 1 # Some optimization for faster debug builds
|
|
debug = true # Debug info
|
|
split-debuginfo = "unpacked" # Faster linking on macOS/Windows |