En ce qui concerne les licences de logiciels open source, on distingue deux grandes catégories. Certaines licences relèvent du copyleft, tandis que d'autres sont des licences open source permissives.
Dans cet article, je vais expliquer ce qu'est l'octroi de licences open source et ses différents types.
Introduction
Une licence open source est un type de licence qui permet aux utilisateurs de consulter, modifier et partager librement le code source du logiciel. De cette façon, les utilisateurs peuvent fréquemment mettre à jour le code source et s'appuyer sur le produit original.
Selon le type de licence open source choisi, les utilisateurs peuvent ou non effectuer certaines activités avec le code, comme le vendre ou l'utiliser à des fins commerciales. De plus, il existe de nombreux types de licences open source, chacune offrant des conditions différentes selon la manière dont vous souhaitez utiliser le code source.
Il est donc important de bien comprendre le type de licence open source avant d'en tirer profit ; n'hésitez pas à lire la suite ci-dessous avant de prendre une décision.
Types de licences open source
Licences permissives
Une licence permissive, parfois appelée licence non-copyleft, autorise les utilisateurs à utiliser, modifier et partager le code source, mais les utilisateurs ont également la possibilité de modifier certaines de ces conditions lors de la redistribution, y compris pour les œuvres dérivées. Dans le domaine du logiciel, une œuvre dérivée est un logiciel basé sur un programme existant. Si l'original a été publié sous une licence permissive, un créateur peut choisir de partager son œuvre dérivée avec des conditions différentes de celles requises par la licence de l'œuvre originale.
Licences copyleft
Les licences copyleft en open source offrent à l'utilisateur du logiciel la liberté de l'auteur de modifier, d'utiliser et de redistribuer le logiciel. Cependant, elles exigent que les utilisateurs transmettent des droits spécifiques aux utilisateurs suivants en leur accordant les mêmes droits que ceux qui leur ont été initialement octroyés.
Les licences copyleft définissent comment la redistribution et les modifications du code sont autorisées, interdisant toute tentative de le rendre propriétaire ou non open source. Cela garantit que les développeurs modifiant le logiciel ont accès au code pour le mettre à jour ou même y intégrer leurs propres changements. Bien entendu, toute modification doit également être mise à disposition pour que d'autres puissent profiter de son caractère open source. C'est un détail pour les cas d'usage académiques ou de recherche, mais cela peut être un frein majeur lors du développement de logiciels commerciaux.
Pourquoi inclure une licence open source ?
Inclure une licence open source est crucial lorsque vous publiez ou partagez votre logiciel en open source. Une licence remplit plusieurs fonctions essentielles :
- Pour favoriser la collaboration et l'innovation.
Les licences open source permettent à n'importe qui de consulter, modifier et distribuer le code de votre logiciel. Cela encourage d'autres développeurs à contribuer à votre projet, à corriger des bugs et à ajouter de nouvelles fonctionnalités. Cela peut mener à un produit logiciel plus robuste et innovant.
- Pour donner plus de contrôl’et de flexibilité aux utilisateurs.
Les licences open source permettent généralement aux utilisateurs d'utiliser, de modifier et de distribuer le logiciel à n'importe quelle fin, y compris commerciale. Cela donne aux utilisateurs plus de contrôle sur leur expérience logicielle et réduit leur dépendance envers les éditeurs de logiciels propriétaires.
- Pour bâtir une communauté autour de votre logiciel.
Une licence open source peut vous aider à bâtir une communauté d'utilisateurs et de développeurs passionnés par votre logiciel. Cette communauté peut apporter du support, des retours et de nouvelles idées pour votre projet.
- Pour rendre votre logiciel plus accessible et inclusif.
Les logiciels open source sont généralement gratuits au téléchargement et à l'utilisation, et sont souvent disponibles en plusieurs langues. Cela les rend plus accessibles aux personnes du monde entier, quels que soient leurs revenus ou leur origine.
En plus de ces avantages, les licences open source peuvent aussi vous aider à :
- Éviter la violation de droits d'auteur.
Si vous distribuez votre logiciel sans licence, vous vous exposez potentiellement à des poursuites pour violation de droits d'auteur. Une licence open source accorde explicitement aux utilisateurs la permission d'utiliser, de modifier et de distribuer votre logiciel, ce qui peut vous protéger de toute responsabilité juridique.
- Attirer et fidéliser les meilleurs talents.
De nombreux développeurs talentueux sont attirés par les projets open source. En publiant votre logiciel sous une licence open source, vous pouvez rendre votre entreprise plus attractive pour de futurs employés.
- Améliorer la réputation de votre marque.
Les logiciels open source sont largement respectés par la communauté tech. En publiant votre logiciel sous une licence open source, vous démontrez votre engagement envers la collaboration et l'innovation.
Licences logicielles permissives populaires
Les licences logicielles permissives sont parmi les plus populaires. En essence, elles permettent aux utilisateurs de modifier et de redistribuer le logiciel comme bon leur semble, avec un minimum de restrictions. Voici trois des versions les plus courantes :
Licence MIT
Le Licence MIT est la licence open source la plus populaire et la plus permissive. Elle offre aux utilisateurs des libertés notables, notamment la possibilité de partager, modifier, utiliser et commercialiser librement le contenu, à condition de respecter toutes les conditions énoncées dans la licence.
Licence Apache 2.0
La licence Apache 2.0 est une licence permissive très utilisée qui permet aux utilisateurs de modifier et de redistribuer librement le logiciel, tout en garantissant que les mentions de copyright et les avis résultants sont conservés sous leur forme initiale. Cette licence open source autorise les modifications et la redistribution propriétaires, et propose des termes clairs pour que chacun comprenne ses droits lors de l'utilisation du logiciel.
Licence BSD (Berkeley Software Distribution)
GitHub vous permet de choisir entre deux licences BSD, la Licence BSD 2-Clause « Simplified », parfois appelée licence « FreeBSD » ; et la Licence BSD 3-Clause « New » ou « Revised ». La principale différence entre ces deux licences réside dans la 3e clause. Celle-ci interdit aux utilisateurs du logiciel d'utiliser le nom de l'auteur, des auteurs ou des contributeurs pour promouvoir des produits ou services.
Licence Boost Software
La Boost Software License, provient des Boost Libraries de C++ et a été approuvée par l'OSI en 2008. Cette licence est similaire aux licences MIT et BSD, à ceci près qu'elle ne nécessite pas d'attribution lors d'une redistribution sous forme binaire.
Licences open source copyleft
Les licences copyleft autorisent les utilisateurs à utiliser, modifier et partager le code source, tout en protégeant contre le changement de licence grâce à des restrictions et conditions spécifiques. Cela représente la caractéristique de réciprocité de cette licence, qui exige que le travail des utilisateurs respecte les droits originaux définis dans la licence.
Licences GNU En ce qui concerne les licences logicielles copyleft, la GPL (General Public License) est l'une des plus populaires et des plus utilisées. Cette licence open source offre aux utilisateurs la liberté de distribuer des copies et des versions modifiées d'un programme, tant qu'ils respectent certaines conditions, comme les avis de copyright, les exclusions de garantie ou toute autre licence ajoutée au programme non modifié.
En mettant un logiciel à disposition sous ce type de licence, les développeurs garantissent que d'autres ont accès à leur code source, ce qui leur permet d'apporter des améliorations et des adaptations qui profitent à la communauté. De plus, ce concept de « copyleft » garantit que chacun peut partager les mêmes libertés en collaborant sur des logiciels libres.
Mozilla Public License
Le Mozilla Public License, ou MPL, provient de la Mozilla Foundation et est également considérée comme une licence weak copyleft. La différence avec cette licence (par rapport à l'Eclipse Public License) est qu'il s'agit d'un copyleft basé sur les fichiers, ce qui signifie que code peut être combiné avec du code open source ou propriétaire.
Eclipse Public License
Le Eclipse Public License, provient de l'Eclipse Foundation et est considérée comme une licence weak copyleft. Une licence weak copyleft exige que les utilisateurs de logiciels partagent toute modification apportée au code. Cette licence a choisi de mettre en œuvre un copyleft plus souple afin de réduire les exigences plus strictes rencontrées par les utilisateurs avec les licences GNU General Public License.
Comment choisir la bonne licence pour votre projet ?
-
Si vous publiez votre projet sous une licence open source, choisissez une licence compatible avec les projets que vous utilisez.
-
Si vous souhaitez permettre à d'autres d'utiliser votre projet à des fins commerciales, choisissez une licence qui le permet.
-
Si vous voulez permettre à d'autres de modifier et de distribuer votre projet, choisissez une licence qui le permet.
-
Si vous voulez garantir que votre projet reste libre et open source, choisissez une licence copyleft.
-
Si vous hésitez sur la licence à choisir, l'Open Source Initiative publie une liste de licences populaires que vous pouvez comparer.
Choisir la bonne licence pour votre projet open source est une décision importante. En réfléchissant attentivement à vos besoins et objectifs, vous pourrez choisir une licence qui vous aidera à atteindre les résultats escomptés.
Nouvelle licence Capgo
Comment y parvenir ? En changeant ma licence.
Capgo a désormais changé de licence, passant de la MIT à un nouveau schéma de licence appelé GNU Affero General Public License V3 (AGPLv3) ou toute version ultérieure. La version Capgo peut être trouvée ici.
Capacitor-updater (le plugin) a désormais changé de licence, passant de la LGPLv3 à un nouveau schéma de licence appelé Mozilla Public License Version 2.0 (MPLv2) ou toute version ultérieure. La version Capacitor-updater peut être trouvée ici.
Ce changement ne change rien pour vous qui utilisez Capgo Cloud ou qui auto-hébergez Capgo, mais il risque de contrarier quelques entreprises qui tentaient d'utiliser mon logiciel pour me concurrencer directement sans contribuer en retour.
L'AGPL est une licence qui pose problème à Google, car il n'est pas prêt à divulguer son code closed source. Google s'oppose à l'AGPL et déclare : « Code sous licence GNU Affero General Public License (AGPL) NE DOIT PAS être utilisé chez Google ».
L'objectif de l'AGPL est de maximiser la liberté des utilisateurs et d'encourager les entreprises à contribuer à l'open source. Je suis une application autonome orientée utilisateur. Je ne suis ni une bibliothèque, ni une partie d'un projet plus vaste. Je ne cherche pas les dons de Google, nous sommes donc ravis d'être sous licence AGPL. C'est la licence idéale pour Capgo.
Conclusion
De nombreux facteurs entrent en compte lors du choix d'une licence open source. Pourtant, certains choix sont très populaires au sein de la communauté des développeurs. Les licences permissives courantes incluent la licence MIT, la licence Apache et la licence BSD. Parmi les licences copyleft classiques, on trouve la GNU General Public License et la Mozilla Public License.
Continuer après « Comprendre les licences open source »
Si vous utilisez Comprendre les licences de logiciels open source pour planifier la livraison de live update, connectez-l’à Capgo Live Updates pour le workflow produit dans Capgo Live Updates, Aperçu pour les détails d'implémentation dans Vue d'ensemble, Fonctionnalités pour le détail d’implémentation dans Fonctionnalités, Comportement de mise à jour pour les détails d'implémentation dans Update Behavior, et Types de mise à jour pour les détails d'implémentation dans Update Types.