feat(desktop): run Chromium/Electron apps natively on Wayland

Set NIXOS_OZONE_WL=1 so nixpkgs' chromium/electron wrappers inject the
Ozone Wayland flags. This is a Wayland-only session, so the XWayland
fallback is pure downside (blurry fractional scaling, extra hop).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-07 13:56:05 +02:00
parent d43381727d
commit f35037387c
+6
View File
@@ -52,6 +52,12 @@ in
# Mute the harmless "Wayland does not support QWindow::requestActivate()" # Mute the harmless "Wayland does not support QWindow::requestActivate()"
# spam Qt apps (keepassxc) print; scoped to that one log category only. # spam Qt apps (keepassxc) print; scoped to that one log category only.
QT_LOGGING_RULES = "qt.qpa.wayland=false"; QT_LOGGING_RULES = "qt.qpa.wayland=false";
# Run Chromium/Electron apps (brave, signal, grayjay's webview) natively on
# Wayland instead of XWayland: nixpkgs' chromium/electron wrappers read this
# and inject the Ozone Wayland flags. This is a Wayland-only (Hyprland)
# session, so XWayland is pure downside (blurry fractional scaling, extra
# hop). Override per-app with --ozone-platform=x11 if one misbehaves.
NIXOS_OZONE_WL = "1";
# GUI helper for ssh passphrase/PIN prompts (see sshAskpass above). Not # GUI helper for ssh passphrase/PIN prompts (see sshAskpass above). Not
# forced: with a tty ssh still prompts inline; the helper is used only when a # forced: with a tty ssh still prompts inline; the helper is used only when a
# caller sets SSH_ASKPASS_REQUIRE (e.g. a headless/agent context). # caller sets SSH_ASKPASS_REQUIRE (e.g. a headless/agent context).