mirror of
https://github.com/hyprwm/hyprland-wiki.git
synced 2024-12-22 17:49:48 +01:00
Configuring: add XWayland page
This commit is contained in:
parent
7f55debe71
commit
5497261f5e
1 changed files with 42 additions and 0 deletions
42
pages/Configuring/XWayland.md
Normal file
42
pages/Configuring/XWayland.md
Normal file
|
@ -0,0 +1,42 @@
|
|||
XWayland is the bridging mechanism between legacy Xorg programs and Wayland
|
||||
compositors.
|
||||
|
||||
# HiDPI XWayland
|
||||
|
||||
Currently, XWayland on HiDPI screens looks pixelated/blurry, due to Xorg's
|
||||
inability to scale.
|
||||
There are attempts to add a standard scaling mechanism, such as [MR 733](https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/733).
|
||||
|
||||
You can use this MR's wlroots implementation in Hyprland by making a few changes.
|
||||
{{< hint >}}
|
||||
The following instructions assume you know how to patch programs, either
|
||||
manually or using your favourite package manager.
|
||||
|
||||
See instructions for [manual patching](https://www.howtogeek.com/415442/how-to-apply-a-patch-to-a-file-and-create-patches-in-linux/)
|
||||
and [Pacman patching](https://wiki.archlinux.org/title/Patching_packages).
|
||||
{{< /hint >}}
|
||||
|
||||
1. Have the latest `xwayland` package patched with at least
|
||||
[the HiDPI patch](https://github.com/hyprwm/Hyprland/blob/main/nix/xwayland-hidpi.patch)
|
||||
(based on the MR's implementation, but updated).
|
||||
|
||||
2. Make sure you have the required Hyprland `wlroots`, patched with
|
||||
[the HiDPI xwayland patch](https://gitlab.freedesktop.org/lilydjwg/wlroots/-/commit/6c5ffcd1fee9e44780a6a8792f74ecfbe24a1ca7)
|
||||
and [this commit](https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/18595000f3a21502fd60bf213122859cc348f9af)
|
||||
**reverted**. This is important, as not reverting it will make opening XWayland
|
||||
programs crash Hyprland.
|
||||
|
||||
3. Add this line to your configuration:
|
||||
```toml
|
||||
exec-once=xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE 2
|
||||
```
|
||||
and configure toolkits to scale using their specific mechanisms, such as
|
||||
```sh
|
||||
export GDK_SCALE=2
|
||||
export XCURSOR_SIZE=32
|
||||
```
|
||||
|
||||
{{< hint >}}
|
||||
The GDK_SCALE variable won't conflict with wayland-native GTK programs.
|
||||
{{< /hint >}}
|
||||
|
Loading…
Reference in a new issue