Announcement

Collapse
No announcement yet.

Cairo Graphics Library Drops OpenGL Support After A Decade Of Inactivity

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Cairo Graphics Library Drops OpenGL Support After A Decade Of Inactivity

    Phoronix: Cairo Graphics Library Drops OpenGL Support After A Decade Of Inactivity

    The Cairo graphics library that provides a vector graphics based API and in turn having a number of different back-ends for software/hardware acceleration, which in turn is used by a variety of different desktop applications, has removed its OpenGL support...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Cairo. Meh.
    Their last official stable release is 1.16.0. That's from the end of 2018.

    Comment


    • #3
      Originally posted by milkylainen View Post
      Cairo. Meh.
      Their last official stable release is 1.16.0. That's from the end of 2018.
      Well, it works for what it does. And is not used for gtk4.

      Comment


      • #4
        Are other mature and feature-rich libraries for rendering vector graphics with OpenGL? I know Skia, but it's poorly documented. There is also NanoVG, but it is currently unmaintained. Anything else?

        Comment


        • #5
          but, like, why?

          Comment


          • #6
            Originally posted by mSparks View Post
            but, like, why?
            Unless you dig hard to come with one, no real warranted reason unfortunately.

            Comment


            • #7
              Originally posted by Lycanthropist View Post
              Are other mature and feature-rich libraries for rendering vector graphics with OpenGL? I know Skia, but it's poorly documented. There is also NanoVG, but it is currently unmaintained. Anything else?
              There's https://github.com/treeform/pixie if that fits your criteria.

              Comment


              • #8
                Originally posted by oleid View Post

                Well, it works for what it does. And is not used for gtk4.
                And a lot of GTK based software will NOT be ported to GTK4 anytime soon. In GTK4 we'd have to reimplement such things as icons in menus either in every app, in libmate-desktop (as most distros call it) or a standalone gtk-extensions package. We'd have to completely rewrite every custom widget, notably caja's (file manager) icon view and desktop. We could not backport Nautilus commits for the desktop as that functionality was removed while we depend on it. Also GTK3 is stable, which got us off the treadmill of constantly chasing changes that broke apps written around the last version.

                While we now have limited Wayland support, (it is possible to run mate-panel with in-process applets only in wayland plus caja, pluma, mate-terminal etc) GTK3 handles wayland just fine, we don't need GTK4 to finish that transition.

                Note that GTK2 is still used by many apps and hasn't gone away, so GTK 3 is going to be around a while. The reason GTK4 was branched is that the new rendering system broke all custom widgets, and both Firefox and libreoffice had just ported to GTK3 and breaking that would have been a major deal-breaker, sending them back to GTK2 or even over to QT.

                I don't know if cairo ever actually used OpenGL in production, but unlike Vulkan etc cairo works with any CPU and any GPU, allowing MATE to run in places GNOME etc cannot. Then there is cairo-dock/glx-dock which switched between cairo and OpenGL rather than using an opengl backend for cairo,selected by availabilty and user choice.

                Comment


                • #9
                  Is anyone still using it? I think Firefox switched to Skia.

                  And things today should be using Vulkan anyway.

                  Comment


                  • #10
                    Originally posted by mSparks View Post
                    but, like, why?
                    1. It was mostly unused
                    2. No one was willing to put in the work to make it work well enough to fix number 1.

                    Remember this merge request was around for a year for anyone who wanted to complain or to take up the work to not drop it to do so.

                    Another reason is that while the last major release was in 2018, there are plans for a new release so that people can benefit from the progress that has taken place since, but for that to happen it needs to be in a place where whoever releases it is comfortable with supporting what is released. Evidently the OpenGL paths were not part of that.

                    Comment

                    Working...
                    X