TOML · 1583 bytes Raw Blame History
1 [package]
2 name = "hyprkvm-daemon"
3 version.workspace = true
4 edition.workspace = true
5 authors.workspace = true
6 license.workspace = true
7 description = "HyprKVM daemon - Hyprland-native software KVM switch"
8
9 [[bin]]
10 name = "hyprkvm"
11 path = "src/main.rs"
12
13 [features]
14 default = ["gui"]
15 gui = ["iced"]
16
17 [dependencies]
18 hyprkvm-common = { workspace = true }
19
20 # Async runtime
21 tokio = { workspace = true }
22
23 # Serialization
24 serde = { workspace = true }
25 serde_json = { workspace = true }
26 toml = { workspace = true }
27
28 # Error handling
29 thiserror = { workspace = true }
30 anyhow = { workspace = true }
31
32 # Logging
33 tracing = { workspace = true }
34 tracing-subscriber = { workspace = true }
35 tracing-appender = { workspace = true }
36
37 # CLI
38 clap = { workspace = true }
39
40 # Wayland (for input injection/capture)
41 wayland-client = { workspace = true }
42 wayland-protocols = { workspace = true }
43 wayland-protocols-wlr = { workspace = true }
44 wayland-protocols-misc = { workspace = true }
45 smithay-client-toolkit = { workspace = true }
46
47 # TLS
48 tokio-rustls = { workspace = true }
49 rustls = { workspace = true }
50 rustls-pemfile = { workspace = true }
51 rcgen = { workspace = true }
52 sha2 = { workspace = true }
53 time = { workspace = true }
54
55 # Utilities
56 dirs = { workspace = true }
57 bytes = { workspace = true }
58 hostname = { workspace = true }
59 rustix = { workspace = true }
60
61 # Input device handling (evdev)
62 evdev = "0.12"
63
64 # Clipboard
65 wl-clipboard-rs = { workspace = true }
66 hex = { workspace = true }
67 base64 = { workspace = true }
68
69 # GUI (optional)
70 iced = { workspace = true, optional = true }
71
72 [dev-dependencies]
73 tempfile = "3"