-
-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathCargo.toml
More file actions
61 lines (55 loc) · 1.73 KB
/
Cargo.toml
File metadata and controls
61 lines (55 loc) · 1.73 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
[package]
name = "purple-ssh"
version = "2.45.2"
edition = "2024"
description = "Open-source terminal SSH manager and SSH config editor. Search hundreds of hosts, sync from 16 clouds, transfer files, manage Docker and Podman over SSH, sign short-lived Vault SSH certs and expose an MCP server for AI agents. Rust TUI, MIT licensed."
license = "MIT"
repository = "https://github.com/erickochen/purple"
homepage = "https://getpurple.sh"
readme = "README.md"
keywords = ["ssh", "ssh-client", "tui", "ssh-manager", "mcp"]
categories = ["command-line-utilities", "development-tools"]
rust-version = "1.86"
exclude = [".github/", ".gitignore", "demo.gif", "demo.webm", "screenshots/", "preview.png"]
[lib]
name = "purple_ssh"
path = "src/lib.rs"
[[bin]]
name = "purple"
path = "src/main.rs"
[dependencies]
ratatui = "0.30"
crossterm = "0.29"
clap = { version = "4", features = ["derive"] }
clap_complete = "4"
dirs = "6"
glob = "0.3"
anyhow = "1"
thiserror = "2"
unicode-width = "0.2.2"
ureq = { version = "3", features = ["json", "native-tls"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha1 = "0.11"
sha2 = "0.10"
hmac = "0.12"
quick-xml = { version = "0.39", features = ["serde", "serialize"] }
rsa = { version = "0.9", features = ["sha2"] }
base64 = "0.22"
libc = "0.2"
log = "0.4"
simplelog = "0.12"
semver = "1"
# musl static builds need OpenSSL compiled from source. Without this,
# native-tls (pulled by ureq) can't find a musl-compatible system openssl
# on Ubuntu CI runners. No effect on glibc/darwin builds.
[target.'cfg(target_env = "musl")'.dependencies]
openssl = { version = "0.10", features = ["vendored"] }
[dev-dependencies]
mockito = "1.7.2"
proptest = "1"
tempfile = "3"
[profile.release]
strip = true
lto = true
opt-level = "z"