feat: 初始化项目骨架
- 创建插件元数据 package/metadata.json - 实现主插件类 GraphicsDriverApplet (D-Bus通信) - 实现GPU指示器类 GpuIndicator (设备信息解析) - 创建QML界面 driverview.qml (驱动管理UI) - 添加CMake构建配置 - 编写开发指南文档 docs/DEVELOPMENT.md
This commit is contained in:
@@ -1,2 +1,107 @@
|
||||
# 显卡切换任务栏插件
|
||||
|
||||
Deepin显卡驱动管理任务栏插件,集成到DDE Shell任务栏中,提供显卡设备检测、驱动安装和切换功能。
|
||||
|
||||
## 功能特性
|
||||
|
||||
- 自动检测系统显卡设备
|
||||
- 显示当前安装的驱动版本
|
||||
- 列出可用的驱动版本
|
||||
- 一键切换显卡驱动
|
||||
- 实时显示安装进度
|
||||
- 安装完成后提示重启
|
||||
|
||||
## 依赖项
|
||||
|
||||
- dde-shell >= 2.0
|
||||
- Qt6 >= 6.0
|
||||
- Dtk6 >= 6.0
|
||||
- deepin-graphics-driver-manager(运行时依赖)
|
||||
|
||||
## 构建
|
||||
|
||||
```bash
|
||||
# 安装构建依赖
|
||||
sudo apt build-dep .
|
||||
|
||||
# 构建项目
|
||||
cmake -Bbuild
|
||||
cmake --build build
|
||||
|
||||
# 安装插件
|
||||
cmake --install build
|
||||
```
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
├── package/
|
||||
│ ├── metadata.json # 插件元数据
|
||||
│ └── driverview.qml # QML界面
|
||||
├── graphicsdriverapplet.h # 主插件类头文件
|
||||
├── graphicsdriverapplet.cpp # 主插件类实现
|
||||
├── gpuindicator.h # GPU指示器类头文件
|
||||
├── gpuindicator.cpp # GPU指示器类实现
|
||||
├── CMakeLists.txt # 构建配置
|
||||
└── README.md # 项目说明
|
||||
```
|
||||
|
||||
## 技术实现
|
||||
|
||||
### 架构设计
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────┐
|
||||
│ DDE Shell Taskbar │
|
||||
├─────────────────────────────────────────────────────────┤
|
||||
│ dde-graphics-driver-applet │
|
||||
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
|
||||
│ │ GPU检测模块 │ │ 驱动管理 │ │ UI界面 │ │
|
||||
│ └─────────────┘ └─────────────┘ └─────────────┘ │
|
||||
├─────────────────────────────────────────────────────────┤
|
||||
│ D-Bus Interface │
|
||||
│ com.deepin.daemon.GraphicsDriver │
|
||||
├─────────────────────────────────────────────────────────┤
|
||||
│ deepin-graphics-driver-manager │
|
||||
│ (现有的驱动管理服务,无需修改) │
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
### D-Bus接口
|
||||
|
||||
插件通过D-Bus与deepin-graphics-driver-manager服务通信:
|
||||
|
||||
- `GetDevice()` - 获取显卡设备信息
|
||||
- `GetCurrDriverName()` - 获取当前驱动名称
|
||||
- `GetNewDriverName()` - 获取推荐驱动名称
|
||||
- `PrepareInstall(name, language)` - 准备安装驱动
|
||||
- `TestInstall()` - 测试安装
|
||||
- `RealInstall()` - 实际安装
|
||||
- `CancelInstall()` - 取消安装
|
||||
|
||||
### 信号
|
||||
|
||||
- `ReportProgress(ratio)` - 安装进度报告
|
||||
- `Cancel()` - 安装取消通知
|
||||
|
||||
## 使用说明
|
||||
|
||||
1. 插件安装后会自动加载到任务栏
|
||||
2. 点击任务栏图标打开驱动管理界面
|
||||
3. 查看当前显卡设备和驱动信息
|
||||
4. 选择要切换的驱动版本
|
||||
5. 确认后开始安装过程
|
||||
6. 安装完成后选择重启系统
|
||||
|
||||
## 许可证
|
||||
|
||||
GPL-3.0-or-later
|
||||
|
||||
## 贡献
|
||||
|
||||
欢迎提交Issue和Pull Request。
|
||||
|
||||
## 相关项目
|
||||
|
||||
- [dde-shell](https://github.com/linuxdeepin/dde-shell) - Deepin Shell插件系统
|
||||
- [deepin-graphics-driver-manager](https://github.com/linuxdeepin/deepin-graphics-driver-manager) - 显卡驱动管理器
|
||||
|
||||
Reference in New Issue
Block a user