diff --git a/Cargo.lock b/Cargo.lock index c3a979fa..7dbf76bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -46,7 +46,7 @@ dependencies = [ [[package]] name = "asus-nb-ctrl" -version = "2.0.2" +version = "2.0.3" dependencies = [ "asus-nb", "ctrl-gfx", @@ -189,7 +189,7 @@ dependencies = [ [[package]] name = "ctrl-gfx" -version = "2.1.0" +version = "2.1.1" dependencies = [ "log", "sysfs-class", diff --git a/asus-nb-ctrl/Cargo.toml b/asus-nb-ctrl/Cargo.toml index 7c49fccd..8bc9407d 100644 --- a/asus-nb-ctrl/Cargo.toml +++ b/asus-nb-ctrl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "asus-nb-ctrl" -version = "2.0.2" +version = "2.0.3" license = "MPL-2.0" readme = "README.md" authors = ["Luke "] diff --git a/asus-nb-ctrl/src/ctrl_anime.rs b/asus-nb-ctrl/src/ctrl_anime.rs index 95331acf..c54d0595 100644 --- a/asus-nb-ctrl/src/ctrl_anime.rs +++ b/asus-nb-ctrl/src/ctrl_anime.rs @@ -40,7 +40,11 @@ impl crate::ZbusAdd for CtrlAnimeDisplay { fn add_to_server(self, server: &mut zbus::ObjectServer) { server .at(&"/org/asuslinux/Anime".try_into().unwrap(), self) - .unwrap(); + .map_err(|err| { + warn!("CtrlAnimeDisplay: add_to_server {}", err); + err + }) + .ok(); } } diff --git a/asus-nb-ctrl/src/ctrl_charge.rs b/asus-nb-ctrl/src/ctrl_charge.rs index 19352c76..cb276111 100644 --- a/asus-nb-ctrl/src/ctrl_charge.rs +++ b/asus-nb-ctrl/src/ctrl_charge.rs @@ -26,8 +26,18 @@ trait Dbus { impl Dbus for CtrlCharge { fn set_limit(&mut self, limit: u8) { if let Ok(mut config) = self.config.try_lock() { - self.set(limit, &mut config).unwrap(); - self.notify_charge(limit).unwrap(); + self.set(limit, &mut config) + .map_err(|err| { + warn!("CtrlCharge: set_limit {}", err); + err + }) + .ok(); + self.notify_charge(limit) + .map_err(|err| { + warn!("CtrlCharge: set_limit {}", err); + err + }) + .ok(); } } @@ -46,7 +56,11 @@ impl crate::ZbusAdd for CtrlCharge { fn add_to_server(self, server: &mut zbus::ObjectServer) { server .at(&"/org/asuslinux/Charge".try_into().unwrap(), self) - .unwrap(); + .map_err(|err| { + warn!("CtrlCharge: add_to_server {}", err); + err + }) + .ok(); } } diff --git a/asus-nb-ctrl/src/ctrl_fan_cpu.rs b/asus-nb-ctrl/src/ctrl_fan_cpu.rs index 803565dc..c31e8ae8 100644 --- a/asus-nb-ctrl/src/ctrl_fan_cpu.rs +++ b/asus-nb-ctrl/src/ctrl_fan_cpu.rs @@ -79,7 +79,11 @@ impl crate::ZbusAdd for DbusFanAndCpu { fn add_to_server(self, server: &mut zbus::ObjectServer) { server .at(&"/org/asuslinux/Profile".try_into().unwrap(), self) - .unwrap(); + .map_err(|err| { + warn!("DbusFanAndCpu: {}", err); + err + }) + .ok(); } } @@ -311,7 +315,7 @@ impl CtrlFanAndCPU { let boost = if mode_config.turbo { "1" } else { "0" }; // opposite of Intel file.write_all(boost.as_bytes()) - .map_err(|err| RogError::Write(AMD_BOOST_PATH.into(), err))?; + .map_err(|err| RogError::Write(AMD_BOOST_PATH.into(), err))?; info!("AMD CPU Turbo: {}", boost); } Ok(()) diff --git a/asus-nb-ctrl/src/ctrl_leds.rs b/asus-nb-ctrl/src/ctrl_leds.rs index b868c7f3..35f02ad9 100644 --- a/asus-nb-ctrl/src/ctrl_leds.rs +++ b/asus-nb-ctrl/src/ctrl_leds.rs @@ -42,7 +42,7 @@ impl crate::ZbusAdd for DbusKbdBacklight { fn add_to_server(self, server: &mut zbus::ObjectServer) { server .at(&"/org/asuslinux/Led".try_into().unwrap(), self) - .unwrap(); + .ok(); } } @@ -58,10 +58,11 @@ impl DbusKbdBacklight { .unwrap_or_else(|err| warn!("{}", err)); } _ => { - let json = serde_json::to_string(&data).unwrap(); - ctrl.do_command(data, &mut cfg) - .unwrap_or_else(|err| warn!("{}", err)); - self.notify_led(&json).unwrap(); + if let Ok(json) = serde_json::to_string(&data) { + ctrl.do_command(data, &mut cfg) + .unwrap_or_else(|err| warn!("{}", err)); + self.notify_led(&json).ok(); + } } } } @@ -233,8 +234,11 @@ impl CtrlKbdBacklight { RogError::Udev("parent_with_subsystem_devtype failed".into(), err) })? { - if parent.attribute_value("idProduct").unwrap() == id_product { - // && device.parent().unwrap().sysnum().unwrap() == 3 + if parent + .attribute_value("idProduct") + .ok_or(RogError::NotFound("LED idProduct".into()))? + == id_product + { if let Some(dev_node) = device.devnode() { info!("Using device at: {:?} for LED control", dev_node); return Ok(dev_node.to_string_lossy().to_string()); @@ -264,13 +268,17 @@ impl CtrlKbdBacklight { RogError::Udev("match_property failed".into(), err) })?; - for device in enumerator.scan_devices().map_err(|err| { - warn!("{}", err); - err - }).map_err(|err| { - warn!("{}", err); - RogError::Udev("scan_devices failed".into(), err) - })? { + for device in enumerator + .scan_devices() + .map_err(|err| { + warn!("{}", err); + err + }) + .map_err(|err| { + warn!("{}", err); + RogError::Udev("scan_devices failed".into(), err) + })? + { if let Some(dev_node) = device.devnode() { if let Some(inum) = device.property_value("ID_USB_INTERFACE_NUM") { if let Some(iface) = iface { @@ -298,8 +306,7 @@ impl CtrlKbdBacklight { fn write_bytes(&self, message: &[u8]) -> Result<(), RogError> { if let Some(led_node) = &self.led_node { if let Ok(mut file) = OpenOptions::new().write(true).open(led_node) { - file.write_all(message).unwrap(); - return Ok(()); + return file.write_all(message).map_err(|err| RogError::Write("write_bytes".into(), err)); } } Err(RogError::NotSupported) diff --git a/asus-nb-ctrl/src/daemon.rs b/asus-nb-ctrl/src/daemon.rs index 32b13433..2cce5e49 100644 --- a/asus-nb-ctrl/src/daemon.rs +++ b/asus-nb-ctrl/src/daemon.rs @@ -126,7 +126,7 @@ fn start_daemon() -> Result<(), Box> { for ctrl in tasks.iter() { if let Ok(mut lock) = ctrl.try_lock() { - lock.do_task().unwrap(); + lock.do_task().ok(); } } }); diff --git a/asus-nb-ctrl/src/lib.rs b/asus-nb-ctrl/src/lib.rs index 36a63708..bff66b9b 100644 --- a/asus-nb-ctrl/src/lib.rs +++ b/asus-nb-ctrl/src/lib.rs @@ -19,7 +19,7 @@ use config::Config; use crate::error::RogError; use zbus::ObjectServer; -pub static VERSION: &str = "2.0.2"; +pub static VERSION: &str = "2.0.3"; pub trait Reloadable { fn reload(&mut self) -> Result<(), RogError>; diff --git a/asus-nb/src/core_dbus.rs b/asus-nb/src/core_dbus.rs index 1e4e4c02..48b6452b 100644 --- a/asus-nb/src/core_dbus.rs +++ b/asus-nb/src/core_dbus.rs @@ -237,7 +237,7 @@ impl AuraDbusClient { "/org/asuslinux/Gfx", Duration::from_millis(5000), ); - let x = proxy.power().unwrap(); + let x = proxy.power()?; Ok(x) } @@ -248,7 +248,7 @@ impl AuraDbusClient { "/org/asuslinux/Gfx", Duration::from_millis(5000), ); - let x = proxy.vendor().unwrap(); + let x = proxy.vendor()?; Ok(x) } diff --git a/asus-notify/src/main.rs b/asus-notify/src/main.rs index b6e7cc85..de905a23 100644 --- a/asus-notify/src/main.rs +++ b/asus-notify/src/main.rs @@ -6,6 +6,8 @@ use std::error::Error; use std::time::Duration; fn main() -> Result<(), Box> { + println!("Version 1.0.1"); + let mut cfg = Config::read_new()?; let mut last_profile = String::new(); diff --git a/ctrl-gfx/Cargo.toml b/ctrl-gfx/Cargo.toml index db44b8fe..c18eb821 100644 --- a/ctrl-gfx/Cargo.toml +++ b/ctrl-gfx/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ctrl-gfx" -version = "2.1.0" +version = "2.1.1" license = "MPL-2.0" readme = "README.md" authors = ["Luke "] diff --git a/ctrl-gfx/src/ctrl_gfx.rs b/ctrl-gfx/src/ctrl_gfx.rs index 667350d9..a3e26734 100644 --- a/ctrl-gfx/src/ctrl_gfx.rs +++ b/ctrl-gfx/src/ctrl_gfx.rs @@ -37,15 +37,11 @@ use std::convert::TryInto; #[dbus_interface(name = "org.asuslinux.Daemon")] impl Dbus for CtrlGraphics { fn vendor(&self) -> String { - Self::get_vendor() - .map_err(|err| format!("Get vendor failed: {}", err)) - .unwrap() + Self::get_vendor().unwrap_or_else(|err| format!("Get vendor failed: {}", err)) } fn power(&self) -> String { - Self::get_runtime_status() - .map_err(|err| format!("Get power status failed: {}", err)) - .unwrap() + Self::get_runtime_status().unwrap_or_else(|err| format!("Get power status failed: {}", err)) } fn set_vendor(&mut self, vendor: String) { @@ -149,7 +145,11 @@ impl CtrlGraphics { pub fn add_to_server(self, server: &mut zbus::ObjectServer) { server .at(&"/org/asuslinux/Gfx".try_into().unwrap(), self) - .unwrap(); + .map_err(|err| { + warn!("CtrlGraphics: add_to_server {}", err); + err + }) + .ok(); } pub fn reload(&mut self) -> Result<(), Box> { @@ -328,8 +328,7 @@ impl CtrlGraphics { // } pub fn get_runtime_status() -> Result { const PATH: &str = "/sys/bus/pci/devices/0000:01:00.0/power/runtime_status"; - let buf = std::fs::read_to_string(PATH) - .map_err(|err| GfxError::Read(PATH.into(), err))?; + let buf = std::fs::read_to_string(PATH).map_err(|err| GfxError::Read(PATH.into(), err))?; Ok(buf) } diff --git a/ctrl-gfx/src/system.rs b/ctrl-gfx/src/system.rs index dfeb1d6a..674db898 100644 --- a/ctrl-gfx/src/system.rs +++ b/ctrl-gfx/src/system.rs @@ -121,7 +121,7 @@ impl GraphicsDevice { warn!("{}: Already removed", func.id()); } } - info!("Remmoved all gfx devices"); + info!("Removed all gfx devices"); Ok(()) } }