[package] name = "kestrove-desktop" version = "0.1.0" edition = "2021" rust-version = "1.82" license = "Apache-2.0" publish = false # Shared by the app, the native-messaging host and the integration tests. [lib] name = "kestrove_desktop" path = "src/lib.rs" [[bin]] name = "kestrove-desktop" path = "src/main.rs" # Native messaging host: started by the browser, relays to the running app (docs/05). [[bin]] name = "kestrove-nmh" path = "src/bin/kestrove-nmh.rs" [build-dependencies] tauri-build = { version = "2", features = [] } [dependencies] # Repos are checked out side by side (see ../../README.md). kv-ffi = { path = "../../kestrove-core/crates/kv-ffi" } tauri = { version = "2", features = ["tray-icon"] } serde = { version = "1", features = ["derive"] } serde_json = "1" arboard = "3" # Browser pairing channel (docs/05): X25519 + HKDF-SHA256 + AES-256-GCM (what WebCrypto offers on the extension side). x25519-dalek = { version = "2", features = ["static_secrets", "zeroize"] } hkdf = "0.12" sha2 = "0.10" aes-gcm = "0.10" getrandom = "0.2" base64 = "0.22" uuid = { version = "1", features = ["v4"] } url = "2" zeroize = "1" [target.'cfg(unix)'.dependencies] libc = "0.2" [target.'cfg(windows)'.dependencies] windows-sys = { version = "0.61", features = [ "Win32_Foundation", "Win32_Security", "Win32_Security_Authorization", "Win32_Storage_FileSystem", "Win32_System_IO", "Win32_System_Pipes", "Win32_System_Threading", "Win32_System_StationsAndDesktops", "Win32_System_SystemInformation", "Win32_UI_Input_KeyboardAndMouse", ] } [target.'cfg(target_os = "macos")'.dependencies] core-foundation = "0.10" [dev-dependencies] tempfile = "3" [profile.release] lto = true codegen-units = 1 panic = "abort" strip = true