Histoire: l'affaire Qt
Qt 2.2 est disponible en GPL
Lisez l'annonce officielle à cette adresse.
Nous allons garder cette page. Elle a maintenant une certaine valeur historique.
Alors, lisez cette page en vous rappelant du contexte dans lequel ces lignes ont été écrites. Dans le passé, Qt n'était pas sous licence libre, mais nous l'utilisions quand même pour plusieurs raisons. Qt est maintenant sou GPL alors, les arguments ci-dessous ne sont plus nécessaires.
La question Qt
KDE a été attaqué à cause de l'utilisation de la boîte à outils graphique multiplateforme Qt. Une grande quantité de fausses informations ont été proférées à propos de Qt et de son rôle et position dans KDE. Nous souhaitons profiter de cette opportunité pour expliquer notre point de vue.
Pourquoi KDE a-t-il choisi Qt ?
- Qt est la meilleure boîte à outils graphique disponible pour les plates-formes UNIX. Cela aurait été une grave erreur de bâtir un projet de la taille et l'envergure de KDE sur autre chose que ce qu'il y a de mieux. Ceci est particulièrement vrai pour un projet de bureau dont le succès dépend essentiellement du nombre d'applications disponibles. Pour les concepteurs du bureau, il est impératif de rendre le développement d'applications aussi simple que possible.
- Qt est disponible gratuitement pour tout le monde, avec son code source, dans le cadre du développement de logiciels libres. En plus, Qt peut être librement redistribué.
- Nous encourageons activement les sociétés de logiciels commerciaux à développer des applications pour KDE. Ces sociétés ont besoin d'une boîte à outils mature, de haute qualité et d'une assistance technique. Aucune des boîtes à outils sous GPL n'aurait été capable de remplir ces contraintes strictes.
- Bien que la majorité des membres du projet KDE puisse probablement penser qu'il aurait été souhaitable d'avoir une version LGPL de Qt, si c'était pour avoir la même qualité que l'implantation de Troll Tech, il aurait sûrement fallu attendre de 2 à 5 ans, alors que c'est maintenant et de façon urgente que nous avons besoin d'un bureau utilisable. D'un point de vue stratégique, il serait absolument insensé de construire notre propre boîte à outils avant de commencer le développement de KDE. Nous estimons que notre devoir est de réaliser d'abord un bureau ouvert, utilisable et gratuit. Une fois que cela sera accompli, nous pourrons réécrire certains composants que nous utilisons. La stratégie et l'ordre sont importants.
- La KDE Free Qt foundation a été créée. Cette fondation garantit que Qt continuera à être disponible librement pour le développement de logiciels libres maintenant et dans le futur. La création de la KDE Free Qt Foundation rend inutiles les craintes de certains acteurs de la communauté des logiciels libres que Qt ne soit plus, un jour, disponible pour le développement de logiciels libres ou que son développement soit stoppé.
Je ne comprends pas bien le problème de Qt. Pouvez-vous détailler le sujet ?
KDE utilise la boîte à outils
graphique C++ multiplateforme Qt
pour le développement de KDE. Qt est disponible librement, sous forme de
code source, pour le développement de logiciels libres et peut être
distribué librement. En particulier, il n'y a rien qui empêche un
distributeur de CD-ROM de graver des copies légales de Qt sur ses CDs.
Vous pouvez utiliser Qt pour écrire des applications aussi longtemps que
vous laissez le code source de vos applications disponible librement et
vous pouvez même vendre l'application que vous avez écrit avec
Qt si vous rendez le code source de votre application disponible librement
en téléchargement, pour tout le monde.
Cependant, si vous souhaitez vendre les applications que vous avez écrites
avec Qt et insistez pour
ne pas rendre disponible pour quiconque, en téléchargement, le code
source de votre application, alors vous êtes obligés d'acheter une
licence à Troll Tech AS, les créateurs de Qt.
De plus, si vous souhaitez améliorer Qt, vous devrez envoyer vos correctifs
à Troll Tech qui fusionnera vos modifications avec l'arborescence du code
source de Qt si vos 'améliorations' sont utiles. Vous n'êtes pas
autorisé à distribuer une version de Qt modifiée par vous-même.
Ceci risque d'avoir été un peu compliqué, alors récapitulons :
- Si vous voulez vendre les applications que vous avez écrites avec Qt et que vous ne souhaitez pas rendre votre code source disponible en téléchargement pour quiconque, alors vous devez acheter une licence à Troll Tech.
- Si vous voulez améliorer Qt, alors vous devez envoyer vos correctifs aux créateurs de Qt. Si vos modifications sont utiles, ils les incorporeront et rendront la version améliorée de Qt disponible pour tous dans leur copie hebdomadaire suivante.
Certains puristes de la communauté des logiciels libres pourront dénigrer ce type de licence. C'est peut-être dur à croire pour un nouveau venu dans le monde des logiciels libres, après tout Qt est disponible gratuitement pour quiconque souhaite réaliser des logiciels libres, mais c'est comme ça.
Les principaux points de critique sont :
- Si vous voulez vendre des applications que vous avez écrites avec Qt et que vous ne voulez pas rendre votre code source librement disponible, alors vous devez acheter une licence de Qt.
Nous pensons que cette critique n'est pas justifiée. La licence la plus répandue dans la communauté des logiciels libres est la GPL. La GPL est le standard de facto et la grande majorité des programmes de la communauté des logiciels libres est publiée sous la GPL. Cependant, la licence GPL ne vous permet pas de vendre des applications dérivées de sources diffusées sous GPL si vous ne voulez pas rendre disponible librement votre code source. Cela signifie que la GPL est une licence bien plus restrictive que la licence de Qt sur ce point. Avec la licence de Qt, vous pouvez toujours acheter une licence commerciale et cela vous donne la possibilité de vendre vos applications. Si vous réutilisez du code sous GPL, vous n'avez plus cette possibilité.
- Si vous voulez améliorer Qt, vous devez envoyer vos améliorations à Troll Tech. Vous ne pouvez pas simplement diffuser la version de Qt modifiée par vous-même.
À notre avis, cela veut seulement dire qu'il y a une autorité centrale chargée de s'occuper de Qt. C'est le cas avec la plupart des projets de logiciel libre et c'est largement reconnu comme une bonne chose. Autrement, des 'séparations de branche' sont réellement possibles et ces divergences ne sont pas vues comme une bonne chose par quelque groupe que ce soit. Certains diront que l'on ne peut pas corriger un trou de sécurité qui apparaîtrait dans Qt car les correctifs doivent d'abord être envoyés à Troll Tech. Troll Tech a clairement intérêt à corriger ce genre de choses immédiatement, si elles devaient arriver. Du fait que des copies de développement de Qt sont publiées chaque semaine, il n'y a pas de raison de croire que le correctif ne soit pas disponible presque instantanément. Un autre argument pour dénigrer Qt est que Qt n'a pas certaines fonctionnalités X, comme les styles dynamiques, et que puisque l'on n'a pas le doit de distribuer des copies modifiées de Qt, cette fonctionnalité X ne sera pas disponible. Troll Tech a investi toutes ses ressources dans le développement de Qt. Qt est constamment développé et amélioré à une vitesse inégalée par n'importe quelle boîte à outils GPL. Les thèmes sont, par exemple, en cours de développement et seront certainement terminés et utilisables avant qu'une implantation des thèmes en module externe ne soit réellement utilisable dans la moitié des boîtes à outils existantes.
Le lecteur attentif aura remarqué que nous avons fait deux hypothèses essentielles dans la discussion ci-dessus :
- Qt sera toujours amélioré et développé de façon active et continue
- Troll Tech ne cessera jamais de rendre Qt disponible pour le développement de logiciels libres pour quelque raison que ce soit : fusion, rachat, etc.
Ce problème est traité par la KDE Free Qt Foundation :
La KDE Free Qt Foundation
Le projet KDE et Troll Tech, les créateurs de Qt, ont fondé la KDE Free Qt Foundation. Le but de cette fondation est de garantir la disponibilité de Qt pour le développement de logiciels libres maintenant et dans le futur. Même si le développement de Qt était arrêté ou que Troll Tech choisissait de ne plus rendre Qt librement disponible pour le développement de logiciels libres, la dernière version de Qt serait diffusée sous une licence de type BSD, une licence bien moins restrictive que GPL ou LGPL. Les membres du comité de la KDE Free Qt Foundation évalueront, si le développement de QT est arrêté, dans quelles conditions Qt sera rendu disponible sous une licence style BSD. Le comité de la KDE Free Qt foundation est constitué de 2 membres de Troll Tech et deux membres du projet KDE qui ne sont pas affiliés à Troll Tech. En cas d'égalité, le vote de KDE prévaudra.
Le projet Harmony
Mise à jour: Harmony n'existe plus depuis que Qt est sous GPL.
Dernièrement est apparu le Projet Harmony. Le projet Harmony est en train d'écrire un clone LGPL de Qt. Étant donné que Qt contient environ 80 000 lignes de code et le fait que Harmony a déjà écrit environ 25 000 lignes dans les 3 derniers mois, il y a une réelle chance que le clone de Qt soit disponible dans un an. Juste pour comparer, rapellez-vous que KDE contient environ 800 000 lignes de code aujourd'hui (la version i386 de Linux 2.0.31 contient elle environ 600 000 lignes de code). Ceci montre clairement que, si vous n'approuvez pas l'utilisation de Qt pour KDE, la solution ne réside pas dans la réécriture d'un nouveau bureau mais dans l'écriture d'un clone de Qt. C'est ce que fait le Projet Harmony. Même pour les puristes de la GPL, il n'y a pas de raison viable d'ignorer KDE, car un clone de Qt sera disponible dans un futur proche. Nous croyons que nous avons pris la bonne décision en construisant d'abord un bureau plutôt qu'un clone de Qt. Il y aurait eu de grands risques que nous ne souffrions du même destin que celui que doit endurer le projet GnuStep si nous avions agi différemment. Le mot de la fin sera que si vous estimez que nous devrions utiliser une boîte à outils graphique LGPL, alors vous devriez participer au Projet Harmony.
Références
[ Edit ]
KDE-Francophone