119 lines
3.8 KiB
TOML
Executable File
119 lines
3.8 KiB
TOML
Executable File
# scuttle — Scuttle, a next-generation open source data sanitization framework
|
|
#
|
|
# Workspace manifest. Layered crate layout mirrors §14 of MANIFEST.md.
|
|
# Lower layers must never depend on higher layers (compile-time enforced
|
|
# by the crate graph; see docs/MANIFEST.md §5).
|
|
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"crates/scuttle-hash",
|
|
"crates/scuttle-prng",
|
|
"crates/scuttle-devices",
|
|
"crates/scuttle-media",
|
|
"crates/scuttle-methods",
|
|
"crates/scuttle-verify",
|
|
"crates/scuttle-audit",
|
|
"crates/scuttle-profiles",
|
|
"crates/scuttle-pdf",
|
|
"crates/scuttle-freespace",
|
|
"crates/scuttle-policy",
|
|
"crates/scuttle-benchmark",
|
|
"crates/scuttle-firmware",
|
|
"crates/scuttle-signing",
|
|
"crates/scuttle-smart",
|
|
"crates/scuttle-tpm",
|
|
"crates/scuttle-scheduler",
|
|
"crates/scuttle-tui",
|
|
"crates/scuttle-batch",
|
|
"crates/scuttle-jsonapi",
|
|
"crates/scuttle-security",
|
|
"crates/scuttle-conformance",
|
|
"crates/scuttle-core",
|
|
"crates/scuttle-cli",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "1.0.0"
|
|
edition = "2021"
|
|
rust-version = "1.75"
|
|
license = "GPL-2.0-or-later"
|
|
authors = ["Jeremy Anderson <scuttle@dcos.net>"]
|
|
repository = "https://dcos.net/scuttle"
|
|
homepage = "https://dcos.net"
|
|
|
|
[workspace.dependencies]
|
|
# Internal crates
|
|
scuttle-hash = { path = "crates/scuttle-hash" }
|
|
scuttle-prng = { path = "crates/scuttle-prng" }
|
|
scuttle-devices = { path = "crates/scuttle-devices" }
|
|
scuttle-media = { path = "crates/scuttle-media" }
|
|
scuttle-methods = { path = "crates/scuttle-methods" }
|
|
scuttle-verify = { path = "crates/scuttle-verify" }
|
|
scuttle-audit = { path = "crates/scuttle-audit" }
|
|
scuttle-profiles = { path = "crates/scuttle-profiles" }
|
|
scuttle-pdf = { path = "crates/scuttle-pdf" }
|
|
scuttle-freespace = { path = "crates/scuttle-freespace" }
|
|
scuttle-policy = { path = "crates/scuttle-policy" }
|
|
scuttle-benchmark = { path = "crates/scuttle-benchmark" }
|
|
scuttle-firmware = { path = "crates/scuttle-firmware" }
|
|
scuttle-signing = { path = "crates/scuttle-signing" }
|
|
scuttle-smart = { path = "crates/scuttle-smart" }
|
|
scuttle-tpm = { path = "crates/scuttle-tpm" }
|
|
scuttle-scheduler = { path = "crates/scuttle-scheduler" }
|
|
scuttle-tui = { path = "crates/scuttle-tui" }
|
|
scuttle-batch = { path = "crates/scuttle-batch" }
|
|
scuttle-jsonapi = { path = "crates/scuttle-jsonapi" }
|
|
scuttle-security = { path = "crates/scuttle-security" }
|
|
scuttle-conformance= { path = "crates/scuttle-conformance" }
|
|
scuttle-core = { path = "crates/scuttle-core" }
|
|
scuttle-cli = { path = "crates/scuttle-cli" }
|
|
|
|
# External crates (pinned to keep builds reproducible — see MANIFEST §11)
|
|
sha2 = "0.10"
|
|
sha3 = "0.10"
|
|
blake2 = "0.10"
|
|
blake3 = "1.5"
|
|
chacha20 = "0.9"
|
|
cipher = { version = "0.4", features = ["dev"] }
|
|
aes = "0.8"
|
|
ctr = "0.9"
|
|
hex = "0.4"
|
|
uuid = { version = "1.10", features = ["v4", "serde"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
toml = "0.8"
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
clap = { version = "4.5", features = ["derive", "wrap_help"] }
|
|
anyhow = "1"
|
|
thiserror = "1"
|
|
log = "0.4"
|
|
env_logger = "0.11"
|
|
nix = { version = "0.29", features = ["fs", "ioctl", "user"] }
|
|
libc = "0.2"
|
|
# v0.3 modern providers:
|
|
salsa20 = "0.10"
|
|
ascon-aead= "0.5"
|
|
# v0.5 signing + exporters:
|
|
ed25519-dalek = { version = "2.1", features = ["rand_core"] }
|
|
rand = "0.8"
|
|
rand_core = "0.6"
|
|
serde_yaml = "0.9"
|
|
# v0.7 TUI + scheduler + batch + JSON API:
|
|
ratatui = "0.28"
|
|
crossterm = "0.28"
|
|
# v0.9 security hardening:
|
|
zeroize = { version = "1.8", features = ["alloc"] }
|
|
subtle = "2.5"
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = "thin"
|
|
codegen-units = 1
|
|
debug = false
|
|
strip = true
|
|
|
|
[profile.release-debug]
|
|
inherits = "release"
|
|
debug = true
|
|
strip = false
|