diff --git a/Cargo.toml b/Cargo.toml index 93b08321f..278d19deb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,30 +36,37 @@ anyhow = "1.0.82" camino = "1.1.6" canon-json = "0.2.1" cap-std-ext = "4.0.3" -composefs = { git = "https://github.com/containers/composefs-rs", rev = "28d4721f77f973f0e394d60d6a69d9b39cb38d7f", package = "composefs", features = ["rhel9"] } -composefs-boot = { git = "https://github.com/containers/composefs-rs", rev = "28d4721f77f973f0e394d60d6a69d9b39cb38d7f", package = "composefs-boot" } -composefs-oci = { git = "https://github.com/containers/composefs-rs", rev = "28d4721f77f973f0e394d60d6a69d9b39cb38d7f", package = "composefs-oci" } chrono = { version = "0.4.38", default-features = false } clap = "4.5.4" clap_mangen = { version = "0.2.20" } +composefs = { git = "https://github.com/containers/composefs-rs", rev = "28d4721f77f973f0e394d60d6a69d9b39cb38d7f", package = "composefs", features = ["rhel9"] } +composefs-boot = { git = "https://github.com/containers/composefs-rs", rev = "28d4721f77f973f0e394d60d6a69d9b39cb38d7f", package = "composefs-boot" } +composefs-oci = { git = "https://github.com/containers/composefs-rs", rev = "28d4721f77f973f0e394d60d6a69d9b39cb38d7f", package = "composefs-oci" } +fn-error-context = "0.2.1" hex = "0.4.3" -indoc = "2.0.5" indicatif = "0.18.0" -fn-error-context = "0.2.1" +indoc = "2.0.5" libc = "0.2.154" +log = "0.4.21" openssl = "0.10.72" owo-colors = { version = "4" } +regex = "1.10.4" # For the same rationale as https://github.com/coreos/rpm-ostree/commit/27f3f4b77a15f6026f7e1da260408d42ccb657b3 rustix = { "version" = "1", features = ["use-libc", "thread", "net", "fs", "system", "process", "mount"] } serde = "1.0.199" serde_json = "1.0.116" +shlex = "1.3" similar-asserts = "1.5.0" static_assertions = "1.1.0" tempfile = "3.10.1" -tracing = "0.1.40" thiserror = "2.0.11" tokio = ">= 1.37.0" tokio-util = { features = ["io-util"], version = "0.7.10" } +toml = "0.9.5" +tracing = "0.1.40" +tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } +uzers = "0.12" +xshell = "0.2.6" # See https://github.com/coreos/cargo-vendor-filterer [workspace.metadata.vendor-filter] diff --git a/crates/blockdev/Cargo.toml b/crates/blockdev/Cargo.toml index eee8dd704..1502596f1 100644 --- a/crates/blockdev/Cargo.toml +++ b/crates/blockdev/Cargo.toml @@ -7,12 +7,15 @@ repository = "https://github.com/bootc-dev/bootc" version = "0.0.0" [dependencies] -anyhow = { workspace = true } +# Internal crates bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } + +# Workspace dependencies +anyhow = { workspace = true } camino = { workspace = true, features = ["serde1"] } fn-error-context = { workspace = true } libc = { workspace = true } -regex = "1.10.4" +regex = { workspace = true } rustix = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } @@ -21,7 +24,7 @@ tokio = { workspace = true, features = ["signal"] } tracing = { workspace = true } [dev-dependencies] -indoc = "2.0.5" +indoc = { workspace = true } [lib] path = "src/blockdev.rs" \ No newline at end of file diff --git a/crates/cli/Cargo.toml b/crates/cli/Cargo.toml index 5b1a24724..29209b7fa 100644 --- a/crates/cli/Cargo.toml +++ b/crates/cli/Cargo.toml @@ -14,13 +14,16 @@ default-run = "bootc" platforms = ["*-unknown-linux-gnu"] [dependencies] -anstream = { workspace = true } -anyhow = { workspace = true } +# Internal crates bootc-lib = { version = "1.6", path = "../lib" } bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } -tokio = { workspace = true, features = ["macros"] } -log = "0.4.21" + +# Workspace dependencies +anstream = { workspace = true } +anyhow = { workspace = true } +log = { workspace = true } owo-colors = { workspace = true } +tokio = { workspace = true, features = ["macros"] } tracing = { workspace = true } [lints] diff --git a/crates/lib/Cargo.toml b/crates/lib/Cargo.toml index 9bb1cf1c2..1053e4cee 100644 --- a/crates/lib/Cargo.toml +++ b/crates/lib/Cargo.toml @@ -14,52 +14,56 @@ rust-version = "1.82.0" include = ["/src", "LICENSE-APACHE", "LICENSE-MIT"] [dependencies] -anstream = "0.6.13" -anstyle = "1.0.6" -anyhow = { workspace = true } -bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } +# Internal crates bootc-blockdev = { package = "bootc-internal-blockdev", path = "../blockdev", version = "0.0.0" } bootc-mount = { path = "../mount" } -bootc-tmpfiles = { path = "../tmpfiles" } bootc-sysusers = { path = "../sysusers" } -camino = { workspace = true, features = ["serde1"] } -composefs = { workspace = true } -composefs-boot = { workspace = true } -composefs-oci = { workspace = true } +bootc-tmpfiles = { path = "../tmpfiles" } +bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } ostree-ext = { path = "../ostree-ext", features = ["bootc"] } + +# Workspace dependencies +anstream = { workspace = true } +anyhow = { workspace = true } +camino = { workspace = true, features = ["serde1"] } +canon-json = { workspace = true } +cap-std-ext = { workspace = true, features = ["fs_utf8"] } chrono = { workspace = true, features = ["serde"] } clap = { workspace = true, features = ["derive","cargo"] } clap_mangen = { workspace = true, optional = true } -#composefs = "0.2.0" -cap-std-ext = { workspace = true, features = ["fs_utf8"] } -hex = { workspace = true } +composefs = { workspace = true } +composefs-boot = { workspace = true } +composefs-oci = { workspace = true } fn-error-context = { workspace = true } +hex = { workspace = true } indicatif = { workspace = true } indoc = { workspace = true } libc = { workspace = true } -liboverdrop = "0.1.0" -libsystemd = "0.7" -linkme = "0.3" openssl = { workspace = true } -regex = "1.10.4" +regex = { workspace = true } rustix = { workspace = true } -schemars = { version = "1.0.4", features = ["chrono04"] } serde = { workspace = true, features = ["derive"] } -serde_ignored = "0.1.10" serde_json = { workspace = true } -serde_yaml = "0.9.34" +tempfile = { workspace = true } +thiserror = { workspace = true } tokio = { workspace = true, features = ["io-std", "time", "process", "rt", "net"] } tokio-util = { workspace = true } +toml = { workspace = true } tracing = { workspace = true } -tempfile = { workspace = true } -toml = "0.9.5" -xshell = { version = "0.2.6", optional = true } -uuid = { version = "1.8.0", features = ["v4"] } -tini = "1.3.0" +xshell = { workspace = true, optional = true } + +# Crate-specific dependencies +anstyle = "1.0.6" comfy-table = "7.1.1" -thiserror = { workspace = true } -canon-json = { workspace = true } +liboverdrop = "0.1.0" +libsystemd = "0.7" +linkme = "0.3" nom = "8.0.0" +schemars = { version = "1.0.4", features = ["chrono04"] } +serde_ignored = "0.1.10" +serde_yaml = "0.9.34" +tini = "1.3.0" +uuid = { version = "1.8.0", features = ["v4"] } [dev-dependencies] similar-asserts = { workspace = true } diff --git a/crates/mount/Cargo.toml b/crates/mount/Cargo.toml index d2410e2b1..8e29bb5f2 100644 --- a/crates/mount/Cargo.toml +++ b/crates/mount/Cargo.toml @@ -9,17 +9,20 @@ repository = "https://github.com/bootc-dev/bootc" version = "0.0.0" [dependencies] -anyhow = { workspace = true } +# Internal crates bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } + +# Workspace dependencies +anyhow = { workspace = true } camino = { workspace = true, features = ["serde1"] } fn-error-context = { workspace = true } +libc = { workspace = true } rustix = { workspace = true } -libc = {workspace = true} serde = { workspace = true, features = ["derive"] } tracing = { workspace = true } [dev-dependencies] -indoc = "2.0.5" +indoc = { workspace = true } [lib] path = "src/mount.rs" diff --git a/crates/ostree-ext/Cargo.toml b/crates/ostree-ext/Cargo.toml index 156c24e33..9c9503e63 100644 --- a/crates/ostree-ext/Cargo.toml +++ b/crates/ostree-ext/Cargo.toml @@ -8,51 +8,53 @@ repository = "https://github.com/ostreedev/ostree-rs-ext" version = "0.15.3" [dependencies] -containers-image-proxy = "0.8.0" -# We re-export this library too. -ostree = { features = ["v2025_2"], version = "0.20" } +# Internal crates +bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } -# Private dependencies +# Workspace dependencies anyhow = { workspace = true } -bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } camino = { workspace = true, features = ["serde1"] } -composefs = { workspace = true } -composefs-boot = { workspace = true } -composefs-oci = { workspace = true } +canon-json = { workspace = true } +cap-std-ext = { workspace = true, features = ["fs_utf8"] } chrono = { workspace = true } clap = { workspace = true, features = ["derive","cargo"] } clap_mangen = { workspace = true, optional = true } -comfy-table = "7.1.1" -cap-std-ext = { workspace = true, features = ["fs_utf8"] } -flate2 = { features = ["zlib"], default-features = false, version = "1.0.20" } +composefs = { workspace = true } +composefs-boot = { workspace = true } +composefs-oci = { workspace = true } fn-error-context = { workspace = true } -futures-util = "0.3.13" -gvariant = "0.5.0" hex = { workspace = true } -io-lifetimes = "3" indicatif = { workspace = true } +indoc = { workspace = true, optional = true } libc = { workspace = true } -libsystemd = "0.7.0" openssl = { workspace = true } -ocidir = "0.4.0" -pin-project = "1.0" -regex = "1.5.4" +regex = { workspace = true } rustix = { workspace = true, features = ["fs", "process"] } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } -tar = "0.4.43" +similar-asserts = { workspace = true, optional = true } tempfile = { workspace = true } tokio = { workspace = true, features = ["io-std", "time", "process", "rt", "net"] } tokio-util = { workspace = true } +tracing = { workspace = true } +xshell = { workspace = true, optional = true } + +# Crate-specific dependencies +comfy-table = "7.1.1" +containers-image-proxy = "0.8.0" +flate2 = { features = ["zlib"], default-features = false, version = "1.0.20" } +futures-util = "0.3.13" +gvariant = "0.5.0" +indexmap = { version = "2.2.2", features = ["serde"] } +io-lifetimes = "3" +libsystemd = "0.7.0" +ocidir = "0.4.0" +# We re-export this library too. +ostree = { features = ["v2025_2"], version = "0.20" } +pin-project = "1.0" +tar = "0.4.43" tokio-stream = { features = ["sync"], version = "0.1.8" } -tracing = "0.1" zstd = { version = "0.13.1", features = ["pkg-config"] } -indexmap = { version = "2.2.2", features = ["serde"] } - -indoc = { version = "2", optional = true } -xshell = { version = "0.2", optional = true } -similar-asserts = { version = "1.5.0", optional = true } -canon-json = { workspace = true } [dev-dependencies] quickcheck = "1" diff --git a/crates/system-reinstall-bootc/Cargo.toml b/crates/system-reinstall-bootc/Cargo.toml index 58b04c618..c15177bb8 100644 --- a/crates/system-reinstall-bootc/Cargo.toml +++ b/crates/system-reinstall-bootc/Cargo.toml @@ -14,22 +14,27 @@ rust-version = "1.75.0" platforms = ["*-unknown-linux-gnu"] [dependencies] -anyhow = { workspace = true } +# Internal crates bootc-mount = { path = "../mount" } bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } + +# Workspace dependencies +anyhow = { workspace = true } clap = { workspace = true, features = ["derive"] } -crossterm = "0.29.0" -dialoguer = "0.11.0" indoc = { workspace = true } -log = "0.4.21" -openssh-keys = "0.6.4" +log = { workspace = true } rustix = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } -serde_yaml = "0.9.22" tempfile = { workspace = true } tracing = { workspace = true } -uzers = "0.12.1" +uzers = { workspace = true } + +# Crate-specific dependencies +crossterm = "0.29.0" +dialoguer = "0.11.0" +openssh-keys = "0.6.4" +serde_yaml = "0.9.22" which = "8.0.0" [lints] diff --git a/crates/sysusers/Cargo.toml b/crates/sysusers/Cargo.toml index 9cf41bc5b..d6b59c213 100644 --- a/crates/sysusers/Cargo.toml +++ b/crates/sysusers/Cargo.toml @@ -6,16 +6,19 @@ edition = "2021" publish = false [dependencies] +# Internal crates +bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } + +# Workspace dependencies anyhow = { workspace = true } camino = { workspace = true } +cap-std-ext = { workspace = true, features = ["fs_utf8"] } fn-error-context = { workspace = true } -cap-std-ext = { version = "4", features = ["fs_utf8"] } -hex = "0.4" -thiserror = { workspace = true } -tempfile = { workspace = true } -bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } +hex = { workspace = true } rustix = { workspace = true } -uzers = "0.12" +tempfile = { workspace = true } +thiserror = { workspace = true } +uzers = { workspace = true } [dev-dependencies] indoc = { workspace = true } diff --git a/crates/tests-integration/Cargo.toml b/crates/tests-integration/Cargo.toml index ed4ae0b2d..538d575b9 100644 --- a/crates/tests-integration/Cargo.toml +++ b/crates/tests-integration/Cargo.toml @@ -11,20 +11,23 @@ name = "tests-integration" path = "src/tests-integration.rs" [dependencies] +# Workspace dependencies anyhow = { workspace = true } camino = { workspace = true } cap-std-ext = { workspace = true } clap = { workspace = true, features = ["derive","cargo"] } fn-error-context = { workspace = true } indoc = { workspace = true } -libtest-mimic = "0.8.0" -oci-spec = "0.8.0" -rexpect = "0.6" rustix = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } tempfile = { workspace = true } -xshell = { version = "0.2.6" } +xshell = { workspace = true } + +# Crate-specific dependencies +libtest-mimic = "0.8.0" +oci-spec = "0.8.0" +rexpect = "0.6" [lints] workspace = true diff --git a/crates/tmpfiles/Cargo.toml b/crates/tmpfiles/Cargo.toml index 2bcff15c7..b450d1d9c 100644 --- a/crates/tmpfiles/Cargo.toml +++ b/crates/tmpfiles/Cargo.toml @@ -6,14 +6,17 @@ edition = "2021" publish = false [dependencies] +# Internal crates +bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } + +# Workspace dependencies camino = { workspace = true } +cap-std-ext = { workspace = true } fn-error-context = { workspace = true } -cap-std-ext = { version = "4" } -thiserror = { workspace = true } -tempfile = { workspace = true } -bootc-utils = { package = "bootc-internal-utils", path = "../utils", version = "0.0.0" } rustix = { workspace = true } -uzers = "0.12" +tempfile = { workspace = true } +thiserror = { workspace = true } +uzers = { workspace = true } [dev-dependencies] anyhow = { workspace = true } diff --git a/crates/utils/Cargo.toml b/crates/utils/Cargo.toml index 5f672cdb9..cac488a7b 100644 --- a/crates/utils/Cargo.toml +++ b/crates/utils/Cargo.toml @@ -7,16 +7,17 @@ license = "MIT OR Apache-2.0" repository = "https://github.com/bootc-dev/bootc" [dependencies] +# Workspace dependencies anyhow = { workspace = true } chrono = { workspace = true, features = ["std"] } rustix = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } -shlex = "1.3" +shlex = { workspace = true } tempfile = { workspace = true } -tracing = { workspace = true } tokio = { workspace = true, features = ["process", "rt", "macros"] } -tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } +tracing = { workspace = true } +tracing-subscriber = { workspace = true } [dev-dependencies] similar-asserts = { workspace = true } diff --git a/crates/xtask/Cargo.toml b/crates/xtask/Cargo.toml index 1580c2c8a..41542e88d 100644 --- a/crates/xtask/Cargo.toml +++ b/crates/xtask/Cargo.toml @@ -12,15 +12,18 @@ name = "xtask" path = "src/xtask.rs" [dependencies] +# Workspace dependencies anyhow = { workspace = true } camino = { workspace = true } chrono = { workspace = true, features = ["std"] } fn-error-context = { workspace = true } -tar = "0.4" -toml = "0.9" tempfile = { workspace = true } +toml = { workspace = true } +xshell = { workspace = true } + +# Crate-specific dependencies mandown = "1.1.0" -xshell = { version = "0.2.6" } +tar = "0.4" [lints] workspace = true