I also switched to use different Wayland compositors many years ago for my main systems, but there are also still reasons to use X11. These are mine:
X11 forwarding, with that you can connect to another system via SSH (e.g. via ssh -Y) and just start a GUI app, and the window appears on your screen.
Sharing individual windows via WebRTC, with Wayland compositors you can normally only share full screens. Xserver allows applications to directly capture the window content of others.
Easily mirroring screens for presentations, with some Wayland compositors you have to capture one screen and then play it back on another screen, with X11 that is integrated into the xserver.
Automation and keyboard macros, with X11 it is much easier to automate keyboard macros and customize keyboard mapping than on Wayland. See Xmodmap, etc. Same for mouse input. That is also a reason why implementing remote control software is more difficult with Wayland, see for instance RustDesk support for Wayland (works now, but still a bit experimental).
There might be some Wayland compositors that worked around that, but on X11 this was standard. But generally X11 provides these features for all WMs, and in Wayland they have to be implemented individually.
And some just are not supposed to work, for security reasons.
But all of this depends on your use-case. I sometimes even (can or have to) go without a Wayland compositor or X11 and render GUI directly via KMS/DRM.
Pretty good, however wtype is only sending keystrokes globally, with xdotool you can also move the mouse, send key events to specific windows and more.
I also switched to use different Wayland compositors many years ago for my main systems, but there are also still reasons to use X11. These are mine:
ssh -Y
) and just start a GUI app, and the window appears on your screen.There might be some Wayland compositors that worked around that, but on X11 this was standard. But generally X11 provides these features for all WMs, and in Wayland they have to be implemented individually.
And some just are not supposed to work, for security reasons.
But all of this depends on your use-case. I sometimes even (can or have to) go without a Wayland compositor or X11 and render GUI directly via KMS/DRM.
Multi-cursor support/multi focus
If I want two mice and monitors hooked up so me and another person can use the same computer independently it’s x11
I’ve seen some steps towards this on Wayland but it was in infancy last I checked
I think you can start two Wayland compositors, and change the compositor configuration to use different mice and outputs, but I never tried this.
Thanks for the tip
I’d wager that is true. I know, for sure, you can start one compositor inside another compositor. I do this all the time for gaming with
gamescope
.Isn’t there
xdotool
for this?Yes, that is for X11. Now find one that works on all Wayland compositors, that doesn’t require root permissions.
I guess wtype is waylands replacement for xdotool? https://github.com/atx/wtype
Pretty good, however
wtype
is only sending keystrokes globally, with xdotool you can also move the mouse, send key events to specific windows and more.