mirror of
https://github.com/usestrix/firewall.git
synced 2026-11-10 05:11:24 -10:00
* Show screening status in the Windows notification area firewall-tray.exe shows a tray icon: whether the service is screening, paused or not running, with Pause/Resume and Open log. The MSI starts it at every sign-in and closes it before replacing or removing it. The icon is the Strix logo, white on a dark taskbar and black on a light one like the macOS template image, and dimmed when not screening. tray.png is assets/logo-transparent.png scaled and padded to 32x32: sips -Z 32 logo-transparent.png --out a.png && sips -p 32 32 a.png --out tray.png * Open the folder of dated service logs from the tray
131 lines
3.4 KiB
TOML
131 lines
3.4 KiB
TOML
[package]
|
|
name = "strix-firewall"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "Apache-2.0"
|
|
authors = ["Strix"]
|
|
description = "Screens package downloads for known malware before they reach your machine"
|
|
repository = "https://github.com/usestrix/firewall"
|
|
homepage = "https://github.com/usestrix/firewall"
|
|
# The proxy-test example lives under tests/, which cargo would otherwise claim
|
|
# as an integration test; new tests/*.rs need an explicit [[test]] entry.
|
|
autotests = false
|
|
|
|
# Only Windows ships the service and tray.
|
|
[package.metadata.dist.binaries]
|
|
x86_64-pc-windows-msvc = ["firewall", "firewall-service", "firewall-tray"]
|
|
aarch64-apple-darwin = ["firewall"]
|
|
x86_64-apple-darwin = ["firewall"]
|
|
aarch64-unknown-linux-gnu = ["firewall"]
|
|
x86_64-unknown-linux-gnu = ["firewall"]
|
|
|
|
[package.metadata.wix]
|
|
upgrade-guid = "D944C2F6-BF55-4B21-A60E-1BBDB1A66293"
|
|
path-guid = "033B1050-23D0-4F5A-A0D3-F4757B4B67E0"
|
|
license = false
|
|
eula = false
|
|
|
|
[lib]
|
|
name = "firewall"
|
|
# The macOS extension links a staticlib, built on demand:
|
|
# cargo rustc --lib --crate-type staticlib
|
|
crate-type = ["lib"]
|
|
|
|
[[bin]]
|
|
name = "firewall"
|
|
path = "src/main.rs"
|
|
|
|
[[bin]]
|
|
name = "firewall-service"
|
|
path = "src/bin/firewall-service.rs"
|
|
|
|
[[bin]]
|
|
name = "firewall-tray"
|
|
path = "src/bin/firewall-tray.rs"
|
|
|
|
[[bin]]
|
|
name = "firewall-uninstall"
|
|
path = "src/bin/firewall-uninstall.rs"
|
|
|
|
[[example]]
|
|
name = "proxy-test"
|
|
path = "tests/proxy-test/main.rs"
|
|
|
|
[[test]]
|
|
name = "forward"
|
|
path = "tests/forward.rs"
|
|
|
|
[[test]]
|
|
name = "registries"
|
|
path = "tests/registries.rs"
|
|
|
|
[[test]]
|
|
name = "config"
|
|
path = "tests/config.rs"
|
|
|
|
[[test]]
|
|
name = "denylist"
|
|
path = "tests/denylist.rs"
|
|
|
|
[[test]]
|
|
name = "osv"
|
|
path = "tests/osv.rs"
|
|
|
|
[[test]]
|
|
name = "age"
|
|
path = "tests/age.rs"
|
|
|
|
[[test]]
|
|
name = "mitm"
|
|
path = "tests/mitm.rs"
|
|
|
|
[[test]]
|
|
name = "tpm"
|
|
path = "tests/tpm.rs"
|
|
|
|
[[test]]
|
|
name = "managers"
|
|
path = "tests/managers.rs"
|
|
|
|
[dependencies]
|
|
clap = "4.6.6"
|
|
directories = "6.0.0"
|
|
percent-encoding = "2.3.2"
|
|
rama = { version = "0.4.0", features = ["boring", "http-full", "ring", "rustls"] }
|
|
rand = "0.10.2"
|
|
rcgen = "0.14.10"
|
|
regex = "1.13.1"
|
|
semver = "1.0.28"
|
|
serde = { version = "1.0.229", features = ["derive"] }
|
|
serde_json = "1.0.151"
|
|
time = { version = "0.3.47", features = ["formatting", "parsing"] }
|
|
tokio = { version = "1.53.1", features = ["io-util", "rt", "sync", "time"] }
|
|
tracing = "0.1.44"
|
|
tracing-subscriber = { version = "0.3.23", features = ["env-filter"] }
|
|
which = "8"
|
|
|
|
[target.'cfg(target_vendor = "apple")'.dependencies]
|
|
core-foundation = "0.10.1"
|
|
rama = { version = "0.4.0", features = ["net-apple-networkextension"] }
|
|
security-framework = "3.7.0"
|
|
security-framework-sys = "2.17.0"
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
muda = { version = "0.21.2", default-features = false }
|
|
png = "0.18.1"
|
|
rama = { version = "0.4.0", features = ["dns-hickory"] }
|
|
schannel = "0.1.29"
|
|
tokio = { version = "1.53.1", features = ["net"] }
|
|
tracing-appender = "0.2.5"
|
|
tray-icon = { version = "0.26.1", default-features = false }
|
|
windows = { version = "0.62", features = ["Win32_Foundation", "Win32_Security", "Win32_Security_Authorization", "Win32_Security_Cryptography", "Win32_System_Com", "Win32_System_Environment", "Win32_System_Threading", "Win32_UI_Shell", "Win32_UI_WindowsAndMessaging"] }
|
|
windows-registry = "0.6.1"
|
|
windows-service = "0.8.0"
|
|
|
|
[dev-dependencies]
|
|
tokio = { version = "1.53.1", features = ["macros", "rt-multi-thread"] }
|
|
|
|
[profile.dist]
|
|
inherits = "release"
|
|
lto = "thin"
|