Supposons que je développe une bibliothèque utile et décide de la publier en open source. Quelque temps plus tard, j'ai un besoin professionnel de faire quelque chose qui ne serait pas conforme à la licence open source. Suis-je autorisé à faire ça?
Comment dois-je publier le logiciel de manière à en conserver la propriété et à ne pas m'empêcher d'utiliser la bibliothèque à l'avenir?
Gardez à l'esprit qu'au moins en théorie, d'autres développeurs peuvent décider de contribuer à mon projet open-source. Puis-je spécifier dans une licence que moi, en tant que développeur d'origine, deviens également propriétaire de leurs contributions? Ne vous méprenez pas ici, je n'essaie pas d'être méchant et de s'approprier le travail des autres - je veux juste garder la propriété du mien, et si quelqu'un publie un correctif important, je pourrais être rendu incapable d'utiliser le code d'origine à moins J'utilise aussi son travail.
la source
Réponses:
Vous conservez toujours la propriété sous des licences open-source. Le travail que vous avez créé est votre propriété, et vous pouvez en faire ce que vous voulez (dans les limites légales, bien sûr), y compris en autorisant d' autres personnes à l'utiliser sous les termes d'une licence open source. Si vous souhaitez l'utiliser pour un projet propriétaire, vous pouvez le faire, à moins que vous n'ayez complètement cédé les droits à quelqu'un d'autre par contrat. Mais ce n'est pas ce que font les licences open source. Il s'agit de partager l'utilité, pas de renoncer à la propriété.
Les choses deviennent un peu autocollantes une fois que d'autres personnes commencent à contribuer. C'est leur travail, donc pas le vôtre, et vous devez obtenir leur autorisation. Une chose que vous pouvez faire est de publier votre bibliothèque sous une double licence. C'est ce que fait Sam Lantinga, le principal créateur et mainteneur de SDL . Parce qu'Apple n'aime pas les bibliothèques de liens dynamiques pour iOS et qu'il est plus difficile de se conformer à la LGPL dans une application liée statiquement, il publie SDL sous la LGPL et une licence commerciale pour les applications iPhone statiques. Lorsque quelqu'un soumet un correctif, il lui demande explicitement la permission de déployer son correctif dans la bibliothèque sous les deux licences, et s'il n'aime pas cela, il ne l'ajoute pas à la base de code.
EDIT: Mon exemple n'est plus précis. Il y a quelque temps, Sam a changé de modèle (je ne sais pas pourquoi; il s'est peut-être simplement lassé des tracas administratifs) et propose désormais une licence SDL sous une licence hautement permissive de style zlib. Mais il le faisait de cette façon.
la source
Je ne suis pas avocat et ce n'est pas un conseil juridique. Si vous avez besoin d'une assurance juridique, engagez un avocat.
Vous pouvez absolument sous-licencier votre logiciel - Trolltech l'a fait pendant de nombreuses années avec Qt, et Linden Lab l'a fait avec le client SecondLife.
Vous pouvez utiliser n'importe quelle licence que vous aimez. Certaines licences sont compatibles avec des environnements commerciaux fermés, comme les licences Mozilla MPL, MIT et BSD, et (je crois) les licences CDDL et Apache de Sun.
Cependant, si vous avez besoin de la souplesse nécessaire pour publier votre logiciel à la fois en tant que projet open source et en tant que produit open source, vous êtes absolument autorisé à le faire en tant qu'auteur d'origine. Le seul problème est la question des contributions des utilisateurs. Vous ne pouvez pas incorporer les contributions des autres dans votre version commerciale du logiciel à moins qu'ils ne vous légalisent le droit d'auteur. GNU le fait pour la seule raison qu'il mettra à jour ses licences à l'avenir.
Notez que les utilisateurs et en particulier les contributeurs n'aimeront probablement pas cela, donc cela affectera la communauté autour de votre projet, probablement de manière défavorable.
Encore une fois, consultez un avocat pour plus de détails.
la source
Je ne suis pas avocat non plus, mais ...
En plus des licences restrictives (qui vous obligeront à ouvrir chaque projet qui les utilise) comme la GPL, il existe également des licences non restrictives (ce qui signifie que vous pouvez utiliser un tel logiciel dans un projet commercial) comme la Lesser GPL ou Apache License (2.0 ?). Vous pouvez donc peut-être simplement publier votre logiciel à des conditions non restrictives.
la source