KDE Developers Discuss Merging Libraries With Qt

Written by Michael Larabel in Qt on 31 October 2010 at 11:03 AM EDT. 52 Comments
QT
Well, here's some interesting weekend news: there's a polarized discussion taking place right now among core KDE developers about merging the KDE libraries into upstream Qt. Cornelius Schumacher, a long-time German KDE developer and currently the KDE e.V. president, has come out yesterday saying, "Let's merge Qt and the KDE development platform. Let's put all KDE libraries, support libraries, platform modules into Qt, remove the redundancies in Qt, and polish it into one nice consistent set of APIs, providing both, the wonderful KDE integration, consistency and convenience, as well as the simplicity and portability of the Qt platform."

Cornelius had written a mailing list message summarizing this proposal of merging the KDE libraries with Nokia's Qt libraries. Here's some of his other quotes from this message:
We all love Qt, without it KDE wouldn't exist. We also love the KDE development platform, it provides all that what Qt doesn't have or didn't have at some point in time. But is there still a real reason to keep them separate? Wouldn't it be much more elegant, if you wouldn't have to decide, if to use some KDE classes or write a "qt-only" application, if you would get all the wonders of KDE from Qt in one consistent way?

Sure, this would be a massive effort, and require huge changes, it would probably mean Qt 5 and KDE 5, it would take quite some time, it would need further changes to the Qt governance model, it would mean investments from Qt Development Frameworks, it would mean a long transition phase for applications to adapt. But wouldn't it be worth this effort? What's the future of the KDE development platform long-term, independent of Qt?

There are probably a hundred times as many Qt developers out there than KDE developers, and if Nokia is only half-way successful with their plans for Qt, this ratio will continue to change rapidly in favor of Qt. By merging the platforms we could turn all these Qt developers into KDE developers. We could benefit from and contribute to the success of Qt without restrictions. We would reach way more users. We could much more easily acquire contributors.
...
On the other hand Qt has broadened a lot, and recently with the ambition to provide a full API for MeeGo this has accelerated. That's a bit similar to what KDE did quite some time ago. There is more and more redundancy and overlap between Qt and KDE libraires, and we still don't really have a good answer to that. A merge would be an answer, a big answer.

The KDE desktop and Plasma would effectively stay the same, along with the KDE applications, but all of the KDE libraries would end up becoming Qt libraries. Some developers agree with Schumacher's proposal and view it as a good vision for the future of KDE, but there are some mixed feelings such as those expressed by Alexander Neundorf. "KDE 4 is still young, and I know many people who still prefer KDE 3.x. Announcing the next big breakage and 5 years of development for KDE 5 in the next two years or so might also be the death of the KDE desktop."

KDE's Mark Kretschmann, the founder of the KDE Amarok project, had this to say about the proposed idea of merging the KDE libraries into Nokia's upstream Qt:
Cornelius,

I must say: Kudos to you. You made my day.

What you have proposed is one of the smartest and most groundbreaking ideas I've seen in a long time. Admittedly, it sounds crazy at first sight. And I talked to some fellow KDE developers who were very skeptical about it.

However, there was a time when a certain Matthias Ettrich invented KDE. You know what people said when he published his idea?

"It cannot be done."
"No way."
"Impossible."

Look at what has become of his "little idea" now. And think about it: Most really great ideas start like that, with people being skeptical, just because it's new and needs getting used to. Cornelius's idea might be daring, but it is worth giving it some really deep thought.


PS:
Chani, thanks for bringing up this topic. A much needed discussion, and very useful too.

Other developers such as Albert Astals Cid, who maintains several KDE applications, feels though that Qt is not doing what they promised and are being naive. Albert even compares some of the shortcomings with the Qt project itself to what led OpenOffice.org developers to fork into LibreOffice. "Once this happens we can start speaking, anything we do now is wasting our time." Albert also does not agree with the Qt licensing requirements.

The original thread has already become quite lengthy, but this morning another thread pertaining to this discussion has been started and is entitled Cornelius's grand plan. In this second thread started by Mark Kretschmann, he said, "It's a very controversial idea. However, I think it is so refreshing that it deserves some more thought. Personally, I think the idea is great, if we can overcome some of the obvious road blocks. I would love to read some honest and direct thoughts from you guys."

There's many more posts in this second thread already and this discussion will likely continue to expand once the weekend is over. Some think this change could not even happen until KDE 6.0 if first the KDE libraries (kdelibs + kdesupport + kdepimlibs) are reorganized, which would lead to a binary compatibility break and thus KDE 5.0. Following the KDE5 library reorganization they could begin work on moving the needed code into Qt, which would break compatibility again and then create KDE 6.0 based atop a hypothetical Qt 5.0 release with these KDE library goodies.

We're still reading the flow of messages coming into both threads about this proposal and will add more interesting bits of information from both sides accordingly. Tell us what you think about this proposal by clicking on the comments button below.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week