feat(uci): add generalized UCI configuration source

Introduce the UciSource abstraction as a config-rs Source that reads
UCI packages and maps them into the configuration tree. Supports
package selection, required/optional behavior, and custom config/save
directories. Move rust-uci dependency to cfg(unix) to enable UCI
support on all Unix systems for development and testing, while
Linux/OpenWrt remains the production-supported platform.
This commit is contained in:
Nils Andreas Svee committed 2026-08-07 16:04:59 +07:00
1 parent c0a50c68f9
commit 39add2b2e0
7 files changed
+256 -6

No files matched your search

+2 -2
View File
@@ -7,8 +7,8 @@ fn main() {
if uci_enabled && target_os != "linux" {
println!(
"cargo::warning=feature `uci` is unsupported for target `{target}`; \
UCI integration will not be compiled"
"cargo:warning=UCI support on {target} is intended for development \
and testing; Linux/OpenWrt remains the production-supported platform"
);
}