The root package becomes a virtual workspace: `crates/ecr` holds the library (package name `ecr`) and `crates/ecr-cli` the command line front-end, which keeps installing the `ecr` binary. No behavior change. The library must not depend on CLI types, so mount::setup_mounts now takes the `no_bind` flag instead of a `&Args`.
29 lines
693 B
TOML
29 lines
693 B
TOML
[package]
|
|
name = "ecr-cli"
|
|
description = "Enter chroot environments with Linux namespaces"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
license.workspace = true
|
|
authors.workspace = true
|
|
|
|
# The installed binary keeps the `ecr` name even though the CLI package is
|
|
# `ecr-cli`; the library package owns the `ecr` name for consumers.
|
|
[[bin]]
|
|
name = "ecr"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
ecr = { path = "../ecr" }
|
|
|
|
# CLI parsing
|
|
clap = { version = "4", features = ["derive", "env"] }
|
|
|
|
# Error handling
|
|
anyhow = "1"
|
|
|
|
# Interim: used by the CLI's inline cache/extraction orchestration until it
|
|
# moves behind the library's rootfs API
|
|
dirs = "6"
|
|
tempfile = "3"
|