Next step: dogfooding

Almost a month since my last blog post. And of course lots of work in KWin in the frameworks-scratch branch since then – about 160 commits. Today I finally reached the next milestone: dogfooding. I dared to replace the KWin of my working session by the new version based on Qt 5 and it’s useable. Of course it’s not yet in a fully functional state, but there’s still quite some time till our release and being able to dogfood will make the work much easier as I can see the regressions better than in the restricted Xephyr session.

The main remaining problem I was facing were regressions in the window decoration. The problem was that once you resized a window, the decoration was broken. I spent quite some time in the debugger to figure out what is going wrong. As Qt switched from XLib to XCB some of the assumptions inside KWin didn’t hold anymore. These were fun debug sessions. In the end a one line change after each window resize step fixed this issue.

With that done the most important functionality is present. I would share a screenshot, but it doesn’t make much sense as there is visually no difference to notice at all. Hugo did an awesome job with Oxygen and that means everything looks the same.

As compositor I’m currently using the OpenGL 2 on egl backend as the glx one is rather broken. I haven’t investigated yet and won’t do anytime soon. So if you want to test better use the environment variable to force to egl or just fix it 😉 I still hope that egl drivers will be present in all major driver implementations till our next release and that would allow to just drop the glx backend.

Of course there is still lots of work needed and your help is always appreciated. And of course there is the chance to get a sneak preview and a development setup by using for example Project Neon.

11 Replies to “Next step: dogfooding”

  1. nice, happy to see progress being made in this very important (if under appreciated) area.

    It’s one of those “well I can’t show you how it’s improved but trust me, it’ll be great” kind of things, versus “here’s a screenshot of before/after”

    Which drivers presently have EGL support? I think Mesa does, nvidia blob does not..?

    I’m guessing the kwin -> wayland “port” is sort of waiting on said “run in frameworks” work? And that running in qt5 does not imply any ounce of wayland?

    1. Which drivers presently have EGL support? I think Mesa does, nvidia blob does not..?

      Mesa supports, NVIDIA and Catalyst do not.

      I’m guessing the kwin -> wayland “port” is sort of waiting on said “run in frameworks” work?

      Kind of. I will soon start to merge it into the branch.

      And that running in qt5 does not imply any ounce of wayland?

      Correct, it’s all good old X11.

    2. NVidia is has been talking about EGL for about a year now, so they have certainly something in the works and just need some convincing to release the driver (Canonical is doing its part with XMir and no pure X11 fallback in 14.04 😉 ).

  2. Any idea of how many KDE developers are eating dog food v5 right now? Or is planning to do so before Oktoberfest begins?

    1. Any idea of how many KDE developers are eating dog food v5 right now?

      Very low number right now, I think. But it will change soonish. We are all used to run our software from master, so it’s obviously a state which we want to reach.

      Or is planning to do so before Oktoberfest begins?

      What has Oktoberfest to do with it? Note: I have never been there and I do not plan to ever go there.

Comments are closed.