nvidia.ko is one of the most singularly reviled things in the broader Linux sphere, maybe even more so than systemd, and honestly i don't think it deserves that level of hate@whitequark I like NVidia because they actually support Linux in a clearly tangible way.
And have for a *long* time
@dotstdy @whitequark well yes and no, NVIDIA were invited to the table, the rest of vendors and community decided on an approach for Wayland that was fine for all of them, then NVIDIA refused to work with the rest and do their own thing instead (EGLStreams, that works only with their driver, is nonstandard, and with many limitations). Then of course because everybody else took the common approach, and they've been playing catchup.
The initial refusal to add proper DRM/KMS modesetting to their driver was what made NVIDIA diverge, and that was way before Wayland, and already then it was clear that this would be the way forward for Linux GPU drivers more than 15 years ago.
“Wayland folks didn't want to work with NVIDIA” is an urban legend.
@dotstdy @whitequark only that this claim is also wrong, recent versions of the NVIDIA Linux driver can do DRM/KMS modeset, see https://wiki.archlinux.org/title/NVIDIA#DRM_kernel_mode_setting — and this is not only useful for Wayland; for example any device where there isn't a VGA text console can have an emulated console using graphics modes through the generic DRM framebuffer driver.
Again, the right answer is: NVIDIA wanted to do their own thing instead of having to agree with others, and in the end they're having to play catchup because nobody else adopted their approach. You may like it or not, but that's the facts.
@aperezdc what do you mean "recent"? :) https://github.com/aritger/eglstreams-kms-example (the issue wasn't so much kms as the entire rest of the owl)
As pointed out in the top of the thread, one virtue of the nv approach is their driver has ~feature parity with the more important (to nv and customers) windows driver. Anything which requires substantially changing the architecture is introducing fragmentation for their internal development, and in any case will take a lot of time to achieve politically + technically.
it's not possible for novideo to use DRM APIs without releasing their driver under GPL2
oh yea @dotstdy and whose fault is that?
cc: @aperezdc & @whitequark
It’s been ages since I owned an NVIDIA card, do they still ship drivers for FreeBSD and Solaris?
They used to develop their X11 drivers on FreeBSD and port to Linux to make sure they weren’t derived works of the Linux kernel, but they stopped that 10-15 years ago when their lawyers were confident that their GPL loopholes were solid.
Old drivers still ship with FOSS shims to compile against illumos aaand the open nvidia drivers should have FreeBSD support if not its a 1k line OS abstraction C file in the driver to make.
@david_chisnall @whitequark
#FreeBSD still has #NVIDIA #GPU driver ports maintained under the NVIDIA umbrella of x11 group maintainers (ashafer@, danfe@, kbowling@ and me).
There are:
x11/nvidia-kmod{-304|-340|-390|-470|-580|-devel}
x11/nvidia-driver{-304|-340|-390|-470|-580|-devel}
graphics/nvidia-drm-{510|515|61|66|latest}-kmod{-580|-devel}
x11/linux-nvidia-libs{-304|-340|-390|-470|-580|-devel}
as driver and library parts and
graphics/eglexternalplatform
graphics/egl-wayland
graphics/egl-wayland2
graphics/egl-x11
as support libraries / build helper provided by NVIDIA.
Note that -devel variants are for whichever newer of New Feature Branch (NFB) or Production Branch (PB) of drivers, not for Beta drivers. Released Beta is the trigger for me to start investigating for preparing upcoming NFB and/or PB.
You can see
https://www.nvidia.com/en-us/drivers/unix/
that FreeBSD and #Solaris is still entitled as supported platforms.