mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 10:18:54 +00:00
The current Rust workspace isn't as consistent as it could be. To make navigation a bit easier, we move a few crates around. Generally, we follow the idea that entry-points should be at the top-level. `rust/` now looks like this (directories only): ``` . ├── cli # Firezone CLI ├── client-ffi # Entry point for Apple & Android ├── gateway # Gateway ├── gui-client # GUI client ├── headless-client # Headless client ├── libs # Library crates ├── relay # Relay ├── target # Compile artifacts ├── tests # Crates for testing └── tools # Local tools ``` To further enforce this structure, we also drop the `firezone-` prefix from all crates that are not top-level binary crates.
49 lines
1.8 KiB
TOML
49 lines
1.8 KiB
TOML
[package]
|
|
name = "firezone-headless-client"
|
|
# mark:next-headless-version
|
|
version = "1.5.5"
|
|
edition = { workspace = true }
|
|
authors = ["Firezone, Inc."]
|
|
license = { workspace = true }
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
anyhow = { workspace = true }
|
|
backoff = { workspace = true }
|
|
bin-shared = { workspace = true }
|
|
clap = { workspace = true, features = ["derive", "env", "string"] }
|
|
client-shared = { workspace = true }
|
|
connlib-model = { workspace = true }
|
|
dns-types = { workspace = true }
|
|
futures = { workspace = true }
|
|
humantime = { workspace = true }
|
|
ip-packet = { workspace = true }
|
|
logging = { workspace = true }
|
|
opentelemetry = { workspace = true, features = ["metrics"] }
|
|
opentelemetry-otlp = { workspace = true, features = ["metrics", "grpc-tonic"] }
|
|
opentelemetry-stdout = { workspace = true, features = ["metrics"] }
|
|
opentelemetry_sdk = { workspace = true, features = ["rt-tokio"] }
|
|
phoenix-channel = { workspace = true }
|
|
rustls = { workspace = true }
|
|
secrecy = { workspace = true }
|
|
socket-factory = { workspace = true }
|
|
telemetry = { workspace = true }
|
|
# This actually relies on many other features in Tokio, so this will probably
|
|
# fail to build outside the workspace. <https://github.com/firezone/firezone/pull/4328#discussion_r1540342142>
|
|
tokio = { workspace = true, features = ["macros", "signal", "process", "time", "fs", "rt"] }
|
|
tokio-stream = { workspace = true }
|
|
tracing = { workspace = true }
|
|
tracing-subscriber = { workspace = true, features = ["env-filter"] }
|
|
url = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
libc = { workspace = true }
|
|
nix = { workspace = true, features = ["fs", "user", "socket"] }
|
|
sd-notify = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "windows")'.dependencies]
|
|
known-folders = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|