2026 年 8 月 14 日,Basecamp 联合创始人 David Heinemeier Hansson(DHH)主导的 Linux 发行版 Omarchy 发布 4.0 版,代号 Quattro。官方将这次更新定义为项目启动以来规模最大的一次重构:整个桌面外壳在 Quickshell 中重写为单进程插件架构,系统文件从 git 仓库迁移到 Arch 官方包管理体系,Hyprland 配置全部转为 Lua。这个 2025 年 6 月创建的仓库目前积累 29,077 个 star、2,958 次 fork,采用 MIT 许可证,默认分支已切换为 quattro。

单进程桌面外壳:八个组件退役
Quattro 的核心改动集中在外壳层。此前 Omarchy 的桌面外壳由多个独立守护进程拼装:Waybar 负责顶栏、Walker 负责启动器、Mako 负责通知、SwayOSD 负责音量亮度浮层、hyprlock 负责锁屏、hypridle 负责空闲管理、swaybg 负责壁纸、polkit-gnome 负责授权代理。Quattro 把这八个组件的职能全部收进一个基于 Quickshell 的长驻进程,以插件形式组织,统一主题、统一 IPC 脚本接口。
| 退役组件 | 原职能 | Quattro 中的替代 |
|---|---|---|
| Waybar | 顶栏 | 内置模块化 bar,支持拖拽停靠四边 |
| Walker | 启动器 | 合并进统一菜单(Super + Space) |
| Mako | 通知守护进程 | 原生通知守护,支持免打扰与历史回放 |
| SwayOSD | 音量/亮度浮层 | 原生 OSD |
| hyprlock | 锁屏 | 密码与指纹 PAM 流程 |
| hypridle | 空闲管理 | shell 内事件驱动 |
| swaybg | 壁纸设置 | shell 内背景管理 |
| polkit-gnome | 授权代理 | 内置 polkit agent |
新外壳的事件模型从轮询改为信号驱动:状态指示器、显示器与网络状态、背景都对系统信号做出反应,空闲桌面不再持续消耗 CPU。通知系统支持回放,Super + Shift + Alt + 逗号 可调出最近十条通知的原样重放,包括被免打扰静音的那些;屏幕上的通知弹窗在 shell 重启(每次更新都会触发)后依然存活。剪贴板管理器(Super + Ctrl + V)带图片预览与敏感内容排除,emoji 选择器挂在 Super + Ctrl + E。
顶栏部件覆盖工作区、活动窗口、时钟(点击显示 ISO 周格式)、天气、MPRIS 媒体、系统托盘、电池、键盘布局、麦克风、更新指示器与手动状态指示。第三方部件甚至整条替换 bar 都可以从 git 直接安装:omarchy plugin add <git-url>,配套生态站点 omarchyplugins.com 已上线。右侧面板用 Super + Ctrl + 1 到 9 打开,重排部件后编号自动重算,无需改键位绑定。
打包重构:从 git 仓库到 pacman
Quattro 把 Omarchy 内部实现从 git 检出迁移为正式的 Arch 系统包,系统文件落在 /etc,更新经由 pacman 流转。为防止系统更新绕过发行版自身的快照与迁移逻辑,仓库加入了一个 ALPM 钩子,把系统更新强制路由到 omarchy update(可用环境变量 OMARCHY_ALLOW_DIRECT_PACMAN=1 旁路)。特权操作从 sudo 切到 pkexec/polkit,授权弹窗会展示即将授权的具体命令。懒加载工具(Claude Code、GitHub CLI)的安装载体从 npm 换成 mise。应用启动在独立的 systemd scope 中而非合成器的 cgroup,配合 systemd-oomd,单个应用失控时由内核回收,不再拖垮整个会话。
已有安装的升级路径分两步:先执行 Update > Omarchy,再执行 Update > Omarchy to Quattro。
Hyprland 配置转 Lua
绑定、显示器与开关项的配置从 Hyprland 原生语法迁移到 Lua,为 Hyprland 0.56 的完整兼容铺路。配置形如:
o.bind("SUPER + SHIFT + W", "Omawrite", { launch = "omawrite" })Lua 化换来的是表达能力:绑定可以携带结构化参数,显示器与切换逻辑能写普通程序。仓库语言构成为 Shell 约 2.09MB、QML 约 1.25MB、JavaScript 159KB、Python 116KB、Go Template 99KB、Lua 65KB,外壳主体是 QML(Quickshell 的原生语言),装配与迁移逻辑仍是 Shell。
安装器与生命周期管理
ISO 体积削减超过 1GB,降到 6GB 以内;安装耗时缩短 30%,分钟内完成安装成为可能。SHA256 校验值为 9224fab3720560f771969a99a499e5f7e0f8e2d6a0681d872d52f05fb5003da4。有空闲空间时支持与 Windows 双启动安装(需先关闭 BitLocker)。
首启配置被整体推迟:安装可以在完全不创建用户的情况下完成,机器真正的主人第一次开机时才选择键盘、账号、主机名与时区,界面与 ISO 安装器同源。加密磁盘场景下,LUKS 卷会在此时从安装阶段的临时口令重新加密为主人设置的密码,全程 all-or-nothing,其余密钥槽全部清除。这个设计面向 OEM 与替家人朋友装机的场景。配套的 Setup > Reset Computer 用安装时生成的 @factory 快照整根替换运行中的 root,清除机器身份、账号与指纹注册,交还机器时回到出厂首启状态;没有出厂快照的机器会被明确拒绝,不做半吊子擦除。

网络管理从 iwd/impala/bluetui/wiremix 切换到 NetworkManager。新的网络面板(Super + Ctrl + W)提供实时上下行速率、ping、丢包、一键测速、DNS 供应商选择(DHCP/Cloudflare/Google/自定义)、Wi-Fi 二维码分享、频段切换与企业级 802.1X 网络。音频输出切换在播放不中断的前提下完成,卡死时自动恢复。XPS 14/16 两款笔记本内置了按 DMI 字符串匹配的 PipeWire 滤波链扬声器调校,还原 Windows DSP 的音色;新增机型只需两个数据文件。
默认应用与编码 Agent 集成
| 位置 | 旧默认 | 新默认 |
|---|---|---|
| 写作 | Typora | Omawrite(Super + Shift + W) |
| 计算器 | GNOME Calculator | Omacalc(Super + Ctrl + Q) |
| 图片标注 | Satty | Tensaku |
| 终端 | — | Foot(资源占用更优) |
| 磁盘占用 | — | dua |
| 视频剪辑 | 无 | Omacut(ffmpeg 内核的时长裁剪) |
Omawrite 与 Omacalc 是 DHH 新写的极简应用:前者是自动保存的 Markdown 编辑器,后者替代 GNOME 计算器。Omacut 基于 ffmpeg 做视频时长裁剪,配合桌面自带的屏幕录制形成闭环。
编码 Agent 不再由系统指定,改为 Setup > Defaults > Agent 中选择,可选 Claude Code、Codex、OpenCode、Pi、Oh My Pi、Gemini、Grok、Copilot、Crush。选定的 Agent 首次使用时懒安装,Super + Shift + Ctrl + A 或任意终端里的 a 别名调起,以独立的 org.omarchy.agent 应用窗口打开,从主目录召唤时自动落在 ~/Work 下启动。顶栏新增 model-usage 部件,展示 Claude Code、Codex、Fireworks 等主流 harness 的用量统计。进程崩溃时 systemd-coredump 的日志流会弹出提示,点击后默认 Agent 拿着 core dump 开始诊断,其 diagnose-crash 技能覆盖回溯符号化,确认是 Omarchy 的 bug 后才在征得同意的情况下上报。

主题系统与安全修复
主题色板从 8 个基础色扩展到 24 个,neovim、VS Code、btop 的主题配置直接从扩展色集自动生成,主题包里需要手工维护的文件随之减少。新增 Solitude、Last Horizon、Lupine 三套主题,外加跟随系统主题的 Pi。~/.config/omarchy/shell.toml 作为机器级覆盖层叠加在活动主题之上,个人字体、间距、bar 微调在主题切换后保留,文件被监视,改动实时生效。主题切换器(Super + Shift + Ctrl + Space)与背景切换器(Super + Ctrl + Space)均为可过滤的实时预览轮播。
这次发布同时修复了恶意主题安装包的三条代码执行路径:colors.toml 的值可以触达 GNU sed 的 e 标志、VS Code 主题名未转义、键盘 RGB 未校验;并移除了 tzupdate 的无约束 sudoers 授权,该授权此前允许任意 wheel 组用户在任意位置写入 root 拥有的符号链接。
性能层面的两个细节:屏幕保护程序从 terminaltexteffects 换成 Rust 移植 ttfx,逐字节一致的渲染,单一无依赖二进制,启动时间从约 107ms 降到约 1ms,基础镜像不再需要 Python;NVIDIA GPU 检测从 lspci 改为读 sysfs,旧方案会把运行时挂起的独显从 D3cold 唤醒,唤醒耗时超过 Hyprland 整个 1.5 秒的配置加载预算,新方案按设备 ID 分类,pre-Maxwell 显卡不再被指派到驱动不了它的驱动上,名称正则漏掉的 Maxwell/Pascal 部件也能被正确识别。
写在最后
Quattro 的更新密度在 FOSS 桌面发行版里相当少见:外壳进程模型、包管理边界、配置语言、安装生命周期四个层面同时动刀,且每个层面都有明确的工程动机(进程收敛、更新安全、表达能力、设备交接)。对想尝试 Arch + Hyprland 组合又不愿手工装配外壳的读者,ISO 下载与文档都在 omarchy.org,升级路径对 3.8.x 现有安装开放。