[package]
name = "tumpa-cli"
version = "0.1.0"
edition = "2021"
description = "OpenPGP operations and SSH agent backed by tumpa keystore."
license = "GPL-3.0-or-later"
repository = "https://github.com/tumpaproject/tumpa-cli"
readme = "README.md"
keywords = ["openpgp", "gpg", "encryption", "ssh", "pass"]
categories = ["cryptography", "authentication"]
include = [
    "src/**/*.rs",
    "completions/*",
    "tests/**/*.sh",
    "tests/keys/*.asc",
    "tests/keys/*.pub",
    "Cargo.toml",
    "Cargo.lock",
    "README.md",
    "LICENSE",
    "docs/**/*.md",
    "justfile",
]

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

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

[dependencies]
wecanencrypt = { version = "0.9.0", features = ["keystore", "card", "network"] }
# Must match wecanencrypt's pgp dependency exactly -- both crates parse
# detached signatures using pgp::composed::DetachedSignature, and a version
# mismatch could cause parser disagreement (see verify.rs dual-parse note).
pgp = "0.19"
clap = { version = "4", features = ["derive", "env"] }
clap_complete = "4"
base64 = "0.22"
hex = "0.4"
anyhow = "1"
env_logger = "0.11"
log = "0.4"
dirs = "6"
zeroize = { version = "1", features = ["derive"] }
rpassword = "7"
libc = "0.2"

# SSH agent
ssh-agent-lib = "0.5"
ssh-key = { version = "0.6", features = ["p256", "p384", "p521"] }
tokio = { version = "1", features = ["full"] }
sha2 = "0.10"
p256 = "0.13"
p384 = "0.13"
p521 = "0.13"

[dev-dependencies]
chrono = "0.4"
