From 57be264701b8a6d22b625353a0f5c21d68f1604e Mon Sep 17 00:00:00 2001 From: Doloro1978 Date: Mon, 16 Mar 2026 20:47:47 +0000 Subject: [PATCH] deamon finished --- .gitignore | 1 + src/main.rs | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 6abfe1b..09fc595 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /target /.direnv +/battery.data diff --git a/src/main.rs b/src/main.rs index 947bce8..85ec1b0 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,6 +2,7 @@ use std::{ error::Error, fs, io::{Read, Write}, + os::unix::fs::FileExt, thread::sleep, time::{Duration, SystemTime}, }; @@ -30,6 +31,7 @@ fn main() -> Result<(), Box> { Err(err) => { let battery_file = fs::OpenOptions::new() .read(true) + .write(true) .create(true) .open("./battery.data"); let new_data = Data::new(battery.as_data().0); @@ -41,6 +43,7 @@ fn main() -> Result<(), Box> { let battery_file = fs::OpenOptions::new() .write(true) + .append(false) .open("./battery.data") .unwrap(); loop { @@ -57,8 +60,8 @@ fn main() -> Result<(), Box> { }; data.data_chunks.push(new_chunk); let raw_data = rkyv::to_bytes::(&data).unwrap(); - battery_file.try_clone()?.write_all(&raw_data)?; + battery_file.try_clone()?.write_all_at(&raw_data, 0)?; - sleep(Duration::from_secs(3)); + sleep(Duration::from_secs(5)); } }