aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:11 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:11 +0100
commit5049f392a18ef484570482de1d066faebbb927fd (patch)
treeba43611d5f8cd78188a51375b74e67025d7751b9
parent456aa855b4348a8aa8b4a6679d5edfffdb235452 (diff)
downloaddotfiles-5049f392a18ef484570482de1d066faebbb927fd.tar.gz
dotfiles-5049f392a18ef484570482de1d066faebbb927fd.tar.bz2
dotfiles-5049f392a18ef484570482de1d066faebbb927fd.zip
feat(wayland): tune Qt/SDL/Electron backends
- zprofile: set QT_QPA_PLATFORM="wayland;xcb" (xcb fallback for bundled Qt), SDL_VIDEODRIVER="wayland,x11" (SDL2 defaults to X11). Drop MOZ_ENABLE_WAYLAND (Firefox 121+ default). - meta/wayland: add qt5-wayland and qt6-wayland so QT_QPA_PLATFORM=wayland actually resolves. - electron-flags.conf: global --ozone-platform=wayland, Wayland window decorations, GTK4. Applies to all apps using the Arch electron wrapper. Bundled-electron apps (slack-desktop, etc.) unaffected.
-rw-r--r--dot_config/electron-flags.conf8
-rw-r--r--dot_config/zsh/dot_zprofile5
-rw-r--r--meta/wayland.txt2
3 files changed, 14 insertions, 1 deletions
diff --git a/dot_config/electron-flags.conf b/dot_config/electron-flags.conf
new file mode 100644
index 0000000..9f49ae0
--- /dev/null
+++ b/dot_config/electron-flags.conf
@@ -0,0 +1,8 @@
+# Electron global flags. Read by Arch's `electron` wrapper for all
+# Electron apps that don't bundle their own build (slack-desktop bundles
+# its own, for example; those need per-app flags files instead).
+# See https://wiki.archlinux.org/title/Electron#Configuration_files
+
+--enable-features=WaylandWindowDecorations,AllowQt
+--ozone-platform=wayland
+--gtk-version=4
diff --git a/dot_config/zsh/dot_zprofile b/dot_config/zsh/dot_zprofile
index 32b9245..3c824d3 100644
--- a/dot_config/zsh/dot_zprofile
+++ b/dot_config/zsh/dot_zprofile
@@ -80,7 +80,10 @@ export INPUTRC="$XDG_CONFIG_HOME/sh/inputrc"
# ── Wayland ───────────────────────────────────────────────────────────────────
export XDG_CURRENT_DESKTOP=sway
-export MOZ_ENABLE_WAYLAND=1
+# Prefer Wayland for Qt; fall back to xcb for apps without qt{5,6}-wayland.
+export QT_QPA_PLATFORM="wayland;xcb"
+# SDL2 defaults to X11; force Wayland with X11 fallback. SDL3 ignores this.
+export SDL_VIDEODRIVER="wayland,x11"
# ── XDG cleanup: keep $HOME tidy ─────────────────────────────────────────────
# https://wiki.archlinux.org/title/XDG_Base_Directory#Partial
diff --git a/meta/wayland.txt b/meta/wayland.txt
index 1ca642c..341c98b 100644
--- a/meta/wayland.txt
+++ b/meta/wayland.txt
@@ -1,6 +1,8 @@
# Compositor
sway
xdg-desktop-portal-wlr
+qt5-wayland
+qt6-wayland
# Bar & launcher
waybar