Platform support
Desktop / server
Mobile (client-embedding only, not daemon)
Embedded in an app via FFI (JNI on Android, Swift/C ABI on iOS), using the in-process HoverflyClient model (same as the wasm build, not daemon.rs). Node lifetime = app foreground lifetime (e.g. a browser app whose node runs only while the browser is open). Outbound-only; no IPC daemon, no inbound node (NAT/CGNAT makes a phone node pointless anyway).
Other
Shared blocker across BSD/mobile targets
Native deps gate most of these: getrandom (per-OS entropy syscall), rustls via ring (spotty BSD asm), and libp2p crypto (noise/secp256k1). Resolving the rustls/ring backend likely unblocks several targets at once.
Platform support
Desktop / server
getrandom/ring/libp2p crypto wiring). Best-supported remaining BSD.Mobile (client-embedding only, not daemon)
Embedded in an app via FFI (JNI on Android, Swift/C ABI on iOS), using the in-process
HoverflyClientmodel (same as the wasm build, notdaemon.rs). Node lifetime = app foreground lifetime (e.g. a browser app whose node runs only while the browser is open). Outbound-only; no IPC daemon, no inbound node (NAT/CGNAT makes a phone node pointless anyway).aarch64-linux-androidprimary) — Linux underneath so#[cfg(unix)]compiles; build viacargo-ndk. A long-lived background node is technically possible (foreground service +REQUEST_IGNORE_BATTERY_OPTIMIZATIONS) but unnecessary and Play-Store-restricted — foreground-lifetime embedding is the right model.aarch64-apple-ios+-sim) — daemon-less by hard platform constraint (no persistent background user processes). Foreground-lifetime embedded client only.Other
Raspberry pialready covered by aarch64no_stdimplementation)Shared blocker across BSD/mobile targets
Native deps gate most of these:
getrandom(per-OS entropy syscall), rustls viaring(spotty BSD asm), andlibp2pcrypto (noise/secp256k1). Resolving the rustls/ringbackend likely unblocks several targets at once.