Xwayland
XWayland is the bridging mechanism between legacy Xorg programs and Wayland compositors.
XWayland currently looks pixelated/blurry on HiDPI screens, due to Xorg’s inability to scale. There are attempts to add a standard scaling mechanism, such as MR 733.
You can use this MR’s wlroots implementation in Hyprland by making a few changes.
The following instructions assume you know how to patch programs, either manually or using your favourite package manager.
See instructions for manual patching and Pacman patching.
-
Have the latest
xwayland
package patched with at least the HiDPI patch (based on the MR’s implementation, but updated). -
Make sure you have the required Hyprland
wlroots
, patched with the HiDPI xwayland patch and this commit reverted. This is important, as not reverting it will make opening XWayland programs crash Hyprland. -
Add these lines to your configuration:
# sets xwayland scale exec-once=xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE 2 # toolkit-specific scale env = GDK_SCALE,2 env = XCURSOR_SIZE,32
The GDK_SCALE variable won't conflict with wayland-native GTK programs.