use std::path::PathBuf; #[cfg(target_os = "macos")] const PLATFORM_LOG_SEGMENTS: &[&str] = &["Library", "Logs", "OpenChamber"]; #[cfg(not(target_os = "macos"))] const PLATFORM_LOG_SEGMENTS: &[&str] = &[".config", "openchamber", "logs"]; pub fn log_directory() -> Option { let mut path = dirs::home_dir()?; for segment in PLATFORM_LOG_SEGMENTS { path.push(segment); } Some(path) } pub fn log_file_path() -> Option { let mut dir = log_directory()?; dir.push("openchamber.log"); Some(dir) }