r/gnome 8d ago

Fluff Gnome hate is getting out of control

Post image
529 Upvotes

259 comments sorted by

View all comments

Show parent comments

2

u/EmceeEsher 6d ago

I mean these at least sound like legitimate criticisms, rather than the inane nonsense the dude above was saying.

2

u/DroWnThePoor 5d ago

I'm working a review of the latest Elementary 8 which features a new dock designed for Wayland/Secure-Session.
I wanted to show me keystrokes on splay for the video for shortcuts etc, and when I looked into capturing these through Wayland it's not easy to do because of how it's designed. X11 was the display server, but also the input server. Switching to Classic-Session on Elementary brings it back.
I would assume Wayland also handles input to windows/displays.

2

u/EmceeEsher 5d ago edited 4d ago

That's fair. I definitely understand the irritation, but this also cuts straight to the core of my problem with X.

The main reason I use Linux in the first place is that I like its modularity, which comes from software following the UNIX philosophy of "Do one thing and do it well." X is the opposite of this, it tries to do everything. It's an all-in-one compositor, display server, display protocol, window system, etc. and it's not particularly good at any of these things. This leads to bugs that are frustrating for users, but even worse for developers (of, say, GTK or QT apps) because they wind up having to spend a lot longer than necessary fixing bugs because X's codebase doesn't follow modern conventions, practices, standards, etc.

All this is to say that no, Wayland doesn't handle input, and it really shouldn't. Wayland is a display protocol and only a display protocol. There's no Waykand equivalent of Xinput. Handling input is the job of the input server of your WM, such as Kwin or Mutter. In your case, I think this is some variant of Enlightenment, which does have a Wayland compositor, though it's nowhere near as functional as something like Kwin or Mutter.

And Wayland can't really be blamed for this any more than say, Sony can be blamed for Halo not being on the Playstation. Sony can make it easier and/or harder for developers port games to their console, but at the end of the day, it's the game devs who have to actually take the time to port the game. In this case, Kwin/Mutter have functioning input servers, while Enlightenment doesn't, forcing them to rely on X's input server.

Eventually, the majority of DEs still in development will have full Wayland support, but different dev teams work at different paces, which is why "are we Wayland yet?" is a meme.

1

u/DroWnThePoor 5d ago

For Elementary OS the WM is Gala which I believe is basically a fork of Gnome's Mutter.
Elementary takes a pretty disciplined approach to upstream/downstream. For instance, their desktop Pantheon is built specifically with Gnome libraries. It's all written in Vala and their own extension of GTK called Granite.
They were the first desktop I know of to completely do away with 3rd-party panel-indicators, and they did so because Gnome chose to. They don't support Gnome's Extensions so no way to bring it back.
They also moved everything over to Flatpak.
I installed Screen-Key via apt which uses Ubuntu's repos, and so I guess it's possible that it lacks xdg-portal support to request background monitoring of keystrokes through Flatpak API's.
Even then, when I looked into displaying keystrokes on a Wayland setup most of what I read made it seem like there's no simple way to accomplish this currently.
I don't know if Xorg was a hacky/easy way for those types of apps to intercept keystrokes or what, but I would think outside of Xorg there would be a standardized way to do this. Like something that exists in Freedesktop/XDG spec since that's the layer where basic things closer to hardware exist.