[package]
edition = "2021"
rust-version = "1.74"
name = "nucleus-container"
version = "0.3.2"
build = false
exclude = [
"formal/**",
"intent/**",
"spec/**",
"nix/**",
"flake.nix",
"flake.lock",
".github/**",
".claude/**",
".envrc",
"CONTRIBUTING.md",
"IMPLEMENTATION_SUMMARY.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Extremely lightweight Docker alternative for agents and production services — isolated execution using cgroups, namespaces, seccomp, Landlock, and gVisor"
homepage = "https://github.com/wiggum-cc/nucleus"
documentation = "https://docs.rs/nucleus-container"
readme = "README.md"
keywords = [
"container",
"isolation",
"cgroups",
"namespaces",
"gvisor",
]
categories = [
"command-line-utilities",
"os::linux-apis",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/wiggum-cc/nucleus"
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/nucleus-{ target }{ archive-suffix }"
bin-dir = "nucleus-{ target }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"
[lib]
name = "nucleus"
path = "src/lib.rs"
[[bin]]
name = "nucleus"
path = "src/main.rs"
[[example]]
name = "resource_limits"
path = "examples/resource_limits.rs"
[[example]]
name = "simple_container"
path = "examples/simple_container.rs"
[[example]]
name = "with_context"
path = "examples/with_context.rs"
[[test]]
name = "integration_checkpoint"
path = "tests/integration_checkpoint.rs"
[[test]]
name = "integration_container_config"
path = "tests/integration_container_config.rs"
[[test]]
name = "integration_filesystem"
path = "tests/integration_filesystem.rs"
[[test]]
name = "integration_gvisor"
path = "tests/integration_gvisor.rs"
[[test]]
name = "integration_lifecycle"
path = "tests/integration_lifecycle.rs"
[[test]]
name = "integration_network"
path = "tests/integration_network.rs"
[[test]]
name = "integration_resources"
path = "tests/integration_resources.rs"
[[test]]
name = "integration_security"
path = "tests/integration_security.rs"
[[test]]
name = "model_based_filesystem"
path = "tests/model_based_filesystem.rs"
[[test]]
name = "model_based_gvisor"
path = "tests/model_based_gvisor.rs"
[[test]]
name = "model_based_isolation"
path = "tests/model_based_isolation.rs"
[[test]]
name = "model_based_resources"
path = "tests/model_based_resources.rs"
[[test]]
name = "model_based_security"
path = "tests/model_based_security.rs"
[[test]]
name = "model_based_system"
path = "tests/model_based_system.rs"
[[test]]
name = "tla_filesystem"
path = "tests/tla_filesystem.rs"
[[test]]
name = "tla_isolation"
path = "tests/tla_isolation.rs"
[[test]]
name = "tla_resources"
path = "tests/tla_resources.rs"
[[test]]
name = "tla_security"
path = "tests/tla_security.rs"
[[test]]
name = "tla_system"
path = "tests/tla_system.rs"
[[bench]]
name = "concurrency"
path = "benches/concurrency.rs"
harness = false
[[bench]]
name = "container_runtime"
path = "benches/container_runtime.rs"
harness = false
[[bench]]
name = "context_populator"
path = "benches/context_populator.rs"
harness = false
[[bench]]
name = "resource_config"
path = "benches/resource_config.rs"
harness = false
[[bench]]
name = "seccomp_filter"
path = "benches/seccomp_filter.rs"
harness = false
[dependencies.caps]
version = "0.5"
[dependencies.clap]
version = "4"
features = ["derive"]
[dependencies.dirs]
version = "5"
[dependencies.hex]
version = "0.4"
[dependencies.landlock]
version = "0.4"
[dependencies.libc]
version = "0.2"
[dependencies.nix]
version = "0.31"
features = [
"process",
"sched",
"mount",
"user",
"signal",
"fs",
"hostname",
]
[dependencies.seccompiler]
version = "0.5"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.11"
[dependencies.tempfile]
version = "3"
[dependencies.thiserror]
version = "2"
[dependencies.toml]
version = "0.8"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.zeroize]
version = "1"
features = ["zeroize_derive"]
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.itf]
version = "0.4"
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.tla-connect]
version = "0.0.4"