Nvidia sucks and I'm sick of it October 26, 2017 on Drew DeVault's blog

There’s something I need to make clear about Nvidia. Sway 1.0, which is the release after next, is not going to support the Nvidia proprietary driver, EGLStreams, or any other proprietary graphics APIs. The only supported driver for Nvidia cards will be the open source nouveau driver. I will explain why.

Today, Sway is able to run on the Nvidia proprietary driver. This is not and has never been an officially supported feature - we’ve added a few things to try and make it easier but my stance has always been that Nvidia users are on their own for support. In fact, Nvidia support was added to Sway without my approval. It comes from a library we depend on called wlc - had I’d made the decision on whether or not to support EGLStreams in wlc, I would have said no.

Right now, we’re working very hard on replacing wlc, for reasons unrelated to Nvidia. Our new library, wlroots, is better in every conceivable way for Sway’s needs. The Nvidia proprietary driver support is not coming along for the ride, and here’s why.

So far, I’ve been speaking in terms of Sway supporting Nvidia, but this is an ass-backwards way of thinking. Nvidia needs to support Sway. There are Linux kernel APIs that we (and other Wayland compositors) use to get the job done. Among these are KMS, DRM, and GBM - respectively Kernel Mode Setting, Direct Rendering Manager, and Generic Buffer Management. Every GPU vendor but Nvidia supports these APIs. Intel and AMD support them with mainlined1, open source drivers. For AMD this was notably done by replacing their proprietary driver with a new, open source one, which has been developed in cooperation with the Linux community. As for Intel, they’ve always been friendly to Linux.

Nvidia, on the other hand, have been fucking assholes and have treated Linux like utter shit for our entire relationship. About a year ago they announced “Wayland support” for their proprietary driver. This included KMS and DRM support (years late, I might add), but not GBM support. They shipped something called EGLStreams instead, a concept that had been discussed and shot down by the Linux graphics development community before. They did this because it makes it easier for them to keep their driver proprietary without having work with Linux developers on it. Without GBM, Nvidia does not support Wayland, and they were real pricks for making some announcement like they actually did.

When people complain to me about the lack of Nvidia support in Sway, I get really pissed off. It is not my fucking problem to support Nvidia, it’s Nvidia’s fucking problem to support me. Even Broadcom, fucking Broadcom, supports the appropriate kernel APIs. And proprietary driver users have the gall to reward Nvidia for their behavior by giving them hundreds of dollars for their GPUs, then come to me and ask me to deal with their bullshit for free. Well, fuck you, too. Nvidia users are shitty consumers and I don’t even want them in my userbase. Choose hardware that supports your software, not the other way around.

Buy AMD. Nvidia– fuck you!

Edit: It’s worth noting that Nvidia is evidently attempting to find a better path with this new GitHub project. I hope it works out, but they aren’t really cooperating much with anyone to build it - particularly nouveau. It’s more throwing code/blobs over the wall and expecting everyone to change for them.


  1. Mainlined means that they are included in the upstream Linux kernel source code. ↩︎

Articles from blogs I read Generated by openring

After-FOSDEM videobox updates

The FOSDEM video capture box is a custom device for doing all the in-room stuff for the live-streams of the event. It contains a Radxa x4 SBC, a digital audio mixer, an HDMI capture card, some USB chargers and a network switch. Every room that is livestr…

via BrixIT Blog March 10, 2025

What's cooking on SourceHut? Q1 2025

Hello all! We’re back with another “What’s cooking”, after another too-long hiatus since September. We did promise to resume monthly updates, but in hindsight that seems a bit ambitious given everything on our plate. For now we’re going to aim for the more m…

via Blogs on Sourcehut March 7, 2025

Summary of changes for February 2025

Hey everyone!This is the list of all the changes we've done to our projects during the month of February. Summary Of Changes 100r.co, added Dinghy gelcoat, Week 10, Week 11, and Week 12 of the Victoria to Sitka logbook. Updated solar with new pictures…

via Hundred Rabbits March 1, 2025