ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Omarchy 浏览器管理完全指南:默认浏览器、Chromium 家族扩展与 Firefox/Zen 的 Wayland 策略

Omarchy 浏览器管理完全指南:默认浏览器、Chromium 家族扩展与 Firefox/Zen 的 Wayland 策略 Omarchy 浏览器管理完全指南默认浏览器、Chromium 家族扩展与 Firefox/Zen 的 Wayland 策略【免费下载链接】omarchyBeautiful, Modern Opinionated Linux项目地址: https://gitcode.com/GitHub_Trending/om/omarchyOmarchy 以开源的 Chromium 作为系统默认浏览器并在菜单中提供一套完整的浏览器生命周期管理能力安装、设默认、应用主题、移除。本文基于 manual/23-browsers.md 及仓库内对应脚本与配置源码带你掌握 Omarchy 浏览器体系Chromium 家族Chromium/Chrome/Edge/Brave如何借助 Copy URL、Download Video 原生扩展打通浏览器与桌面Firefox/Zen 如何获得 Wayland 原生渲染与硬件加速策略以及如何在终端用一行命令完成默认浏览器切换。适用前提本文描述的行为基于当前仓库源码面向 OmarchyArch Linux 系、Hyprland Quickshell 桌面环境。文中涉及的命令与目录如/etc/chromium/policies/managed、~/.config/environment.d为安装脚本执行时的实际落点。Omarchy 的浏览器定位Chromium 为基座在 Omarchy 中Chromium 不只是一个浏览器而是整个桌面中打开链接这一语义的统一落点它是 安装时配置 的基础组件属于 base 系统的一部分无法被当作可选浏览器移除Super Shift Return快捷方式打开的就是它相关启动逻辑见 bin/omarchy-launch-browser对应窗口规则见 default/hypr/apps/browser.lua每一个 Web App如 manual/25-web-apps.md 所述也都跑在 Chromium 内部。它是一个纯开源的构建版本且会被 Omarchy 主题化——通过下发的浏览器机器策略managed policy写入主题色让浏览器外观与系统其余部分保持一致。主题刷新的实现细节可继续阅读 theming.md 与 theme-system.sh。安装一个浏览器Install Browser如果 Chromium 不合口味Omarchy 不会把你困在其中。在 Omarchy 菜单的Install Browser下可以看到Chrome、Edge、Brave、Brave Origin、Firefox、Zen。选择一个后Omarchy 会完成三步工作安装对应软件包为它建立策略目录Chromium 家族是managed机器策略Firefox/Zen 是distribution/policies.json把当前主题应用到该浏览器上。安装动作的真正执行者是 bin/omarchy-install-browser按参数分发到不同分支下表总结了各浏览器的安装细节参数软件包来源策略目录启动参数文件flagschromium官方仓库chromium/etc/chromium/policies/managed~/.config/chromium-flags.confchromeAURgoogle-chrome/etc/opt/chrome/policies/managed~/.config/chrome-flags.confedgeAURmicrosoft-edge-stable-bin/etc/opt/edge/policies/managed~/.config/microsoft-edge-stable-flags.confbraveAURbrave-bin/etc/brave/policies/managed~/.config/brave-flags.confbrave-originAURbrave-origin-bin/etc/brave/policies/managed~/.config/brave-origin-flags.conffirefox官方仓库firefox/usr/lib/firefox/distribution无走 environment.dzenAURzen-browser-bin/opt/zen-browser/distribution无走 environment.d从实现上看bin/omarchy-install-browserChromium 家族统一走copy_chromium_flags把仓库预置的 config/chromium-flags.conf 复制到用户的~/.config/browser-flags.conf随后调用omarchy-install-chromium-copy-url与omarchy-install-chromium-ytdlp安装两个原生扩展下文详述Firefox/Zen 走setup_firefox_wayland向~/.config/environment.d/omarchy-firefox-wayland.conf写入MOZ_ENABLE_WAYLAND1强制以原生 Wayland 模式启动这对分数缩放fractional scaling和平滑触控板滚动至关重要每个 Chromium 家族安装完成后都会调用omarchy-theme-set-browser立刻应用当前主题。值得强调的是上表中的机器策略目录。在 Omarchy 中Chromium 家族的 managed policy 是每个 profile 都必须存在的强约束其目录的创建不是简单的mkdir而是经过精心加固的流程见 install/helpers/browser-policy.sh目录固定为0755 root:root可写的、非 root 拥有的父目录会被重建browser_policy_setup_parent目录内非 root 拥有的文件会被清理browser_policy_purge_dir防止被植入的符号链接或文件干扰策略解析主题色通过特权写入工具omarchy-theme-set-browser-policy写为color.json配合 etc/sudoers.d/omarchy-theme-browser 的 sudoers 规则内容形如{BrowserThemeColor: hex, BrowserColorScheme: device}其中 hex 会经browser_policy_theme_hex校验只接受三段 0-255 的 RGB否则回退到默认色#1c2027。也就是说用户安装的主题色永远无法让浏览器策略目录变得不可信——这是一套主题可自由定制、策略路径必须可信的纵深防护设计。设默认浏览器Setup Defaults Browser 与 omarchy default browser安装一个浏览器并不会自动把它提升为默认。安装脚本的收尾提示也印证了这一点Make it the default via Setup Defaults Browserbin/omarchy-install-browser。图形化路径Setup Defaults Browser菜单只列出你实际安装过的浏览器并在当前默认项上打勾。终端路径则是对应命令 bin/omarchy-default-browser# 无参数查询当前默认浏览器 omarchy default browser # 设置默认浏览器 omarchy default browser firefox omarchy default browser brave核心机制是调用xdg-settings读写default-web-browser即 XDG 默认 web 处理器env -u BROWSER xdg-settings get default-web-browser # 查询 env -u BROWSER xdg-settings set default-web-browser desktop_id # 设置脚本内部维护了 7 个浏览器与.desktop文件、显示名、图标的映射bin/omarchy-default-browser例如chromium → chromium.desktop、firefox → firefox.desktop、zen → zen.desktop。查询时把.desktop反向翻译回简短别名便于阅读与复用。两个细节值得注意命令中刻意用env -u BROWSER排除环境变量BROWSER的干扰保证读写始终以 XDG handler 为准如果选中的浏览器尚未安装脚本并不会报错退出而是通过omarchy-default-browser --install browser自动触发一次安装在浮动终端中呈现进度安装完成后继续设置默认并发送通知Name is now the default browserbin/omarchy-default-browser。因为设置的是 XDG handler所以这影响的远不止 Omarchy 的快捷键从聊天应用里点链接到终端里执行的任何打开 URL操作都会遵循你的选择。Chromium 家族专属Copy URL 与 Download Video 原生扩展Chromium、Chrome、Edge、Brave 会附带两个由 Omarchy 提供的扩展。它们之所以能做到网页里取视频、网页地址进系统剪贴板这种普通扩展做不到的事关键在原生消息主机native messaging host——一个由浏览器拉起、运行在你系统上的小程序。两个扩展对应的消息主机在安装浏览器时随 flags 一起部署见 bin/omarchy-install-chromium-ytdlp脚本会把模板 default/chromium/native-messaging-hosts/com.omarchy.ytdlp.json 中的__HOST_PATH__替换为真实路径并同时写入 Chromium、Chrome/Beta/Unstable、Brave/Brave Origin 全系列、Edge 共十余个 profile 目录的NativeMessagingHosts/下。浏览器侧的 flags 也一并确认了扩展的加载方式config/chromium-flags.conf 中--load-extension指向/usr/share/omarchy/default/chromium/extensions/下的copy-url、yt-dlp、whatsapp-slim后者是 Web App 场景的辅助扩展。Copy URLAlt Shift L快速取地址Copy URL 用Alt Shift L把当前标签页地址放进系统剪贴板。它刻意绕过浏览器自身剪贴板而走系统剪贴板因此会触发一条 Omarchy 桌面通知确认操作成功且该 URL 立刻进入统一剪贴板历史见 manual/08-unified-clipboard-history.md可以在任何应用里继续粘贴。工具栏也保留了按钮供偏好点击的用户使用。其行为有测试兜底见 test/shell.d/chromium-copy-url-test.sh。Download VideoAlt Shift D抓取页面视频Download Video 用Alt Shift D抓取当前页面正在播放的视频。它把 URL 交给yt-dlp因此覆盖面远不止 YouTube。下载文件默认落在~/Videos如需改目录设置环境变量OMARCHY_YTDLP_DIR关于环境变量写在哪里参见 manual/46-faq.md。底层实现非常能体现 Omarchy 的工程风格见 bin/omarchy-chromium-ytdlp-host原生消息协议主机按 native messaging 规范读取 4 字节小端长度前缀 UTF-8 JSON校验 URL 必须以http(s)://开头后用setsid -f把下载任务完全脱离浏览器进程去执行让扩展回调能立即干净地 resolvebin/omarchy-chromium-ytdlp-host先模拟后实下先用yt-dlp --simulate确认页面上确有可下载的视频找不到就发一条 critical 通知No video found for download而不是空转一次下载bin/omarchy-chromium-ytdlp-host进度复用 OSD下载百分比通过omarchy-osd驱动屏幕上同一条 OSD就是音量/亮度用的那条原地刷新而非堆积通知实现还做了约 4 次/秒的重绘节流避免快速下载时进程风暴bin/omarchy-chromium-ytdlp-host成功后的收尾只有after_move真正打印了文件路径才算成功随后用ffmpeg截取中心裁剪的 256×256 缩略图作为通知预览通知带--exec mpv点击即播且文件名与标题都经过防注入校验拒绝控制字符、拒绝-开头的参数伪装、强制落在下载目录内详细逻辑见 bin/omarchy-chromium-ytdlp-host。整条链路有系统测试覆盖见 test/shell.d/chromium-ytdlp-test.sh。局限这两套扩展仅限 Chromium 家族。Firefox 与 Zen 不提供。Firefox 与 Zen不同的家族不同的待遇Firefox 和 Zen 属于 Gecko 家族Omarchy 对它们采用另一套处理方式bin/omarchy-install-browser写入 policies 文件以启用合理默认值。安装脚本把仓库预置的 default/firefox/policies.json 以0644 root:root安装进各自的distribution目录内容包含apz.overscroll.enabled: true—— 启用触控板/滚轮弹性回弹的过滚动反馈media.ffmpeg.vaapi.enabled: true与media.hardware-video-decoding.force-enabled: true—— 开启 VA-API 硬件视频解码对 X11/合成器的省电解码很重要widget.disable-swipe-tracker: false—— 保留 Wayland 手势滑动的惯性追踪widget.wayland.fractional-scale.enabled: true—— 开启 Wayland 分数缩放支持。切换原生 Wayland 模式向~/.config/environment.d/写入MOZ_ENABLE_WAYLAND1这在分数缩放显示器与触控板平滑滚动场景下是刚需Firefox 的 XWayland 模式在这些场景表现不佳。不做的事不给它们安装上述 Chromium 扩展也不对其做 Omarchy 主题化——这两块体验留给你自行配置。策略文件的加固同样不放松browser_policy_setup_firefox_distribution会先加固 distribution 目录再写入 policies.json并拒绝 group/other 可写的策略文件install/helpers/browser-policy.sh。另外在 Hyprland 的窗口管理层面浏览器家族是被显式区分的default/hypr/apps/browser.lua 用正则把 Chromium 系chromium/chrome/brave-browser/microsoft-edge/Vivaldi 等打上chromium-based-browser标签、Firefox 系firefox/zen/librewolf打上firefox-based-browser标签并给二者应用一致的窗口透明度规则opacity 1.0 0.985聚焦时全不透明像 YouTube、Zoom 这类视频窗口还会被摘掉该标签避免透明叠加干扰观影与视频会议。移除浏览器Remove Browser前面安装的一切都可以在Remove Browser下撤销——对应脚本 bin/omarchy-remove-browser 负责卸载软件包与清理配套文件。唯一例外是Chromium它属于 base 系统的一部分不会出现在移除列表中也不应被当作可选项卸载。移除后若浏览器仍是 XDG 默认 handler记得重新到Setup Defaults Browser或使用omarchy default browser指定一个新的默认浏览器让系统里的打开链接行为保持指向一个真实存在的程序。小结能力Chromium / Chrome / Edge / BraveFirefox / ZenOmarchy 主题化是managed policy 写入BrowserThemeColor否Copy URL / Download Video 扩展是通过原生消息主机否默认策略文件无仅主题色 policy是default/firefox/policies.json原生 Wayland 切换由启动参数--ozone-platformwayland保证MOZ_ENABLE_WAYLAND1写入 environment.d能否从Remove Browser移除除 Chromium 外均可可这套设计的核心权衡清晰Chromium 家族获得深度系统集成主题、剪贴板、yt-dlp、OSD 进度代价是策略路径的严格加固Firefox/Zen 则退一步只保证 Wayland 原生渲染与开箱即用的播放/滚动体验把集成深度交给用户决定。无论选哪条路Omarchy 都保证安装 → 设默认 →可选移除整条生命周期在菜单与终端中一致、可审计。【免费下载链接】omarchyBeautiful, Modern Opinionated Linux项目地址: https://gitcode.com/GitHub_Trending/om/omarchy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表