Trouver la bonne licence pour prendre en charge uniquement la communauté open source. GPLv3 trop stricte, LGPLv3 trop permissif

Jan 03 2021

J'ai créé une bibliothèque open source ( https://github.com/pitschr/knx-link) conçu pour être utilisé par d'autres projets open source; pas par les utilisateurs finaux. Actuellement, il est sous licence GPLv3.

Mon objectif principal est que chaque projet qui utilise ma bibliothèque doit être open source . Pour moi personnellement, peu importe si l'autre projet qui utilise ma bibliothèque est sous licence par exemple Apache-2.0 ou MIT tant que le projet utilisé par l'utilisateur final est open source sur par exemple GitHub.

Sur la base de différentes licences, je vois que:

  • LGPLv3 ne serait pas le bon choix car il permet d'être lié par un logiciel propriétaire
  • La GPLv3 me semble trop stricte, car elle oblige également d'autres logiciels à être licenciés en tant que GPLv3. De plus, la GPLv3 ne permet pas d'être utilisée par un projet sous licence Apache-2.0 / MIT
  • Les licences Apache-2.0 et MIT ne semblent pas être une option pour moi car elles peuvent être utilisées directement par des logiciels propriétaires

Je n'ai pas trouvé la bonne licence pour mon objectif. Encore une fois, il est tout à fait correct d'utiliser ma bibliothèque tant que le projet / logiciel de l'utilisateur final lui-même est open source sans exiger qu'il ait également besoin d'une licence sous GPLv3 ? Mon objectif principal est de soutenir uniquement la communauté open source!

Suis-je seul avec l'idée? Quelle est la meilleure façon d'y parvenir? Quelle licence me conviendrait le mieux?

Merci, Christoph (qui est un peu confus)

Réponses

4 planetmaker Jan 03 2021 at 16:46

Il existe deux versions fondamentalement différentes des licences open source:

a) les permissifs comme le MIT, Apache, etc. qui - grosso modo - ne se soucient pas de ce qui arrive à leurs sources tant que les crédits sont maintenus et communiqués.

b) Et il y a les licences plus strictement open source, les licences de copie gauche, qui veulent s'assurer que tout dérivé reste également open source, notamment la licence GPL.

La licence est généralement choisie par les auteurs (initiaux) pour une raison qu'il souhaite le premier ou le dernier.

En tant que telle licence que vous recherchez peut être conçue, mais ne sert guère d'utilisation: un projet sous licence permissive ne voudrait pas utiliser une licence qui ne peut être utilisée que dans des projets open source; sa licence a été choisie en particulier de telle sorte qu'une utilisation propriétaire soit possible.

Un projet déjà avec une licence à gauche n'a pas besoin non plus d'une telle licence - il pourrait aussi bien utiliser la GPL qui garantit justement cela: être open source et rester open source.

En tant que tel, on pourrait même faire valoir qu'une licence qui ne peut être utilisée que dans un projet open source existe déjà: la GPL. La plupart des licences open source sont compatibles avec la GPL dans le sens où elles peuvent être utilisées dans un projet sous licence GPL (en changeant simplement la licence en GPL pour le logiciel dérivé / combiné - même lorsqu'il existe des exceptions notables comme l'incompatibilité avec Apache ou MPL ).

3 JNic Jan 08 2021 at 06:48

Disons que quelqu'un utilise votre projet (sous licence sous votre licence personnalisée) dans une application sous licence MIT. Étant donné que la licence MIT permet explicitement au logiciel d'être distribué en source fermée, votre licence personnalisée serait inefficace et n'aurait aucun sens.

Si vous ne voulez pas que votre bibliothèque soit utilisée dans un logiciel propriétaire, alors le meilleur choix serait la GNU GPL.

Il existe des licences compatibles avec la GNU GPL. Les logiciels sous licence GNU GPL peuvent contenir du code sous n'importe quelle licence compatible.