atagen

headroom

public
Star0
Watch0
b4f9722db37afb8ec0881327edf1a085c821d6a9
1
ssh://brewery@pls.lobotomise.me:33/atagen/headroom.git

Blame: crates/headroom-gui/Cargo.toml

c19702ae09beatagen2026-05-27 15:49 UTC1
[package]
c19702ae09beatagen2026-05-27 15:49 UTC2
name = "headroom-gui"
c19702ae09beatagen2026-05-27 15:49 UTC3
version.workspace = true
c19702ae09beatagen2026-05-27 15:49 UTC4
# optional, additive crate: pulls iced's gpu/system-lib stack (wgpu,
c19702ae09beatagen2026-05-27 15:49 UTC5
# cosmic-text, winit), *not* part of the graphics-free daemon/cli build.
c19702ae09beatagen2026-05-27 15:49 UTC6
# build from the nix dev shell or the `headroom-gui` nix package; both
c19702ae09beatagen2026-05-27 15:49 UTC7
# supply iced's system libs.
c19702ae09beatagen2026-05-27 15:49 UTC8
edition = "2021"
c19702ae09beatagen2026-05-27 15:49 UTC9
license.workspace = true
c19702ae09beatagen2026-05-27 15:49 UTC10
homepage.workspace = true
c19702ae09beatagen2026-05-27 15:49 UTC11
repository.workspace = true
c19702ae09beatagen2026-05-27 15:49 UTC12
authors.workspace = true
c19702ae09beatagen2026-05-27 15:49 UTC13
c19702ae09beatagen2026-05-27 15:49 UTC14
[[bin]]
c19702ae09beatagen2026-05-27 15:49 UTC15
name = "headroom-gui"
c19702ae09beatagen2026-05-27 15:49 UTC16
path = "src/main.rs"
c19702ae09beatagen2026-05-27 15:49 UTC17
c19702ae09beatagen2026-05-27 15:49 UTC18
[dependencies]
c19702ae09beatagen2026-05-27 15:49 UTC19
# internal — same control-plane client/types the ratatui tui uses.
c19702ae09beatagen2026-05-27 15:49 UTC20
headroom-client = { workspace = true }
c19702ae09beatagen2026-05-27 15:49 UTC21
headroom-ipc    = { workspace = true }
c19702ae09beatagen2026-05-27 15:49 UTC22
c19702ae09beatagen2026-05-27 15:49 UTC23
# iced ui, trimmed feature set on purpose:
c19702ae09beatagen2026-05-27 15:49 UTC24
#  - default-features off drops `linux-theme-detection` (pulls zbus +
c19702ae09beatagen2026-05-27 15:49 UTC25
#    async-process + async-io just to probe the desktop theme — we
c19702ae09beatagen2026-05-27 15:49 UTC26
#    hardcode dark), plus `web-colors` / `crisp` cosmetics.
c19702ae09beatagen2026-05-27 15:49 UTC27
#  - `wgpu` + `tiny-skia` (software fallback) renderers, `wayland` only.
c19702ae09beatagen2026-05-27 15:49 UTC28
#  - `smol` backs the `time::every` timer (no `tokio`); `thread-pool` is
c19702ae09beatagen2026-05-27 15:49 UTC29
#    the subscription executor.
c19702ae09beatagen2026-05-27 15:49 UTC30
# net: ~199 crates vs gpui-component's ~525 (no av1 encoder, no http stack).
c19702ae09beatagen2026-05-27 15:49 UTC31
#
c19702ae09beatagen2026-05-27 15:49 UTC32
# x11 off: add iced's `"x11"` feature here (and the x11 client libs back
c19702ae09beatagen2026-05-27 15:49 UTC33
# to `guiLibs` in flake.nix) to build the x11 backend.
c19702ae09beatagen2026-05-27 15:49 UTC34
iced = { version = "0.14", default-features = false, features = [
c19702ae09beatagen2026-05-27 15:49 UTC35
    "wgpu",
c19702ae09beatagen2026-05-27 15:49 UTC36
    "tiny-skia",
c19702ae09beatagen2026-05-27 15:49 UTC37
    "wayland",
c19702ae09beatagen2026-05-27 15:49 UTC38
    "thread-pool",
c19702ae09beatagen2026-05-27 15:49 UTC39
    "smol",
c19702ae09beatagen2026-05-27 15:49 UTC40
] }
c19702ae09beatagen2026-05-27 15:49 UTC41
c19702ae09beatagen2026-05-27 15:49 UTC42
# bridge: reader thread → ui channel.
c19702ae09beatagen2026-05-27 15:49 UTC43
crossbeam-channel = { workspace = true }
c19702ae09beatagen2026-05-27 15:49 UTC44
c19702ae09beatagen2026-05-27 15:49 UTC45
# json event decoding (mirrors the tui's `apply_event`).
c19702ae09beatagen2026-05-27 15:49 UTC46
serde_json = { workspace = true }
c19702ae09beatagen2026-05-27 15:49 UTC47
c19702ae09beatagen2026-05-27 15:49 UTC48
# errors / logging.
c19702ae09beatagen2026-05-27 15:49 UTC49
anyhow             = "1.0"
c19702ae09beatagen2026-05-27 15:49 UTC50
tracing            = { workspace = true }
c19702ae09beatagen2026-05-27 15:49 UTC51
tracing-subscriber = { workspace = true }