The new nvidia drivers (304.37) have fixed the buggy gradient rendering issues. Removing the buggy-gradients patch from cairo 1.12.2-r3 results in a rather nice performance boost, so I think the ebuild for cairo should exclude this patch if the proper nvidia-drivers version (>=304.37) is detected. Reproducible: Always
I agree with the previous poster. Nvidia fixed the bug with 304.37. I removed the patch from cairo in my overlay and noticed a big performance boost. Please modify the ebuild so that this patch is no longer installed for all those running nvidia-drivers-304.37 and newer. This will be a positive improvement for all of us using these video cards. TIA
I forgot to add in my previous post that my workaround was to copy the cairo-1.12.2-r2.ebuild (which doesn't call the the patch) into my overlay and renamed it cairo-1.12.2-r3 then digest it. As mentioned, so far all seems fine without the patch and these drivers.
Now I feel like an idiot. After posting my last comment I realized that an even easier workaround is to just mask cairo-1.12.2-r3. Since cairo-1.12.2-r2 is still in the tree, it would then be installed instead.
Samuli, Can we get this behavior exposed via a USE flag? Or would upstream be willing to expose this via some X session configuration?
+ 04 Nov 2012; Samuli Suominen <ssuominen@gentoo.org> cairo-1.12.6.ebuild, + cairo-9999.ebuild, metadata.xml: + Leave -buggy_gradients.patch behind USE="legacy-drivers" for users of, for + example, <x11-drivers/nvidia-drivers-304.30.