[package]
authors = ["周睿 <zrufo747@outlook.com>"]
categories = ["command-line-utilities", "embedded", "development-tools"]
description = "A tool for operating system development"
edition = "2024"
keywords = ["os", "embedded", "qemu", "u-boot", "bootloader"]
license = "MIT OR Apache-2.0"
name = "ostool"
readme = "../README.md"
repository = "https://github.com/drivercraft/ostool"
version = "0.12.1"

[package.metadata.binstall]
bin-dir = "{ name }-{ version }-{ target }/{ bin }{ binary-ext }"
pkg-fmt = "tgz"
pkg-url = "{ repo }/releases/download/{ name }-v{ version }/{ name }-{ version }-{ target }.{ archive-format }"

[[bin]]
name = "ostool"
path = "src/main.rs"

[[bin]]
name = "cargo-osrun"
path = "src/bin/cargo-osrun.rs"

[dependencies]
anyhow = { workspace = true, features = ["backtrace"] }
async-trait = "0.1"
byte-unit = "5.1"
cargo_metadata = "0.23"
clap = { workspace = true, features = ["derive"] }
colored = "3"
crossterm = { workspace = true }
cursive = { workspace = true, features = ["crossterm-backend"] }
env_logger = { workspace = true }
fitimage = { version = "0.1", path = "../fitimage" }
futures = "0.3"
indicatif = "0.18"
jkconfig = { version = "0.2", path = "../jkconfig", default-features = false }
log = { workspace = true }
network-interface = "2"
object = "0.39"
ratatui = "0.30"
reqwest = { version = "0.13", features = ["json"] }
schemars = { workspace = true, features = ["derive"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
serialport = "4.6"
tftpd = "0.5"
tokio = { workspace = true, features = ["full"] }
tokio-util = { version = "0.7", features = ["compat"] }
toml = { workspace = true }
uboot-shell = { version = "0.2", path = "../uboot-shell" }

lzma-rs = "0.3"
regex = "1"
sha2 = "0.11"
tar = "0.4"
thiserror = { workspace = true }
ureq = "3.0"
chrono = { version = "0.4.44", features = ["serde"] }
tokio-tungstenite = "0.28"
tokio-serial = "5.4"

[dev-dependencies]
tempfile = "3"
