URL: https://linuxfr.org/users/zenitram/journaux/mon-evolution-vis-a-vis-du-copyleft Title: Mon évolution vis à vis du copyleft Authors: Zenitram Date: 2013年03月24日T11:42:48+01:00 License: CC By-SA Tags: gpl, copyleft, sensibilisation, juridique, richard_stallman, licence et bsd Score: 73 Suite à une [demande de journal sur ce sujet](http://linuxfr.org/news/dchars-pour-lire-ecrire-et-modifier-des-caracteres-unicodes-complexes#comment-1439755) lors d'une discussion sur le choix de licence libre, je m'y mets : je vais tenter une explication sur pourquoi j'ai peu à peu changé ma vision vis à vis du copyleft, pour finalement l'abandonner (autant donner la conclusion tout de suite, pour éviter les déçus), et ce en tentant d'éviter les trolls (ce qui est difficile sur ce sujet, tant les positions entre les deux "camps" sont dures). Commençons par ma position initiale : disons-le crûment, je n'ai jamais fait de croisade libriste "tuons le proprio", je voulais que mon code _à moi_ soit toujours visible à celui qui reçoit (rappel : le libre ne s’intéresse aucunement au développeur, il s’intéresse à celui qui reçoit) mon projet ou une de ses versions modifiées, réutilisable, sans faire de la "vente liée" à demander une licence précise sur un projet qui n'était pas à moi, et puis, non, je n'ai rien à cacher, je fais du code crade et c'est comme ça. Donc la GPL, version 2 à l'époque, m'allait plutôt bien pour des programmes entiers (une ligne de commande, une interface graphique), mais pas pour une bibliothèque, comme RMS milite aujourd'hui : c'est qu'une question technique d'interface, la GPL n'oblige pas à ce que toute la distro soit compatible GPL, la distro peut mélanger du code GPL et proprio, donc je ne vois pas pourquoi je forcerai un programmeur à avoir une licence précise pour pouvoir utiliser ma bibliothèque. Voila pourquoi il faut avoir un minimum de cohérence et choisir la LGPL pour les bibliothèques. Bref, voilà : je voulais que mon projet reste libre, sans discriminer, que se soit en fonction de l'âge, de la couleur de peau, du sexe, ou de de l'opinion sur le libre de la personne qui utilise mon projet (surtout si comme dans 99.99% des cas, il ne le modifie pas). Et comme ça, j'ai pu construire ma (très petite) entreprise, pour faire du développement libre. Il faut se rendre à l'évidence, le fait de ne pas limiter a été ce qui m'a permis d'en vivre : j'ai travaillé pour des gens libristes à fond, mais aussi des gens hermétiques au libre. Et alors ? Ils ont payé du développement libre, c'est ce qui compte, leur interdire le libre, car ils ne souhaitent pas libérer leur produit à 1 million de $ juste pour moi n'aurait fait qu'une seule chose : ils auraient donné leur argent à un produit non libre. Donc le libre a avancé (ces personnes hermétiques au libre ont payé du développement libre) car ils n'ont pas été rejetés comme de malpropres (et ces personnes n'ont en général rien contre l'idée que ce qu'ils payent soit libre, ce n'est pas leur produit, c'est du détail, pas de problèmes). J'ai eu des contrats pour tout OS, Windows, Mac, Linux, systèmes embarqués et même du Solaris. La, le libre, qui permet à n'importe qui de porter et tester sur n'importe quelle machine, sans se poser de questions sur un futur droit à diffuser le résultat si jamais ça marche, m'a aussi aidé. J'ai aussi fait des développements "proprio" sur demande, avec une facture plus importante pour ces personnes souhaitant ne pas prendre la LGPL : je ne souhaite pas contraindre une personne, je lui dis juste que si pas libre, c'est plus, je te fais payer une licence proprio. Tous ces contrats, mis bout à bout, m'ont permis de démarrer. Donc, pas de regrets sur la licence, la LGPL v2 choisie n'ayant empêché personne de me demander des évolutions et faire de la GPL ou jouer l'intégriste du libre aurait juste amené à l'échec de mon entreprise, le volume de demandes n'étant pas suffisant. Puis est arrivé la version 3 de la GPL et LGPL. J'avoue : j'ai fais le mouton, la LGPL v3 devant un simple plus par rapport à la GPL v3, c'était sexy et je me suis jeté dessus, passage de la v2 à la v3 comme ça. euh... Aïe, fallait pas. Ben oui, je travaille avec des entreprises, et donc des département juridiques. Et ils n'ont pas tous aimé. Ils ne l'ont pas dit tout de suite (je n'avais pas vraiment fait de pub sur le sujet, les gens prenaient la nouvelle version et l'intégraient chez eux sans voir cette modification), il a fallu que les entreprises se rendent compte que la (L)GPL v3 posait quelques problèmes pour qu'ils scannent tous les codes source dans leur repo. Oui, la v3 pose des problème à certaines entreprises, car elle ajoute une contrainte : le produit final doit être modifiable, on doit pouvoir modifier du code (L)GPLv3 et le faire tourner sur le produit entier (matériel compris). Je n'ai pas assez réfléchi, je n'avais pas vu que du coup, je tentais d'imposer autre chose aux gens : leur produit final doit être bidouillable, et non plus juste prendre ma partie et pouvoir la modifier. Surtout dans mon domaine, les gens n'aiment pas trop ça. Surtout avec la mode des App Store et de leur signatures, surtout avec la mode de SecureBoot, bref, oui, avec un contrôle de ce qu'il y a sur une machine, ça limite la diffusion du libre. Donc voila : trop de restrictions, moins de liberté, avec la v3, retour à la LGPLv2, en commençant à me dire qu'il y a un petit problème, quelques interdits qui se pointent comme ça entre deux versions, finalement il doit y avoir aussi quelques trucs bizarres dans le v2, peut-être... Et puis, au fur et à mesure de mon travail et des demandes de clarification sur ce qu'on peut faire avec ma licence, je me suis rendu compte qu'il y a quelques soucis. Genre des [contraintes sur celui qui reçoit le projet](http://en.wikipedia.org/wiki/GPL_linking_exception#The_GNU_Lesser_General_Public_License) même avec la v2, des trucs vraiment pas clairs sur les links, les hooks, etc. C'est compliqué, ça me gave, je donne des droits "illimités" à ceux qui posent la question, comme ça c'est réglé. Mmm... Mais alors, pourquoi faire ça, de manière discrétionnaire ? Finalement, qu'est-ce que m'apporte le copyleft ? Qu'est-ce que m'a apporté le fait que je force les autres à diffuser leurs modifs? Les patchs, on me les envoie dans tous les cas car le but est simplement de ne pas se faire chier à les maintenir. Les produits, je ne les achète pas, donc je ne peux pas recevoir les modifs comme ça, et puis, je m'en fous. Et finalement, pourquoi forcer ? Ma vision du libre est que c'est le meilleur moyen, donc finalement, pourquoi forcer si c'est le meilleur moyen? Linux est plus connu que BSD, oui, mais est-ce à cause de la licence ou est-ce plutôt à cause du procès sur BSD et que Linus est doué pour gérer la technique et les gens? En parallèle, je me suis posé la question de savoir pourquoi forcer les autres à participer de manière libre si on croit que le libre est mieux : si il est réellement mieux, ben... Les gens le feront d'eux-même sans forcer, non ? On parle de libre, de liberté, mais finalement dans le copyleft, on parle surtout d'interdits, c'est un peu incohérent. Je crois que le libre est mieux, alors pourquoi est-ce que j'interdis le non-libre? Et puis, c'est moi qui suis doué, non ? Donc que le code modifié soit libre ou pas, je m'en fous un peu finalement, l'idée est qu'on vienne me voir car je suis compétent, et la licence du code modifié n'a finalement pas d'importance sur ça (dans tous les cas, c'est un autre qui l'a fait). Il reste une façon de faire du copyleft : dual-licensing. Mais là, c'est clair : le libre n'est qu'une plaquette publicitaire, le copyleft est fait pour une unique chose, rendre intéressant la version non libre. Pas très croyant sur le libre là... Ça fait plaisir aux libristes (ils peuvent l'utiliser gratos du moment où leur libre est compatible GPL), mais ça montre que le libre est utilisé juste comme attrape-touriste, le business se fait sur le non-libre. Un autre petit point de détail sur les problèmes de licences : [ZFS](http://fr.wikipedia.org/wiki/en:ZFS "Définition Wikipédia"). Quel est le rapport&nbsfs;? Sa licence CDDL chiante, aussi copyleft, incompatible avec la GPL de Linux. J'ai retenu une phrase de mon admin, qui était du genre : "t'aurais pris BSD, ça serait plus simple". Ben oui, ZFS et Linux, c'est du FUSE, c'est pas bien intégré, alors que ZFS ça fait de la compression et de la dé-duplication super bien. Deux projets copyleft à la licence incompatible, bam c'est lourd. Tandis que un projet qui sait s'adapter à la merde de l'autre, ça va mieux. Je suis bien conscient que c'était bien volontaire de la part de Sun d'être incompatible Linux, mais voilà, la licence de Linux a permis à Sun de faire du libre sans qu'on puisse ré-utiliser ce libre dans Linux. La GPL, le copyleft, a fait le jeu pourri de Sun. Finalement, je me rends compte que 1/ Ça ne m'apporte rien, en tant que libriste qui ne fait pas de dual-licensing, de forcer les autres, 2/ Ça me file des emmerdes à cause de la complexité des licences copyleft, avec des limites complètement artificielles (techniques) dans ce qu'on peut faire ou pas, 3/ je dis que le libre c'est le mieux mais je fais comme le proprio, je le met en "vente liée" comme si je n'y croyais pas moi-même, 4/ ce qui m’intéresse, ce sont mes compétences. Donc voilà : je crois que le libre est mieux, je crois que je suis mieux, et donc je ne vois aucune raison d’empêcher à ce qu'on propose des modifs proprios sur mon code. La liberté, oui, sans forcer les gens à faire du libre juste pour respecter une licence. On vient vers moi car je suis compétant, pas parce que je ne laisse pas assez de choix. Plus de monde l'utilise, plus je suis visible, même si c'est proprio, mon contentement est que mon code soit utilisé. Petit aparté : je peux changer la licence comme ça de mon projet, même avec des contributions libres, car j'ai évité une bêtise. J'ai demandé un [Contributor_License_Agreement](http://fr.wikipedia.org/wiki/en:Contributor_License_Agreement "Définition Wikipédia"), ce qui me permet d'avoir une gestion simple des modifications de licence, pas comme a [souffert VLC](http://www.jbkempf.com/blog/post/2012/I-did-it). Épilogue : je n'ai pas encore changé la licence de mon plus gros projet, ça va venir prochainement, et c'est quand même un peu chiant entre les licences BSD, ISC, MIT, zlib qui disent presque la même chose mais pas pareil, je compte opter pour BSD 2-clauses car j'ai l'impression que c'est la plus connue et utilisée. La licence Apache m'aurait bien plu aussi à cause de la gestion des risques de brevets (et mon domaine en a des brevets), mais elle est aussi assez complexe et difficile à lire, donc je reste sur du simple pour le moment.

AltStyle によって変換されたページ (->オリジナル) /