-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCargo.toml
More file actions
63 lines (59 loc) · 2.24 KB
/
Copy pathCargo.toml
File metadata and controls
63 lines (59 loc) · 2.24 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
[package]
name = "innisfree"
version = "0.4.1"
authors = ["Conor Schaefer <conor@ruin.dev>"]
edition = "2021"
description = "Exposes local services on public IPv4 address, via cloud server."
license = "AGPL-3.0-only"
readme = "README.md"
publish = true
repository = "https://github.com/conorsch/innisfree"
categories = ["command-line-utilities", "network-programming"]
keywords = ["self-hosting", "wireguard"]
[features]
# Enables tests that only make sense against a binary built via the flake
# (currently: asserting the binary is fully statically linked).
nix = []
# Enables the live end-to-end test in `tests/integration_test.rs`. The test
# provisions a real DigitalOcean droplet, so it requires DIGITALOCEAN_API_TOKEN
# and CAP_NET_ADMIN on the binary. Run via `tools/test-runner`.
integration = []
[dependencies]
anyhow = "1"
async-trait = "0.1"
base64 = "0.22"
boringtun = { version = "0.7", features = ["device"] }
clap = { version = "4", features = ["env", "derive", "cargo"] }
futures = "0.3"
home = "~0.5"
if-addrs = "~0.15"
ipnet = "~2"
ssh-key = { version = "0.6", features = ["ed25519"] }
rand = "~0.8"
reqwest = { version = "0.11", default-features = false, features = ["json", "rustls-tls"] }
rand_core = { version = "0.6", features = ["getrandom"] }
rtnetlink = "0.14"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.8"
tera = "1"
tokio = { version = "1.27", features = [ "io-util", "macros", "net", "process", "rt-multi-thread", "signal", "time"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "ansi"] }
x25519-dalek = { version = "2.0", features = ["static_secrets"] }
[dev-dependencies]
# `tokio::process::Child` exposes kill() but not arbitrary signals; we need
# to send SIGINT to `innisfree up` so it can gracefully destroy the cloud
# droplet during integration-test teardown.
libc = "0.2"
[package.metadata.deb]
maintainer-scripts = "debian/"
depends = "$auto"
extended-description = "Creates a remote host in the cloud, then establishes a Wireguard tunnel to it. Only supports proxying TCP traffic, for now."
assets = [
["target/release/innisfree", "usr/bin/", "755"],
["innisfree@.service", "usr/lib/systemd/system/", "644"],
]
name = "innisfree"
priority = "optional"
section = "net"