Myriad Blog 1.3.0 Wednesday, Jul 30th, 2014 at 05:11am 

Monday, May 9th, 2011 at 05:03pm
Linux : Gnome ou KDE?

 
Cette question est devenu un troll aussi fameux que "Mac ou PC", ou pour les Linuxiens "vi ou emacs". Pour les novices que nous sommes, le principe de développement sur Linux apparaît d'une complexité affligeante, avant même de commencer.
 
Etat des lieux
 
Il existe de nombreuses distributions de Linux (Ubuntu, Mandriva, Debian, etc.), elles-même sur plusieurs environnements (Gnome, KDE,..), chaque environnement utilisant une librairie graphique différente (GTK, QT..) intégrant des librairies spécifiques (Cairo, Glib, Pango, ATK...).
Sachant que chacun de ces modules est distribué sous une licence qui peut limiter ce que vous avez le droit de faire (GPL, LGPL, commerciale...), il est quasiment impossible pour un programmeur novice sous Linux de savoir ce qui est le mieux adapté à son cas, sans se plonger dans des pages et des pages de jargon juridique indigeste et le plus souvent incompréhensible.
 
N'ayant pas le temps d'entamer des études de droit pendant notre temps libre, nous avons essayé de comprendre tout de même de quoi il s'agit, et de faire un peu de tri dans cet embrouillamini. Il est probable que nous ayons au final mal digéré toutes ces informations, et que des erreurs grossières se soient glissées dans ce qui va suivre. Tant pis, on y va quand même.
 
Nos programmes sont des applications commerciales, en sources fermés. Cela signifie que nous ne désirons pas offrir "librement" sur Internet le résultat de 20 ans de travail quotidien. D'aucuns objecteront que le fait de fournir le code source ne veut pas dire que n'importe qui a le droit de l'utiliser comme il le veut. Mais nous ne sommes pas (encore) juristes, et, rencontrant déjà suffisamment de problèmes dans le domaine qui est le nôtre, la programmation, nous ne souhaitons absolument pas nous engager dans un procès international lorsqu'une société à l'autre bout du monde aura pillé notre travail pour proposer à moindre frais une application clone concurrente.
 
Le choix
 
Ce principe établi, quel choix nous reste-t-il ?
Les deux principaux environnements graphiques sont Gnome et KDE.
 
Gnome est basé sur la librairie graphique GTK+, apparemment distribuée sous licence LGPL, ainsi que toutes ses librairies annexes. La licence LGPL est l'une des plus souples, et nous permet de créer des programmes commerciaux à sources fermés sans contrainte. Le point négatif semble être que les changements de version du système s'accompagnent de changements d'orientation, obligeant les programmeurs à réécrire certaines parties pour rester à la page. Ainsi, même si les anciennes fonctions restent probablement disponibles, puisqu'elle font partie des couches "basses", la gestion des graphismes est successivement passée par les accès à GLib, Pango et maintenant Cairo, les anciennes entrées étant marquées comme obsolètes dans la documentation.
 
Le concurrent sérieux de Gnome est KDE, basé sur la librairie graphique QT. Là, dès le départ, mauvaise surprise. QT est sous licence GPL, ce qui interdit la création de programmes commerciaux à sources fermés. Il faut donc acquérir une licence pour avoir le droit de faire cela. Deuxième mauvaise surprise : la licence la plus simple (Linux uniquement) est vendue au prix de ... 2995 euros !! (soit l'équivalent brut de  150 licences pour Melody Assistant)
Plus que réticents à l'idée de nous saigner à blanc pour acquérir la possibilité de développer sur un système, nous n'avons pas poussé plus loin nos recherches dans ce sens.
 
En guise de conclusion
 
Nous devrons donc nous cantonner aux configurations i386/Linux/Gnome (GTK), ce qui est l'environnement offert par une des distributions les plus répandues, Ubuntu. Ceux qui utilisent KDE devront préalablement installer les librairies GTK pour pouvoir faire fonctionner nos programmes.
 
Et là va se poser le dernier problème épineux, celui de l'assistance technique. Nous n'aurons ni le temps, ni les moyens (ni l'envie) de devenir des pros de Linux. Quoiqu'en disent certains, ce système n'est pas assez abouti pour permettre à un utilisateur lambda de s'en sortir sans mettre les mains dans le cambouis, maîtriser les commandes textuelles sous terminal ou, de temps en temps, compiler un ou deux modules. Ce qui fait que, pour la première fois, nous devrons assurer une assistance technique sur un système que la majorité des utilisateurs connaîtront mieux que nous.  
De plus, la disparité dans les configurations matérielles et logicielles est source d'incompatibilités, de plantages et donc de graves prises de tête. C'est en partie ce qui a fait la force du Macintosh à ses débuts, le faible nombre de configurations possibles étant un gage de stabilité.
 
Or, là, nous aurons affaire à des machines encore plus diverses que sur Windows, et avec un nombre quasi infini de combinaisons de distribution / système graphique / librairies annexes / personnalisation. C'est, d'après les pro-Linux, ce qui fait la force de ce système, mais c'est à notre avis sa plus grande faiblesse.
by Olivier Guillion
Comments

Comment from Augereau Monday, May 9th, 2011 at 06:34pm
licence
Bonsoir,
Il me semble que depuis la version 4.5 Qt est sous licence LGPL.
voir : http://fr.wikipedia.org/wiki/Qt

Comment from Olivier Tuesday, May 10th, 2011 at 00:04am
Re: licence
En effet!  
C'est vrai depuis 2009, donc nous n'avons plus que 2 ans de retard sur les news Linux. Encore quelques efforts et nous serons à jour.
 
On reconsidèrera donc le développement sur KDE/QT, dès qu'on aura suffisamment avancé sur Gnome/GTK.


Most recent first
Oldest first

Top of page
Last update:  (c) Myriad 2013