pop-launcher/bin/src/main.rs

31 lines
1,003 B
Rust

use pop_launcher_plugins as plugins;
use pop_launcher_service::Service;
use smol::block_on;
use std::io;
fn main() {
tracing_subscriber::fmt()
.with_writer(io::stderr)
.with_env_filter(tracing_subscriber::EnvFilter::from_default_env())
.init();
std::env::args();
if let Some(plugin) = std::env::args().next() {
let start = plugin.rfind('/').map(|v| v + 1).unwrap_or(0);
let cmd = &plugin.as_str()[start..];
match cmd {
"pop-launcher" => {
let stdout = io::stdout();
block_on(Service::new(stdout.lock()).exec())
},
"desktop-entries" => block_on(plugins::desktop_entries::main()),
"pop-shell" => block_on(plugins::pop_shell::main()),
"find" => block_on(plugins::find::main()),
"scripts" => block_on(plugins::scripts::main()),
unknown => {
eprintln!("unknown cmd: {}", unknown);
}
}
}
}