Que signifie réellement «sous-licence»?

13

Premièrement, il est clair que le droit de sous-licencier ne vous donne pas le droit de redistribuer.

Disons que nous avons une bibliothèque avec une licence MIT (1 fichier), quelqu'un ajoute quelques fonctionnalités à la bibliothèque mais les place sous GPL (dans le même 1 fichier). Ou si quelqu'un veut sous-licencier, il doit séparer le code?

Si quelqu'un veut utiliser la bibliothèque, comment les licences sont-elles gérées?
Disons que le développeur utilise uniquement les fonctionnalités sous la licence MIT même si dans le fichier il y a des fonctionnalités sous GPL.
Doit-il GPL sa demande en raison du code sous licence GPL?
Doit-il supprimer le code GPL pour être libre des restrictions GPL ou peut-il simplement utiliser la bibliothèque sous les autorisations / restrictions MIT tant qu'il n'utilise pas le code GPL?

Lilian A. Moraru
la source

Réponses:

5

quelqu'un ajoute quelques fonctionnalités à la bibliothèque [MIT] mais les place sous GPL (dans le même 1 fichier). Si quelqu'un [d'autre] veut "sous-licencier", [doit-il] séparer le code?

Si par sous-licence vous entendez utiliser le code sous la licence MIT moins restrictive, alors oui. La personne GPL qui utilise son nouveau code dit essentiellement: "Vous ne pouvez pas utiliser mon code à moins que votre code ne soit également distribué sous les termes de la GPL."

Est-ce que [le sous-licencié] doit supprimer le code GPL [nouvellement concédé sous licence] afin d'être exempt des restrictions GPL?

Oui.

Robert Harvey
la source
Je cherchais des licences open source ( tldrlegal.com/browse ). Je voudrais protéger les autres utilisateurs de la bibliothèque (qui peuvent les prendre de quelqu'un d'autre) contre des restrictions supplémentaires. Presque toutes les licences open source permissives populaires permettent de sous-licencier. Ms-PL semble bon pour ça mais il a d'autres restrictions (Il y a aussi la GPL mais je ne veux pas forcer les utilisateurs de la bibliothèque à GPL leur logiciel) ...
Lilian A. Moraru
Je ne sais pas exactement ce que la "sous-licence" a à voir avec cela. Essayez-vous de choisir une licence qui le permet, et que signifie pour vous la "sous-licence"?
Robert Harvey
De programmers.stackexchange.com/questions/105912/… Je comprends que quelqu'un peut mélanger dans une autre licence à la licence actuelle et aux restrictions de la bibliothèque actuelle s'ajoutent les restrictions de la bibliothèque supplémentaire. Ou on pourrait appliquer la bibliothèque supplémentaire au code qu'il a ajouté à la source d'origine. Et non, je préférerais une licence qui ne permet pas à quelqu'un de mélanger une licence plus restrictive.
Lilian A. Moraru
3
Je pense que vous devez garder cela simple; regardez-le en termes de «distribution», pas de «sous-licence». Toutes les licences open source permettent aux utilisateurs d'utiliser le code en interne comme ils le souhaitent; ce n'est que lorsque la distribution se produit que les restrictions de copyleft deviennent évidentes. Dans votre cas, vous avez quelqu'un qui veut GPL son code. Le choix qui en résulte (que vous n'avez qu'à faire si vous redistribuez) est simple: soit vous vivez avec les nouvelles restrictions qu'il a imposées, soit vous évitez son code et restez avec le code original sous licence MIT.
Robert Harvey
1
La réponse ici est généralement fausse. Ajout d'une réponse ci-dessous pour clarifier.
Chris Travers
20

IANAL mais j'ai discuté de cela et de nombreux problèmes similaires avec des avocats suffisamment pour avoir une bonne idée de ce dont je parle ici. Ce n'est pas un avis juridique. La meilleure lecture de fond est le livre de Larry Rosen dans le contexte des logiciels open source.

Droits, licences, droits d'auteur et sous-licences

En vertu de la loi sur le droit d'auteur, le titulaire du droit d'auteur bénéficie de certains droits exclusifs sur son œuvre. La plupart ou la totalité (selon la juridiction) peut être concédée sous licence exclusive ou non exclusive à un tiers. Si la sous-licence est autorisée, le preneur de licence peut transmettre tout ou partie des droits de la licence à un tiers en contractant directement avec lui.

Aux États-Unis, les titulaires de licences exclusives sont actuellement réputés avoir un droit de sous-licence (bien que je présume que cela pourrait être précisé dans la licence exclusive). Cela est logique car les titulaires de licence exclusifs sont présumés avoir le contrôle. Les titulaires de licence non exclusifs ne sont pas censés se voir accorder un tel monopole par le donneur de licence.

Par exemple, supposons que j'écris un roman. Supposons que j'offre une licence exclusive pour l'œuvre sous sa forme actuelle sous forme de livre, et que j'offre à quelqu'un d'autre une licence non exclusive pour faire une suite qui est une œuvre dérivée. Le licencié exclusif peut délivrer des licences non exclusives à d'autres auteurs pour utiliser des extraits du livre par sous-licence. Le titulaire de licence non exclusif ne peut pas autoriser encore une autre suite non autorisée de mon roman, ni le titulaire de licence exclusif sous-licencier un droit qui ne leur a pas été accordé (droits de cinéma par exemple).

Licences BSD vs MIT et sous-licences: une différence potentiellement importante

Cette section est principalement basée sur le livre de Rosen (ci-dessus). Si vous avez besoin de conseils juridiques, veuillez embaucher un avocat et ne pas le retirer de Stack Exchange.

La licence MIT autorise explicitement la sous-licence, contrairement à la licence BSD. Suite à la discussion ci-dessus, cela signifie que la licence MIT permet quelque chose que la licence BSD ne permet probablement pas dans la plupart des juridictions, à savoir la sous-licence. Cependant, les deux licences ne concernent que le code et le logiciel fournis et ni l'une ni l'autre ne limite sous quelle œuvre dans son ensemble une licence peut être accordée. Cela conduit à une question importante de savoir comment interpréter la GPL v3 pour être compatible avec les licences BSD btw.

Sous la licence MIT, vous pouvez faire essentiellement deux choses apparemment similaires:

1) Vous pouvez intégrer l'œuvre dans vos propres œuvres et les distribuer sous une licence plus restrictive.

2) Vous pouvez prendre le travail sous licence d'origine du MIT, y ajouter des restrictions supplémentaires et distribuer le travail sous une licence plus restrictive mais où vous n'avez pas du tout modifié le code. La GPL v3 prétend exiger que cela soit compatible, si l'on considère que la GPL régit toutes les conditions de la licence. [1]

Cependant, sous la famille de licences BSD, vous ne pouvez ajouter des restrictions qu'à votre propre code et aux œuvres dérivées que vous créez. Vous ne pouvez pas les ajouter au code d'origine en ne transmettant que certains des droits qui vous sont accordés. Je ne peux donc pas prendre PostgreSQL sous licence BSD, le renommer en PostSQL et le mettre sous licence GPL, mais je peux prendre Kerberos sous licence MIT et le renommer HadesHound et le mettre sous licence sous GPL (dans les deux cas, en supposant qu'aucun le code a changé). Cela signifie que le véhicule des droits est différent (toujours direct dans le cas de la licence BSD, direct ou indirect dans le cas de la licence MIT).

Conclusions

La sous-licence est un terme juridique. Si vous voulez lire ce que cela signifie réellement, ma recommandation est de commencer à parler avec les avocats, le Software Freedom Law Center et d'autres, et à consulter des dictionnaires juridiques. L'idée de base est cependant que si cela est accordé, un titulaire de licence peut devenir un concédant de licence de certains des droits de la subvention qu'il a reçus indépendamment de toute autre réclamation qu'il pourrait avoir sur le contrôle du droit d'auteur sur ce qu'il distribue.

Vous demandez un document juridique spécifique et un terme qui y est utilisé. J'espère que cela aide à expliquer exactement ce que ce terme signifie et quel impact il fournit.

Beaucoup de vos questions sont susceptibles d'être longues et compliquées [2] et dépendent de la juridiction, mais une règle de base concernant la licence MIT est que si votre chaîne prétend qu'elle est maintenant sous licence GPL, elle est sous licence GPL. Cependant, cela peut être une hypothèse sûre sous la licence BSD. De plus, cela est vrai que la version originale ait été modifiée ou non si la licence MIT a été utilisée. Sous la licence BSD, l'étendue des modifications est en effet déterminante quant à la licence qui régit.

[1] Une solution consiste à voir la GPL d'une manière différente et à autoriser des "avis juridiques raisonnables" ( restrictions supplémentaires en vertu de l'article 7) à inclure des avis de droits de licence supplémentaires. Dans ce cas, on aurait des autorisations supplémentaires qui étaient amovibles, régies en vertu de l'article 7 en tant qu'autorisations supplémentaires, mais également en tant que restriction supplémentaire (en vertu de l'article 7 (b)), un avis disant que certains droits ne sont pas amovibles. C'est l'une des choses que je n'aime pas dans la GPL v3, à savoir qu'elle fait penser à un avocat en ce qui concerne la façon d'aborder la compatibilité des licences.

[2] Par exemple, la question reste ouverte de savoir si la distribution de logiciels liés à une bibliothèque tierce nécessite une autorisation de copyright. Si tel est le cas, PostgreSQL compilé sur MinGW nécessite l'autorisation de Microsoft et ils peuvent le révoquer à tout moment , mais si ce n'est pas le cas, je peux écrire des programmes propriétaires qui se lient à GNU Readline et la FSF ne peut pas prétendre c'est une violation du droit d'auteur. Cette question ouverte rend la plupart de vos questions quant à savoir si un développeur peut se lier à une bibliothèque sous une licence autre que la GPL impossible de répondre avec certitude.

Chris Travers
la source
1
tl; dr: Parlez à un avocat.
Robert Harvey
1
Dans une certaine mesure, oui. Mais je suis également d'avis qu'en tant que professionnels, nous devons être relativement informés de ces questions. Si la seule question est «puis-je utiliser du code sous licence MIT dans mon application GPL» qui peut être répondu en toute sécurité par «oui». Si la question est "puis-je lier mon application propriétaire à une version GPL d'une bibliothèque sous licence MIT?" c'est le bon moment pour parler à un avocat.
Chris Travers
1
(Je ne suis pas non plus vraiment sûr que la sous-licence soit jamais tout ce qui est nécessaire en ce qui concerne les logiciels open source, FWIW.)
Chris Travers
0

Je ne suis pas avocat et je n'en joue pas à la télévision:

Bien que la réponse par défaut à une question comme celle-ci soit simplement de parler à un avocat, je pense qu'une meilleure réponse est de parler à l'auteur d'origine. Dites-leur ce que vous allez en faire et quel est votre public cible. N'oubliez pas que l'auteur ne renonce pas à ses droits d'auteur pour son œuvre en les libérant sous licence, l'auteur est libre de choisir ce qu'il veut autoriser avec. L'auteur peut dire "vous pouvez débiter cette bibliothèque sous cette autre licence qui a les exigences que vous recherchez" ou simplement "vous pouvez publier votre logiciel en utilisant la licence que vous voulez, je renonce à l'exigence pour X aussi longtemps que vous faites Y" . Personnellement, j'ai obtenu une autorisation spéciale pour publier un fork du logiciel open source d'un auteur sous Apache au lieu de GPL. Accordé pour un grand projet actuellement soutenu comme Qt,

Étant donné que je vois des tonnes d'applications open source publiées sous la GPL, je dirais que les auteurs ne comprennent vraiment pas ce que cela signifie vraiment. Rappelez-vous, si vous utilisez du code GPL, même s'il s'agit d'une seule ligne, votre application entière doit être publiée selon les termes de la GPL (c'est un peu extrême bien sûr, aucun auteur open source ne vous poursuivra pour une seule ligne - mais c'est l'exigence de la licence).

De plus, je ne suis pas d'accord avec la réponse de Chris Travers.

Selon ce tableau, BSD et MIT permettent à quelqu'un de sortir sous une licence différente. Voici une autre source suggérant qu'elle permet la sous-licence. J'ai lu la nouvelle licence BSD et cela ne suggère rien de ne pas vous autoriser à publier sous une licence différente - mais elle contient des stipulations qui ne vous interdisent pas de modifier la licence dans un produit dérivé.

Natalie Adams
la source
Je suis "l'auteur". Je veux m'assurer que tout est bon pour les utilisateurs.
Lilian A. Moraru
La licence BSD nécessite que vous placiez la licence sur des copies du code source. La licence fournit des concessions de licence directes de l'auteur. En l'absence de sous-licence, il n'y a aucun mécanisme pour modifier la licence du code sous licence BSD existant sans faire valoir vos propres droits d'auteur sur votre propre code directement. C'est ce que la sous-licence vous permet de faire, à savoir ajouter des restrictions non présentes dans la licence d'origine. J'espère que cela clarifie les choses. Encore une fois, j'ai trouvé le livre de Rosen très utile ici.
Chris Travers
Bien sûr, une fois que vous avez vos propres droits d'auteur à faire valoir, la distinction disparaît. Donc, une fois que vous avez ajouté votre propre code au fichier, vous pouvez ajouter les restrictions que vous souhaitez, mais elles ne s'appliquent qu'à votre propre code et vous ne pouvez pas les faire valoir contre le code que vous avez obtenu sous la licence BSD en l'absence d'un droit explicite de sous-licence. La différence est donc entre affirmer des restrictions sur votre propre code et les affirmer sur le code que vous avez obtenu sous une licence différente.
Chris Travers