GNU's Bulletin July, 1997 Replacing Qt ************ The GNU Project is looking for volunteers to work on developing a free compatible replacement for the Qt GUI toolkit. Qt is not free software because its distribution terms are too restrictive. Users do not have the freedom to make changes, or the freedom to release their changes for the community to use--freedoms which are a crucial part of the meaning of free software. Even developing an application program which uses unmodified Qt carries, in some cases, an unacceptable requirement--to notify the owners of Qt. A secondary consequence of the restrictions on Qt is that linking Qt together with code covered by the GNU GPL violates the GNU GPL, because the combined program is not free software. (It makes no difference whether the linking is done statically or dynamically; either way is creating a combined program which the GPL applies to.) But Qt is available to run at no charge, and some developers of free applications are starting to make their programs use it. This a serious problem for developing completely free operating systems. Qt cannot be included in a free operating system, because any system which contains Qt is, by consequence, no longer entirely free software. If a free application needs Qt in order to run, free operating systems cannot use that application either. We would be legally permitted to use the application itself, and the system could still be free--but including the application without Qt won't be any use. The only feasible way to make these applications run on free systems is to develop a free substitute for Qt. Hence this project. To make the goal precise, the new GUI toolkit needs to be mostly compatible with Qt in regard to API. How compatible must it be? Compatible enough that it is easy to make the free applications use it. In other words, this library should be compatible enough to do the job of making the applications run. This new toolkit does not need to have each and every feature that Qt has. It just needs to have the features that the free applications use and cannot easily do without. The screen appearance and behavior of the replacement package do not necessarily have to be compatible with Qt. If they are convenient and work well with the applications that use the library, that is good enough. Please send email to `gnu@prep.ai.mit.edu' if you would like to help with this project. This project will take some time. In the mean time, if you are developing a free application, please do not use Qt. Please use a free GUI toolkit instead.