In response to Wayland Breaks Your Bad Software
I say that the technical merits are irrelevant because I don’t believe that they’re a major factor any more in most people moving or not moving to Wayland.
With only a slight amount of generalization, none of these people will be moved by Wayland’s technical merits. The energetic people who could be persuaded by technical merits to go through switching desktop environments or in some cases replacing hardware (or accepting limited features) have mostly moved to Wayland already. The people who remain on X are there either because they don’t want to rebuild their desktop environment, they don’t want to do without features and performance they currently have, or their Linux distribution doesn’t think their desktop should switch to Wayland yet.
The ability to have multiple displays at different scales is a godsend when trying to use a laptop with a 4k display connected to 1080p monitors or vice versa
Never had a prob with this using MX Linux and Xfce AFAIK?
This already works on X and indeed has worked longer than Wayland has existed.
I can never get this to work properly… Do you have any resources?
I just passed scale to xrandr after computing the proper scale and then used the nvidia-settings gui to write current configuration to xorg.conf its not incredibly hard basically all you are doing is scaling lower DPI items up to the same resolution as your highest dpi item and letting it scale down the correct physical size. For instance if you have 27’ monitors that are 4K and 1080p you just scale the 1080 ones by 2 if you have a 4k 27 and a 1080 24" its closer to 1.75. The correct ratio can be found with your favorite calculator app.
You can set this scaling directly in nvidia-settings come to think of it where you set viewport in and viewport out.
That’s not at all the same thing. That requires downscaling some screens, which makes everything blurry and breaks subpixel AA.
Yeah, wherever someone says “X has/has had fractional scaling” I just ignore them because it’s never actually true fractional scaling that doesn’t look and act like utter crap.
It also tears significantly in my experience, which is pretty unusable…
I know you live in this weird universe where the screen that is 12 inches from my face actually looks like crap but it just isn’t so you are merely confused.
It is literally how Wayland is scaling your shit you just don’t know how anything works.
Huh? That is not how Wayland does it at all.
Without the recently added wp-fractional-scale-v1, yes, it will do that if you use fractional scales (albeit per window rather than per monitor). Not however if you stick to integer scales, as they might do in the 1080p+4k use case.
I tried unsuccessfully to get this working for quite some time and broke my xrandr settings quite a few times
With Wayland/gnome I just click a button in the settings gui and it works flawlessly
With X/i3 I had to read and the result works well. With Sway I had to read and the result works poorly. So is sway better for the illiterate?
Would you not say the best case scenario is for it to just work great straight away and not require you to read a manual or do any debugging at all just to configure your display scale?
Also sway/i3 aren’t known to be “it just works” kinda window managers anyway they’re definitely aimed at people who like to tinker
Sure but the thing is stuff that I have to edit files for install other programs just work with wayland out of the box.
Replacing good legacy will always be a struggle. X11 works pretty well and has been stable for decades. Most of the things that suck about it already have workarounds.
The advantages of Wayland are not directly visible for the end user. The security part will be great once it’s completely integrated on the distributions to give granular permissions to software. The simpler apis and greater performance will help libraries creators, but most developers don’t touch X directly and won’t touch Wayland either.
Being stable for a couple of months is not good enough. People will use it once distros trust it enough to make it default, and this will probably only happen once Wayland or its compatibility tools work with most software and major applications work significantly better on it.
When both NVIDIA and KDE work well with Wayland, most of the anti-Wayland energy will go away. The advocates will calm down too bar cause they will have won.
I don’t think the sentiment is ‘anti-wayland’. Most people just don’t care. I’m using Awesome WM and it doesn’t support Wayland. As OP says, why would I rewrite all my plugins and config just to the sake of switching to Wayland? I would have to invest a lot of time and what will I gain? Absolutely nothing. On my work computer I have different distro and I’m using Cinnamon. I think it uses Wayland but I didn’t even bother to check. It works exactly the same as Gnome on X11. Why would I care?
The Cinnamon team didn’t even consider Wayland yet.
Every time I try Wayland, something doesn’t work. The time before last, subpixel DPI scaling was badly broken. This last time, there’s some glitch where the screen jumps right a couple pixels (and back) every dozen seconds. I don’t have any interest in spending my time trying to fix Wayland issues when X just works.
Wayland on AMD is amazing
Counterpoint, I have all AMD machines (CPU and GPU) and each time I’ve tried Wayland I’ve immediately run into bugs that make it unusable. Maybe it’s because both my setups have multiple monitors with different resolutions, but I don’t see why that use case is so hard to support. And I’m running the latest versions of Wayland and KDE so it’s not an issue of me running outdated versions that already have bug fixes supplied upstream. If Wayland can’t handle just basic desktop use with multiple resolutions why would I go through the effort to use it? Fix the basics first.
My experience has been the opposite. I won’t use x after using Wayland on AMD for years it just feels so much smoother. On arch with gnome Wayland has been fantastic.
I switched to wayland because of screen tearing and it fixed it. Idk if x is still glitchy on my new laptop but i dont really care. Also hyprland is really cool so im happy with wayland.
Only reason I’m not using it is Nvidia. Missing night light in particular.
Only reason I’m not using it is Nvidia.
Don’t buy Nvidia GPUs. NVidia’s broken Linux support is a well-known fact since at least a decade.
For gaming AMD is as good as NVIDIA or even better. For anything else tho it’s a dumpster fire. Amf still isn’t on par with nvenc, rocm is pure garbage and they are basically useless for any compute task
For anything else tho it’s a dumpster fire. Amf still isn’t on par with nvenc, rocm is pure garbage and they are basically useless for any compute task
Those specific compute tasks are not “anything else”. Pretty much every single everyday task by common people works better on GPUs with proper Mesa drivers than GeForce and there is absolutely no reason that you need to output your graphics from the NVidia GPU anyway. Do your compute tasks on dedicated Nvidia hardware if you have to. Even notebooks come with AMD and Intel iGPUs that are perfectly fine for non-gaming graphics output.
@woelkchen @Ineocla rocm really that bad?
Yep you’re right. Mesa covers almost anything. But streaming and recording, photo and video editing, 3d rendering ai training etc aren’t “specific compute tasks” they represent the vast majority of the market with billions of dollars in revenue. And no the solution isn’t to use another gpu. It’s for AMD to make their software stack actually usable
photo and video editing
Which photo editor for Linux even supports special NVidia features? It’s not like Linux has Photoshop or something like that – there aren’t that many photo editors under Linux. It’s one of the areas Windows people complain most loudly about Linux. Seems to me your conflated Windows with Linux when hyping Nvidia above anything.
ai training etc aren’t “specific compute tasks”
AI training isn’t a specific compute task? What is it then? Why do you train your AI on the regular graphics output GPU and not on dedicated hardware like sane people?
it should not. the 1st one should be that it is not opensource and 100% the cause of a X blackscreen on upgrades.
AMD plays the game (no pun intended), so let’s go with it. If you need nvidia for CUDA for ML, standard are on the way to allow to use any GPU.
I already do ml on amd, and it works great. There’s usually a few extra steps that need doing as binaries aren’t always available, but that, too, will improve with time.
X11 is, to put it simply, not at all fit for any modern system. Full stop. Everything to make it work on modern systems are just hacks. Don’t even try to get away with “well, it just works for me” or “but Wayland no worky”.
I really don’t know if there could be a more obnoxious opening than this. I guess Wayland fanatics have taken a page from the Rust playbook of trying to shame people into using it when technical merits aren’t enough (“But your code is UNSAFE!”)
[This comment has been deleted by an automated system]
This is not an insult to the people behind X11.
The people behind X11 agree and that’s why they founded Wayland.
[This comment has been deleted by an automated system]
Sure but the people behind X11 are the same ones behind Wayland so when the develpers didn’t think it was worth the time to fix X11 and it would be better to start a new project to fix the issues. How can end users think we should just fix X11 make anysense? I think their biggest mistake is they should have called Wayland X12 or something like that.
[This comment has been deleted by an automated system]
X11 has decades of tooling that doesn’t work on Wayland anymore.
Wayland 1.0 was released in 2012, though.
[This comment has been deleted by an automated system]
Ok but then how about the developers of X11 who decided it wasn’t worth fixing the issues and to start a new project called Wayland where they could start from scratch to fix the issues. Does that change your mind at all?
That would be a “technical merit”, which the article author claims is irrelevant to the discussion.
I have not had a single X11-related issue in the last decade.
I don’t want to sound rude, but how old is your setup? Are you using a desktop or a laptop computer?
Because I’m daily driving a late 2015 Dell XPS 9350 and X11 just ain’t cutting it, even though the laptop is nearly a decade old. On X11, its trackpad would be garbage, GNOME’s animations would be stuttery, and fractional scaling would be a mess, because I have a docking station with a 75 Hz ultrawide monitor, meaning that I must utilise both 125% and 100% scaling factors, as well as 60 Hz and 75 Hz refresh rates and different resolutions. Sure, not everyone uses multi monitor setups, but those who do serious office tasks or content production work often cannot imagine their workflow without multiple monitors. Point is, X11 is to ancient to handle such tasks smoothly, reliably and efficiently.
It’s not rude - don’t worry. My main desktop runs 4 monitors at 1080p. GPU is an RX 580. I have a number of other laptops/tablets/desktops running similar configs, including ones with mixed resolutions and refresh rates. Gaming/video production/programming.
I think people are really discounting the amount of value experience with a certain set of software has to the end-user. Wayland isn’t a drop-in replacement. There’s a new suite of software and tooling around it that has to be learned, and this is by design. Understandably, many people focus on getting displays working properly on mixed resolutions and refresh rates, but there are concerns for usability/accessibility outside of that.
I find that usually when people write “Full stop”, it’s best to just stop reading there in most cases.
It comes off as “I am correct, how dare you think that for a moment I could be wrong”.
I’d love to use Wayland, but until it works properly on Nvidia hardware like X11 is, then it’s not a viable option for me. Of course, then someone always goes “Well then use an AMD card” but money doesn’t grow on trees. The only reason I’m not still using a 970 is because a friend of mine was nice and gave me his 2080 that he was no longer using, along with some other really nice upgrades to my hardware.
Honestly it’s one of the biggest issues I have with the Linux community. I love Linux and FOSS software but the people who go around and yell at anyone who isn’t using Linux, and the people who write articles like this who try to shame you for your choices (something that is supposed to be a landmark of using open source software) only make Linux look bad.
There’s a difference between someone kindly telling others that X11 is not likely to receive any new major features and bug fixes (which is the right thing to do, in order to inform someone something they may not know) - and then there’s whatever the author of this quote is doing.
It happens all the time in the magical world of closed source, too.
Ever heard about the iOS vs Android fights? How people shame Android users for being green bubbles?
It’s just the extension of the my camp vs theirs applied to the tech field, nothing new.
I laughed off reports about this kind of thing, thinking “omg who could possibly give a shit about what color their text bubble is in a group chat?” Later my gen Z office mate told me about how he uses an iPhone and cited this exact reason unironically. I was stunned into silence.
deleted by creator
It sounds like you need to be complaining to nvidia to do a better job with their drivers. If the drivers suck, it doesn’t matter what wayland does.
This is literally the exact bad attitude of your average Wayland proponent. The thing which has worked for 20 years doesn’t work you just hallucinated it along with all the show stopper bugs you encountered when you tried to switch to Wayland.
It’s really not “working” per se. VRR was breaking on X11, sandboxing was breaking on X11, fractional scaling and mixed DPI were breaking on X11.
How did we achieve HiDPI on X11? By changing Xft.dpi (breaking old things) or adding random environment variables (terrible UX - do you want to worsen Linux desktop’s reputation even more?). Changing XRandR? May your battery life be long lasting.
There’s genuinely no good way to mix different DPIs on the same X server, even with only one screen! On Windows and Mac, the old LoDPI applications are scaled up automatically by the compositor, but this just doesn’t exist on X11.
I focus on DPI because this is a huge weakness of X11 and there is a foreseeable trend of people using HiDPI monitors more and more, there are tons of other weaknesses, but people tend to sweep them under the rug as being exotic. And please don’t call HiDPI setups exotic. For all the jokes we see on the eternal 768p screens that laptop manufacturers like to use, the mainstream laptops are moving onto 1080p. On a 13" screen, shit looks tiny if you don’t scale it up by 150%.
You can hate on Wayland, you may work on an alternative called Delaware for all I care, but let’s admit that X11 doesn’t really work anymore and is not the future of Linux desktop.
Outside of your fantasies high DPI works fine. Modern QT apps seem to pick it up fairly automatically now and GTK does indeed require a variable which could trivially be set for the user.
Your desktop relies on a wide variety of env variables to function correctly which doesn’t bother you because they are set for you. This has literally worked fine for me for years. I have no idea what you think you are talking about. Wayland doesn’t work AT ALL for me out of the box without ensuring some variables are set because my distro doesn’t do that for me this doesn’t mean Wayland is broken.
They pick up “automatically” because of how your DE sets up the relevant envvars for you, there is nothing in the protocol that actually tells the applications “hey, this monitor needs X% DPI scaling!”.
The side effect of this deficiency in the protocol is very obvious, you can’t mix DPIs, because the envvars or Xft.dpi are global and not per-application. Have you seen a blurry LoDPI X11 window sitting right beside a HiDPI X11 window? Or an X11 window changing its DPI dynamically as you move it across monitors with different DPIs?
The fact that SDL2 still doesn’t support HiDPI on X11 when it already does on Macs, Windows, and Linux Wayland should tell you something.
Don’t throw the “it works for me” excuse on me. Because I can throw it back on you too: “Wayland works on my machine”. X11 is utterly broken, just admit it. You are welcome to develop another X11 if you want.
Nothing is set automatically I run a window manager and it starts what I tell it to start. I observed that at present fewer env variables are now required to obtain proper scaling. I did not personally dig into the reasoning for same because frankly its an implementation detail. I just noted that qt apps like dolphin and calibre are scaled without benefit of configuration while GTK apps like Firefox don’t work without GDK_SCALE set.
X actually exposes both the resolution and physical size of displays. This gives you the DPI if you happen to have mastered basic math. I’ve no idea if this is in fact used but your statement NOTHING provides that is trivially disprovable by runing xrandr --verbose. It is entirely possible that its picking up on the globally set DPI instead which in this instance would yield the exact same result because and wait for it.
You don’t in fact actually even need apps to be aware of different DPI or dynamically adjust you may scale everything up to the exact same DPI and let X scale it down to the physical resolution. This doesn’t result in a blurry screen. The 1080p screen while not as pretty as the higher res screens looks neither better nor worse than it looks without scaling.
Why would I need to develop another X11 I believe I shall go on using this one which already supported high and mixed DPI just fine when Wayland was a steaming pile of shit nobody in their right mind would use. It probably actually supported it when you yourself were in elementary school.
Nothing is set automatically I run a window manager and it starts what I tell it to start. I observed that at present fewer env variables are now required to obtain proper scaling.
Fun fact: zero envvars are needed for HiDPI support on Wayland.
You do possibly need envvars to enable Wayland support though, but the latest releases of Qt6, GTK4, SDL3 etc. are enabling Wayland by default these days so in the future everything will work out of the box. By default.
X actually exposes both the resolution and physical size of displays. This gives you the DPI if you happen to have mastered basic math. I’ve no idea if this is in fact used but your statement NOTHING provides that is trivially disprovable by runing xrandr --verbose.
Did I say XRandR and mixed DPI in my previous comments? Yeah, I think I did. What the Qt applications currently do is choosing the max DPI and sticking with it. There are some nasty side effects, as I will explain below.
You don’t in fact actually even need apps to be aware of different DPI or dynamically adjust you may scale everything up to the exact same DPI and let X scale it down to the physical resolution.
Don’t forget the side effect: GPU demands and/or CPU demands (depending on the renderer) increase… a lot, nearly 2x in some cases. This might not be acceptable in applications like laptops - have you used projectors in college?
Anecdotally speaking, I gained 1 to 2 hours of battery life just by ditching X11, it’s impressive considering my battery life was like 4 to 5 hours back then. Now it’s actually competitive with Windows which usually gets 6 to 7 hours of battery life.
Furthermore, scaling up and down in multiple passes, instead of letting the clients doing it in “one go” and have the compositor scan it directly onto your screen, leads to problems in font rendering because of some antialiasing shenanigans in addition to the power consumption increase. It’s the very reason why Wayland added a fractional_scaling protocol.
Why would I need to develop another X11 I believe I shall go on using this one which already supported high and mixed DPI just fine when Wayland was a steaming pile of shit nobody in their right mind would use.
Apparently the “nobody” includes GTK, Qt, SDL, and all the mainstream DEs (Xfce and Cinnamon included - even they are preparing to add Wayland support). 90% of the programs I use actually support Wayland pretty well. Good job lad, you managed to invalidate your own argument.
Besides that, you still haven’t properly answered the question of mixed DPI: have you seen a properly-scaled-up LoDPI X11 application? It’s a big problem for XWayland developers. See it here. And yes… those developers are (were?) X11 developers. I think they know how unworkable X11 is, more than you do.
It doesn’t require a meaningful or measurable difference in CPU/GPU to scale my third monitor. That is to say in practical effect actual usage of real apps so dwarfs any overhead that it is immeasurable statistical noise. In all cases nearly all of the CPU power is going to the multitude of applications not drawing more pixels.
The concern about battery life is also probably equally pointless. People are normally worrying about scaling multiple monitors in places where they have another exciting innovation available… the power cord. If you are kicking it with portable monitors at the coffee shop you are infinitely more worried about powering the actual display more so than GPU power required to scale it. Also some of us have actual desktops.
Furthermore, scaling up and down in multiple passes, instead of letting the clients doing it in “one go” and have the compositor scan it directly onto your screen, leads to problems in font rendering
There are some nasty side effects
There just aren’t. It’s not blurry. There aren’t artifacts. It doesn’t take a meaningful amount of resources. I set literally one env variable and it works without issue. In order for you to feel you are justified you absolutely NEED this to be a hacky broken configuration with disadvantages. It’s not its a perfectly trivial configuration and Wayland basically offers nothing over it save for running in place to get back to the same spot. You complain about the need to set an env var but to switch to wayland would be a substantial amount of effort and you can’t articulate one actual benefit just fictional deficits I can refute by turning my head slightly.
Your responses make me think you aren’t actually listening for instance
11 is utterly broken, just admit it. You are welcome to develop another X11 if you want.
Why would I need to develop another X11 I believe I shall go on using this one which already supported high and mixed DPI just fine when Wayland was a steaming pile of shit nobody in their right mind would use. Apparently the “nobody” includes GTK, Qt, SDL…
Please attend more carefully. Scaling and High DPI was a thing on X back when Wayland didn’t work at all. xrandr supported --scale back in 2001 and high DPI support was a thing in 2012. Wayland development started in 2008 and in 2018 was still a unusable buggy pile of shit. Those of us who aren’t in junior high school needed things like High DPI and scaling back when Wayland wasn’t remotely usable and now that it is starting to get semi usable I for one see nothing but hassle.
I don’t have a bunch of screen tearing, I don’t have bad battery life, I have working high DPI, I have mixed DPI I don’t have a blurry mess. These aren’t actual disadvantages this is just you failing to attend to features that already exist.
Imagine if at the advent of automatic transmissions you had 500 assholes on car forums claiming that manual transmission cars can’t drive over 50MPH/80KPH and break down constantly instead of touting actual advantages. It’s obnoxious to those of us who discovered Linux 20 years ago rather than last week.
Why on earth would I develop “another X11” instead of using the one that still works perfectly fine?
So you simply thought the deficiencies I listed before are not problematic. Got it, have a nice day.
How did we achieve HiDPI on X11? By changing Xft.dpi (breaking old things) or adding random environment variables (terrible UX - do you want to worsen Linux desktop’s reputation even more?).
You seems to have dealt with windows recentely.
Regarding linux on desktop… as long as you don’t involve smelly gamers, it’s perfectly fine.
I have been daily-driving Linux for years, but I do boot into Windows from time to time. Even then, I recognize that the out-of-the-box experience of Linux desktop isn’t as good as it can be, although it’s been rapidly improving.
I have software dating back to 2003 that I need to support. X11 isn’t going anywhere.
Xwayland has already been mentioned but this is an important point that not everybody may be familiar with. Xwayland is an Xserver ( actually a specialized version of Xorg itself ) that runs on top of Wayland instead of talking directly to hardware.
If you are running Xwayland, you can run X clients ( x11 software dating back to 2003 for example ) and they will appear on your desktop.
There can obviously be specific considerations around advanced software but moving to Wayland does not mean losing access to software written to target X. Qt and GTK support Wayland and will run native. Applications using other toolkits may still be running over X. As a normal user, you may not even know which applications are still using X and which are not.
This is for regular applications. Moving to Wayland requires a Desktop Environment or Window Manager that supports Wayland. So, GNOME and KDE users are fine but Cinnamon or WindowMaker users would need to switch.
Neat. There’s hope in the world yet :-)
it’s likely to be working thru Xwayland.
I won’t mind moving to Wayland but really , X11/xorg just works to me with all the feat. (hidpi, multi-monitor etc…) I don’t need fractional scaling, my 27" monitor is UHD but with right ppi set, everything looks good BUT I understand the interest.
And I do understand the need to move away from X because of Elon… just kidding. Yes, we need to move to a better architecture but it must 1:1 in term of feat/stability, at least.
I’ve been using it for a few years now, and it fixes a lot of little issues I have with X11, and at this point brings very few of its own. ALTHOUGH, I don’t have any Nvidia GPUs, and people seem to think it works for crap on them. I keep hearing “Ah, this will finally fix it!”, but I don’t know what the actual status is. You have the hardware you have, so unless you are going to buy something different to try Wayland… eh… I guess it never hurts to try. It’s pretty trivial to toggle on and off.
I don’t see the problem, I also don’t see how this is a novel situation.
The technical merits of system level protocols only really affect the user insofar as they make it easier for userspace application writers to make their software. This is why we have the distinction, so that users never have to change the underlying software, and when they choose to it’s because everything just works.
clickbait title
Wayland’s major “technical merits”, as far as I can tell, are a lack of screen tearing, slightly faster rendering under some circumstances and better handling of touchscreens. That’s it. If you don’t have a touchscreen and aren’t a gamer (few non-gamers care all that much about tearing or about framerates above 60Hz), Wayland has no real advantages to the user that I’m aware of.
X is network-transparent, more widely compatible, and arguably more extensible. Most users don’t care about those things either.
Wayland has an advantage in attracting developers because it has less accumulated technical debt and general code cruft. That doesn’t make it better for users, though. Most Wayland evangelists I run into seem to be devs who are more interested in the design of the graphics stack than whether it makes a difference in the real world.
So, as with so many things, “merit” is in the eye of the beholder. People should use what works for them.
Also better isolation of applications and better support for multiple screens.
And don’t forget 1:1 gestures and the Crash-Resilient Wayland Compositing that keep the application alive even tho the “compositor” crash, so it does restart without any data loss.
Edit: forgot to mention the lockscreen protocol, because on xorg if the lockscreen crash then you view the desktop and you have the device unlocked!
I’ll give you the multiple screens (not a use case I have myself, so I don’t pay attention to support quality). Isolation of applications is another thing that most users don’t really care that much about, I would say.
users shouldn’t have to care about security. it should be the baseline.
It’s legitimately important if you want to be able to pull random software from places and not have your system compromised, a la smartphone OSes.
It’s not the whole story – things still aren’t entirely sandboxed aside from that – but without it, the GUI is a big security hole.
You never care about security until you get your credentials stolen
Let’s not forget HiDPI. Everything with a HiDPI display is borderline unusable on Linux with X.Org.
I keep trying it but for me its not ready yet. Finally, in 2023 I can actually boot into it, but I get random freezes for up to a few minutes at a time. So it’s closer, but not stable yet. Hoping that Plasma 6 will be good to go.