feat: simple sensor panels with file-based data source (#7)

* add simulation mode for easier development

* improved sensor file watcher, poc cpu & mem usage

Trigger file read by rename event

* feat: system information sensor tool

Gather various sensor values with the sysinfo crate:
https://github.com/GuillaumeGomez/sysinfo
Values can be written to a sensor source file with the `--out` cmd line
option for the `asterctl` tool.

* ci: build sysinfo tool and include in build artifact

* feat: support integerDigits, decimalDigits sensor value format options

* docs: update documentation

Closes #6
This commit is contained in:
Markus Zehnder
2025-08-22 13:41:31 +02:00
committed by GitHub
parent 3f174251d6
commit e85d616da7
32 changed files with 3803 additions and 3933 deletions
+19 -3
View File
@@ -13,17 +13,33 @@ strip = true # Automatically strip symbols from the binary.
name = "asterctl"
path = "src/main.rs"
[[bin]]
name = "sysinfo"
path = "src/bin/sysinfo.rs"
required-features = ["sysinfo"]
[features]
sysinfo = ["dep:sysinfo"]
[dependencies]
anyhow = "1.0.98"
bytes = "1.10.1"
clap = { version = "4.5.41", features = ["derive"] }
clap = { version = "4.5.42", features = ["derive"] }
serialport = "4.7.2"
image = "0.25.6"
imageproc = { version = "0.25.0", default-features = false }
ab_glyph = { version = "0.2.23", default-features = false, features = ["std"] }
ab_glyph = { version = "0.2.31", default-features = false, features = ["std"] }
log = "0.4.27"
env_logger = "0.11.8"
notify = "8.2.0"
regex = "1.11"
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0.141"
serde_json = "1.0.142"
serde_repr = "0.1.20"
once_cell = "1.21.3"
sysinfo = { version = "0.37.0", optional = true }
itertools = "0.14"
tempfile = "3"
[dev-dependencies]
rstest = "0.26"