wayle-network
WiFi and wired network management via NetworkManager D-Bus.
Installation
Usage
use NetworkService;
use StreamExt;
async
License
MIT
Part of wayle-services.
WiFi and wired network management via NetworkManager D-Bus.
cargo add wayle-network
use wayle_network::NetworkService;
use futures::StreamExt;
async fn example() -> Result<(), wayle_network::Error> {
let net = NetworkService::new().await?;
// wifi is None if no adapter is present
let Some(wifi) = net.wifi.get() else {
println!("no WiFi adapter");
return Ok(());
};
println!("SSID: {:?}, signal: {:?}", wifi.ssid.get(), wifi.strength.get());
// react to connectivity changes
let mut stream = wifi.connectivity.watch();
while let Some(status) = stream.next().await {
println!("connectivity: {status:?}");
}
Ok(())
}
MIT
Part of wayle-services.