--- a/logd/src/scheme.rs 2026-05-03 10:11:43.179863727 +0100 +++ b/logd/src/scheme.rs 2026-05-03 10:11:43.179952713 +0100 @@ -41,14 +41,30 @@ let mut kernel_sys_log = std::fs::File::open("/scheme/sys/log").unwrap(); + let _ = std::fs::create_dir_all("/var/log"); + let persistent_log: Option = OpenOptions::new() + .create(true) + .append(true) + .open("/var/log/system.log") + .ok(); + let (output_tx, output_rx) = mpsc::channel::(); std::thread::spawn(move || { let mut files: Vec = vec![]; let mut logs = VecDeque::new(); + let mut persistent = persistent_log; + if let Some(ref mut f) = persistent { + let _ = f.write(b"--- logd started --- +"); + } for cmd in output_rx { match cmd { OutputCmd::Log(line) => { + if let Some(ref mut f) = persistent { + let _ = f.write(&line); + let _ = f.flush(); + } for file in &mut files { let _ = file.write(&line); let _ = file.flush();