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 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
|
[package]
name = "prs-cli"
version = "0.5.2"
authors = ["Tim Visee <3a4fb3964f@sinenomine.email>"]
license = "GPL-3.0"
readme = "../README.md"
homepage = "https://timvisee.com/projects/prs"
repository = "https://gitlab.com/timvisee/prs"
description = "Secure, fast & convenient password manager CLI with GPG & git sync"
keywords = ["pass", "passwordstore"]
categories = [
"authentication",
"command-line-utilities",
"cryptography",
]
edition = "2018"
rust-version = "1.81.0"
default-run = "prs"
[[bin]]
name = "prs"
path = "./src/main.rs"
[features]
default = ["backend-gnupg-bin", "alias", "clipboard", "notify", "select-fzf-bin", "tomb", "totp"]
### Regular features
# Option (default): alias management (symlink) support
alias = []
# Option (default): clipboard support (copy password to clipboard)
clipboard = ["copypasta-ext", "x11-clipboard", "base64"]
# Option (default): notification support (clipboard notifications)
notify = ["notify-rust"]
# Option (default): tomb support for password store on Linux
tomb = ["prs-lib/tomb", "bytesize", "fs_extra"]
# Option (default): TOTP token support
totp = ["totp-rs", "linkify", "qr2term"]
### Pluggable cryptography backends
# Option: GnuPG cryptography backend using GPGME
backend-gpgme = ["prs-lib/backend-gpgme"]
# Option (default): GnuPG cryptography backend using gpg binary
backend-gnupg-bin = ["prs-lib/backend-gnupg-bin"]
### Pluggable interactive selection systems
# Option: interactive selection with fzf binary
select-fzf-bin = []
[dependencies]
ansi-escapes = "0.2"
anyhow = "1.0"
chbs = "0.1"
clap = { version = "4.1", default-features = false, features = ["std", "help", "suggestions", "color", "usage", "cargo", "env"] }
clap_complete = "4.1"
colored = "2.0"
crossterm = { version = "0.27", default-features = false, features = ["events"] }
derive_builder = "0.20"
edit = "0.1"
indicatif = "0.17"
lazy_static = "1.4"
prs-lib = { version = "=0.5.2", path = "../lib", default-features = false }
rand = { version = "0.8", default-features = false, features = ["std"] }
regex = { version = "1.7", default-features = false, features = ["std", "unicode-perl"] }
shellexpand = "3.0"
shlex = "1.3"
substring = "1.4.5"
text_trees = "0.1"
thiserror = "1.0"
walkdir = "2.3"
which = "6.0"
# Notification support
notify-rust = { version = "4.7", optional = true }
# Tomb support
bytesize = { version = "1.1", optional = true }
fs_extra = { version = "1.2", optional = true }
# TOTP support
totp-rs = { version = "5.5", optional = true, default-features = false, features = ["otpauth", "steam"] }
linkify = { version = "0.9", optional = true }
qr2term = { version = "0.3", optional = true }
# Clipboard support
base64 = { version = "0.22", optional = true }
# Clipboard support for non-X11/Wayland
[target.'cfg(not(all(unix, not(any(target_os="macos", target_os="android", target_os="emscripten")))))'.dependencies]
copypasta-ext = { version = "0.4.1", optional = true, default-features = false }
# Clipboard support for X11/Wayland
[target.'cfg(all(unix, not(any(target_os="macos", target_os="android", target_os="emscripten")), not(target_env = "musl")))'.dependencies]
copypasta-ext = { version = "0.4.1", optional = true, default-features = false, features = ["wayland-bin"] }
x11-clipboard = { version = "0.9", optional = true }
# Clipboard support for X11/Wayland musl
[target.'cfg(all(unix, not(any(target_os="macos", target_os="android", target_os="emscripten")), target_env = "musl"))'.dependencies]
copypasta-ext = { version = "0.4.1", optional = true, default-features = false, features = ["x11-bin", "wayland-bin"] }
|