extern crate sysf; extern crate async_std; use sysf::config::loader::Loader; use async_std::task; use crate::manager::{Manager, ManagerSignal}; use std::time::Duration; use async_std::process::exit; use std::sync::{Arc, Mutex}; mod manager; #[async_std::main] async fn main() { let loader = Loader::with_root("/home/eater/projects/systemf/resources/systemd-root"); let mut manager = Manager::new(loader); manager.target("sysinit.target"); let mut remote = manager.get_remote(); task::spawn(async move { task::sleep(Duration::from_secs(10)).await; remote.signal(ManagerSignal::Noop); }); manager.run().await; }