init: ShowenV2 项目骨架 — 数字生命窗口平台

- core/ 跨平台内核骨架 (Plugin trait, Message, ServiceManager, Config)
- plugins/ 空桩 (video, http, ble, screen, wifi)
- PROGRESS.md 进度跟踪, TEAM.md 团队档案
- cargo check 零 warning 通过

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
showen
2026-03-12 05:03:58 +08:00
commit 23f4d46287
21 changed files with 2223 additions and 0 deletions

39
src/plugins/screen/mod.rs Normal file
View File

@@ -0,0 +1,39 @@
//! ScreenPlugin — 屏幕管理
//!
//! 唤醒锁systemd-inhibit、光标隐藏unclutter
use crate::core::message::Message;
use crate::core::plugin::{Plugin, PluginContext, PluginInfo, Platform};
use anyhow::Result;
pub struct ScreenPlugin {
ctx: Option<PluginContext>,
}
impl ScreenPlugin {
pub fn new() -> Self {
Self { ctx: None }
}
}
impl Plugin for ScreenPlugin {
fn id(&self) -> &'static str { "screen" }
fn info(&self) -> PluginInfo {
PluginInfo {
name: "Screen Manager",
version: "0.2.0",
description: "屏幕唤醒锁 + 光标管理",
platform: Platform::Linux,
}
}
fn init(&mut self, ctx: PluginContext) -> Result<()> {
self.ctx = Some(ctx);
Ok(())
}
fn start(&mut self) -> Result<()> { Ok(()) }
fn handle_message(&mut self, _msg: Message) -> Result<()> { Ok(()) }
fn stop(&mut self) -> Result<()> { Ok(()) }
}