2025-02-11 23:15:24 -08:00
|
|
|
mod dbus;
|
|
|
|
|
mod daemon;
|
|
|
|
|
|
|
|
|
|
use std::future;
|
|
|
|
|
use std::sync::Arc;
|
|
|
|
|
use log::LevelFilter;
|
2025-02-12 00:32:44 -08:00
|
|
|
|
|
|
|
|
use daemon::Daemon;
|
|
|
|
|
use dbus::endpoint::Endpoint as DbusEndpoint;
|
|
|
|
|
|
2025-02-11 23:15:24 -08:00
|
|
|
fn initialize_logging() {
|
|
|
|
|
env_logger::Builder::from_default_env()
|
|
|
|
|
.filter_level(LevelFilter::Info)
|
|
|
|
|
.format_timestamp_secs()
|
|
|
|
|
.init();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[tokio::main]
|
|
|
|
|
async fn main() {
|
|
|
|
|
initialize_logging();
|
|
|
|
|
|
2025-02-12 00:32:44 -08:00
|
|
|
// Daemon is stored in an Arc so it can be shared with other endpoints eventually.
|
|
|
|
|
let daemon = Arc::new(Daemon::new());
|
|
|
|
|
|
|
|
|
|
let endpoint = DbusEndpoint::new(daemon);
|
2025-02-11 23:15:24 -08:00
|
|
|
endpoint.start().await;
|
|
|
|
|
|
|
|
|
|
future::pending::<()>().await;
|
|
|
|
|
unreachable!()
|
|
|
|
|
}
|