编辑的话请把自己的名字加到作者名单里
DDE v23 首个正式版即将随 deepin v23 发布(你阅读到这个文章的时候可能已经发布了)。为了方便各个其它发行版的包维护者可以更方便的移植 DDE 到对应的发行版,这里提供一篇简要的移植指南,用以描述常见的移植问题和解决方案。
下面对项目名称的称呼均以 GitHub 对应的原始仓库名为准。
{.note}
概览
即便本次从版本号字面来看可能并没有较大变动,但事实上,本次相比 beta3 -> rc 而言仍然是存在比较大的变化的。本次中,dde-shell 加载托盘插件的策略做了大幅调整,转变为通过 dde-tray-loader 加载插件,托盘区域的插件也放弃了原有的插件,转而移植并使用了来自原 UOS 20 专业版的托盘插件。此外,为了为后续的应用权限管控做准备,本次也对包括 dde-launchpad、dde-shell 等在内的项目调整了其 DSG 配置文件 所使用的应用 ID(DSG_APP_ID
),故对于移植到其它发行版的情况,若存在相应的 DConfig OEM 配置则也需进行调整。另外,为了解决一些已知的开源合规问题,我们也将原本位于 dtkcore 中的日志部分分离为了一个单独的组件,名为 dtklog。
由于这些项目的版本间互相影响,我们强烈建议移植人员参照 deepin v23 正式版所使用的包版本进行打包(也务必遵循依赖顺序打包)。下面会对主要的部分进行详细说明。
需要注意的是,由于此文章编写时间早于版本发布时间,故最终版本镜像中使用的版本可能高于下面列出的版本。我们尽可能确保此文章的准确性,但若您需要获取 ISO 镜像中使用的确切软件版本列表,请挂载 ISO 后参阅 LIVE/FILESYSTEM.MANIFEST
(也可能是 LIVE/FILESYS0.MAN
)路径对应的文件的内容。
主要组件
DTK 与 DTK6
DTK 是 DDE 组件与应用的基础依赖,适用于 RC 的版本参照如下:
package | version |
---|
dtkcommon | 5.6.32 |
dtklog | 0.0.1 |
dtkcore | 5.6.32 |
dtkgui | 5.6.32 |
dtkwidget | 5.6.32 |
dtkdeclarative | 5.6.32 |
qt5integration | 5.6.32 |
qt5platform-plugins | 5.6.32 |
dtk6log | 0.0.1 |
dtk6core | 6.0.18 |
dtk6gui | 6.0.18 |
dtk6widget | 6.0.18 |
dtk6declarative | 6.0.18 |
qt6integration | 6.0.18 |
qt6platform-plugins | 6.0.18 |
除新增的 dtklog 外,本次 DTK 版本号以及相对应的平台插件等版本号均已对齐,可直接参照打包。