[workspace] members = ["steamguard"] [package] name = "steamguard-cli" version = "0.14.0" authors = ["dyc3 (Carson McManus) "] edition = "2021" description = "A command line utility to generate Steam 2FA codes and respond to confirmations." keywords = ["steam", "2fa", "steamguard", "authentication", "cli"] categories = ["command-line-utilities"] repository = "https://github.com/dyc3/steamguard-cli" license = "GPL-3.0-or-later" [features] default = ["qr", "updater", "keyring"] qr = ["dep:qrcode"] updater = ["dep:update-informer"] keyring = ["dep:keyring"] # [[bin]] # name = "steamguard-cli" # filename = "steamguard" # TODO: uncomment when https://github.com/rust-lang/cargo/issues/9778 is stablized. [[bin]] name = "steamguard" path = "src/main.rs" [dependencies] anyhow = "^1.0" base64 = "0.22.1" text_io = "0.1.8" rpassword = "7.2.0" reqwest = { version = "0.12", default-features = false, features = [ "blocking", "json", "cookies", "gzip", "rustls-tls", ] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" rsa = "0.9.2" rand = "0.8.5" clap = { version = "4.5.4", features = ["derive", "cargo", "env"] } clap_complete = "4.5.2" log = "0.4.19" stderrlog = "0.6" cookie = "0.18" regex = "1" lazy_static = "1.4.0" uuid = { version = "1.8", features = ["v4"] } steamguard = { version = "^0.14.0", path = "./steamguard" } dirs = "5.0.1" aes = { version = "0.8.3", features = ["zeroize"] } thiserror = "1.0.61" crossterm = { version = "0.23.2", features = ["event-stream"] } qrcode = { version = "0.14.0", optional = true } gethostname = "0.4.3" secrecy = { version = "0.8", features = ["serde"] } zeroize = { version = "^1.6.0", features = ["std", "zeroize_derive"] } serde_path_to_error = "0.1.11" update-informer = { version = "1.0.0", optional = true, default-features = false, features = [ "github", ] } phonenumber = "0.3" cbc = { version = "0.1.2", features = ["std", "zeroize"] } inout = { version = "0.1.3", features = ["std"] } keyring = { version = "2.0.4", optional = true } argon2 = { version = "0.5.0", features = ["std", "zeroize"] } pbkdf2 = { version = "0.12.1", features = ["parallel"] } sha1 = "0.10.5" rayon = "1.7.0" rqrr = "0.7.1" image = "0.25" [dev-dependencies] tempfile = "3" proptest = "1" [profile.release] opt-level = 3 lto = true