-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathCargo.toml
More file actions
75 lines (65 loc) · 2.67 KB
/
Cargo.toml
File metadata and controls
75 lines (65 loc) · 2.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
[package]
name = "cryptex"
authors = ["Michael Lodder <redmike7@gmail.com>"]
categories = []
description = """
Cryptex uses system keyrings to store and retrieve secrets
or a local file
"""
documentation = "https://docs.rs/cryptex/"
edition = "2024"
homepage = "https://github.com/mikelodder7/cryptex"
keywords = ["secrets", "vault", "keyring"]
license = "MIT/Apache-2.0"
repository = "https://github.com/mikelodder7/cryptex"
readme = "README.md"
version = "2.2.0"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[lib]
crate-type = ["staticlib", "rlib", "cdylib"]
[[bin]]
name = "cryptex"
[features]
default = ["linux-secret-service", "macos-keychain", "windows-credentials"]
file = ["dep:argon2", "dep:dirs", "dep:rusqlite"]
linux-secret-service = ["secret-service", "uzers"]
macos-keychain = ["security-framework", "security-framework-sys", "core-foundation", "core-foundation-sys", "uzers"]
windows-credentials = ["windows"]
serde = ["dep:serde", "postcard"]
yubihsm-usb = ["dep:yubihsm", "yubihsm/usb", "yubihsm/passwords", "dep:aes-gcm", "dep:sha2", "dep:getrandom", "dep:dirs"]
yubihsm-http = ["dep:yubihsm", "yubihsm/http", "yubihsm/passwords", "dep:aes-gcm", "dep:sha2", "dep:getrandom", "dep:dirs"]
[dependencies]
aes-gcm = { version = "0.10", optional = true }
argon2 = { version = "0.5", optional = true }
chacha20poly1305 = { version = "0.10", optional = true }
clap = "4"
colored = "3.0"
dirs = { version = "6.0", optional = true }
getrandom = { version = "0.4", optional = true }
hex = "0.4"
postcard = { version = "1", features = ["use-std"], optional = true }
rpassword = "7"
rusqlite = { version = "0.39", features = ["bundled-sqlcipher-vendored-openssl"], optional = true }
serde = { version = "1", optional = true }
sha2 = { version = "0.10", optional = true }
subtle = "2"
whoami = "2"
yubihsm = { version = "0.42", default-features = false, optional = true }
zeroize = { version = "1", features = ["zeroize_derive"] }
[target.'cfg(any(target_os = "macos", target_os = "linux"))'.dependencies]
uzers = { version = "0.12", optional = true }
[target.'cfg(target_os = "macos")'.dependencies]
security-framework = { version = "3", optional = true }
security-framework-sys = { version = "2.12", optional = true }
core-foundation = { version = "0.10", optional = true }
core-foundation-sys = { version = "0.8.7", optional = true }
[target.'cfg(target_os = "linux")'.dependencies]
secret-service = { version = "5", features = ["rt-tokio-crypto-rust"], optional = true }
[target.'cfg(target_os = "windows")'.dependencies]
windows = { version = "0.62", features = [
"Win32_Foundation",
"Win32_Security_Credentials",
"Win32_Security_Cryptography",
], optional = true }