186
ELI5 the whole Wayland vs X11 going on.
(programming.dev)
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Every time I learn more about what Wayland can't do, I learn of even more critical stuff that doesn't work
no screenshots? really? who approved this trashfire as default. That's about as ridiculous as no global hotkeys
That's not what Wayland is like these days - screenshots etc have been implemented for years now
The point they're making is that, as a totally distinct project, every single feature had to be implemented from scratch. It's not a fast process, especially relying on volunteer labour
The issue isn't just that the features had to be reimplemented, but that they were not part of Wayland to begin with. Wayland does only do the most basic stuff and leaves everything else to the compositor (aka Gnome or KDE). That means every compositor will implement their own hacky version of the missing functionality and it takes ages until that gets unified again, so that apps can actually use that functionality.
Wayland is a classic case of an underspecified software project, they do a thing and they might even do it well, but what they are doing is only a fraction of what is actually needed for it to work properly in the real world. That's why we are 15 years later and the new "simpler" Wayland is still not ready.
Would this functionality be mostly the same? Could they get together to make a shared libcompositor that implements the bulk of the functionality? Or is it so tied to specifics of the desktop environment that there's little commonality. In which case, Wayland not doing it would be the right call.
I think wlroots is the standardized thing. Many WMs use it but desktops need to switch over to it afaik. I think KDE talked about doing this for plasma.
I am unsure what wlroots really is and maybe its not a libcompositor you were talking about but similar.
This is exactly what it is.
It seems very well specified to me, just developers have leaned on X's insecurity for years to let them just reach across application boundaries freely. That's addressed by Wayland, but it's obviously a breaking change that requires new ways of transferring information between apps with oversight from the system, instead of X where all apps could just freely spy on each other. Things breaking and being complex to reimplement is the cost of doing it right.
that's something
I've heard that synergy/barrier/etc doesn't work though and that is critical for my daily workflow so I won't be switching until it is supported
I'm confused by this. I'm on EndeavourOS with KDE. It had an all called spectacle which takes screen shots perfectly fine. Does X11 have a screen shot function built in?
With X, any program can capture the entire screen. The Wayland protocol does not allow this, so each DE must implement it separately. You're using KDE's screenshot feature, not Wayland's, and other screenshot tools may not work if they don't support KDE's custom protocol for screen capture.
wait so you're telling me I'm gonna be forced to use spectacle on wayland if I use KDE?
You will have to use a KDE compatible screenshot tool.
sighh, that sucks
does this go for pretty much all programs, like say an email client too? or is there a limit to this?
Does it suck? KDE also has screenshotting implemented. It makes sense that your window manager should manage your windows, which includes being in charge of what can see what. Letting any app screenshot your entire monitor is not secure.
Only those that must interact with non-standard Wayland protocols, such as screen capture tools (like OBS), clipboard managers, WM utilities like xdotool... Other programs such as email clients or text editors are unaffected.
However, this is a non-issue as far as most users are concerned. There are only a handful of implementations (basically, GNOME, KDE, and wlroots which is used by most Wayland WMs) and most modern programs which require specific support to work are all compatible.
still frustrating as all hell, these programs just worked on x11
also Synergy/Barrier/etc dont work yet and would need "non standard" protocols. Pretty critical for me
I am an enduser and I just expect things to work, but one of the most critical things of my setup wont
You do realize you're allowed to still use X11, right?
I will be forced to, but x11 is no longer being developed, so its not very secure to do so
additionally, Wayland is going to be default on kde, and Im not sure if that means that it'll be default for me too if I update
not to mention that with it default on KDE, I'll be running into more and more bugs that just, will not be fixed, because "use Wayland" will be the new response to bug reports (GNOME actively does this with a critical GTK4/libadwaita bug)
the point is, Wayland is being rushed and was never ready for default
Says who?
So when it's the default, you just pick X11 from the drop-down, like I do for Wayland today.
Speculation. Gnome devs are notoriously stubborn, I don't see that being true for KDE.
15 years is not a rush, and for most people it's ready. Making it the default will serve as a push to get developers to make their applications support it.
Most applications get their Wayland support from the toolkit they are written in. Qt ( KDE ) and GTK ( GNOME ) apps are going to work in any Wayland compositor.
Some applications do “desktop” related things like try to take screenshots to set global hot keys. Wayland, strictly speaking, does not allow this. This becomes the job of the “compositor” ( Window Manager ) and so, if an application wants to do those things, it has to know how to talk to the compositor.
Increasingly, the desktop environments and compositors are aligning on how to surface some of these capabilities to applications in a common way.
I'm told screenshots now work on wayland. The idea was that spectacle would not have worked on wayland because of how locked down it is
You said “I learn” twice in a sentence that demonstrates what you do not know. Impressive.
thanks!
I’m on Wayland, KDE plasma with Fedora 39. I take screenshots all the time.
yes, using spectacle I imagine
I use different software, apparently that matters
I understand what you mean now. You have to wait for the software developer to update the tool you use for compatibility with Wayland. Will it run under xwayland?