Differences between Wayland and X11
-
[email protected]replied to [email protected] last edited by
One opinion that Wayland has is that the client is responsible for decorating its window. It draws its own title bar, shadow around the window, and the cursor.
Though not everybody was happy with this. A few protocols were created that lets clients tell the compositor to draw decorations around the window and the cursor.
But still, every app needs to support those client side decorations and cursors because not all compositors support those protocols. Gnome notably doesn’t, they like client side decorations.
-
[email protected]replied to [email protected] last edited by
Unfortunately not. There’s been a number of things on Nvdia’s side that slowed down Wayland adoption.
They didn’t always support Xwayland hardware acceleration.
Nvidia pushed for a technology called EGLStreams while everyone else agreed on GBM. So the desktop stack had to support both. Nvidia eventually relented and started supporting GBM.
Nvidia didn’t support VRR or night light for a while.
Nvidia didn’t support necessary stuff for Gamescope to function properly.
And overall Nvidia on Wayland was just buggy. I remember that many games failed to launch or had weird performance issues. But those issues just went away when I got an AMD card.
But things are in a much better state today. Though I did recently test a 20 series card on Fedora 41 and it was a terrible experience on the proprietary drivers. But when speaking with orhers, they didn’t share my issues.
-
[email protected]replied to [email protected] last edited by
One thing to note with X11's design, having a server and client, there was nothing requiring both to be on the same machine. You could run an X11 client on your local machine, ssh into a remote machine and use its X11 server.
Lets say you are home and can ssh into a work server. You could run Firefox on the work machine, using it's network and have the visual parts show up on your home computer.
This was very much a Unix, shared resource style design. Servers and thin clients. Put all your horse power in the big machine and connect using your crappy low power system to it.
-
[email protected]replied to [email protected] last edited by
Why does Nvidia need to support night light? Can't you just write a simple shader in any shader language that does colour adjustments?
-
[email protected]replied to [email protected] last edited by
I realize not using this model was intentional with Wayland, but I wish it had something similar.
-
[email protected]replied to [email protected] last edited by
The Nvidia driver didn’t support some protocol that AMD/Intel did that was used by desktops for the night light.
Yes, they could have made the night light work. But why would they when Nvidia said the feature was coming soon? Well it turned out that soon was taking a very long time and eventually KDE actually did create a special night light implementation just for Nvidia. The problem was that it was a hack that had extra overhead. And in the end the hack didn’t get shipped because Nvidia finally starting supporting the protocol.
-
[email protected]replied to [email protected] last edited by
I've never tried it, but there's Waypipe.
-
[email protected]replied to [email protected] last edited by
Keep in mind that in practice this didn't work that well, it wasn't very efficient at displaying modern interfaces over the network. Showing a simple text editor over LAN worked fine, but using Firefox from another place was quite spotty.
-
[email protected]replied to [email protected] last edited by
Back than I tried this. The performance was horrible, even on a good connection. It was barely tolerable on LAN, but over the Internet ... no. Just no. There were and are better solution for accessing a remote machine.
-
[email protected]replied to [email protected] last edited by
But I would rather have 1990 Honda Accord than a new car. But I would take Wayland over X ahah
-
[email protected]replied to [email protected] last edited by
and you can't use a shortcut for gnome-pie on wayland
the workaround is a command line and opens a fullscreen window
-
[email protected]replied to [email protected] last edited by
Hey, sorry to take adantage of your answer, perhaps you can help me out though.
Is dbus actually necessary for xdg-desktop-portal? I understand from this flatpak post that xdg-desktop-portal is actually a bunch of d-bus interconnections, which of course make d-bus fundamental for xdg-desktop-portal, but wanted to confirm. xdg-desktop-portal is a must on wayland if one wants to share screen through webrtc, or electron apps like slack or teams-for-linux (probably zoom which is Qt as well). But I've read some people (this for example) start sway from console without d-bus, without logind/systemd, just seatd on the background (wlroots and sway support seatd). So perhaps those people are not interested on sharing screen, I don't know. Or perhaps such d-bus plumbing is only required for flatpaks apps, which are sandboxed, thus requiring all that interconnection to access resources and such, and then I'm not sure about a thing...
Thanks !
-
[email protected]replied to [email protected] last edited by
Every mechanic does not know how to fix x11, and cannot fix it without extensive knowledge.
-
[email protected]replied to [email protected] last edited by
aside from the obvious, wayland being the default choice on all relevant distros and DEs and being continously worked on, evermore projects switching to it (WINE most recently) whilst X11 is in maintenance-mode, the main thing for me and my deployed fleet is if you're running a modern laptop, say with a 1080p or better screen, wayland is a must. primarily because of the output (UI scaling, effortless multi-monitor dock/undock) and the input (touchpad gestures, touch screens).
if your world is a desktop with a mouse and, say, XFCE, then you have very few of these things intruding on you and you can't really understand the benefits.
-
[email protected]replied to [email protected] last edited by
I won't bother going into technical details about x11 and wayland since other people already explained it much better than i ever could, but basically wayland is supposed to be replacing x11, because the codebase is so old now that it has become very hard to maintain and implement new features without breaking things. A window manager pretty much only handles the placement of windows on the screen, and you have to use seperate applications for setting a wallpaper, getting notifications, application launcher, etc. Whereas a desktop environment is a fully fledged out of the box experience. I personally really like window managers because i like the workflow of tiling window managers in particular, which places the windows in a predefined layout for you. Something that might be a bit confusing is that window managers on wayland are called compositors, which is because in wayland the window manager also has to do it's own compositing. In x11 you could use something like picom, which is a seperate compositor program that you could use to add graphical effects to any window manager, but on wayland this doesn't exist and the window manager has to implement its own compositing.