this post was submitted on 25 Dec 2024
25 points (79.1% liked)
Linux
5505 readers
188 users here now
A community for everything relating to the linux operating system
Also check out !linux_memes@programming.dev
Original icon base courtesy of lewing@isc.tamu.edu and The GIMP
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Finish the transition from X to Wayland?
I just want Sway to work on Nvidia GPU without flickering.
I’m not a super-savvy user. Can someone explain to me why I should care about X vs Wayland? Everything seems to work with X, and as I’ve just read, many programs don’t support Wayland. So will this transition just lead to lots of broken software once someone decides they won’t ship with X by default anymore?
X is broken and the people who understand it at a deep level are pretty much all dead. What's worse is that the code base is massive and doesn't follow modern code practices.
Wayland is different as there is no codebase. It is simply a set of standards that allow apps to connect to a desktop.
The X model:
App -> window manager -> X server -> hardware
The Wayland model:
App -> desktop -> hardware
This sounds like it wouldn't be that big of improvement but unlike X Wayland is designed to take advantage of the modern GPU horse power. X was originally designed to run on UNIX mainframes so to make it run like it does took a bunch of Jacky work arounds.
Many of the people that maintain X are the same people working on Wayland implementations. They're pushing people towards the new thing because it makes their lives easier, and that's also the nature of engineer driven product development, it's not going to consider all the edge cases underserved from replacing legacy software because there's nobody to keep them in check.
There are people working on X?
Wayland is basically the direct successor to X11. It basically fixes tearing, makes HDR possible, makes scaling way better, and is all-round just better prepared for the future. I've been using it for years without much trouble. The only issues I keep having are scripts which expect x11-specific tools to be there, but that seems to be quickly solving itself while people realize that x11 is quickly loosing support. If you want to try it, I recommend setting up a fresh installation of a distro with KDE, Gnome, Sway, or Hyprland, just to make sure all the right dependencies are installed.
Being pedantic. Wayland is a replacement not a successor. It's for those X does it, why not Wayland, situations.
Wayland is nothing like X and definitely isn't a successor
@bleistift2 @addie Wayland will be the only display server, it's impossible to deny it, for example KDE defaults to Wayland & Gnome is 100% detached from X11, the deletion of X11 is coming in the future
plus, X11 is full of spaghetti code and no one, and I mean no one, supports it anymore, Wayland came to correct that, plus if you have a laptop with a hybrid GPU, you must switch manually between for example Nvidia & Intel, on Wayland everything is done automatically, etc
Wayland isn't a display server, it is a protocol. There is no source code for Wayland only a set of standards.
That is something I really care about. Thanks!
[Edit: I just checked. Something is handling the switch automatically on my system]
You basically shouldn't until you are forced to move. Almost all of the improvements so far are in the internal architecture.
You might notice some tiny differences if you switch, like logging in doesn't show a black screen at any point, and window choosers when screen sharing show a (totally broken) grid of previews instead of a plain list of window titles.
Hopefully when X is fully dead (give it another 10 years) we'll see some actual improvements, e.g. RDP-style remote desktop, good support for multi-monitor, HDR, HiDPI, etc.
I'm not sure if you have been paying attention but Wayland has come very far in the last year or two. It has XDG portals for screen sharing, HDR (early support), display scaling and plenty of other stuff.