A better Qt because of Open Source and KDE

KDE and Qt have a legal framework for protecting Open Source Qt, named KDE Free Qt Foundation. I am one of two KDE people on its board. To explain a bit what we are doing, I have written a document “How the KDE Free Qt Foundation strengthens Qt”.

Background is the wish of The Qt Company to change some of the contract provisions. It is still a bit unclear which ideas exactly they are pursuing, but we will need to have a public consultation on them in any case.

My document is aimed as a reference to the current status quo, and to the history of the foundation. It is quite lengthy, but I hope that some of you find the content interesting enough to read it nevertheless.

Summary

The development framework Qt is available both as Open Source and under paid license terms. Two decades ago, when Qt 2.0 was first released as Open Source, this was exceptional. Today, most popular developing frameworks are Free/Open Source Software1. Without the dual licensing approach, Qt would not exist today as a popular high-quality framework.

There is another aspect of Qt licensing which is still very exceptional today, and which is not as well-known as it ought to be. The Open Source availability of Qt is legally protected through the by-laws and contracts of a foundation.

The KDE Free Qt Foundation was created in 1998 and guarantees the continued availability of Qt as Free/Open Source Software2. When it was set up, Qt was developed by Trolltech, its original company. The foundation supported Qt through the transitions first to Nokia and then to Digia and to The Qt Company.

In case The Qt Company would ever attempt to close down Open Source Qt, the foundation is entitled to publish Qt under the BSD license. This notable legal guarantee strengthens Qt. It creates trust among developers, contributors and customers.

The KDE Free Qt Foundation is a cooperation between The Qt Company on the one hand and KDE on the other hand. KDE is one of the largest Free Software communities for general purpose end-user software, founded in 1996. In case of ties, KDE has an extra vote, ensuring that The Qt Company does not have a veto on decisions.

My in-depth presentation below provides an overview of the history of the Foundation and describes its importance for Qt today. It explains in detail why the existence of the Foundation has a positive influence on the long-term market success of Qt.

Update 1: This document was written by Olaf Schmidt-Wischhöfer and published in December 2019 after receiving comments from the other board members of the foundation. In early January 2020, the board members representing from The Qt Company informed me that the text does not fully represent their views. I received no specific suggestions for textual changes.

Update 2: This document has not been updated to respond to the announcement of The Qt Company from 27 January 2020. I have not yet decided on publishing an updated version or not.

1 I use the terms “Open Source” and “Free Software” interchangeably here. Both have a long history, and the exact differences between them do not matter for the purposes of this text.

2 From the statues of the KDE Free Qt Foundation:
“The purpose of the Foundation is to secure the availability and practicability of the Qt toolkit for developing free software.”

KDE Free Qt Foundation at Akademy 2018

I am really happy that this year, I am able to attend Akademy again.

This enables me to set up a BOF session. It is intended for members of the KDE community who are interested in KDE’s collaboration with Qt. We will talk about the KDE Free Qt Foundation (legal setup; history and future; perspectives: What is important for the KDE community going forward?)

A cordial invitation to all KDEers! – Tuesday, 14 August, 9:30

It is great that many people from the Qt Company will also be at Akademy, so we will have a number of in-person meetings.

And of course, I can personally report on our activities of the KDE Free Qt Foundation during the General Annual Meeting of KDE e.V. (Below you can also read our formal report for the past year.)

I look forward to meeting many of you in Vienna!

I am going to Akademy!

AGM Report from KDE Free Qt Foundation for 2017

During the past year, the KDE Free Qt Foundation has been working on the
following topics:

Qt as Free Software

All parts of Qt continue to be available under free software licenses (for main part of Qt, under the LGPLv3 and also under GPLv2 or later; for some
add-on modules, at least GPLv3) for desktop Linux, Android, Microsoft Windows, Microsoft Windows Phone, Apple MacOS and Apple iOS.

Legally safeguarding this is the purpose of the KDE Free Qt Foundation.

As a separate product, the Qt Company has also released a 3D UI design tool in the meantime under the GPLv3. This code was originally contributed by NVIDIA Inc.

Tooling

The tools of Qt also fall under the Free Software conditions. The proprietary Qt Quick compiler (which used to lack compliance with our contract in the past) has been completely replaced by a superior Free Software alternative. We have requested the Qt Company to update their website accordingly.

Of course, the Qt Company keeps having the option to offer separate products (developed and sold separate from Qt).

Qt 6

The foundation also discussed the plans of the Qt Company for Qt 6. Current plans are that there will be long term support releases in autumn 2018
(Qt 5.12 LTS) and in spring 2020 (Qt 5.15 LTS), and that Qt 6.0 will be released in autumn 2020 as a cleanup release removing all APIs that have been deprecated in Qt 5.15.

There are no plans on removing any functionality from Qt, without having an appropriate replacement under the same license conditions. The Qt Company reassured us that any such removals would also be discussed in the foundation, as stipulated by our contracts.

(Olaf Schmidt-Wischhöfer and Martin Konold)

Die Vielseitigkeit der Freiheit

Freiheit ist ein Thema, das in vielen politischen Zusammenhängen eine große Rolle spielt. Das war auch schon früher so – und nicht nur in der Politik, sondern in ganz unterschiedlichen Bereichen der Geistesgeschichte.

Ich finde es spannend, wie vielseitig die verschiedenen Ebenene und Seiten der Freiheit sind. Hier ist eine kleine Zusammenstellung von Zitaten – natürlich längst nicht vollständig.

(more…)

New agreement of the KDE Free Qt Foundation

Today we were able to announce a revised agreement between the KDE Free Qt Foundation
and The Qt Company.

It contains major improvements for KDE (more platforms; more Free Qt modules; inclusion of Qt Project; many small details). It also comes with a change to the licensing rules of Qt, as described in the news article linked above and as discussed earlier on this blog.

The new agreement follows nearly two years of negotiations, with intensive scrutiny by KDE e.V. members and a helpful review by our lawyer, Till Jaeger.

I am very happy that we have finally concluded this.

User Data Portability and Privacy – Comment on Recent News

On Thursday, the EU reached a compromise for a new General Data Protection Regulation. I would like to offer two short comments.

First, the timing is interesting: One day later, a new law came into force that introduces increased surveillance of German internet users, and the US is also about implement a law that subjects American citizen to increased surveillance. (See my last blog post for more context.)

Secondly, the EU claims that the new data protection will allow “data portability”: It will be easier for users to access their own data and to migrate with their data to a different company / service. For this to work, the law needs to be well-written (not clear yet); it needs to be efficiently enforced (doubtful given the current attitudes to privacy law violations); and the law needs to come into effect (definitely not earlier than 2018).

Anyway, I am happy that KDE signed the User Data Manifesto 2.0 a few months ago. Why wait for official legislation when we can do the right thing right now?

Big Data and International Development

The Institute of Development Studies (IDS) in Brighton, UK, has published an interesting research report: Big Data and International Development: Impacts, Scenarios and Policy Options, written by Stephen Spratt and Justin Baker.

It focusses on the use of the growing data pools in developing countries. It analyses several policy areas: economy, human development, rights, and environment.

The part on privacy rights mentions a very important aspect (page 29):

A primary responsibility of any government is to protect its citizens. Governments of all kinds have used big data techniques to identify and monitor potential threats. These same techniques, however, are also used to identify and monitor opponents of the government, or just groups with views the government does not like. In practice, it is not obvious how big data techniques could be restricted to the first type of example, as the way they are employed is dependent on what the government considers to be a ‘threat’, and this varies hugely.

and:

It is very difficult for any government to argue that certain groups should not be suppressed in other countries, even where their governments disagree with them, if other groups – no matter how distasteful – are suppressed in their own country. For this reason, there seems no option but to err on the side of freedom of speech and association, within the law, for countries of all kinds.

Thinking further from these quotes, I also wonder how well governments in developing countries are able to protect their databases from intruders. This is especially true since it is possible to de-anonymise a database by combining it with other, differently anonymised databases. We live in a world were the most powerful democracy collects vast pools of information on the citizens of other countries, and offers these citizens no legal standing to defend their privacy. Many other, non-democratic or half-democratic countries are trying to copy this approach of stealing data wherever possible. And even countries that have taken position against this tendency (e.g. Germany) are at the same time remarkably shy about all practical steps to defend their citizens from these abuses. Do we really trust poor countries to get it right, when even the rich democracies fail spectacularly?

Global Inclusiveness: Climate Change, Development Policy, and People With Disabilities (updated)

Yesterday, 195 countries adopted an agreement to combat climate change. And in July, 193 countries adopted the Sustainable Development Goals. Both are important successes for the future of humankind, even if it is not clear how far all these countries will stick to their commitments in the future.

I find it interesting to look into both documents together. The climate agreement reinforces a central theme of the Sustainable Development Goals – namely: It is important not treat questions of economy, environment, health, and inclusive societies separately. The global challenges are deeply linked. Climate change threatens especially those humans living in extreme poverty. People with more money can better afford to move to less endangered locations, or to build stronger houses. At the same time, poverty is statistically linked to being part of an ethnic minority, to being a women, to having a disability …

It is a good sign that both documents contain explicit references to the most vulnerable people.

As an example, here are a few quotes from the climate agreement: (more…)

Availability of Qt Free Edition (updated)

In my last blog posts, I explained the KDE Free Qt Foundation, which guarantees the free availability of the Qt Toolkit. Today, The Qt Company introduced a new Qt online installer that requires users to accept additional license terms. Many people have contacted me with concerns about this change. I share this concern. Even before this, I have already been concerned about the structure of the qt.io download page, since it blurs the lines between the Qt Toolkit itself and additional, proprietary products.

As a workaround, please use the qt-opensource-* files in the sub-subfolders of http://download.qt.io/official_releases/qt/.

In my function as KDE’s representative on the KDE Free Qt Foundation, I am working with The Qt Company on having all this fixed. I still trust that this was an honest mistake inside The Qt Company, and that the corrections will be made soon.

Update: The Qt Company is changing the installer to make the Qt account optional. This was a very professional reaction to the criticism voiced here and elsewhere and bodes well for the future of Qt.

Good news: Compatibility of LGPLv2 and LGPLv3

Two of the most used Free Software licenses are the GNU General Public License (GPL) and the GNU Lesser General Public License (LGPL). Both are copyleft licenses, meaning that you can use them as long as you do not remove the Free Software rights from downstream users. The difference is that the LGPL can be linked unto non-free software (as long as the LGPL library itself stays free), but with the GPL everything needs to be free. In 2007, the FSF published an update to both licenses, so now we have version 2 (“GPLv2” and “LGPLv2.1”) and version 3 (“GPLv3” and “LGPLv3”).

An example for an LGPL software is Qt. Since it uses the LGPL, it can be used to write Free Software (such as KDE Plasma or VLC), but it can also be used to write non-free software. And companies that do not wish to bother with the LGPL terms at all can also buy en enterprise license.

In August, I explained in a blog post why it makes sense to use the new LGPLv3 version for Qt: Protecting Software Freedom – the Qt License Update. But there was one major question unsolved: What about other Qt-base libraries that themselves use the LGPLv2.1 and cannot (or do not with to) migrate to LGPLv3 or GPLv2? We discussed this with own lawyer. And the result was – [Drum rolls please!]:

This is no problem at all!

LGPLv2 libraries can link to LGPLv3 libraries without problems, provided you do not copy code between the libraries.

Long version:

  • We have convinced Digia to use “LGPLv3, GPLv2 or any later version of the GPL” rather than just plain LGPLv3. This ensures compatibility with all existing and future GPL code. (LGPLv2 is also compatible with “GPLv2 or any later version of the GPL” through a license clause.)
  • Applications using both LGPLv2 libraries and LGPLv3 libraries will need to comply with the requirements of both licenses.

So this means that we can go ahead with our plans for improving the KDE Free Qt Foundation (see Protecting Software Freedom – the Qt License Update).

Protecting Software Freedom – the Qt License Update

[Please also see the update.]

In my latest blog post, I briefly mentioned the KDE Free Qt Foundation. Today I have some news to announce that relate to this foundation, where I am a board member representing KDE.

What is the “KDE Free Qt Foundation”?

The KDE Free Qt Foundation is a legal entity, set up by KDE e.V. and Trolltech, the company originally developing Qt. It aims to safeguard the availability of Qt as Free Software and already fulfilled an important role. Trolltech was bought by Nokia, who sold Qt later to Digia. The contracts stayed valid during all these transitions.

The foundation has four voting board members (two from Digia, two from KDE e.V.) and two non-voting advisory board members (the Trolltech founders). In case of a tie, KDE e.V.’s board members have an extra vote.

Through a contract with Digia, the KDE Free Qt Foundation receives rights to all Free Qt releases “for the KDE Windowing System” (currently defined as X11 – we plan to extend this to Wayland) and for Android. As long as Digia keeps the contract, the KDE Free Qt Foundation will never make use of these rights.

How can it be made even better?

(more…)