use std::sync::atomic::AtomicBool;
#[cfg(unix)]
mod unix;
#[cfg(unix)]
pub use unix::*;
#[cfg(windows)]
mod windows;
#[cfg(windows)]
pub use windows::*;
#[derive(Clone, Copy, Default)]
pub struct Usage {
pub memory: u64,
pub peak: u64,
pub cpu: u64,
pub processes: u32,
}
pub static QUIT: AtomicBool = AtomicBool::new(false);
fn fallback_size() -> (usize, usize) {
let var = |name: &str| {
std::env::var(name)
.ok()
.and_then(|v| v.parse::<usize>().ok())
};
(var("COLUMNS").unwrap_or(100), var("LINES").unwrap_or(40))
}
pub fn settings_dir() -> std::path::PathBuf {
default_dir().join("fgate")
}