ffsend/Cargo.toml
2023-08-20 17:48:39 +02:00

135 lines
3.8 KiB
TOML

[package]
name = "ffsend"
version = "0.2.76"
rust-version = "1.63.0"
authors = ["Tim Visee <3a4fb3964f@sinenomine.email>"]
license = "GPL-3.0"
readme = "README.md"
homepage = "https://timvisee.com/projects/ffsend"
repository = "https://gitlab.com/timvisee/ffsend"
description = """\
Easily and securely share files from the command line.\n\
A fully featured Send client.\
"""
keywords = ["send", "firefox", "cli"]
categories = [
"authentication",
"command-line-interface",
"command-line-utilities",
"cryptography",
"network-programming",
]
exclude = [
"/.github",
"/contrib",
"/pkg",
"/res",
"/*.yml",
"/CONTRIBUTING.md",
"/SECURITY.md",
]
edition = "2018"
build = "build.rs"
[package.metadata.deb]
section = "utility"
extended-description = """\
Easily and securely share files and directories from the command line through
a safe, private and encrypted link using a single simple command. \
Files are shared using the Send service and may be up to 2GB. \
Others are able to download these files with this tool, \
or through their web browser.\n\
\n\
All files are always encrypted on the client, \
and secrets are never shared with the remote host. \
An optional password may be specified, and a default file lifetime of 1 \
(up to 20) download or 24 hours is enforced to ensure your stuff does not \
remain online forever. This provides a secure platform to share your files."""
priority = "standard"
license-file = ["LICENSE", "3"]
depends = "$auto, libssl1.1, ca-certificates, xclip"
maintainer-scripts = "pkg/deb"
[[bin]]
name = "ffsend"
path = "src/main.rs"
[features]
default = ["archive", "clipboard", "crypto-ring", "history", "infer-command", "qrcode", "send3", "urlshorten"]
# Compile with file archiving support
archive = ["tar"]
# Support for putting share URLs in clipboard
clipboard = ["clip", "which"]
# Compile with file history support
history = []
# Support for Send v2
send2 = ["ffsend-api/send2"]
# Support for Send v3
send3 = ["ffsend-api/send3"]
# Use OpenSSL as cryptography backend
crypto-openssl = ["ffsend-api/crypto-openssl"]
# Use ring as cryptography backend
crypto-ring = ["ffsend-api/crypto-ring"]
# Support for generating QR codes for share URLs
qrcode = ["qr2term"]
# Support for shortening share URLs
urlshorten = ["urlshortener"]
# Support for inferring subcommand when linking binary
infer-command = []
# Compile without colored output support
no-color = ["colored/no-color"]
# Automatic using build.rs: use xclip/xsel binary method for clipboard support
clipboard-bin = ["clipboard"]
# Automatic using build.rs: use native clipboard crate for clipboard support
clipboard-crate = ["clipboard"]
[dependencies]
chbs = "0.1.0"
chrono = "0.4"
clap = "2.33"
colored = "2.0"
derive_builder = "0.10"
directories = "4.0"
failure = "0.1"
ffsend-api = { version = "0.7.3", default-features = false }
fs2 = "0.4"
lazy_static = "1.4"
open = "2"
openssl-probe = "0.1"
pathdiff = "0.2"
pbr = "1"
prettytable-rs = { version = "0.10.0", default-features = false }
qr2term = { version = "0.2", optional = true }
rand = "0.8"
regex = "1.5"
rpassword = "5"
serde = "1"
serde_derive = "1"
tar = { version = "0.4", optional = true }
tempfile = "3"
toml = "0.5"
urlshortener = { version = "3", optional = true }
version-compare = "0.1"
[target.'cfg(any(target_os = "linux", target_os = "freebsd", target_os = "dragonfly", target_os = "openbsd", target_os = "netbsd"))'.dependencies]
which = { version = "4.0", optional = true }
[target.'cfg(not(any(target_os = "linux", target_os = "freebsd", target_os = "dragonfly", target_os = "openbsd", target_os = "netbsd")))'.dependencies]
# Aliased to clip to prevent name collision with clipboard feature
clip = { version = "0.5", optional = true, package = "clipboard" }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]