[package] name = "soulseek-rs" version.workspace = true authors.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true repository.workspace = true homepage.workspace = true description = "Command-line client for Soulseek protocol" keywords = ["soulseek", "p2p", "client", "file-sharing"] categories = ["command-line-utilities"] [[bin]] name = "soulseek-rs" path = "src/main.rs" # Small library target so integration tests can exercise the persistence # pipeline; the dependency soulseek-rs-lib already owns the `soulseek_rs` # crate name, hence the distinct one. [lib] name = "soulseek_rs_tui" path = "src/lib.rs" [lints] workspace = true [dependencies] soulseek-rs-lib = { version = "19.1.0", path = "../soulseek-rs-lib" } clap = { version = "4.6.2", features = ["derive", "color", "wrap_help", "env"] } clap_complete = "4.6.7" clap_mangen = "0.3.3" ratatui = "0.30.2" unicode-width = "0.2" color-eyre = "0.6.5" dotenv = "0.15.0" igd-next = "0.17" serde = { version = "1", features = ["derive"] } serde_json = "1" toml = "0.9" directories = "6" # Linux uses the pure-Rust zbus Secret Service backend (async-secret-service # + async-io + crypto-rust) instead of sync-secret-service, which links the # system libdbus and breaks builds without libdbus-1-dev. keyring = { version = "3", features = ["apple-native", "windows-native", "async-secret-service", "async-io", "crypto-rust"] } chrono = { version = "0.4.45", default-features = false, features = ["clock", "serde"] } getrandom = "0.4.3" [dev-dependencies] schemars = "1.2.1" tempfile = "3" [target."cfg(unix)".dependencies] libc = "0.2.189"