agent: wayland — evdev hotkey backend, download resume, SHA256 integrity
Add kon-hotkey crate with evdev-based global hotkey capture that works on Wayland (and X11). Patterns from whisper-overlay: per-device async listeners, inotify hotplug with udev permission retry, watch channel for live config updates. Frontend detects Wayland at startup and selects evdev or tauri-plugin-global-shortcut automatically. Model downloads now support HTTP Range resume for interrupted downloads and optional SHA256 integrity verification (incremental, no second pass). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
16
crates/hotkey/Cargo.toml
Normal file
16
crates/hotkey/Cargo.toml
Normal file
@@ -0,0 +1,16 @@
|
||||
[package]
|
||||
name = "kon-hotkey"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
description = "Wayland-compatible global hotkey listener for Kon — evdev backend with device hotplug"
|
||||
|
||||
[dependencies]
|
||||
kon-core = { path = "../core" }
|
||||
tokio = { version = "1", features = ["rt", "sync", "macros", "time"] }
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
log = "0.4"
|
||||
|
||||
[target.'cfg(target_os = "linux")'.dependencies]
|
||||
evdev = { version = "0.12", features = ["tokio"] }
|
||||
notify = { version = "7", default-features = false, features = ["macos_fsevent"] }
|
||||
nix = { version = "0.29", features = ["fs"] }
|
||||
Reference in New Issue
Block a user