dde-nixos 2023 年 1 月成果展示

本月对 NixOS DDE 做了进一步完善,已经比较适合在实体机上使用了。

现在 deepin v23 的版本即将发布,github 大部分 DDE 软件已经升级到了 23 版本,由于 20 和 23 版本不完全兼容,dde-nixos 将使用 v20 分支继续维护/测试 v20 版本的 DDE, main 分支尝试 v23 版本。

目前的主要工作是将 v20 版本的移植工作转移到上游,方便更多用户使用。同时 review 机制也可以找到并处理现有写法的不规范之处。Nixpkgs 合并进程请关注:https://github.com/linuxdeepin/dde-nixos/issues/9

目前已经有一部分应用可在官方仓库下载

此外 @SamLukeYes 构建了 NixOS DDE 的 iso,可以直接使用: https://github.com/SamLukeYes/nixos-dde-iso/releases/tag/22.11.20230113

  • dtk

    • 统一升级到 5.6.3
    • qt5integration 使用 5.6.4 :修复通知中心图标缺失问题/修复 log 中大量 create icon [] engine failed.[theme:] 问题
  • dde-control-center:

    • 禁用系统版权协议模块(仅适配deepin/uos)
    • (dde-api) 修复无法识别本机语言的问题
    • 修改语言(locale)功能在 NixOS 中无法实现,属于正常现象
    • 适配系统版权信息(通过 /etc/deepin-installer.conf 配置实现)
    • 修复明暗主题,图标光标主题缺失(go-lib isDir 判断错误)
  • dde-daemon

    • 修复 nix 的 wrapped 应用后无法通过 verifyExe 校验问题
    • 清理无用的硬编码 patch
  • deepin-kwin 相关软件:

    • 已经切换至 linuxdeepin 仓库的 tag 版本
  • dde-account-faces

    • /var 路径文件改用 systemd.tmpfiles 模块管理
  • deepin-system-monitor

    • 修复 dock 插件显示问题
  • 配置 Garnix CI

    • 通过 Garnix 自动构建 dde-nixos 的软件,支持 x86 和 arm
    • 使用 Garnix 提供的 binary caches,可以无需编译即可使用 DDE, 用法见项目 readme
  • gio-qt

    • 修复文档编译失败
  • deepin-boot-maker

    • 修复多处硬编码路径,修复无法识别 u 盘的问题
  • dpa-ext-gnomekeyring

    • 修复硬编码
  • deepin-font-manager

    • 修复系统字体识别错误
  • dde-file-manager

    • 修复新版空格预览崩溃
    • 处理插件硬编码路径
  • dde-app-services

    • 修复 GUI 编辑器无法读取其他应用配置问题
  • dde-network-core

    • 修复控制中心插件翻译

其他:

  • 新增 security.pam.services.dde-lock, 代替 dde-lock 所使用的 common-auth
  • 新增 deepin-orc 支持
  • 修复对 deepin-anything 的支持
  • 默认安装 onboard, dock 插件使用
  • 处理 updateDbusEnvironment 未生效的问题:https://github.com/NixOS/nixpkgs/issues/209847
  • 清理 dde 模块中非必要启用的 services
  • 优化 nix 函数结构,dtk 不再使用列表,改用 propagatedBuildInputs

目前已知的问题:

qt 应用启动器启动不是deepin主题,但通过 deepin-terminal 启动是:

qt5integration 未全局安装,安装后虽然 qt 主题无问题,但是会导致启动器缺失图标等问题。建议 qt 继续使用 breeze 主题

lightdm 不是 deepin 主题

目前 deepin-greeter 无法正常使用,不过使用其他主题或者用 sddm 也是可以启动 DDE 的。

窗口模糊特效缺失

deepin-kwin 的问题,等待修复。通过控制中心关闭再打开特效,可以临时解决。