Comment s’y retrouver dans les licences de logiciels libres ?
Les licences de logiciels libres définissent les droits et obligations liés à l’utilisation, la modification et la distribution du code. On distingue les licences permissives (MIT, BSD, Apache) qui imposent peu de conditions, des licences protectives (GPL, AGPL) qui imposent le partage à l’identique (copyleft). Le choix de la licence détermine la compatibilité, la réutilisation et le modèle d’affaires possible pour un projet.
La licence de logiciel libre est une notice légale qui permet de redonner des libertés à l’utilisateur d’un logiciel qui lui sont enlevées par les lois sur le droit d’auteur. Au Canada, le code source d’un logiciel est considéré comme une œuvre littéraire selon le droit commun et le Code civil du Québec.
🌘 Les quatre libertés
Peu importe la licence de logiciel libre choisie, les quatre libertés fondamentales définies par Richard Stallman et la Free Software Foundation demeurent :
- La liberté d’exécution
- La liberté d’étudier le fonctionnement
- La liberté de distribuer des copies
- La liberté de distribuer les modifications du code
🌘 Pourquoi cette présentation ? Le spaghetti des licences

🌘 Licences permissives
Les licences permissives présentent le moins de conditions à l’utilisateur :
- Ne requièrent que la reconnaissance du travail des auteurs originaux
- Permettent l’intégration du code à une application privative
- Sont compatibles avec les licences moins permissives
- Peuvent restreindre l’accès et l’utilisation des contributions futures
Les licences de ce type les plus connues sont :
- BSD
- Apache Licence
- MIT (X11)
🌘 Utilisation commerciale
Toutes les licences de logiciels libres permettent une utilisation commerciale des logiciels : c’est la liberté d’exécution. En aucun cas, une entreprise ne peut être empêchée d’exécuter un logiciel libre, y compris pour en tirer un profit.
De plus, la majorité des licences de logiciels libres permettent la vente des logiciels. Cependant cette condition ne peut être garantie dans tous les cas.
🌘 Licences protectives
À l’opposé des licences permissives, les licences protectives laissent moins de liberté à l’utilisateur au niveau de la distribution des copies et des modifications : elles doivent être faites avec la même licence que le logiciel d’origine, ou une licence protective compatible. Il n’est donc pas possible d’inclure leur code dans des logiciels qui ne sont pas distribués avec une telle licence.
Les licences de ce type les plus populaires sont :
- General Public Licence (GPL)
- Affero General Public Licence (AGPL)
La licence AGPL généralise la licence GPL aux logiciels utilisés sur un réseau en tant que services web. Tout utilisateur du service peut ainsi voir les quatre libertés respectées.
🌘 Notion de copyleft
La notion de copyleft est le concept légal derrière les licences protectives. Ce concept de partage à l’identique permet de s’assurer que les versions futures du logiciel seront aussi libres.
Le copyleft faible permet à un autre logiciel d’être lié dynamiquement à une composante sous licence libre sans devoir lui-même inclure cette licence. Elle est utilisée pour les librairies de fonctions. Les licences de ce type les plus populaires sont :
- Lesser General Public Licence (LGPL)
- Eclipse Public Licence (EPL)
- Mozilla Public Licence (MPL)
🌘 Éviter le copyleft de la GPL
Il est possible de contourner le copyleft d’une licence GPL :
- exposition sous forme de service web
- séquence d’applications appelées en ligne de commande
La communication est alors abstraite et il n’y a aucun lien direct entre les logiciels. La licence AGPL prévient ceci dans le cadre d’un service web.
🌘 Compatibilité des licences
La compatibilité entre les licences permet l’inclusion du code d’un logiciel dans le code d’un autre logiciel, et de conserver la licence de ce dernier. La compatibilité va en général dans un seul sens : des licences permissives vers les licences protectives.
🌘 Exemple de la LiLiQ
La LiLiQ (Licence Libre du Québec) se décline en trois versions :
- LiLiQ-P-1.1 (permissive) : permet de sous-licencier sous une autre licence libre approuvée ou certifiée par la Free Software Foundation ou l’Open Source Initiative.
- LiLiQ-R-1.1 (réciprocité) : le licencié doit offrir une concession selon les termes de la présente licence pour tout logiciel modifié qu’il distribue. Est considérée comme compatible toute licence libre dont le niveau de réciprocité est comparable ou supérieur.
- LiLiQ-R±1.1 (réciprocité forte) : similaire à la R-1.1, mais s’applique à tout logiciel modifié ou dérivé qu’il distribue.
Le site web Libraries.io permet de valider la compatibilité des licences des différents logiciels utilisés dans un projet.
🌘 Licences multiples
Les licences multiples sont souvent utilisées comme modèle d’affaires. Une licence libre est attribuée à une version communautaire du logiciel, alors qu’une licence privative est associée à une version pour entreprise pouvant posséder des caractéristiques supplémentaires. Pour pouvoir utiliser ce modèle, il faut être l’auteur original du logiciel, car seul le détenteur du droit d’auteur peut attribuer plusieurs licences.
🌘 Licences libres inappropriées au logiciel libre
Certaines licences peuvent être utilisées pour définir les droits associés à un logiciel, mais peuvent représenter un choix peu pratique. On peut classer ces licences dans deux catégories :
- Licences redondantes : sont essentiellement identiques aux licences généralement reconnues.
- Licences artistiques : ne tiennent pas compte de la nature compilable et exécutable du code logiciel.
🌘 Creative Commons
Les licences Creative Commons sont les plus populaires des licences artistiques. Elles ont révolutionné la conception du droit d’auteur en le décomposant en quatre composantes principales :
- le droit d’attribution
- le droit de modification
- le droit de partage des modifications
- le droit d’utilisation commercial
🌘 Enjeux du Creative Commons
Les licences Creative Commons ne reconnaissent pas le droit à l’exécution dans tout contexte, notamment par la clause optionnelle d’usage non commercial. De plus, il n’y a aucune nécessité de fournir le code source avec le programme compilé (de la même façon qu’un musicien n’a pas à fournir les instruments d’une pièce enregistrée).
🌘 Avantage du Creative Commons
Un avantage de ces licences par contre est de reconnaître le droit moral, une notion propre au Code civil du Québec :
Les droits moraux incluent trois droits principaux, soit le droit d’attribution, le droit à l’intégrité de l’œuvre et le droit d’association.
Un guide ou une documentation accompagnant un logiciel avec une licence de logiciel libre peuvent être publiés avec Creative Commons.
🌘 Conclusion
Dans le choix d’une licence :
- Choisis la licence la plus populaire qui réponde à tes besoins. Évite de créer ta propre licence à tout prix.
- Tiens compte de la compatibilité des licences lors de la création de projets en logiciel libre.
- Préfère le niveau de protection qui favorise l’avancement du logiciel libre.