This doesn't help anyone. I bought an expensive Nvidia GPU 6 years ago, when AMD support on Linux was really bad. What do I do, throw out a perfectly good powerful graphics card and spend another $500 to satisfy the needs of some newfangled software which doesn't solve any of my problems?
I've had 6 years to experience the horrors of Nvidia, on multiple machines. I'm never going to buy one of their cards again unless there's a massive change in their leadership. But telling people 'tough luck; basic functionality that your computers have been capable of doing for decades will no longer work because you bought the wrong brand' is simply unacceptable.
If you want to replace a card which was expensive six years ago, you can spend a hell of a lot less than five hundred dollars to do so. Even a brand-new RX 570, which will outperform a GTX 770 (the highest performance GPU for $500USD or less in 2013), should only cost you about $130USD today. If you're okay with pre-owned cards, you can get better than that for the same money.
> This doesn't help anyone.
It helps people who are in the market for a new GPU, who want it to work well with Linux, especially the cutting-edge stuff.
Even in 2013 though, I think I was able to run Wayland on a discrete AMD GPU (Terascale 2 or 3?) with at least OpenGL 3.3 available; and it worked OK. I don't think AMD got that working more recently than 2013.
I can understand not wanting AMD's cards on the top end as ca. 2013 (since they were not competitive, IIRC), but now they do have competitive offerings, and their support for desktop Linux is incomparably better, which is why I suggest people go with them.
I don't get why I'm getting flak here.
1 the expensive(this is relative) card works fine, do I throw it or donate it without any good reason(switching to wayland could wait IMO until this card is too obsolete)
2 Buying a new GPU is a big investment for some people,those money could be used to replace an old low quality display or other stuff.
No, I'm not missing these points. It's just that nobody except NVIDIA can do anything about that, so I'm suggesting things you could do. If you can't get an AMD or Intel or Qualcomm (unofficial) or Broadcom (or soon ARM) GPU, and you won't (or can't, again because of NVIDIA being antisocial) run Nouveau instead of the NVIDIA proprietary drivers, and you're not willing to port wlroots to EGLStreams, then you simply will not be running wlroots-based compositors on your machine. That's just how it is.
If you bought a 2019 MBP hoping to run Linux with full support for all the hardware, you would be making a mistake; just because I say that it's a mistake, doesn't mean I think you can afford to replace all your computers again once you've made that mistake.
I don't get these replies. I go to specific effort to couch everything I say, I say "next time around", I say "if possible"; and everyone reads it as though I'm somehow out of touch with the fact that not everyone can spend hundreds of dollars on GPUs every year. I know, I'm just saying that steering clear of NVIDIA in the future is an option that will give you a good experience with standard Wayland compositors.
Sure when I will need to buy a new card I will again have to check what is the best one for Linux and then I will probably get an AMD card again( I had AMD before NVIDIA on desktop and Laptop and back then it was a big disappointment, including the fact the AMD Catalyst drop support for my 1 year old cheap Laptop)
My advice is: Unless you're running a qualified application on a workstation GPU, do not use Catalyst (or whatever they're calling it this year). It is almost always more finnicky. Mesa has the best performance, and the most meaningful features for OpenGL, Vulkan, and D3D9 for any any GCN 1 or later (and probably r600 or later, but I don't have personal experience with that) GPU. AMD staffs people to maintain Mesa, including for GPUs they do not support their proprietary driver on; and if you're running a fresh/rolling-release distro, you'll tend to have a great out-of-the-box experience with Mesa.
I know that now AMD open source is better and my new computer will probably run an AMD CPU and an AMD GPU but until my current PC gets outdated I will have to continue use my NVIDIA 970 which is still a decent card for cashual gaming
You've completely missed the point. The horrors are in compatibility. NVIDIA chooses to make it difficult for their customers to use their hardware with new applications, and they hold back the whole ecosystem. In addition to the topic at hand (Wayland), their release model holds back Linux kernel releases when their driver becomes incompatible with the upstream kernel because it is not maintained there.
If you just want to run whatever boring applications NVIDIA chooses to allow you to run, congratulations! Go enjoy your "experience", and play it "the way it's meant to be played"! :- )
> among other things I remember are really bad Linux drivers (proprietary or otherwise)
You're living about seven years in the past.
If I wrote an X compositor that supported NVIDIA's proprietary interface, it would work with pretty much every window manager that's ever been written.
If I patch wlroots to support NVIDIA, I'll still only be able to use window managers based on wlroots; I won't be able to use ones that spun the Wheel of Incompatible Wayland Compositor Libraries and landed on Weston, swc, Orbment, or whatever GNOME uses instead.
Having different compositors at the level they're at allows a lot more interesting innovations to be made, and aside from NVIDIA's tomfoolery, it has not caused significant inconsistency. Everyone uses libinput, almost everyone uses colord, and everyone implements GBM.
Wayland is substantially different from X, and the ways in which it is different are good. NVIDIA did the one thing we needed people not to do.
To be honest though, NVIDIA engineers do not spend any time engineering graphics stacks at all; they write graphics drivers for stacks that are already largely specified. They're really good at shipping hundreds of megabytes of dirty hack code to patch popular shaders from ISVs to run slightly faster on their hardware, and probably great at writing shader compilers and threaded GL drivers.
May I suggest you buy an AMD GPU next time around; not only because they didn't try to impose their "standard" (which virtually nobody other than them implements, as far as I can tell) without implementing the de-facto standard interface, hurting their customers' access to Wayland to this day... but also because AMD will probably be better value next time you're in the market for a GPU.
> That last issue could be solved with a reusable library that provided basic compositor functionality for window managers.
Sway is based on such a library! (wlroots) However, again, NVIDIA has made it an extra effort to support their GPUs (both in applications and in compositors), and I'm not sure anyone wants to go to extra effort to support a vendor who actively impedes development. By all means, if you want to do NVIDIA's job, be my guest.
I think Sir_Cmpwn has a point in not putting in that effort though.