Termes expliqués n°3 : Les licences logicielles

closeCet article a été publié il y a 8 ans 9 mois 3 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

Vaste sujet qu’il est difficile d’aborder, parce qu’un peu moins concret que le matériel évoqué dans le premier épisode, ou le logiciel du second. En effet, tous les logiciels que nous utilisons de nos jours sont soumis à des obligations légales, et ce, que l’on paie ou pas pour les utiliser. Quels sont  donc les concepts, sous quelles formes les rencontre-t-on ?

Expliquons le principe : que vous achetiez ou téléchargiez gratuitement un logiciel, il est considéré comme une œuvre de l’esprit, et donc l’auteur dispose de droits dessus. Libre à lui de moduler ces droits, par le biais de licences d’utilisation. Les termes aujourd’hui vont donc couvrir les différentes formes de licences qu’on peut rencontrer dans le monde « virtuel ».

CLUF/EULA

End User Licence Agreement, ou Contrat de Licence Utilisateur Final, est un type de licence qu’on retrouve sur la quasi-totalité des logiciels dits propriétaires, ceux dont on a juste le droit de les utiliser. Vous savez, ces textes imbitables qui nous demandent d’accepter les termes, et qu’on ne lit jamais ? Ceux qui donnaient à Google un droit d’auteur sur tous les textes créés avec Chrome (à une époque) ? Les jeux vidéo aussi ne sont pas épargnés, d’autant plus depuis qu’ils sont dématérialisés. L’omniprésence des logiciels de gestion des éditeurs devraient vous le rappeler : vous ne possédez pas le jeu (c’est lui qui vous possède).

Bref, ces « licences » ne font souvent que vous accorder un droit d’utilisation restreint (une seule machine, et pire, parfois non transférable, comme les Windows « OEM » liés à la machine à laquelle ils sont vendus). Et le plus souvent, la société qui vous « vend » le logiciel trouve le moyen de se dédouaner de toute responsabilité en cas de problème avec le logiciel. Oui, même si vous payez.

GPL

Il faut savoir qu’aux débuts de l’informatique, il était très courant de se partager les codes sources des programmes fraîchement écrits, pour accélérer la résolution des problèmes naissants ou existants que les ordinateurs pouvaient alors résoudre (corriger des bugs, améliorer les algorithmes…). Ce n’est qu’à la fin des années 70 que la fermeture, la propriétarisation, sont apparues, à cause notamment à Microsoft (ils ne sont pas seuls, hein).

Pour que ne disparaissent pas les bienfaits du partage des sources des logiciels, et surtout se protéger d’un pillage par les sociétés qui ne repartageraient pas les améliorations/corrections, fut créé la General Public Licence, grâce à une figure emblématique encore aujourd’hui, Richard Stallman. Cette licence, par certains aspects très restrictive, amène pourtant beaucoup de bonnes choses. En effet, lorsqu’un tel logiciel est publié sous cette licence, vous pouvez :

  • utiliser le logiciel (sous entendu gratuitement)
  • analyser le logiciel
  • modifier le logiciel
  • publier vos modifications

On le voit, beaucoup de possibilités supplémentaires par rapport à un logiciel propriétaire, que vous avez à peine le droit d’utiliser. La grosse contrainte, c’est d’avoir à publier le logiciel modifié sous la même licence, y compris ses sources, et donc interdit aux logiciels propriétaires de se servir sans retour de contribution dans la masse de code disponible à tous. Ne vous y trompez pas, si aujourd’hui le Web et même les sociétés qui le dominent aujourd’hui en sont là, c’est grâce à du logiciel libre. En clair, même si les droits supplémentaires ne vous sont pas directement destinés (tout le monde n’est pas développeur), d’autres peuvent donc y contribuer et tout le monde en bénéficie.

Le plus populaire des logiciels libres ? Le noyau Linux, dont chaque nouvelle version voit plus de milles personnes, particuliers, entreprises, professionnels ou amateurs, participer à son développement, et tout ça, au bénéfice de tous, de vos smartphones (Android repose sur le noyau Linux), aux serveurs qui font tourner Internet ou les supercalculateurs du monde entier (pour le cinéma ou la recherche climatologique). Sans parler des ordinateurs embarqués dans nos voitures, et de vos bidulebox. Il est partout ce manchot. Et pour la petite histoire, j’ai moi-même publié Collect et Domohouse avec la version 3 de la licence.

LGPL

Quand on développe juste un bout de logiciel destiné à une tache bien précise (par exemple, traiter des images au format PNG), sous la forme d’une bibliothèque (rappelez vous la DLL expliquée dans l’épisode 2), destinée à être utilisée dans d’autres logiciels, la licence GPL impose que le logiciel tirant parti de cette bibliothèque DOIT lui aussi être publié sous licence GPL. Mais si pour certaines raisons on ne veut pas que ça soit le cas (pour choisir une licence plus permissive, voire dans le pire des cas, ne pas republier les sources du tout), on est coincé, soit à chercher un projet similaire plus souple, soit à réinventer la roue.

La LGPL est née pour ça : si l’esprit de la GPL est toujours présent, sur les libertés offertes et/ou obligatoires, l’intégration d’un tel code source dans un logiciel qui n’est pas « à source ouverte » n’impose pas la publication du logiciel résultant sous la même licence. C’est le cas de certaines bibliothèques utilisées au sein de jeux vidéos commerciaux.

BSD

Avant les années 80 et la GPL, les universités, Berkeley en tête, ont cherché à protéger les sources et surtout la paternité des logiciels créés par leurs chercheurs et étudiants. Et entre autres, leurs variantes d’Unix, le système d’exploitation roi de cette époque, dont Linux a hérité pas mal de concepts. La licence Berkeley Software Distribution était née. Assez permissive, elle aussi n’oblige pas à publier les travaux dérivés sous licence « open-source ».

Aujourd’hui, à part la plupart des distributions dites BSD qu l’utilisent, elle a permis à Sony de construire l’OS de sa PS3 et apparemment aussi de la PS4 en se basant sur l’une de ces distributions. Apple aussi s’en sert, le noyau Darwin de son système OS X pour ses Macs est disponible sous licence BSD.

Pour la petite histoire, la licence publique Mozilla se présente comme un mix de BSD et de GPL, pour tenter de contenter tout le monde. Les avis divergent notamment du fait que Mozilla et donc Firefox sont en fait des marques déposées, pour lesquelles il faut demander une autorisation préalable, une idée incompatible avec l’esprit libre qui anime le cœur des logiciels.

CC

Regardez bien le bas des pages du blog : mes articles sont publiés sous licence Creative Commons, en tout cas une des variantes. L’idée est d’apporter les bienfaits du logiciel libre à d’autres secteurs, ceux de la création « artistique » (pour peu que je fasse de l’art ici) : textes, graphismes, musique… Alors que dans « l’industrie », vous avez juste le droit de poser vos yeux ou vos oreilles, et qu’on vous accusera de plagiat ou de contrefaçon si vous réutilisez/vous inspirez d’un de ces travaux, les travaux disponibles sous licence Creative Commons permettent bien plus d’utilisations et de diffusions.

On dit d’ailleurs les licences Creative Commons : à plusieurs situations, plusieurs variantes, des « blocs » qu’on peut mixer pour autoriser/restreindre certains usages. Chez moi, vous êtes autorisés à copier et partager mes articles, mais aussi les modifier, les adapter pour différents supports, tant que vous n’oubliez pas d’indiquer que j’en suis l’auteur original (de la base, hein, pas du travail qui en découle) (le bloc BY), le tout sans chercher à en tirer une utilisation commerciale (le bloc NC), en publiant les travaux dérivés sous la même licence. J’ai appliqué une licence analogue (minus l’utilisation commerciale, puisque Youtube peut y appliquer des publicités) sur les vidéos sur Youtube. D’ailleurs, j’ai opté pour une musique publiée sous licence Creative Commons pour agrémenter ma partie de démineur.

Certains, comme JCFrog, ont défini une licence extra permissive, la Complete Bullshit. Une façon un peu spéciale de définir le domaine public, ou l’auteur abandonne tous ses droits sur ses créations 🙂 Dans tous les cas, le site Creative Commons vous guide pour choisir les bons blocs de licence en fonction de vos envies ou besoins.

Et toutes les autres

J’aurais encore pu parler des licences Apache, MIT, et de toutes celles qui sont plus ou moins spécifiques, l’article aurait été bien plus long sans nécessairement rester clair pour tout le monde, parce que souvent, les différences sont bien plus juridiques que philosophiques.

Une seule chose est sure : la plupart des licences présentées ici se cantonnent à protéger du logiciel. Les services populaires aujourd’hui, principalement tous américains, s’ils reposent sur certains logiciels libres (et même en développent, à l’image de Facebook qui publie et maintient HHVM, que je vous ai rapidement présenté sur ce blog), masquent joyeusement leur utilisation derrière des conditions d’utilisation à peine plus claires. Avec une conséquence importante : vous perdez le contrôle sur beaucoup trop de choses. Mais les alternatives sont rares, et pas toujours aussi abouties.

MAJ du 3/05/2017 : La Linux Foundation a annoncé publier un guide pour aider les développeurs à choisir la licence adaptée à leurs besoins ou leurs envie pour leur projet. C’est en anglais uniquement pour l’instant, donc courage pour la lecture.

2 Commentaires
Le plus ancien
Le plus récent
Commentaires en ligne
Afficher tous les commentaires
Gamernew
Gamernew
23/07/2015 19:24

Je trouve ça sympa tes articles sur les termes expliquer. J’apprends des choses que je ne connaissais même pas ou mal. En tout cas, merci.