use std::path::PathBuf;
use std::process::Command;
pub struct LookingGlassConfig;
impl LookingGlassConfig {
pub fn find_client() -> Option<PathBuf> {
let candidates = [
"/usr/bin/looking-glass-client",
"/usr/local/bin/looking-glass-client",
"/opt/looking-glass/bin/looking-glass-client",
];
for path in candidates {
let p = PathBuf::from(path);
if p.exists() {
return Some(p);
}
}
if let Ok(output) = Command::new("which").arg("looking-glass-client").output() {
if output.status.success() {
let path = String::from_utf8_lossy(&output.stdout).trim().to_string();
if !path.is_empty() {
return Some(PathBuf::from(path));
}
}
}
None
}
}