Dux Labs 已将其项目从 DankMaterialShell 转换为 Dux,这是一个模块化的桌面外壳,旨在为 Hyprland、Sway 和 niri 等各种 Wayland 合成器提供统一的用户体验。与可能存在碎片化样式的传统桌面环境不同,Dux 通过为广泛的系统组件自动生成匹配的调色板,专注于统一的美学。

展示深色主题的 Dux 模块化外壳桌面环境。
Dux 模块化外壳在各种 Wayland 合成器上提供统一的桌面体验。duxlabs.dev

这张图片展示了主要项目 Dux 模块化外壳,它为 Wayland 环境提供统一的美学。

统一的工具套件

Dux 不仅仅是一个独立的外壳;它是一个模块化的桌面组件套件。该项目包括 Dux Files(一个基于 Go 守护进程和 Quickshell 窗口构建的独立文件管理器)和 Dux Dash(一个用于媒体、天气和系统信息的可定制仪表板)。

显示系统信息和媒体控制的 Dux Dash 概览仪表板。
Dux Dash 作为媒体、天气和系统信息的可定制仪表板。duxlabs.dev

此视觉效果展示了工具套件中提到的模块化组件之一 Dux Dash。

套件中的其他组件包括用于无状态系统和进程监控的 Dux GOP、用于定制登录体验的 Dux Greeter,以及用于高效文件系统查询的 Dux Search。

“Dux 模块化外壳会自动为支持的 GTK 和 Qt 应用、终端、编辑器等生成匹配的颜色。”

— Modern Desktop Suite | Dux

自动主题和视觉一致性

Dux 的核心技术差异在于其跨不同软件栈同步主题的能力。它使用自定义的 'dank16' 算法为终端和语法高亮构建完整的 16 色调色板,并针对亮色和暗色模式调整了对比度。

此系统会自动为支持的 GTK3、GTK4 和 Qt 应用程序生成匹配的颜色,确保用户选择的主题在整个桌面环境中保持一致。

通过 Dux Dot 进行动态交互

'Dux Dot' 作为一个持久的、动态的岛屿式中心。它可以放置或“抛”到屏幕上的任何位置,并变幻为各种功能,如控制中心、媒体播放器或通知中心。

此中心允许用户直接从岛屿管理音量、亮度和其他系统更改,该岛屿也可以作为小部件集成到各种状态栏中。

用于系统调整的快速设置控制中心界面。
Dux Dot 可以变幻为控制中心,用于管理音量和亮度等系统设置。duxlabs.dev

这张图片描绘了文章中描述的 Dux Dot 中心中的“快速设置”功能。

定制化与学习曲线

Dux 通过 Dash 的插件系统和锁屏界面的小部件编辑器提供高度定制化。用户可以使用 QML 构建自定义小部件,以扩展外壳的功能。

虽然模块化提供了极大的灵活性,但从 GNOME 等传统环境过渡可能涉及一定的学习曲线,特别是对于需要构建自定义小部件或导航基于 QML 的界面的用户来说。

Hacker News 读者的反应

  • 亲身经验: 一位使用该项目近一年的评论者将体验描述为“无尽的流畅”,并指出它最近增加了对 Bazzite 等原子发行版的支持。 评论 ↗
  • 亲身经验: 一位每天使用该外壳的用户报告称,虽然与 GNOME Shell 相比存在学习曲线,但使用 QML 构建自定义小部件是一项重大优势。 评论 ↗
  • 替代方案: 几位评论者提到了 Noctalia 作为主要替代方案,其中一位用户指出,由于担心其他外壳的资源占用,他们选择了 Noctalia 而非 Dux。 评论 ↗
  • 疑问: 一位评论者质疑该外壳最终是否会变得过于沉重,以至于对于那些在 Niri 合成器上寻求更轻量体验的用户来说不再适用。 评论 ↗

以上为 Hacker News 讨论中观点的摘要,并非经过核实的事实。 阅读完整讨论 ↗