-
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathCargo.toml
More file actions
120 lines (110 loc) · 4.77 KB
/
Cargo.toml
File metadata and controls
120 lines (110 loc) · 4.77 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
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
110
111
112
113
114
115
116
117
118
119
120
[package]
name = "dnst"
version = "0.2.0-alpha1"
edition = "2021"
default-run = "dnst"
readme = "README.md"
repository = "https://github.com/nlnetlabs/dnst/"
authors = ["NLnet Labs <dns-team@nlnetlabs.nl>"]
description = "Rust reimplementation of important ldns programs."
categories = ["command-line-utilities"]
license = "BSD-3-Clause"
keywords = ["DNS", "domain", "ldns"]
rust-version = "1.88"
[[bin]]
name = "ldns"
path = "src/bin/ldns.rs"
[features]
default = ["kmip", "openssl", "ring"]
# Cryptographic backends
kmip = ["domain-kmip", "dep:indenter", "dep:rand"]
openssl = ["domain/openssl"]
ring = ["domain/ring"]
# For building in a cargo cross container that lacks openssl-dev so cannot
# successfully compile the Rust OpenSSL crate.
static-openssl = ["openssl/vendored"]
[dependencies]
bytes = "1.8.0"
chrono = "0.4.38"
clap = { version = "4.3.4", features = ["cargo", "derive", "wrap_help"] }
domain = { git = "https://github.com/NLnetLabs/domain.git", branch = "main", features = [
"bytes",
"net",
"resolv",
"tokio-stream",
"tsig",
"unstable-client-transport",
"unstable-sign",
"unstable-validator",
"unstable-zonetree"
] }
domain-kmip = { git = "https://github.com/NLnetLabs/domain-kmip.git", branch = "main", optional = true, features = [
] }
indenter = { version = "0.3.4", optional = true }
lexopt = "0.3.0"
rayon = "1.10.0"
octseq = "0.5.2"
rand = { version = "0.9.2", optional = true }
ring = "0.17.8"
tokio = "1.40.0"
openssl = { version = "*", features = ["vendored"], optional = true }
# LDNS-xxx mode specific dependencies.
# TODO: put these behind a feature gate?
jiff = { version = "0.2", default-features = false, features = ["alloc", "std"] }
# This is a workaround. lazy_static 1.0.0 fails to compile, but sharded-slab
# still uses it. And sharded-slab is used by tracing-subscriber, which is
# used by domain, which is used by us.
_unused_lazy_static = { package = "lazy_static", version = "1.0.2" }
serde_json = "1.0.137"
serde = "1.0.217"
tracing = "0.1.41"
tracing-subscriber = "0.3.19"
url = "2.5.4"
futures = "0.3.31"
fs2 = "0.4.3"
same-file = "1.0.6"
supports-color = "3.0.2"
[dev-dependencies]
const_format = " 0.2.33"
test_bin = "0.4.0"
tempfile = "3.20.0"
regex = "1.11.1"
domain = { git = "https://github.com/NLnetLabs/domain.git", branch = "main", features = [
"unstable-stelline",
] }
pretty_assertions = "1.4.1"
# Related reading: https://wiki.debian.org/Teams/RustPackaging/Policy
[package.metadata.deb]
depends = "$auto"
section = "net"
priority = "optional"
assets = [
["target/release/dnst", "usr/bin/", "755"],
["README.md", "usr/share/doc/dnst/", "644"],
# TODO: Extend Ploutos to generate the man pages from sources.
["doc/manual/build/man/dnst.1", "/usr/share/man/man1/dnst.1", "644"],
["doc/manual/build/man/dnst-key2ds.1", "/usr/share/man/man1/dnst-key2ds.1", "644"],
["doc/manual/build/man/dnst-keygen.1", "/usr/share/man/man1/dnst-keygen.1", "644"],
["doc/manual/build/man/dnst-keyset.1", "/usr/share/man/man1/dnst-keyset.1", "644"],
["doc/manual/build/man/dnst-notify.1", "/usr/share/man/man1/dnst-notify.1", "644"],
["doc/manual/build/man/dnst-nsec3-hash.1", "/usr/share/man/man1/dnst-nsec3-hash.1", "644"],
["doc/manual/build/man/dnst-signzone.1", "/usr/share/man/man1/dnst-signzone.1", "644"],
["doc/manual/build/man/dnst-update.1", "/usr/share/man/man1/dnst-update.1", "644"],
]
changelog = "target/debian/changelog" # this will be generated by the pkg workflow
copyright = "Copyright (c) 2024, NLnet Labs. All rights reserved."
maintainer-scripts = "pkg/debian"
# Related reading: https://docs.fedoraproject.org/en-US/packaging-guidelines/Rust/
[package.metadata.generate-rpm]
assets = [
{ source = "target/release/dnst", dest = "/usr/bin/dnst", mode = "755" },
# TODO: Extend Ploutos to generate the man pages from sources.
{ source = "doc/manual/build/man/dnst.1", dest = "/usr/share/man/man1/dnst.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-key2ds.1", dest = "/usr/share/man/man1/dnst-key2ds.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-keygen.1", dest = "/usr/share/man/man1/dnst-keygen.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-keyset.1", dest = "/usr/share/man/man1/dnst-keyset.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-notify.1", dest = "/usr/share/man/man1/dnst-notify.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-nsec3-hash.1", dest = "/usr/share/man/man1/dnst-nsec3-hash.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-signzone.1", dest = "/usr/share/man/man1/dnst-signzone.1", mode = "644", doc = true },
{ source = "doc/manual/build/man/dnst-update.1", dest = "/usr/share/man/man1/dnst-update.1", mode = "644", doc = true },
]