That is an interesting point I hadn’t thought about… basically Rust itself being a different language is forcing them to make a clean diver API. Perhaps even because there are fewer ways to skin the cat in Rust anyway by design it may prevent some churn.
Currently, we have a “functional” mesa glvnd + libglvnd implementation. It’s pretty buggy though with drawing artifacts which is why we haven’t upgraded to it yet.
The “OpenGL Kit” (aka, our libGL.so dispatch code) has been moved from upstream mesa to libglvnd, so we need to fix those bugs soon if we ever want to upgrade mesa again.
Fixing a few bugs in our libglvnd implementation would be a great entry point to this project. Even a few fixed drawing bugs will make the libglvnd dispatch code ready to go live
You can find examples of compiling libglvnd and mesa here:
Thanks a lot for your feedback. Unfortunately, circumstances have changed on my end and it won’t be possible for me to participle this year. I look forward to contributing to haiku next year.
It’s a great project and has a good community around it.