So has the problem with getting the latest video drivers been fixed?
Depends on the graphic card.
TL;DR: For Intel and AMD, you really don't give a fuck what you're running.
(Or if you're into gaming, you *absolutely* try to run the latest possible kernel and Mesa combo to get all the latest belss and whistles).
- Intel is exclusively doing opensource drivers (at least for their own cores. For the core that they sub licensed from PowerVR several years back, it's an entirely different story).
The drivers are part of the upstream kernel, so getting a new kernel *IS* how you get a new driver.
- AMD has embraced opensource (beginning almost as far back as when they bought ATI - though the actual implementation has taken much time).
They have a dual offering.
For a few special user (CAD software users, etc. who require opengl profiles) they still provide a closed source driver called AMDGPU-PRO. (As of note, it also shares some code with the current Windows drivers).
For the rest, the opensource source drivers (based around Mesa) are their main target. They have been investing resources (some of the devs of the opensource Mesa drivers are on AMD's payroll). Recently, it has seen tremendous improvement and starts to beat the closed source driver on most use-cases.
Both above driverrs rely on the same opensource kernel module. So if you use the opensource driver, the situation is the same as Intel : getting the latest kernel *IS* how you get the latest kernel module.
Only for the closed source AMDGPU-PRO does AMD spends ressource back-porting the kernel module to older kernel.
(So if you are a CAD user, better stick to major distribution whose kernel are more likely to see such back-ports. Or move to a rolling release distro, but that would be unusual for this class of users).
The current only exception is Vulkan. AMD haven't finished the necessary work to opensource their official Vulkan implementation. So AMDGPU-PRO is the only way to get it.
Meanwhile, opensouce developers have created RADV, their own unofficial Vulkan implementation for AMD cards. Currently, this implementation finally passes the conformancy tests and implements the Vulkan API completely, but isn't optimized yet. So often games run better using their openGL back-end (given that massive effort mentionned above) than using their Vulkan back-end (because as mentioned here, it's a small project, which only recently achieved full conformancy and hasn't even started optimizing).
regarding other API :
AMD has recently opensource a new OpenCL implementation running on top of their ROCm computing platform.
Now that this is opensourced, expect the optimizing to go faster, and eventually reaching the point that OpenGL has reached.
Over all the days of the absolutely aweful fglrx closed-source ATI driver are distant past.
I remember having to find the proper kernel headers (down to ver.a.b-c-ubuntu) when updating to latest nVidia OpenGL driver EVERY FUCKING TIME.
Bad news for you : Nvidia is still doing closed source drivers.
They basically recompile their Windows drivers for Linux, and write their own closed source "shim" kernel driver.
Meaning that you're completely dependent on Nvidia condescending to port their code to your specific kernel.
Also don't expect features that normally work with this hardware on Windows, and that other manufacturer have successfully implemented on Linux to work for you.
(Again, remember : Nvidia is basically recompiling their windows drivers. Some features have an API under Linux, but it's largely different and Nvidia doesn't botter)
(eg.: see who long it took them to properly implement xrandr for output handling)
(eg.: remember the whole fiasco around dual embed+discrete GPU on laptop working badly. Culminating with the public "Fuck you, Nvidia !" by Linus about their lack of collaboration)
(eg.: it's 2017 already, and Nvidia still hasn't got their shit together to have proper kernel-modesetting like everybody else, which has bad implication on modeswitching and/or sleep/wake-cycling).
Best to stick to a big popular distro, and keep that distro's main official kernel, to be sure to get the most acceptable Nvidia closed-source distro.
And hope that it actually work.
(Disclaimer: my laptop is basically unusable with Nvidia's official drivers).
Meanwhile, completely unrelated volunteer are trying hard to reverse engineer the hardware and write independent opensource drivers (nouveau).
None of the developer is in any way related to Nvidia. (unlike Intel and AMD who have open-source devs on their payroll).
They don't receive much help from Nvidia (once every blue moon, an engineer will throw them a bone and give some docs. Usually when it helps further Nvidia's Tegra on Linux agenda).
But at least nouveau is part of the upsteam linux kernel, so when on a rolling distro (I'm on Suse Tumbleweed) you're sure to get the latest driver in your latest kernel.
Expect the occasional quirk (it's reverse engineered driver. not designed using official specs).
And far from stellar performance (usually newer hardware completely lack re-clocking).
(But at least it makes my laptop work better).