能跑uos吗
能跑uos吗
刚试了,装上没问题,运行报错,目前手上是uos20
我试试调整
原来是这样:不是一次打包到处能用
两个关键坑(务必注意):
- UOS 20 默认
python3很可能是 3.7,而PySide6-Essentials/opencv/numpy新版都要求 ≥ 3.8。不升级就pip install失败。必须先把 UOS 20 的python3弄成 ≥ 3.8(推荐 3.9/3.11)。 - 构建脚本的
Depends: python3(第 173 行)指向系统默认python3。所以 UOS 20 上构建用的那个 python 版本,必须就是系统python3对应的版本(才能提供对应的libpython3.x.so运行时)。不要构建用 3.11、系统默认却还是 3.7,那装完运行会找不到libpython3.11.so。
根目录现成的两个
.deb是 deepin 上打的,不要直接拷到 UOS 20 用,必须在 UOS 20 上重打。
另一个提醒:DTK6 版在 UOS 20 也跑不了
你之前做的 ClassroomBroadcast-deepin-dtk(C++/DTK6)依赖 libdtk6widget + Qt6,而 UOS 20 是 DTK5 / Qt5,连运行时都没有。要兼容 UOS 20 得另做 Qt5/DTK5 版,且同样要在 UOS 20 上构建。
Linux 桌面长期"发展不起来"的核心体验痛点,就是依赖链:装 A 提示先装 B,B 又提示先装 C,而且这些提示默认假设你是能手查文档、配环境的高手。
刚试了,装上没问题,运行报错,目前手上是uos20
我试试调整
原来是这样:不是一次打包到处能用
两个关键坑(务必注意):
- UOS 20 默认
python3很可能是 3.7,而PySide6-Essentials/opencv/numpy新版都要求 ≥ 3.8。不升级就pip install失败。必须先把 UOS 20 的python3弄成 ≥ 3.8(推荐 3.9/3.11)。 - 构建脚本的
Depends: python3(第 173 行)指向系统默认python3。所以 UOS 20 上构建用的那个 python 版本,必须就是系统python3对应的版本(才能提供对应的libpython3.x.so运行时)。不要构建用 3.11、系统默认却还是 3.7,那装完运行会找不到libpython3.11.so。
根目录现成的两个
.deb是 deepin 上打的,不要直接拷到 UOS 20 用,必须在 UOS 20 上重打。
另一个提醒:DTK6 版在 UOS 20 也跑不了
你之前做的 ClassroomBroadcast-deepin-dtk(C++/DTK6)依赖 libdtk6widget + Qt6,而 UOS 20 是 DTK5 / Qt5,连运行时都没有。要兼容 UOS 20 得另做 Qt5/DTK5 版,且同样要在 UOS 20 上构建。
Linux 桌面长期"发展不起来"的核心体验痛点,就是依赖链:装 A 提示先装 B,B 又提示先装 C,而且这些提示默认假设你是能手查文档、配环境的高手。
可以让AI试试玲珑包格式和appimage格式
可以让AI试试玲珑包格式和appimage格式
uos v20是因为python3.7的问题,现在调整了代码,可以运行了
但现在的问题是这是用python实现的。
活动可能想用dtk,就是deepin的工具原生来做,虽然目前不太符合活动要求,但至少在deepin/uos中可以用了,不过现在就是没什么都让ai造,比纯人来做门槛低了,效率高了
用skill来做纯dtk的程序,目前在尝试,效果不太理想,原以为给个例子,调用skill就能行,实际不是,毕竟纯python那一版也是写了快一周才各项基础功能才能用,声音和字幕还没有调试
但是我个人感觉ai有资料是能做出来的,这个技术路线是可以跑通的
刚试了,装上没问题,运行报错,目前手上是uos20
我试试调整
原来是这样:不是一次打包到处能用
两个关键坑(务必注意):
- UOS 20 默认
python3很可能是 3.7,而PySide6-Essentials/opencv/numpy新版都要求 ≥ 3.8。不升级就pip install失败。必须先把 UOS 20 的python3弄成 ≥ 3.8(推荐 3.9/3.11)。 - 构建脚本的
Depends: python3(第 173 行)指向系统默认python3。所以 UOS 20 上构建用的那个 python 版本,必须就是系统python3对应的版本(才能提供对应的libpython3.x.so运行时)。不要构建用 3.11、系统默认却还是 3.7,那装完运行会找不到libpython3.11.so。
根目录现成的两个
.deb是 deepin 上打的,不要直接拷到 UOS 20 用,必须在 UOS 20 上重打。
另一个提醒:DTK6 版在 UOS 20 也跑不了
你之前做的 ClassroomBroadcast-deepin-dtk(C++/DTK6)依赖 libdtk6widget + Qt6,而 UOS 20 是 DTK5 / Qt5,连运行时都没有。要兼容 UOS 20 得另做 Qt5/DTK5 版,且同样要在 UOS 20 上构建。
Linux 桌面长期"发展不起来"的核心体验痛点,就是依赖链:装 A 提示先装 B,B 又提示先装 C,而且这些提示默认假设你是能手查文档、配环境的高手。
但是uos软件源里的python3版本只有3.7,没有更新的,无法安装。
但是uos软件源里的python3版本只有3.7,没有更新的,无法安装。
现在可以了,用3.7版本也能运行起来
智慧课堂广播系统 · 各版本详细说明
项目形态:同一套教学广播功能,Windows 与 deepin/Linux 双平台实现;2.0.0.0 起屏幕传输切换为自研纯 Python RFB 库 pyrfb(协议对齐 libvncserver/libvncclient)。Gitee 开源仓库同时收录 deepin 版源码 + Windows 版源码 + pyrfb 完整子项目。
一、1.x 系列(TCP/UDP 时代,基本固定只会小问题修复)
| 版本 | 内容 |
|---|---|
| 早期(2026-08) | UDP 发送从主线程迁至捕获线程(修 UI 卡顿);PyInstaller onefile 便携化部署 |
| 2026-09 重构 | 对照 Veyon 重构网络层:TCP 单播默认、非阻塞发送、心跳清理(20s 僵尸剔除)、文件异步化、差分帧、P2P 种子分发、OTA 更新、自动发现教师端、断点续传(下发);打包改onedir(目录即拷即用,弃 onefile) |
| v1.18.4.0 | 版本冻结(现场可用版) |
| v1.18.4.2 | 视频链路三项 Wi-Fi 优化:自适应画质 + 缺帧等关键帧(间隔 1s)+ 弱客户端单独降质;修复"更新包不存在"(文件后置信令改走 file 子队列) |
| v1.18.4.3 | 设置页滚轮守卫修复落地 + 回归测试(滚轮不再悬停即改值) |
| v1.18.4.4 | 滚轮守卫根治(armed 机制修复焦点粘留误改值);分队列回归;修复双重 CRLF 污染;停跟踪 __pycache__;高中版教材两版(深度/入门)+ 公文 Word 交付 |
| v1.18.4.5 | 文件分发修复:P2P 失败补发、慢学生补发轮、断开清理种子、兜底去重、.part 清理 |
| v1.18.4.6 | 修复 .part 残留根因;学生列表排序(学号/姓名/IP,未注册排最后、IP 数值段排序)+ 选中保持;右键单独发文件给学生 |
| v1.18.5.0 | 1.x 最后一个稳定版(1.18.4.6 → 1.18.5.0),deepin 同步 2e99841 |
二、2.0.0.0 分支(RFB 新通道,当前主线)
| 提交 | 内容 |
|---|---|
| c7eb103 | 分支初始化:清理备份目录与排障临时文件 |
| 405e469 | 整合 pyrfb RFB 广播通道(第一版) |
| 1d6aa86 | 内嵌 pyrfb v0.4.0 →v1.0.0(独立仓库自研库最终版,12 模块) |
| fd8f952 | 标注效果优先:分段笔迹跨段宽度插值(epicpen / Krita 式连续锥形笔锋,解决"抬笔整条线变细/收笔突兀变细") |
| d7bd562 | RFB 动态分辨率:输出跟随捕获内容实际尺寸(桌面/窗口);尺寸变化自动 NewFBSize → 客户端重建 + 全量;对照 libvncserver newFBSizePending / libvncclient HandleNewFBSize C 源码逐条核对;E2E 4 尺寸变化验证通过 |
| bbcfa3d | 设置页新增「RFB 最大宽度」(0-7680,默认 0=原始分辨率不压缩,超出等比缩小),保存/恢复配置 |
| 20dc63d | 两端版本号 bump2.0.0.0 |
| e0551b9 | 文档同步(README + 7 篇教学文档版本号与 RFB 说明) |
| c7f1f0a | 防截屏/录屏语义修正:教师端未开放 → 学生端按钮不可用(权限控制)+ Windows 系统级 SetWindowDisplayAffinity 保留 |
1.x 的 UDP 广播 / 组播 / TCP 单播路径保留可切换(设置 → 传输方式),便于对照与回退。
三、pyrfb(自研 RFB 库)
- 版本 v1.0.0(GPL-2.0,自用不上传 PyPI)
- 纯 Python 完整复刻 libvncserver/libvncclient:RFB 3.8 握手、VNC-Auth(可选 pycryptodome)、脏矩形差分、Raw / zlib / Hextile / Tight / ZRLE、CopyRect、多客户端独立脏区、关键帧兜底、NewFBSize / ExtDesktopSize 动态分辨率
- 验证:177 测试 × 多轮全绿;两端内嵌模块逐文件哈希一致
- 仓库内提供
pyrfb/完整子项目:源码 / README / LICENSE / pyproject / 18 测试 / examples / tools
四、deepin 版与开源仓库(当前状态)
| 项 | 状态 |
|---|---|
| deepin 版 | 2.0.0.0(同步 win 全部改动:pyrfb 通道、动态分辨率、笔锋平滑、防截屏权限语义);43 测试全绿;打包脚本版本号已更新,待 deepin 主机出 deb(PyInstaller 不能跨平台) |
| UOS 20 | 1.x 已在其真机直接打包通过,2.0.0.0 保持相同打包路径;系统 Python 3.7 时注意 PySide6 6.5.x / pandas 1.4.x / PyInstaller 5.x,或自建 3.8+ venv |
| Gitee 开源 | ClassroomBroadcast-deepin/ 含 deepin 源码 + pyrfb 完整子项目 + Windows 源码镜像(ClassroomBroadcast-win/);ASR 语音模型(约 30MB)不入库,放 models/asr/ 即启用离线字幕 |
Popular Ranking
ChangePopular Events
More

中文 


sfzy/广播教学deepin
特别说明:纯DTK版本放弃了
今天遇到一个问题,就是考勤签到功能要导入xls格式文件,这个在python下是有相关库实现的,但是使用纯QT开发没有或者我没找到,不像python下库很好找到,只能支持xlsx格式与csv这种格式,有些不完美,本来到这还没有放弃,坚持到晚上想了想还是放弃了。因为venv版本已经可以在deepin系统中运行,已经可以双击安装,在启动器中启动,现在使用纯DTK等于是完全重写,后面还有一些功能,录屏、截图、录屏时自动转字幕(这部分功能win和venv中未测试),但声音这块用了pyaudio,QT下有可能也没有相关库(所以生态很重要),这样最后一个是很多功能可能要减少,另一个是虽然参考了venv版本,但是这过程中不断的调试,相当于重新写了一套,(再加上昨天因为状态栏的问题生成了12个测试才找到问题在哪)算力太浪费了不环保(其实是token消耗太多😂)。因此,纯DTK暂停了。目前纯DTK广播、屏幕标注可以使用,考勤签到可以签,修复了一个签到逻辑没有测试。
在windows上使用codebuddy完成广播教学的项目,测试完成后,使用workbuddy添加deepin skills,使用workbuddy调用skill,将项目转成可在deepin中使用的程序
智慧课堂广播系统 · deepin 打包工程
把 Windows 版 Python + PySide6 局域网广播教学项目移植为 deepin v25/ UOS v20(venv版本打包、安装、运行,测试通过) 原生应用。 提供 两种互相独立、可并存 的 Linux 分发方案,以及一个原始 Windows 备份。
目录结构
ClassroomBroadcast - bak3/ClassroomBroadcast-deepin/--onefile打出单个 ELFClassroomBroadcast-deepin-venv/ClassroomBroadcast - bak3/ClassroomBroadcast-deepin/--onefile打出单个 ELFClassroomBroadcast-deepin-venv/ClassroomBroadcast-deepin-dtk/ClassroomBroadcast-deepin-appearance/确认 pip PySide6 与系统 DTK 主题 ABI 不兼容,
结论为「保持 Fusion」
使用官方
dtk-developmentSkill(deepin Skills 项目的一部分)进行开发。 开发过程中该 Skill 提供了以下关键规范,代码均严格遵循:DApplication入口(替代QApplication,含单实例/翻译/产品信息)main_teacher.cpp/main_student.cppDMainWindow+DTitlebar原生窗口teacherwindow.cpp/studentwindow.cppDLogManager日志规范(dtkcore 注册 Appender,应用用 Qt 日志宏)main_*.cppdebian/control写法(Build-Depends 用-dev,运行时libdtk6*由${shlibs:Depends}自动推导)debian/control注意:deepin 25 实际装的 DTK6 头文件和
dtk-developmentSkill 的参考示例有细微差异(比如setOOMScoreAdj示例写静态、实际是非静态)。我已按真机编译器的判据改,并以对象调用规避两种写法。新错误很明确:
#include这个文件在你的 DTK6 上根本不存在——说明 DTK6 里DLogManager的转发头文件名不是这个(可能改名、或功能合并、或需走别的 include 路径)。我查一下dtk-developmentSkill 里的权威用法,确认正确的 include 写法,而不是瞎猜。Skill 的
application.md示例(第 37 行)仍然写的是静态DApplication::setOOMScoreAdj(0)—— 进一步证实 Skill 文档与 deepin 25 实际 DTK6 头文件有差异。它也没给出DLogManager的 include 写法。我读一下log.md找权威 include:找到根因了。Skill 的
log.md说#include就带出DLogManager,但你的 deepin 25 实际 DTK6 里并不声明DLogManager,也没有这个转发头文件 —— 这是 Skill 文档与当前 DTK6 版本脱节(和之前setOOMScoreAdj由静态变非静态是同一类问题)。DLogManager只是日志便利封装,删掉不影响任何功能(Qt 默认的qDebug/qWarning不需要它也能输出)。我先把它从两个main里移除,让你能立即编译过;同时给你一条查找命令,确认该类到底还在不在,在的话我再用正确的头文件加回来。先确认这个类在你的系统里到底叫什么头文件:
bash
把输出贴给我。如果有
dlogmanager.h(或DtkCore/dlogmanager.h),我就用正确的 include 把registerConsoleAppender/FileAppender接回去;如果系统里压根没这个类,那说明这个版本已经砍掉了它,保持现状即可。用户找到了正确的 DTK6 日志头文件路径:
/usr/include/dtk6/DCore/LogManager.h,DLog 也在/usr/include/dtk6/DCore/DLog。我来确认正确的 include 写法和 API,然后改回 main 文件。找到了根因:这是一个 DTK6 头文件路径变更 问题——
DLogManager实际位于/usr/include/dtk6/DCore/LogManager.h,而不是旧的扁平路径。同时DLog也在DCore/下。之前误删其实不必,现在用正确路径接回即可。已定位并修复。问题不是类名,而是 DTK6 在 deepin 25 的 include 根设置:它把各个模块子目录(
DCore/、DWidget/、DGui/)本身作为 include 搜索根,所以裸名、都能用,但写成(多套一层DCore/)反而找不到文件。dtk版制作中=》放弃了,原因写在最前面