|
1 |
| -use std::{env, io}; |
2 |
| -use system76_keyboard_configurator::backend::{Daemon, DaemonClient, DaemonServer}; |
3 |
| - |
4 |
| -fn daemon_server() -> Result<DaemonServer<io::Stdin, io::Stdout>, String> { |
5 |
| - DaemonServer::new(io::stdin(), io::stdout()) |
6 |
| -} |
| 1 | +use std::env; |
| 2 | +use system76_keyboard_configurator::backend::{run_daemon, Backend}; |
7 | 3 |
|
8 | 4 | #[cfg(target_os = "linux")]
|
9 |
| -fn with_daemon<F: Fn(Box<dyn Daemon>)>(f: F) { |
| 5 | +fn with_daemon<F: Fn(Backend)>(f: F) { |
10 | 6 | if unsafe { libc::geteuid() == 0 } {
|
11 | 7 | eprintln!("Already running as root");
|
12 |
| - let server = daemon_server().expect("Failed to create server"); |
13 |
| - f(Box::new(server)); |
| 8 | + let server = Backend::new().expect("Failed to create server"); |
| 9 | + f(server); |
14 | 10 | return;
|
15 | 11 | }
|
16 | 12 |
|
17 |
| - f(Box::new(DaemonClient::new_pkexec())); |
| 13 | + f(Backend::new_pkexec().unwrap()); |
18 | 14 | }
|
19 | 15 |
|
20 | 16 | #[cfg(not(target_os = "linux"))]
|
21 | 17 | fn with_daemon<F: Fn(Box<dyn Daemon>)>(f: F) {
|
22 |
| - let server = daemon_server().expect("Failed to create server"); |
23 |
| - f(Box::new(server)); |
| 18 | + let server = Backend::new().expect("Failed to create server"); |
| 19 | + f(server); |
24 | 20 | }
|
25 | 21 |
|
26 | 22 | fn main() {
|
27 | 23 | for arg in env::args().skip(1) {
|
28 | 24 | if arg.as_str() == "--daemon" {
|
29 |
| - let server = daemon_server().expect("Failed to create server"); |
30 |
| - server.run().expect("Failed to run server"); |
31 |
| - return; |
| 25 | + run_daemon() |
32 | 26 | }
|
33 | 27 | }
|
34 | 28 |
|
35 |
| - with_daemon(|daemon| { |
36 |
| - println!("boards: {:?}", daemon.boards()); |
| 29 | + with_daemon(|_daemon| { |
| 30 | + // println!("boards: {:?}", daemon.boards()); |
37 | 31 | });
|
38 | 32 | }
|
0 commit comments