SHARE
Facebook X Pinterest WhatsApp

Stallman on Qt, the GPL, KDE, and GNOME

Written By
thumbnail
Web Webster
Web Webster
Sep 5, 2000

By Richard Stallman

Making Qt available under the GPL makes it legal to take an
existing GPL-covered program and adapt it to work with Qt. It also
provides a way to resolve one of the free software community’s
long-standing problems, the problem of the ethical and legal status
of KDE.

The design of KDE was based on a fundamental mistake: use of the
Qt library, which at the time was non-free software. Despite the
good intentions of the KDE developers, and despite the fact that
the code of KDE itself was free software, KDE could never be part
of a completely free operating system as long as it needed a
non-free program to function.

But the KDE developers were not concerned about this problem,
and recruited helpers who shared their views. As KDE/Qt developed,
it posed a growing risk to the progress of free software. The risk
was that KDE/Qt would become so established that most of the user
community would treat it as indispensable–disregarding the fact
that this meant using non-free software. Widespread acceptance of
one crucial non-free program would encourage a general willingness
to accept non-free software, meaning fewer people who might have
the will to help replace KDE/Qt with something entirely free. And
that job would require catching up with a large head start, just as
we did in replacing Unix with GNU and GNU/Linux. To be back in that
situation was a discouraging prospect.

But we were not there yet, and it was clear we should take
preventive measures before we got there. In 1997 we launched two
parallel projects designed to avoid that situation: the GNU desktop
(GNOME), which aimed to provide a completely different alternative
graphical interface, and Harmony, a free replacement for Qt. The
reason for starting two projects in parallel was redundancy: any
project may fail, and the risk was big enough to warrant two
simultaneous approaches to preventing it.

GNOME caught on, and by 1999 it was a clear success. Then Qt was
rereleased under a new license, the QPL, which made it free
software. This solved the principal problem of KDE/Qt, the fact
that part of it was non-free. But a secondary problem remained: the
problem of license inconsistency.

The QPL is incompatible with the GPL, which means that Qt and
GPL-covered modules cannot legally be combined, unless the
developers of one module or the other grant an exception to permit
it. The KDE developers certainly intend their GPL-covered code to
be used with Qt, and one can argue that by telling you to link it
with Qt they have implicitly given you permission to do that. But
they did not formally state this exception in the KDE source code
itself, and it is not comfortable to rely on implicit permission
for something like this.

In addition, in some cases code was copied into KDE from
existing GPL-covered modules whose copyright holders had not given
special permission. (Only the copyright holders can give extra
permission to do things that the GPL does not permit.) That is a
real violation of the GPL. Because of this, and the overall lack of
an explicit exception, the legal status of KDE remained
clouded.

Qt 2.2 provides the basis to solve this secondary problem, but a
certain amount of cleaning up will be needed to fix it thoroughly.
Misusing a GPL-covered program permanently forfeits the right to
distribute the code at all. Such situations have occurred in KDE,
and now they ought to be cleaned up.

It would be a good idea for all of the authors of code
in KDE (more precisely, all of the copyright holders) to make a
clear statement that linking their code with Qt in the past was
done with their permission, thus assuring existing KDE users that
they have not forfeited distribution rights to that KDE code.

Also, where code was copied from other GPL-covered programs,
their copyright holders need to be asked for forgiveness. To lead
the way, the FSF hereby grants this forgiveness for all code that
is copyright FSF. More precisely, those who as of September 4, 2000
have used some FSF code in violation of the GPL solely by linking
it with Qt, and thus have forfeited the right to use that code
under the GPL, will once again have full GPL permissions to use
that code upon switching to a GPL-covered version of Qt. I appeal
to all the other copyright holders of affected code to grant
similar forgiveness and thus help resolve the situation
quickly.

Soon KDE should be properly based on a GPL-covered version of
Qt, and the Free Software Movement will be able to think of KDE/Qt
as a contribution and not as a problem. Meanwhile, I think there is
no reason to work on another package which is equivalent to Qt. If
you want something like Qt, use Qt.

But GNOME is here, and is not going to disappear. GNOME and KDE
will remain two rival desktops, unless some day they can be merged
in some way. Until then, the GNU Project is going to support its
own team vigorously. Go get ’em, gnomes!

Copyright 2000 Richard Stallman
Verbatim copying and distribution of this entire article are
permitted in any medium provided this notice and the copyright
notice are preserved.

thumbnail
Web Webster

Web Webster

Web Webster has more than 20 years of writing and editorial experience in the tech sector. He’s written and edited news, demand generation, user-focused, and thought leadership content for business software solutions, consumer tech, and Linux Today, he edits and writes for a portfolio of tech industry news and analysis websites including webopedia.com, and DatabaseJournal.com.

Recommended for you...

5 Best Free and Open Source Text Expander Tools
webmaster
Jun 13, 2025
Grafito: Systemd Journal Log Viewer with a Beautiful Web UI
Bobby Borisov
Jun 12, 2025
FreeBSD Wants to Know a Few Things
brideoflinux
May 11, 2025
NVK enabled for Maxwell, Pascal, and Volta GPUs
Kara Bembridge
May 1, 2025
Linux Today Logo

LinuxToday is a trusted, contributor-driven news resource supporting all types of Linux users. Our thriving international community engages with us through social media and frequent content contributions aimed at solving problems ranging from personal computing to enterprise-level IT operations. LinuxToday serves as a home for a community that struggles to find comparable information elsewhere on the web.

Property of TechnologyAdvice. © 2025 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.