f926dbea4e
The host screen pops a desktop notification on each viewer join/leave, so you know someone connected while the window is in the background. Fired on a detached thread (the D-Bus call never touches the egui frame) and gated on the same viewer-list transitions, so stopping the host — which drops the child and stops pumping events — doesn't spray a notification per remaining viewer. notify-rust's default features give the pure-Rust zbus backend, so this adds no system libdbus dependency and no GTK event loop (gui feature only; the headless build is untouched). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
50 lines
1.8 KiB
TOML
50 lines
1.8 KiB
TOML
[package]
|
|
name = "pixelpass"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
description = "P2P screen sharing CLI over iroh"
|
|
license = "MIT OR Apache-2.0"
|
|
publish = false
|
|
|
|
[[bin]]
|
|
name = "pixelpass"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
iroh = "1.0.0-rc.0"
|
|
tokio = { version = "1", features = ["macros", "rt-multi-thread", "io-util", "net", "signal", "process", "sync", "time"] }
|
|
tokio-util = { version = "0.7", features = ["io"] }
|
|
clap = { version = "4", features = ["derive"] }
|
|
anyhow = "1"
|
|
thiserror = "2"
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
nix = { version = "0.30", features = ["signal", "process"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
directories = "5"
|
|
ashpd = { version = "0.9", default-features = false, features = ["tokio"] }
|
|
pipewire = "0.9"
|
|
x11rb = { version = "0.13", default-features = false, features = ["allow-unsafe-code"] }
|
|
uuid = { version = "1", features = ["v4"] }
|
|
iroh-tickets = "1.0.0-rc.0"
|
|
dialoguer = { version = "0.12", default-features = false }
|
|
arboard = { version = "3", default-features = false, features = ["wayland-data-control"] }
|
|
ureq = { version = "3", default-features = false, features = ["rustls"] }
|
|
toml = "1"
|
|
chrono = { version = "0.4", default-features = false, features = ["clock", "serde"] }
|
|
eframe = { version = "0.34.2", default-features = false, features = ["glow", "default_fonts", "wayland", "x11"], optional = true }
|
|
# Desktop notifications on viewer join/leave. Default features give the
|
|
# pure-Rust zbus backend (no system libdbus, no image crate).
|
|
notify-rust = { version = "4", optional = true }
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
codegen-units = 1
|
|
strip = "symbols"
|
|
|
|
[features]
|
|
# Opt-in graphical front-end (pixelpass --gui). Default-off so the headless
|
|
# build never pulls the GUI toolkit tree.
|
|
gui = ["dep:eframe", "dep:notify-rust"]
|