324 lines
9.6 KiB
TOML
324 lines
9.6 KiB
TOML
[workspace.package]
|
|
version = "3.2.8"
|
|
authors = [
|
|
"Dietmar Maurer <dietmar@proxmox.com>",
|
|
"Dominik Csapak <d.csapak@proxmox.com>",
|
|
"Christian Ebner <c.ebner@proxmox.com>",
|
|
"Fabian Grünbichler <f.gruenbichler@proxmox.com>",
|
|
"Stefan Reiter <s.reiter@proxmox.com>",
|
|
"Thomas Lamprecht <t.lamprecht@proxmox.com>",
|
|
"Wolfgang Bumiller <w.bumiller@proxmox.com>",
|
|
"Proxmox Support Team <support@proxmox.com>",
|
|
]
|
|
edition = "2021"
|
|
license = "AGPL-3"
|
|
repository = "https://git.proxmox.com/?p=proxmox-backup.git"
|
|
rust-version = "1.80"
|
|
|
|
[package]
|
|
name = "proxmox-backup"
|
|
description = "Proxmox Backup"
|
|
homepage = "https://www.proxmox.com"
|
|
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
|
|
exclude = ["build", "debian", "tests/catar_data/test_symlink/symlink1"]
|
|
|
|
[workspace]
|
|
members = [
|
|
"pbs-api-types",
|
|
"pbs-buildcfg",
|
|
"pbs-client",
|
|
"pbs-config",
|
|
"pbs-datastore",
|
|
"pbs-fuse-loop",
|
|
"pbs-key-config",
|
|
"pbs-pxar-fuse",
|
|
"pbs-tape",
|
|
"pbs-tools",
|
|
|
|
"proxmox-backup-banner",
|
|
"proxmox-backup-client",
|
|
"proxmox-file-restore",
|
|
"proxmox-restore-daemon",
|
|
|
|
"pxar-bin",
|
|
]
|
|
|
|
[lib]
|
|
name = "proxmox_backup"
|
|
path = "src/lib.rs"
|
|
|
|
[workspace.dependencies]
|
|
# proxmox workspace
|
|
proxmox-apt = { version = "0.11", features = ["cache"] }
|
|
proxmox-apt-api-types = "1.0.1"
|
|
proxmox-async = "0.4"
|
|
proxmox-auth-api = "0.4"
|
|
proxmox-borrow = "1"
|
|
proxmox-compression = "0.2"
|
|
proxmox-config-digest = "0.1.0"
|
|
proxmox-daemon = "0.1.0"
|
|
proxmox-fuse = "0.1.3"
|
|
proxmox-http = { version = "0.9.0", features = [
|
|
"client",
|
|
"http-helpers",
|
|
"websocket",
|
|
] } # see below
|
|
proxmox-human-byte = "0.1"
|
|
proxmox-io = "1.0.1" # tools and client use "tokio" feature
|
|
proxmox-lang = "1.1"
|
|
proxmox-log = "0.2.4"
|
|
proxmox-ldap = "0.2.1"
|
|
proxmox-metrics = "0.3.1"
|
|
proxmox-notify = "0.4"
|
|
proxmox-openid = "0.10.0"
|
|
proxmox-rest-server = { version = "0.8", features = ["templates"] }
|
|
# some use "cli", some use "cli" and "server", pbs-config uses nothing
|
|
proxmox-router = { version = "3.0.0", default-features = false }
|
|
proxmox-rrd = "0.4"
|
|
proxmox-rrd-api-types = "1.0.2"
|
|
# everything but pbs-config and pbs-client use "api-macro"
|
|
proxmox-schema = "3"
|
|
proxmox-section-config = "2"
|
|
proxmox-serde = "0.1.1"
|
|
proxmox-shared-cache = "0.1"
|
|
proxmox-shared-memory = "0.3.0"
|
|
proxmox-sortable-macro = "0.1.2"
|
|
proxmox-subscription = { version = "0.4.2", features = ["api-types"] }
|
|
proxmox-sys = "0.6"
|
|
proxmox-systemd = "0.1"
|
|
proxmox-tfa = { version = "5", features = ["api", "api-types"] }
|
|
proxmox-time = "2"
|
|
proxmox-uuid = "1"
|
|
proxmox-worker-task = "0.1"
|
|
|
|
# other proxmox crates
|
|
pathpatterns = "0.3"
|
|
proxmox-acme = "0.5.3"
|
|
pxar = "0.12"
|
|
|
|
# PBS workspace
|
|
pbs-api-types = { path = "pbs-api-types" }
|
|
pbs-buildcfg = { path = "pbs-buildcfg" }
|
|
pbs-client = { path = "pbs-client" }
|
|
pbs-config = { path = "pbs-config" }
|
|
pbs-datastore = { path = "pbs-datastore" }
|
|
pbs-fuse-loop = { path = "pbs-fuse-loop" }
|
|
pbs-key-config = { path = "pbs-key-config" }
|
|
pbs-pxar-fuse = { path = "pbs-pxar-fuse" }
|
|
pbs-tape = { path = "pbs-tape" }
|
|
pbs-tools = { path = "pbs-tools" }
|
|
|
|
# regular crates
|
|
anyhow = "1.0"
|
|
async-trait = "0.1.56"
|
|
apt-pkg-native = "0.3.2"
|
|
base64 = "0.13"
|
|
bitflags = "2.4"
|
|
bytes = "1.0"
|
|
cidr = "0.2.1"
|
|
crc32fast = "1"
|
|
const_format = "0.2"
|
|
crossbeam-channel = "0.5"
|
|
endian_trait = { version = "0.6", features = ["arrays"] }
|
|
env_logger = "0.10"
|
|
flate2 = "1.0"
|
|
foreign-types = "0.3"
|
|
futures = "0.3"
|
|
h2 = { version = "0.3", features = ["stream"] }
|
|
handlebars = "3.0"
|
|
hex = "0.4.3"
|
|
http = "0.2"
|
|
hyper = { version = "0.14", features = ["full"] }
|
|
libc = "0.2"
|
|
log = "0.4.17"
|
|
nix = "0.26.1"
|
|
nom = "7"
|
|
num-traits = "0.2"
|
|
once_cell = "1.3.1"
|
|
openssl = "0.10.40"
|
|
percent-encoding = "2.1"
|
|
pin-project-lite = "0.2"
|
|
regex = "1.5.5"
|
|
rustyline = "9"
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = "1.0"
|
|
serde_plain = "1"
|
|
siphasher = "0.3"
|
|
syslog = "6"
|
|
tar = "0.4"
|
|
termcolor = "1.1.2"
|
|
thiserror = "1.0"
|
|
tokio = "1.6"
|
|
tokio-openssl = "0.6.1"
|
|
tokio-stream = "0.1.0"
|
|
tokio-util = { version = "0.7", features = ["io"] }
|
|
tracing = "0.1"
|
|
tower-service = "0.3.0"
|
|
udev = "0.4"
|
|
url = "2.1"
|
|
walkdir = "2"
|
|
xdg = "2.2"
|
|
zstd = { version = "0.12", features = ["bindgen"] }
|
|
zstd-safe = "6.0"
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
async-trait.workspace = true
|
|
base64.workspace = true
|
|
bytes.workspace = true
|
|
cidr.workspace = true
|
|
const_format.workspace = true
|
|
crc32fast.workspace = true
|
|
crossbeam-channel.workspace = true
|
|
endian_trait.workspace = true
|
|
futures.workspace = true
|
|
h2.workspace = true
|
|
hex.workspace = true
|
|
http.workspace = true
|
|
hyper.workspace = true
|
|
libc.workspace = true
|
|
log.workspace = true
|
|
nix.workspace = true
|
|
nom.workspace = true
|
|
num-traits.workspace = true
|
|
once_cell.workspace = true
|
|
openssl.workspace = true
|
|
percent-encoding.workspace = true
|
|
regex.workspace = true
|
|
rustyline.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
syslog.workspace = true
|
|
termcolor.workspace = true
|
|
thiserror.workspace = true
|
|
tokio = { workspace = true, features = [
|
|
"fs",
|
|
"io-util",
|
|
"io-std",
|
|
"macros",
|
|
"net",
|
|
"parking_lot",
|
|
"process",
|
|
"rt",
|
|
"rt-multi-thread",
|
|
"signal",
|
|
"time",
|
|
] }
|
|
tokio-openssl.workspace = true
|
|
tokio-stream.workspace = true
|
|
tokio-util = { workspace = true, features = ["codec"] }
|
|
tracing.workspace = true
|
|
udev.workspace = true
|
|
url.workspace = true
|
|
walkdir.workspace = true
|
|
zstd.workspace = true
|
|
|
|
#valgrind_request = { git = "https://github.com/edef1c/libvalgrind_request", version = "1.1.0", optional = true }
|
|
|
|
# proxmox workspace
|
|
proxmox-apt.workspace = true
|
|
proxmox-apt-api-types.workspace = true
|
|
proxmox-async.workspace = true
|
|
proxmox-auth-api = { workspace = true, features = ["api", "pam-authenticator"] }
|
|
proxmox-compression.workspace = true
|
|
proxmox-config-digest.workspace = true
|
|
proxmox-daemon.workspace = true
|
|
proxmox-http = { workspace = true, features = [
|
|
"client-trait",
|
|
"proxmox-async",
|
|
"rate-limited-stream",
|
|
] } # pbs-client doesn't use these
|
|
proxmox-human-byte.workspace = true
|
|
proxmox-io.workspace = true
|
|
proxmox-lang.workspace = true
|
|
proxmox-log.workspace = true
|
|
proxmox-ldap.workspace = true
|
|
proxmox-metrics.workspace = true
|
|
proxmox-notify = { workspace = true, features = ["pbs-context"] }
|
|
proxmox-openid.workspace = true
|
|
proxmox-rest-server = { workspace = true, features = ["rate-limited-stream"] }
|
|
proxmox-router = { workspace = true, features = ["cli", "server"] }
|
|
proxmox-schema = { workspace = true, features = ["api-macro"] }
|
|
proxmox-section-config.workspace = true
|
|
proxmox-serde = { workspace = true, features = ["serde_json"] }
|
|
proxmox-shared-cache.workspace = true
|
|
proxmox-shared-memory.workspace = true
|
|
proxmox-sortable-macro.workspace = true
|
|
proxmox-subscription.workspace = true
|
|
proxmox-sys = { workspace = true, features = ["timer"] }
|
|
proxmox-systemd.workspace = true
|
|
proxmox-tfa.workspace = true
|
|
proxmox-time.workspace = true
|
|
proxmox-uuid.workspace = true
|
|
proxmox-worker-task.workspace = true
|
|
|
|
# in their respective repo
|
|
proxmox-acme.workspace = true
|
|
pxar.workspace = true
|
|
|
|
# proxmox-backup workspace/internal crates
|
|
pbs-api-types.workspace = true
|
|
pbs-buildcfg.workspace = true
|
|
pbs-client.workspace = true
|
|
pbs-config.workspace = true
|
|
pbs-datastore.workspace = true
|
|
pbs-key-config.workspace = true
|
|
pbs-tape.workspace = true
|
|
pbs-tools.workspace = true
|
|
proxmox-rrd.workspace = true
|
|
proxmox-rrd-api-types.workspace = true
|
|
|
|
# Local path overrides
|
|
# NOTE: You must run `cargo update` after changing this for it to take effect!
|
|
[patch.crates-io]
|
|
|
|
#proxmox-apt = { path = "../proxmox/proxmox-apt" }
|
|
#proxmox-apt-api-types = { path = "../proxmox/proxmox-apt-api-types" }
|
|
#proxmox-async = { path = "../proxmox/proxmox-async" }
|
|
#proxmox-auth-api = { path = "../proxmox/proxmox-auth-api" }
|
|
#proxmox-borrow = { path = "../proxmox/proxmox-borrow" }
|
|
#proxmox-compression = { path = "../proxmox/proxmox-compression" }
|
|
#proxmox-config-digest = { path = "../proxmox/proxmox-config-digest" }
|
|
#proxmox-daemon = { path = "../proxmox/proxmox-daemon" }
|
|
#proxmox-fuse = { path = "../proxmox-fuse" }
|
|
#proxmox-http = { path = "../proxmox/proxmox-http" }
|
|
#proxmox-human-byte = { path = "../proxmox/proxmox-human-byte" }
|
|
#proxmox-io = { path = "../proxmox/proxmox-io" }
|
|
#proxmox-lang = { path = "../proxmox/proxmox-lang" }
|
|
#proxmox-log = { path = "../proxmox/proxmox-log" }
|
|
#proxmox-ldap = { path = "../proxmox/proxmox-ldap" }
|
|
#proxmox-metrics = { path = "../proxmox/proxmox-metrics" }
|
|
#proxmox-notify = { path = "../proxmox/proxmox-notify" }
|
|
#proxmox-openid = { path = "../proxmox/proxmox-openid" }
|
|
#proxmox-rest-server = { path = "../proxmox/proxmox-rest-server" }
|
|
#proxmox-router = { path = "../proxmox/proxmox-router" }
|
|
#proxmox-rrd = { path = "../proxmox/proxmox-rrd" }
|
|
#proxmox-rrd-api-types = { path = "../proxmox/proxmox-rrd-api-types" }
|
|
#proxmox-schema = { path = "../proxmox/proxmox-schema" }
|
|
#proxmox-section-config = { path = "../proxmox/proxmox-section-config" }
|
|
#proxmox-serde = { path = "../proxmox/proxmox-serde" }
|
|
#proxmox-shared-memory = { path = "../proxmox/proxmox-shared-memory" }
|
|
#proxmox-sortable-macro = { path = "../proxmox/proxmox-sortable-macro" }
|
|
#proxmox-subscription = { path = "../proxmox/proxmox-subscription" }
|
|
#proxmox-sys = { path = "../proxmox/proxmox-sys" }
|
|
#proxmox-systemd = { path = "../proxmox/proxmox-systemd" }
|
|
#proxmox-tfa = { path = "../proxmox/proxmox-tfa" }
|
|
#proxmox-time = { path = "../proxmox/proxmox-time" }
|
|
#proxmox-uuid = { path = "../proxmox/proxmox-uuid" }
|
|
#proxmox-worker-task = { path = "../proxmox/proxmox-worker-task" }
|
|
|
|
#proxmox-acme = { path = "../proxmox/proxmox-acme" }
|
|
#pathpatterns = {path = "../pathpatterns" }
|
|
#pxar = { path = "../pxar" }
|
|
|
|
[features]
|
|
#default = []
|
|
#valgrind = ["valgrind_request"]
|
|
alt-linux = ["proxmox-apt/alt-linux", "proxmox-apt-api-types/alt-linux"]
|
|
default = ["alt-linux"]
|