
源码系统概览
文章正文
frametop 是一套把多显示器 KDE Plasma 桌面搬进 VR 头显的开源桌面工具源码系统。
工具运行在 Valve Steam Frame 上,让每个屏幕成为独立分辨率的虚拟显示器,并支持蓝牙鼠标操控全部 SteamVR 界面。
项目由 C++ 指针组件与多个 Python 设置程序组成,安装后可直接在头显内使用。
源码简介
安装脚本同时处理开发容器与蓝牙修复,开箱即用,每个屏幕都可以独立设置分辨率与位置。
frametop 是作者 DeeJanuz 发布的 Steam Frame 桌面增强工具,当前版本 v0.1.0,遵循 MIT 开源协议。
项目包含 display-settings、input-settings、layout 等 Python 组件,以及 C++ 实现的指针辅助程序。
用户可以自由移动、缩放、弯曲与卷曲虚拟屏幕,并把手写板固定在手腕上使用。
布局在桌面启动时自动恢复,当前 GitHub 收获 45 星。
适用场景
适合 Valve Steam Frame 用户把完整 KDE 桌面带入 VR 环境,处理多窗口任务。
适合需要在头显内使用蓝牙鼠标完成导航与输入的场景,摆脱手柄限制。
开发者可以基于源码扩展虚拟显示器布局与 SteamVR 交互逻辑。
技术栈与运行环境
压缩包大小: 0.2M
解压后大小: 0.4M
前端语言: HTML(系统设置界面)
后端语言: C++ 与 Python
运行环境为 Valve Steam Frame 头显,系统基于 KDE Plasma 与 SteamVR。
开发环境使用 Fedora 44 toolbox 容器,安装脚本一键完成环境准备。
功能亮点
- 多屏虚拟桌面,每屏独立分辨率与摆放位置
- 蓝牙鼠标驱动全部 SteamVR 界面
- 屏幕支持移动、缩放、弯曲与卷曲操作
- 桌面布局自动保存与恢复
- C++ 指针组件与 Python 设置程序分层协作
对比,区别 vs Virtual Desktop 和传统 VR 桌面的不同
| 维度 | frametop | Virtual Desktop |
|---|---|---|
| 运行设备 | Steam Frame 原生 | 通用 VR 头显 |
| 桌面系统 | KDE Plasma | 定制虚拟界面 |
| 输入方式 | 蓝牙鼠标 | 手柄与控制器 |
技术架构与部署指南
安装与部署提示
项目最后更新 2026 年,当前版本 v0.1.0,安装脚本覆盖头显环境与蓝牙修复。
在 Frame 上运行安装脚本即可完成开发容器与系统配置,也可从 PC 通过 SSH 执行。
各组件说明见 docs/reference 文档,设计决策记录在 docs/design 中。
更新日志跟随主分支发布节奏,新版本会同步更新脚本与文档。
截图与演示说明
desktops 脚本负责启动桌面服务,配合布局模块完成屏幕排列。
README 描述了桌面布局的完整效果,包括中央超宽屏与两侧竖屏的组合方式。
系统设置界面由 Python 组件提供,用于调整显示器位置、尺寸与姿态。
setup 文档附带各脚本的用途表格,方便按需单独执行某一步配置。
常见问题
问. frametop 是什么工具?
它是 Valve Steam Frame 头显上的多显示器桌面工具,把 KDE Plasma 桌面带入 VR 环境。
问. 怎么安装使用这个工具?
在 Frame 上运行仓库内的安装脚本,完成后进入头显即可看到虚拟桌面,用蓝牙鼠标开始操作。
问. 和传统桌面系统有什么区别?
传统桌面依赖实体显示器,frametop 在 VR 中创建任意分辨率与位置的虚拟屏幕,并支持手腕固定等交互。
问. 项目是否免费开源?
项目使用 MIT 协议开源,全部组件与脚本公开,可免费使用和二次开发。
安全风险提示
安全扫描覆盖 exec、subprocess、popen 等调用,命中项均为 Qt 应用循环与 SteamVR 运行时调用。
未发现加密混淆、硬编码凭据或外联后门,代码整体可信。
安装脚本包含 sudo 操作,运行前请确认脚本来源与权限范围。
在头显生产环境使用前,建议核对 SteamVR 相关路径与系统版本兼容性。
下载说明
下载包内包含 C++ 指针组件、Python 设置程序、安装脚本与完整文档。
包内不包含 SteamVR 运行时,需要头显系统自带相关组件。
解压后可查看各组件目录与安装脚本,方便本地部署。
GitHub项目开源地址 https://github.com/DeeJanuz/frametop