Skip to content

feat(v0.20.0-v0.22.0): EnerOS OS layer + OTA updates#1

Merged
Gawg-AI merged 1 commit into
masterfrom
feat/v0.22.0-deploy-ota
Jun 19, 2026
Merged

feat(v0.20.0-v0.22.0): EnerOS OS layer + OTA updates#1
Gawg-AI merged 1 commit into
masterfrom
feat/v0.22.0-deploy-ota

Conversation

@Gawg-AI

@Gawg-AI Gawg-AI commented Jun 19, 2026

Copy link
Copy Markdown
Owner

EnerOS v0.20.0-v0.22.0 OS layer + deployment + OTA updates. 279 files changed (+73272/-1689). Build: 0 errors, 303 tests pass, 0 clippy warnings.

v0.20.0 OS 基础层:
- eneros-os crate:init 系统管理器 + syslog + audit 链式哈希 + timesync (PTP/NTP)
- eneros-init PID 1:服务图依赖 + 并行启动 + 健康监控 + 信号处理
- enerosctl CLI:device/audit/time/log-level 子命令
- RT 运行时:watchdog + IPC + quota + authority + scheduler
- 网络配置:nftables 防火墙 + 接口管理
- HAL 层:Linux HAL + 传感器接口

v0.20.2 功能完整性修复:
- timesync 守护进程 + PTP pmc 轮询 + phc2sys
- syslog 线程安全 + 轮转修复
- audit 链式哈希 + 签名 + 查询过滤
- enerosctl audit/time 子命令

v0.21.0 设备管理与 HAL:
- devmgr uevent 热插拔 + DeviceStatus/DeviceInfo
- termios 串口(9600-115200 波特率)
- USB/GPIO/I2C/SPI 设备接口
- DeviceConfig 持久化 + enerosctl device 子命令

v0.22.0 部署与 OTA 更新:
- A/B 分区原子更新(5 分区布局 + 持久化 + boot_count + 自动回滚)
- Ed25519 签名更新包(manifest + signer + 签名验证)
- OtaManager 完整 OTA 流程(下载→校验→写入→切换→回滚)
- 声明式机器配置 eneros-machine.yaml
- eneros-imager v2(5 分区 + 配置注入 + GRUB grubenv)
- eneros-installer 交互式安装器 + PXE 配置生成
- enerosctl update 子命令
- eneros-init 启动成功检测与自动回滚

v0.22.0 交付级修复:
- ab_partition switch_slot 保留 Good 状态 + switch_to_trying
- ota.rs 流式 SHA256 + fsync + grubenv 1024 字节格式 + rollback 更新 GRUB
- signer.rs generate_keypair 返回 Result
- build.sh slot-state.json 格式匹配 AbPartition

验证:cargo build 0 错误, cargo test 303 通过, cargo clippy 0 新警告
@Gawg-AI Gawg-AI merged commit 0964922 into master Jun 19, 2026
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant