#[derive(Debug)] struct SystemInfo os: String, host: String, kernel: String, uptime: String, shell: String, cpu: String, gpu: String, memory: String, disk: String, resolution: String, desktop: String,
Unlike grep , which searches for a string anywhere in a line, look only searches the beginning of the line by default. new desktop command
: Press Ctrl + Windows Key + F4 . Any open applications on the closed desktop will automatically move to your primary or remaining active desktop. // Desktop environment / WM let desktop =
// Desktop environment / WM let desktop = env::var("XDG_CURRENT_DESKTOP") .or_else(|_| env::var("DESKTOP_SESSION")) .unwrap_or_else(|_| "Unknown".to_string()); fn get_macos_gpu() ->
fn get_macos_gpu() -> String let output = Command::new("system_profiler") .args(&["SPDisplaysDataType", "
fn get_linux_gpu() -> String ").arg("grep").arg("-i").arg("vga").output(); if let Ok(out) = output let stdout = String::from_utf8_lossy(&out.stdout); if let Some(line) = stdout.lines().next() let parts: Vec<&str> = line.split(':').collect(); if parts.len() > 2 return parts[2].trim().to_string();