par Richard Stallman
Toute décision prise par une personne découle de ses valeurs et buts. Les gens peuvent avoir beaucoup de buts et valeurs différents ; la gloire, le profit, l'amour, la survivance, l'amusement, ou la liberté, ne sont qu'une partie des buts qu'une personne normale peut avoir. Quand ce but est d'aider les autres aussi bien que soi même, cela s'appelle de l'idéalisme.
C'est un but idéaliste qui motive mon travail pour le logiciel libre : propager la liberté et la coopération. Je veux encourager la diffusion des logiciels libres et le remplacement des logiciels propriétaires qui empêchent la coopération, et rendre ainsi notre société meilleure.
C'est pour cette raison fondamentale que la GNU General Public License est écrite de cette manière -- comme un copyleft. Tout code ajouté à un programme couvert par la GPL doit être un programme libre, même s'il est placé dans un fichier séparé. Je mets mon code à disposition pour une utilisation dans des logiciels libres, et pas pour un usage avec des logiciels propriétaires, afin d'encourager ceux qui programment des logiciels à les rendre libres également. Je suppose que, comme les développeurs de logiciels propriétaires utilisent le copyright pour nous empêcher de partager, nous, coopérateurs, pouvons utiliser le copyright pour donner aux autres coopérateurs un avantage bien à eux : ils peuvent utiliser notre code.
Ceux qui utilisent la GNU GPL n'ont pas tous ce but. Il y a plusieurs années, on a demandé à un de mes amis de rééditer un programme copylefté sous des termes non copyleftés, et il a plus ou moins répondu ainsi :
Parfois je travaille sur des logiciels libres et parfois sur des logiciels propriétaires ; mais quand je travaille sur des logiciels propriétaires, j'exige d'être payé.
Il voulait bien partager son travail avec une communauté qui partageait les logiciels mais ne voyait aucune raison d'aider un entreprise commerciale dont les produits seraient interdits à notre communauté. Son but était différent du mien mais il a décidé que la GNU GPL le satisfaisait également.
Si vous voulez accomplir quelque chose dans le monde, l'idéalisme ne suffit pas ; le choix d'une méthode qui mène à l'accomplissement de ce but est nécessaire. En d'autres termes, vous devez être «pragmatique». La GPL est-elle pragmatique ? Regardons ses accomplissements.
Considérons GNU C++. Pourquoi existe-t-il un compilateur C++ libre ? Uniquement parce que la GNU GPL indiquait qu'il devait être libre. MCC, un consortium industriel, a développé GNU C++ à partir du compilateur GNU C. En temps normal, MCC rend sa production aussi propriétaire que possible. Mais ils ont fait une interface C++ libre parce que c'était la seule possibilité de l'éditer que leur laissait la GNU GPL. L'interface C++ comportait beaucoup de nouveaux fichiers, mais comme ils étaient prévus pour être liés à GCC, la GPL s'appliquait à eux. Le bénéfice pour notre communauté est évident.
Considérons GNU Objective C. Au début, NeXT voulait rendre cette interface propriétaire ; ils avaient l'intention de l'éditer sous la forme de fichiers .o et de laisser aux utilisateurs le soin de les attacher au reste de GCC, pensant pouvoir ainsi contourner les conditions de la GPL. Mais nos juristes ont dit que cela n'esquivait pas ces conditions et était interdit. Et ainsi l'interface Objective C fut un logiciel libre.
Ces exemples datent de plusieurs années, mais la GNU GPL continue à nous apporter toujours plus de logiciels libres.
Beaucoup de bibliothèques GNU sont couvertes par la GNU Lesser Library General Public License, mais pas toutes. Readline, qui met en œuvre l'édition de ligne de commande, est une des bibliothèques GNU couvertes par la GNU GPL classique. Un jour, j'ai découvert un programme propriétaire conçu pour utiliser Readline, et j'ai dit au développeur que cela était interdit. Il aurait pu sortir du programme l'édition de ligne de commande, mais ce qu'il fit en fait, fut de le rééditer sous la GPL. Maintenant, c'est un logiciel libre.
Les programmeurs qui conçoivent des améliorations pour GCC ( ou Emacs, Bash, Linux ou tout programme couvert par la GPL ) sont souvent employés par des entreprises ou des universités. Lorsque le programmeur veut remettre son amélioration à la communauté et voir son code dans la prochaine édition, il est probable que son patron lui dise : «Attendez un peu ; votre code nous appartient ! Nous ne voulons pas le partager ; nous avons décidé de placer votre version améliorée dans un logiciel propriétaire».
C'est à ce moment qu'intervient la GNU GPL. Le programmeur montre à son patron que ce logiciel propriétaire serait une violation de copyright, et ce dernier réalise qu'il ne lui reste que deux possibilités : publier le code en tant que logiciel libre ou pas du tout. Il laisse presque toujours le programmeur faire ce qu'il voulait initialement et le code est inclus dans la prochaine version.
La GNU GPL n'est pas M. Chic Type. Elle dit «non» à certaines choses qu'on aimerait parfois faire. Certains utilisateurs disent qu'il est dommage que la GPL «exclut» certains développeurs de logiciels propriétaires qui «auraient besoin d'être amenés à la communauté du logiciel libre».
Mais nous ne les excluons pas de notre communauté ; ils ont choisi de ne pas y entrer. Décider de concevoir des logiciels propriétaires, c'est décider de rester en dehors de notre communauté. Appartenir à notre communauté signifie prendre part à notre coopération ; nous ne pouvons pas «les amener à notre communauté» s'ils ne le désirent pas.
Ce que nous pouvons faire, c'est les inciter à nous rejoindre. La GNU GPL est faite pour utiliser comme appâts les logiciels que nous possédons : «Si vous faites des logiciels libres, vous pourrez utiliser ces codes.» Bien sûr, cela ne les convaincra pas tous, mais nous en gagnerons un de temps en temps.
La réalisation de logiciels propriétaires ne participe pas à notre communauté, mais ses développeurs souhaitent souvent une aide de notre part. Les utilisateurs de logiciels libres peuvent offrir des encouragements pour l'égo des développeurs de logiciels libres -- reconnaissance et gratitude -- mais ils peuvent être tentés lorsqu'une entreprise leur dit : «Laissez-nous juste placer votre logiciel dans notre programme propriétaire et il sera utilisé par des milliers de gens !» La tentation peut être forte, mais à long terme, nous nous sentons tous mieux si nous y avons résisté.
Il est plus difficile de reconnaître les pressions et tentations quand elles viennent indirectement, au travers d'organisations pour les logiciels libres qui ont adopté une politique satisfaisant aux logiciels propriétaires. Le Consortium X ( et son successeur l'Open Group ) en sont un exemple : fondé par des sociétés qui font des logiciels propriétaires, ils se sont efforcés de persuader les programmeurs de ne pas utiliser de copyleft pendant des décennies. Maintenant que l'Open Group a fait de X11R6.4 un logiciel propriétaire, ceux d'entre nous qui ont résisté à cette pression sont heureux de l'avoir fait.
[ En septembre 1998, plusieurs mois après que X11R6.4 ait été distribué sous une licence non-libre, l'Open Group a revu sa décision et l'a redistribué sous la même licence de logiciel libre non copylefté que X11R6.3. Merci, l'Open Group ; mais ce revirement ultérieur n'infirme pas les conclusions que nous avions tirées du fait que l'ajout de restrictions était possible. ]
Pour parler pragmatiquement, avoir une vision à plus long terme affermira votre volonté de résister à cette pression. Si vous concentrez votre attention sur la liberté et la communauté que vous pouvez bâtir en restant ferme, vous trouverez la force de le faire. «Restez debout pour quelque chose ou vous tomberez pour rien».
Et si des personnes cyniques ridiculisent la liberté, la communauté... si des «réalistes forcenés» disent que le profit est le seul idéal... ignorez-les et utilisez le copyleft tout de même.