Utiliser les multilicences : Différence entre versions

De Veni, Vidi, Libri :: Le Wiki
 
(11 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
>>note<<
+
''Cet article répond à des questions qui furent posées sur le multilicenciement et tente de tracer rapidement les grands axes de ce mécanisme. Il est issu en grande partie de l'[[OptionLibre | étude juridique]] de Benjamain Jean portant sur la compatibilité entre contrats, et d'autres articles qui furent rédigés en leur temps sur la compatibilité entre la [[LAL]] et la [[CC-By-SA]].''
(article à l'état d'ébauche ; pour l'instant orienté licences, mais il faut bien saisir que c'est la même logique qui est à transposer à l'égard de l'ensemble des contrats annexes)
 
>><<
 
  
Voici une présentation non exhaustive des principes fondamentaux en matière de compatibilité entre licences libres.
+
Le multi-, ou dual-, licenciement est l'une des solutions fréquemment avancées pour résoudre les conflits absurdes, et abscons, d'incompatibilités qui surgissent de toute part au sein des communautés du Libre (des licences copyleft identiques dans leur effet, le sont à tel point qu'elles en deviennent incompatibles).
La réflexion s'articule en deux points :
 
  
* Est-ce que les portées des licences en question se superposent ?
+
== Comment ça marche ? ==
* Si oui, est-il possible de remplir simultanément les obligations des deux licences ?
 
  
== La portée des licences ==
+
Contrairement à ce que beaucoup semblent croire, le multilicenciement se trouve être une technique simple et efficace. Il consiste pour le(s) titulaire(s) des droits à consentir plusieurs licences non exclusives sur une même œuvre : technique habituelle au sein des licences classiques que rien n'interdit de transposer aux licences FLOS, afin de les cumuler ou de les rendre alternatives.
  
Les licences libres, et notamment la [FSF], sont attachées à la reconnaissance d'un domaine privé inviolable, véritable « tour d'ivoire » dans laquelle chacun est libre de faire ce qu'il entend. Néanmoins cette consécration, combinée aux possibilités apportées par les évolutions technologiques, crée une faille aux profits des licenciés : il s'agit des entreprises choisissant d'offrir non pas un logiciel, mais le service qui en serait issu<ref>notamment dans le cadre d'architectures de type SOA (Service Oriented Architecture).</ref>.
+
== À quoi ça sert ? ==
  
=== La sortie de la sphère privée ===
+
Les droits conférés par chaque licence s'ajoutent au profit du licencié, celui-ci pouvant utiliser ses droits en conformité à l'une ou l'autre des licences. Plusieurs avantages peuvent être mis en avant :
  
Pour la majeure partie des licences libres, l'élément déclencheur, qui oblige le licencié envers les contraintes issues de la licence, est la distribution<ref>Cette notion n'est pas définie tel quelle en droit français, mais d'autres sources de droit l'emploient, telles l'OMPI et la directive EUCD ([http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32001L0029:FR:HTML Article 4, 1]). Pour cette dernière, « les États membres prévoient pour les auteurs le droit exclusif d'autoriser ou d'interdire toute forme de distribution au public, par la vente ou autrement, de l'original de leurs œuvres ou de copie de celles-ci ».</ref>.
+
# Le contenu sous licence est dès lors compatible avec la totalité des licences qui lui sont adjointes<ref>Le contenu d'une œuvre sous triple licence peut ainsi valablement être repris et inséré dans une œuvre sous licence simple, double ou triple.</ref>, auxquelles se rajoutent les licences avec lesquelles elles sont déjà elles-mêmes compatibles. Une faille existe cependant : si des contributions lui sont apportées sous l'une seule des licences, alors l'œuvre nouvelle devra limiter sa licence à cette seule licence<ref>Ainsi, en cas de licence multiple, la distribution du logiciel doit se faire conformément aux termes  de l'une au moins d'entre elles.</ref>. Ainsi, un tel mécanisme n'est viable qu'autant que l'ensemble des contributions se fasse sous licence multiple, quitte à ce que le donneur de licence s'inspire d'éventuelles contributions ultérieures pour les réécrire lui-même dans son œuvre. En dépit de cette relative précarité, le dispositif de multilicenciement assure cependant une meilleure compatibilité.
 +
# Le licencié dispose de beaucoup plus de droits dès lors qu'ils sont contenus dans au moins une des licences, même s'il est souvent adjoint d'une obligation et qu'il faut alors se conformer à celle-ci pour disposer du droit. En quelque sorte, le multilicenciement permet d'ajouter une liberté au licencié qui est celle du choix de la licence à laquelle il se soumet (sachant que ce choix est tout de même limité, mais de manière pragmatique).
 +
# De plus, le multilicenciement permet de limiter le copyleft global qui s'applique à l'œuvre par cela même que, le licencié pouvant utiliser tout droit compris dans l'une au moins des licences, ce sont les dispositions de la licence la plus permissive qui l'emportent<ref>Par exemple, une double licence [[GNU GPL]]/[[MPL]] n'est que copyleft standard du fait de celui de la [[MPL]] plus réduit.</ref>.
 +
# Enfin, si l'une des licences devait être annulée par une juridiction nationale, le licencié pourrait toujours revendiquer les droits conférés par l'autre<ref>Un bon exemple serait de proposer les licences [[GNU GPL]]/[[CeCILL]] ou [[BSD]]/[[CeCILL-B]], puisque les secondes sont expressément conformes au droit français.</ref>. Pour finir, cette stratégie — à laquelle certains pouvaient préférer une licence très permissive comme la licence [[BSD]] — a l'avantage de cumuler copyleft et compatibilité.
  
Ainsi, la situation est assez simple pour la plupart des œuvres « classiques » : une communication directe (par représentation) ou indirecte (par reproduction) de l'œuvre suffit à soumettre le distributeur/communiquant aux obligations de la licence. Mais la situation est différente en matière de logiciel, puisqu'il est alors possible de ne communiquer que la fonction du logiciel, sans distribuer l'objet soumis au droit d'auteur (le code objet ou le code source).
+
== Quand est-ce utile ? ==
  
Par ce biais, et puisque le droit d'utiliser le logiciel<ref>Issu des articles [http://www.celog.fr/cpi/lv1_tt2.htm#Livre1_titre2 L. 122-6 et L. 122-6-1 du CPI].</ref> est délivré totalement et sans contrepartie (c'est-à-dire sans respecter la licence), l'utilisateur d'un logiciel  soumis à une licence libre contraignante (type GNU GPL<ref>La [[GNU GPL v.3.0]] vient même préciser qu'une simple utilisation par le biais du réseau, sans transfert ni copie, n'est pas considérée comme une distribution.</ref>) peut parfaitement se dispenser de communiquer le code source du logiciel qu'il utilise en interne pour fournir les services aux utilisateurs.
+
Le multilicenciement est un remède qui peut être utilisé à bon escient par les auteurs afin de pallier les discordes entre les différentes communautés, en versant ainsi – toujours sous licences copyleft – dans divers pots communs.
  
De nombreuses critiques avaient amenées la [[FSF]] à collaborer à la conception de l'Affero GPL, et même de projeter d'inclure cette spécificité dans la [[GNU GPL v3]] — l'idée fut retirée assez rapidement<ref>À partir du deuxième draft public</ref>. Une nouvelle version de la (nouvellement GNU) AGPL vient de paraître le 19 novembre 2007.
+
Mais les doubles licences sont particulièrement intéressantes lorsqu'il s'agit de limiter par la même occasion l'une des licences : une double licence [[MPL]]/[[GNU GPL]] permet d'appliquer les deux licences, ou l'une au choix, dans les limites d'un copyleft standard. Par exemple, la double licence [[GFDL]]/[[LAL]] est un bon choix lorsque l'œuvre concernée est autre chose qu'une simple documentation de logiciel et qu'elle a vocation à être utilisée conjointement avec d'autres œuvres sous licences différentes (la [[GFDL]] disposant d'un copyleft fort, calqué sur la rédaction de la [[GNU GPL]]).
  
Enfin, trop souvent marginalisée, une licence très rigoureuse s'acquitte parfaitement de ce mode d'utilisation : il s'agit de l'[[Open Software license]] (OSL)<ref>Écrite par Lawrence Rosen, avocat américain, et l'un des fondateurs de l'[[OSI]].</ref>, qui assimile l'utilisation en réseau à une distribution<ref>Voir notamment l'article 5 qui encadre le déploiement externe : toute distribution ou communication de l'œuvre ainsi que toute mise à disposition de ces fonctionnalités via un réseau entraîne l'obligation de redistribuer les sources sous cette même licence.</ref> — la soumettant ainsi aux mêmes conséquences, dont la livraison du code source...
+
== Quand est-ce inutile ? ==
  
Voici donc le premier élément à prendre en considération pour percevoir les obligations auxquelles nous sommes contraints.
+
Par soucis de compatibilité, certains développeurs ont tendance à cumuler les licences pour un même projet. Aussi louable que soit l'intention, une simple analyse logique nous permet d'affirmer que les licences multiples ne sont véritablement utiles que si elles permettent d'associer plusieurs licences qui sont originairement incompatibles. Dans le cas contraire, la licence compatible « contenant » déjà la seconde licence, la réunion des deux ne confère ainsi aucune prérogative spéciale au licencié : la réunion d'un ensemble avec un autre qui lui est inclus est égale au premier ensemble<ref>L'exemple révélateur est le navigateur Firefox, sous [[MPL]], [[GNU LGPL]] et [[GNU GPL]]. Si la licence [[MPL]]/[[LGPL]] est sans conteste utile, l'ajout de la licence [[GNU GPL]] semble l'être beaucoup moins puisque tout code sous [[GNU LGPL]] peut expressément être licencié sous [[GNU GPL]].</ref>.
  
=== La portée d'une licence et ses limites ===
+
L'atout des licences multiples est en revanche indéniable lorsqu'il s'applique à plusieurs licences incompatibles tendant au même but. Les communautés peuvent alors ajouter leur force pour développer un logiciel en commun, le travail de l'une profitant à l'autre : c'est en quelque sorte un retour aux sources du libre, en construisant des ponts pour relier deux communautés qui se sont éloignées.
  
Lorsque l'on parle de la portée d'une licence (ou aussi de « copyleft fort », « copyleft limité », « weak copyleft », etc.), on pense systématiquement aux licences copyleft, puisqu'il s'agit des licences les plus contraignantes pour les licenciés.
+
== Ce mécanisme concerne-t-il uniquement les licences libres ? ==
  
Néanmoins, la portée de la licence est en réalité l'étendue délimitant l'œuvre, ou les œuvres, qui sera (seront) soumise(s) aux contraintes de la licence. Le caractère « copyleft » figure donc parmi ces contraintes (il s'agit plus précisément de l'obligation de redistribuer sous la même licence), et ne doit ainsi pas être confondu avec sa portée<ref>Ceci d'autant que la portée globale de la licence peut être supérieure à celle de son seul copyleft.</ref>. Ainsi, certaines licences permissives, comme la licence Apache, ont une portée étendue<ref>En l'espèce, notamment en ce qui concerne les licences concédées sur les brevets.</ref> sans pour autant être copyleft.
+
Non, bien sûr : différent, mais impossible à passer sous silence, le cumul de licences FLOS et non-FLOS tend à se multiplier grâce au succès remporté par quelques grandes entreprises conceptrices de logiciels. La technique consiste à allier les atouts des licences libres pour permettre le développement des logiciels, tout en proposant aussi des licences commerciales à ceux qui désirent dépasser les limitations et obligations des licences FLOS<ref>Raisons pour lesquelles les licences FLOS choisies sont assez contraignantes pour les licenciés.</ref>. Trois sociétés<ref>Liste non exhaustive, nous pourrions tout autant citer Digium, OSAF, MandrakeSoft, Technical Pursuit, etc.</ref> illustrent tout à fait le propos : MySQL AB, Sleepycat Software Inc. et TrollTech AS. MySQL AB<ref>Qui s'autoproclame la « Base de données open-source la plus célèbre au monde », http://www-fr.mysql.com/.</ref> est récemment passée de la [[GNU LGPL]] à la [[GNU GPL]]. Loin d'être neutre, ce changement de licence revient à imposer à tout programme auparavant non soumis à la [[GNU LGPL]] de se soumettre à la [[GNU GPL]] s'il désire bénéficier des versions postérieures. Dès lors, les titulaires de logiciels propriétaires acquirent des licences commerciales pour échapper à la réciprocité. D'un autre côté, la licence envisage une exception spéciale à la [[GNU GPL]] : l'[[exception FLOSS]] (Free Libre Open Source Softwares), qui permet aux autres logiciels FLOS (les licences sont listées dans l'exception) de se lier au programme sans avoir à passer en [[GNU GPL]], ce qui aurait posé problème dans le cas de licences incompatibles. Bénéficiant d'un produit libre, la communauté FLOS permet le débogage du logiciel, ainsi que la soumission de contributions, intégralement réécrites par MySQL. Titulaire de l'ensemble des droits sur son œuvre, elle peut conserver la double licence, et de cette façon les partisans de systèmes propriétaires bénéficient, mais pas indûment — car sous forme de licence commerciale, permettant de financer d'autres contributions — d'un logiciel performant.  
  
Cette portée diffère la plupart du temps entre chaque licence, voire entre chaque législation lorsqu'elle renvoie aux limites traditionnelles du droit d'auteur dans un pays concerné. Pour l'exemple, en France, l'œuvre composite<ref>Elle est définie comme « l'œuvre nouvelle à laquelle est incorporée une œuvre préexistante sans la collaboration de l'auteur de cette dernière », « l'œuvre composite est la propriété de l'auteur qui l'a réalisée, sous réserve des droits de l'auteur de l'œuvre préexistante ». L'un des critères déterminants est la dépendance à une œuvre originaire, sans emporter pour autant modification de celle-ci.</ref> et l'œuvre dérivée<ref>La notion légale se déduit de son contenu : « Les auteurs de traductions, d'adaptations, transformations ou arrangements des œuvres de l'esprit jouissent de la protection instituée par le présent code sans préjudice des droits de l'auteur de l'œuvre originale. Il en est de même des auteurs d'anthologies ou de recueils d'œuvres ou de données diverses, tels que les bases de données, qui, par le choix ou la disposition des matières,  constituent des créations intellectuelles ». L'apport du second auteur est différent : il crée ici une nouvelle œuvre en s'appuyant sur l'ancienne. Dans le cas des logiciels FLOS, ce serait notamment une modification du code source d'un logiciel — pour l'adapter ou corriger des erreurs  par exemple — ou une traduction du code en un autre langage.</ref> délimitent l'étendue du contrôle que possède un auteur sur son œuvre.
+
Sleepycat Software Inc.<ref>Base de données étant "''the leading open source developer database in the world''", http://www.sleepycat.com/.</ref> développe pour sa part BerkleyDB ([[BSB]]), sous une licence spécifique qui ne permet son usage libre que si les logiciels l'utilisant distribuent aussi leur code source<ref>Voir [http://www.sleepycat.com/company/licensing.html la page] concernant la politique de Sleepycat en matière de licence.</ref>. L'utilisation de la double licence [[GNU GPL]]/[[QPL]] pour la bibliothèque TrollTech AS ne nécessite pas plus de développement, le fonctionnement étant toujours le même<ref>Voir [http://www.trolltech.com/products/qt/licenses/licensing/licensingoverview la page] concernant la politique de TrollTech AS en matière de licence.</ref>. Dans les deux cas, l'alternative reste de souscrire à une licence commerciale afin de s'affranchir des conditions de la licence libre dans un cadre propriétaire.
  
Pour sa part, les notions-clés pour la [[GNU GPL]] étaient jusqu'à il y a peu assez atypiques<ref>Pour la [[GNU GPL v2]], étaient soumises les œuvres basées sur, ou constituant un tout avec le logiciel ([[http://www.gnu.org/licenses/old-licenses/gpl-2.0.html#SEC1 article 2]]).</ref>, mais maintenant plus traditionnelles<ref>Pour exemple, la [[GNU GPL V3]] définit la propagation d'une œuvre comme tout acte soumis à autorisation de l'auteur, à l'exception de la sphère privée reconnue à l'utilisateur. Néanmoins l'Article 5 conserve une appréhension extensive de la compilation au point qu'un programme global pourrait bien être soumis à la GNU GPL de l'un de ses sous-ensembles...</ref>.
+
== Des exemples ? ==
  
Ainsi, s'il est certain que deux licences « contraignantes » voient leurs obligations se superposer lorsque leur code est mêlé, il est plus difficile de faire le point lorsqu'il s'agit de logiciels relativement indépendants mais fonctionnant de concert. Lorsque deux licences voient leur portée se superposer ou se confondre, il est nécessaire de rechercher l'existence d'une compatibilité entre ces diverses licences.
+
Les exemples sont nombreux dans l'histoire du Libre, et quelques-uns seulement furent cités, mais il est possible de citer – à notre échelle – la double licence que nous fûmes amenés à conseiller.
  
== La compatibilité entre licences qui se superposent ==
+
[[DéKiBulle]] est un logiciel « modulaire » en ce qu'il emprunte ces fonctionnalités à diverses autres briques logicielles, toutes sous des licences différentes ([[Apache]], [[GNU GPL]], etc.). Ces licences étaient manifestement incompatibles et aucune issue ne pouvait ressortir des contrats. La première phase fut donc de contacter l'auteur de la brique sous GNU GPL afin de lui proposer une exception sur son logiciel, ou une nouvelle licence avec un copyleft moins fort. La seconde étape fut de trouver une licence qui permet de maximiser la réutilisation, la distribution, et les contributions au logiciel libéré. Une licence avec un copyleft standard semblait donc nécessaire. Les possibilités sont alors multiples, et il fallait faire un choix : afin d'ouvrir un maximum de portes et d'en fermer un minimum, nous choisîmes la double licence [[CeCILL-C]]/[[GNU LGPL]]. La [[LGPL]] était un passage obligé pour ouvrir à un maximum de contributions, la [[CeCILL-C]] était l'assurance d'une licence très facilement compréhensible (elle est très inspirée de la MPL), un copyleft parfaitement défini, et la certitude d'une conformité à la loi française.
  
Dans une situation de chevauchement des licences, une compatibilité doit être recherchée, puisque l'on aussi bien contraint à l'une qu'à l'autre des licences. Deux compatibilités existent, la première se trouve à la lecture des licences, et la seconde à leur examen.
+
Dans ce cas précis, le choix d'une double licence [[CeCILL-C]]/[[GNU GPL]] aurait été sans conséquence en matière de droits accordés à l'utilisateur : la CeCILL-C étant la plus permissive des licences évoquées, elle définit la portée du copyleft aux dépends de la GNU GPL. L'utilisation de la GNU LGPL en lieu et place de la GNU GPL assure toutefois la compatibilité avec une licence supplémentaire – [[GNU LGPL]]/[[GNU GPL]]/[[CeCILL-C]]/[[CeCILL]].
  
=== La compatibilité expresse ===
+
Pour conclure, le choix d'une double licence peut être nécessaire dans certaines situations, comme il peut être volontaire dans le but d'ouvrir un maximum de potentialités à son œuvre.
  
De plus en plus les rédacteurs de licences libres viennent à prendre conscience que leur licence n'est pas la seule, ni même l'unique licence libre légitime. Fleurissent alors les clauses de compatibilité expresses qui permettent de relicencier l'œuvre soumise sous plusieurs autres licences.
+
== N'y a t'il pas d'autres solutions ? ==
  
Le relicenciement peut être inconditionné, ou soumis à la présence d'autres licences<ref>Comme l'[[EUPL]] : « Clause de compatibilité : Si le Licencié distribue ou communique des Œuvres Dérivées ou des copies de celles-ci basées à la fois sur l'Œuvre Originale et sur une autre œuvre concédée en licence selon les termes d'une Licence Compatible, la Distribution et/ou Communication peut se faire sous les termes de cette Licence Compatible ».</ref>.
+
Pour l'instant : non. En choisissant une licence copyleft, l'auteur peut être certain que la licence sera incompatible avec une autre ; en choisissant une licence permissive, l'auteur s'assure d'une relative compatibilité, mais sans que soit pour autant garantie la liberté de son œuvre<ref>Une idée, certainement à creuser, serait de considérer une [[Licence permissive envers les copylefts]].</ref>
 
 
'''Quelques exemples de compatibilité'''
 
* Les plus narcissiques : les licences [[GNU]], compatibles, entre elles bien sûr.
 
* La moins frivole : la licence [[EUPL]] avec une compatibilité envers les : [[GNU GPL]], [[OSL]], [[CPL]], [[EPL]], et [[CeCILL]].
 
 
 
=== La compatibilité logique ===
 
 
 
Deux principes gouvernent la compatibilité entre licences, et contrats :
 
* On ne peut donner plus de droits que l'on en possède (ainsi, une personne qui passe du statut de licencié à celui de concédant, tire ses droits de la première licence et est donc limité par celle-ci) ;
 
* Sauf dans les cas de licence copyleft, il est toujours possible de ne conférer qu'une partie des droits dont on dispose.
 
 
 
D'un point de vue juridique, la condition de compatibilité est atteinte si l'ensemble des droits accordés par la licence absorbante B est inclus dans l'ensemble des droits conférés par la licence compatible A et que l'ensemble des obligations imposées par la licence compatible A est inclus dans l'ensemble des obligations imposées par la licence absorbante B.
 
 
 
Licence A compatible avec la licence B :
 
 
 
<center>[[Image:CompatibiliteLicences.png|Image compatibilité licences]]</center>
 
 
 
Avec ces idées en tête, il suffit de lire attentivement les diverses licences pour retrouver les divergences et les accointances.
 
 
 
 
 
Voici pour tout ce qui peut-être dit sur la compatibilité, en générale, entre licences libres, mais aussi vis-à-vis de tout autre contrat ou licence.
 
  
  
 
{{Références|colonnes = 2}}
 
{{Références|colonnes = 2}}

Version actuelle datée du 16 décembre 2007 à 13:52

Cet article répond à des questions qui furent posées sur le multilicenciement et tente de tracer rapidement les grands axes de ce mécanisme. Il est issu en grande partie de l' étude juridique de Benjamain Jean portant sur la compatibilité entre contrats, et d'autres articles qui furent rédigés en leur temps sur la compatibilité entre la LAL et la CC-By-SA.

Le multi-, ou dual-, licenciement est l'une des solutions fréquemment avancées pour résoudre les conflits absurdes, et abscons, d'incompatibilités qui surgissent de toute part au sein des communautés du Libre (des licences copyleft identiques dans leur effet, le sont à tel point qu'elles en deviennent incompatibles).

Comment ça marche ?

Contrairement à ce que beaucoup semblent croire, le multilicenciement se trouve être une technique simple et efficace. Il consiste pour le(s) titulaire(s) des droits à consentir plusieurs licences non exclusives sur une même œuvre : technique habituelle au sein des licences classiques que rien n'interdit de transposer aux licences FLOS, afin de les cumuler ou de les rendre alternatives.

À quoi ça sert ?

Les droits conférés par chaque licence s'ajoutent au profit du licencié, celui-ci pouvant utiliser ses droits en conformité à l'une ou l'autre des licences. Plusieurs avantages peuvent être mis en avant :

  1. Le contenu sous licence est dès lors compatible avec la totalité des licences qui lui sont adjointes[1], auxquelles se rajoutent les licences avec lesquelles elles sont déjà elles-mêmes compatibles. Une faille existe cependant : si des contributions lui sont apportées sous l'une seule des licences, alors l'œuvre nouvelle devra limiter sa licence à cette seule licence[2]. Ainsi, un tel mécanisme n'est viable qu'autant que l'ensemble des contributions se fasse sous licence multiple, quitte à ce que le donneur de licence s'inspire d'éventuelles contributions ultérieures pour les réécrire lui-même dans son œuvre. En dépit de cette relative précarité, le dispositif de multilicenciement assure cependant une meilleure compatibilité.
  2. Le licencié dispose de beaucoup plus de droits dès lors qu'ils sont contenus dans au moins une des licences, même s'il est souvent adjoint d'une obligation et qu'il faut alors se conformer à celle-ci pour disposer du droit. En quelque sorte, le multilicenciement permet d'ajouter une liberté au licencié qui est celle du choix de la licence à laquelle il se soumet (sachant que ce choix est tout de même limité, mais de manière pragmatique).
  3. De plus, le multilicenciement permet de limiter le copyleft global qui s'applique à l'œuvre par cela même que, le licencié pouvant utiliser tout droit compris dans l'une au moins des licences, ce sont les dispositions de la licence la plus permissive qui l'emportent[3].
  4. Enfin, si l'une des licences devait être annulée par une juridiction nationale, le licencié pourrait toujours revendiquer les droits conférés par l'autre[4]. Pour finir, cette stratégie — à laquelle certains pouvaient préférer une licence très permissive comme la licence BSD — a l'avantage de cumuler copyleft et compatibilité.

Quand est-ce utile ?

Le multilicenciement est un remède qui peut être utilisé à bon escient par les auteurs afin de pallier les discordes entre les différentes communautés, en versant ainsi – toujours sous licences copyleft – dans divers pots communs.

Mais les doubles licences sont particulièrement intéressantes lorsqu'il s'agit de limiter par la même occasion l'une des licences : une double licence MPL/GNU GPL permet d'appliquer les deux licences, ou l'une au choix, dans les limites d'un copyleft standard. Par exemple, la double licence GFDL/LAL est un bon choix lorsque l'œuvre concernée est autre chose qu'une simple documentation de logiciel et qu'elle a vocation à être utilisée conjointement avec d'autres œuvres sous licences différentes (la GFDL disposant d'un copyleft fort, calqué sur la rédaction de la GNU GPL).

Quand est-ce inutile ?

Par soucis de compatibilité, certains développeurs ont tendance à cumuler les licences pour un même projet. Aussi louable que soit l'intention, une simple analyse logique nous permet d'affirmer que les licences multiples ne sont véritablement utiles que si elles permettent d'associer plusieurs licences qui sont originairement incompatibles. Dans le cas contraire, la licence compatible « contenant » déjà la seconde licence, la réunion des deux ne confère ainsi aucune prérogative spéciale au licencié : la réunion d'un ensemble avec un autre qui lui est inclus est égale au premier ensemble[5].

L'atout des licences multiples est en revanche indéniable lorsqu'il s'applique à plusieurs licences incompatibles tendant au même but. Les communautés peuvent alors ajouter leur force pour développer un logiciel en commun, le travail de l'une profitant à l'autre : c'est en quelque sorte un retour aux sources du libre, en construisant des ponts pour relier deux communautés qui se sont éloignées.

Ce mécanisme concerne-t-il uniquement les licences libres ?

Non, bien sûr : différent, mais impossible à passer sous silence, le cumul de licences FLOS et non-FLOS tend à se multiplier grâce au succès remporté par quelques grandes entreprises conceptrices de logiciels. La technique consiste à allier les atouts des licences libres pour permettre le développement des logiciels, tout en proposant aussi des licences commerciales à ceux qui désirent dépasser les limitations et obligations des licences FLOS[6]. Trois sociétés[7] illustrent tout à fait le propos : MySQL AB, Sleepycat Software Inc. et TrollTech AS. MySQL AB[8] est récemment passée de la GNU LGPL à la GNU GPL. Loin d'être neutre, ce changement de licence revient à imposer à tout programme auparavant non soumis à la GNU LGPL de se soumettre à la GNU GPL s'il désire bénéficier des versions postérieures. Dès lors, les titulaires de logiciels propriétaires acquirent des licences commerciales pour échapper à la réciprocité. D'un autre côté, la licence envisage une exception spéciale à la GNU GPL : l'exception FLOSS (Free Libre Open Source Softwares), qui permet aux autres logiciels FLOS (les licences sont listées dans l'exception) de se lier au programme sans avoir à passer en GNU GPL, ce qui aurait posé problème dans le cas de licences incompatibles. Bénéficiant d'un produit libre, la communauté FLOS permet le débogage du logiciel, ainsi que la soumission de contributions, intégralement réécrites par MySQL. Titulaire de l'ensemble des droits sur son œuvre, elle peut conserver la double licence, et de cette façon les partisans de systèmes propriétaires bénéficient, mais pas indûment — car sous forme de licence commerciale, permettant de financer d'autres contributions — d'un logiciel performant.

Sleepycat Software Inc.[9] développe pour sa part BerkleyDB (BSB), sous une licence spécifique qui ne permet son usage libre que si les logiciels l'utilisant distribuent aussi leur code source[10]. L'utilisation de la double licence GNU GPL/QPL pour la bibliothèque TrollTech AS ne nécessite pas plus de développement, le fonctionnement étant toujours le même[11]. Dans les deux cas, l'alternative reste de souscrire à une licence commerciale afin de s'affranchir des conditions de la licence libre dans un cadre propriétaire.

Des exemples ?

Les exemples sont nombreux dans l'histoire du Libre, et quelques-uns seulement furent cités, mais il est possible de citer – à notre échelle – la double licence que nous fûmes amenés à conseiller.

DéKiBulle est un logiciel « modulaire » en ce qu'il emprunte ces fonctionnalités à diverses autres briques logicielles, toutes sous des licences différentes (Apache, GNU GPL, etc.). Ces licences étaient manifestement incompatibles et aucune issue ne pouvait ressortir des contrats. La première phase fut donc de contacter l'auteur de la brique sous GNU GPL afin de lui proposer une exception sur son logiciel, ou une nouvelle licence avec un copyleft moins fort. La seconde étape fut de trouver une licence qui permet de maximiser la réutilisation, la distribution, et les contributions au logiciel libéré. Une licence avec un copyleft standard semblait donc nécessaire. Les possibilités sont alors multiples, et il fallait faire un choix : afin d'ouvrir un maximum de portes et d'en fermer un minimum, nous choisîmes la double licence CeCILL-C/GNU LGPL. La LGPL était un passage obligé pour ouvrir à un maximum de contributions, la CeCILL-C était l'assurance d'une licence très facilement compréhensible (elle est très inspirée de la MPL), un copyleft parfaitement défini, et la certitude d'une conformité à la loi française.

Dans ce cas précis, le choix d'une double licence CeCILL-C/GNU GPL aurait été sans conséquence en matière de droits accordés à l'utilisateur : la CeCILL-C étant la plus permissive des licences évoquées, elle définit la portée du copyleft aux dépends de la GNU GPL. L'utilisation de la GNU LGPL en lieu et place de la GNU GPL assure toutefois la compatibilité avec une licence supplémentaire – GNU LGPL/GNU GPL/CeCILL-C/CeCILL.

Pour conclure, le choix d'une double licence peut être nécessaire dans certaines situations, comme il peut être volontaire dans le but d'ouvrir un maximum de potentialités à son œuvre.

N'y a t'il pas d'autres solutions ?

Pour l'instant : non. En choisissant une licence copyleft, l'auteur peut être certain que la licence sera incompatible avec une autre ; en choisissant une licence permissive, l'auteur s'assure d'une relative compatibilité, mais sans que soit pour autant garantie la liberté de son œuvre[12]


  1. Le contenu d'une œuvre sous triple licence peut ainsi valablement être repris et inséré dans une œuvre sous licence simple, double ou triple.
  2. Ainsi, en cas de licence multiple, la distribution du logiciel doit se faire conformément aux termes de l'une au moins d'entre elles.
  3. Par exemple, une double licence GNU GPL/MPL n'est que copyleft standard du fait de celui de la MPL plus réduit.
  4. Un bon exemple serait de proposer les licences GNU GPL/CeCILL ou BSD/CeCILL-B, puisque les secondes sont expressément conformes au droit français.
  5. L'exemple révélateur est le navigateur Firefox, sous MPL, GNU LGPL et GNU GPL. Si la licence MPL/LGPL est sans conteste utile, l'ajout de la licence GNU GPL semble l'être beaucoup moins puisque tout code sous GNU LGPL peut expressément être licencié sous GNU GPL.
  6. Raisons pour lesquelles les licences FLOS choisies sont assez contraignantes pour les licenciés.
  7. Liste non exhaustive, nous pourrions tout autant citer Digium, OSAF, MandrakeSoft, Technical Pursuit, etc.
  8. Qui s'autoproclame la « Base de données open-source la plus célèbre au monde », http://www-fr.mysql.com/.
  9. Base de données étant "the leading open source developer database in the world", http://www.sleepycat.com/.
  10. Voir la page concernant la politique de Sleepycat en matière de licence.
  11. Voir la page concernant la politique de TrollTech AS en matière de licence.
  12. Une idée, certainement à creuser, serait de considérer une Licence permissive envers les copylefts.