eb90da12f3c0b0f5e3929176fcc5d7530e8efdc7
- 创建插件元数据 package/metadata.json - 实现主插件类 GraphicsDriverApplet (D-Bus通信) - 实现GPU指示器类 GpuIndicator (设备信息解析) - 创建QML界面 driverview.qml (驱动管理UI) - 添加CMake构建配置 - 编写开发指南文档 docs/DEVELOPMENT.md
显卡切换任务栏插件
Deepin显卡驱动管理任务栏插件,集成到DDE Shell任务栏中,提供显卡设备检测、驱动安装和切换功能。
功能特性
- 自动检测系统显卡设备
- 显示当前安装的驱动版本
- 列出可用的驱动版本
- 一键切换显卡驱动
- 实时显示安装进度
- 安装完成后提示重启
依赖项
- dde-shell >= 2.0
- Qt6 >= 6.0
- Dtk6 >= 6.0
- deepin-graphics-driver-manager(运行时依赖)
构建
# 安装构建依赖
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()- 安装取消通知
使用说明
- 插件安装后会自动加载到任务栏
- 点击任务栏图标打开驱动管理界面
- 查看当前显卡设备和驱动信息
- 选择要切换的驱动版本
- 确认后开始安装过程
- 安装完成后选择重启系统
许可证
GPL-3.0-or-later
贡献
欢迎提交Issue和Pull Request。
相关项目
- dde-shell - Deepin Shell插件系统
- deepin-graphics-driver-manager - 显卡驱动管理器
Description