Relicensez le code BSD 2/3 en GPL

11

Supposons que je publie du code source sous la nouvelle licence BSD. Est-il permis à quelqu'un d'autre de prendre ce code, d'y apporter des modifications et de le distribuer sous les termes de la GPL? De Wikipédia :

De nombreuses licences de logiciels libres les plus courantes, telles que la licence MIT / X d'origine, les licences BSD (sous la forme actuelle de 2 clauses) et la LGPL, sont "compatibles GPL". Autrement dit, leur code peut être combiné avec un programme sous la GPL sans conflit (la nouvelle combinaison aurait la GPL appliquée à l'ensemble). Cependant, certaines licences de logiciels libres / open source ne sont pas compatibles GPL.

Je suppose que cela implique que l'on peut relier le code sous licence new-BSD à GPL?

Brecht Machiels
la source
J'ai posé une question similaire sur l'Open Source Stack Exchange: opensource.stackexchange.com/questions/4837/… J'ai l'impression que nous n'avons pas encore trouvé de réponse concluante; tout ce que nous avons, c'est une douzaine de suppositions. Ce serait formidable d'entendre un véritable avocat, ou peut-être même la FSF elle-même.
Tanner Swett

Réponses:

8

Voilà une question intéressante. Avertissement: IANAL.

Le fragment cité signifie que le code sous licence BSD peut être utilisé dans un projet sous licence GPL.

D'un autre côté, vous êtes toujours le détenteur des droits d'auteur de votre code. La licence du code d'origine ne peut pas être modifiée sans votre autorisation. La licence BSD requiert également explicitement:

  • Les redistributions du code source doivent conserver l'avis de droit d'auteur ci-dessus, cette liste de conditions et l'avertissement suivant.
  • Les redistributions sous forme binaire doivent reproduire l'avis de droit d'auteur ci-dessus, cette liste de conditions et la clause de non-responsabilité suivante dans la documentation et / ou d'autres documents fournis avec la distribution.

Ainsi, la licence BSD ne peut pas être supprimée de votre code.

Afin de pouvoir réellement publier le code combiné sous GPL, un autre auteur devrait apporter une "contribution significative" au code. C'est vague ce que cela signifie exactement, mais devrait généralement signifier au moins l'ajout de nouvelles fonctionnalités importantes, pas seulement un correctif mineur.

Situation similaire: SFLC termine l'examen du pilote sans fil Atheros pour Linux, Guide de publication pour les développeurs .

Question connexe sur SO: /programming/821608/relicensing-a-bsd-library

vartec
la source
Les conditions BSD doivent donc être conservées. C’est clair. Mais des conditions supplémentaires peuvent-elles être ajoutées à la liste, par exemple une clause de mise à disposition de modifications de type GPL?
Brecht Machiels
1
@Brecht: si et seulement si c'est quelque chose de nouveau qui relève de l'œuvre séparée sous copyright. S'il s'agit d'un changement ou d'une adaptation mineurs, ce n'est pas un travail distinct, il n'est donc pas possible de renouveler la licence.
vartec
6

D'après mon expérience, non, vous ne "re-licence" quelque chose parce que vous ne possédez pas le droit d'auteur. Vous n'avez qu'une licence des auteurs originaux.

Ce que vous pouvez faire, c'est utiliser l'œuvre protégée par le droit d'auteur dans une œuvre dérivée, mais vous devez suivre les termes de la licence, qui dans le cas de BSD / MIT, stipule que vous devez conserver l'avis de droit d'auteur et la licence sur le code que vous utilisez. .

En pratique, si quelqu'un devait utiliser votre bibliothèque BSD dans une application GPL, ce que vous verriez dans son application est:

  • Une copie de la licence GPL dans un fichier texte
  • Un fichier séparé qui prétend que le programme entier est sous licence GPL (et les pointant vers le fichier de licence GPL pour les détails), mais contient ensuite des sections distinctes sous l'en-tête indiquant "la bibliothèque XYZ est sous licence BSD" et montrant ensuite la licence de XYZ là aussi. Voici un exemple de ce type de fichier, à partir d'une application GPL que j'ai écrite .

Si quelqu'un a pris un extrait de code ou un fichier de votre travail et l'a inclus dans son application GPL, puis l'a modifié, vous le verriez probablement inclure à la fois la GPL et l'en-tête BSD dans le fichier. Le fichier aurait essentiellement deux auteurs - vous et eux. Les deux avis de droits d'auteur devraient être affichés.

N'oubliez pas que la GPL est virale, elle s'applique donc à l'ensemble du travail, mais BSD / MIT ne s'applique qu'au code exact que quelqu'un a écrit.

Scott Whitlock
la source
1
on peut supposer que vous pouvez accorder une nouvelle licence à une œuvre dont la licence le permet, même si vous n'êtes pas le titulaire d'origine du droit d'auteur. Le BSD semble permettre cela.
Armand
2

Avertissement: IANAL.

Il n'y a aucune interdiction dans les licences MIT ou BSD contre la nouvelle licence. Étant donné que ni les licences MIT ni BSD n'ajoutent de restrictions au-delà de ce qui est déjà dans la GPL (les bits de copyright et de garantie sont déjà dans la clause 1 des conditions générales de la GPLv2), je ne vois aucun problème avec le forking et la nouvelle licence d'un projet sous licence MIT.

L'ancienne licence BSD avait une clause publicitaire qui ne fonctionnait pas bien avec GPL.

Frank Shearar
la source
2
Je ne suis pas avocat non plus, mais je pense que cela peut être de la désinformation. Seul le (s) titulaire (s) du droit d'auteur peut (nt) accorder une nouvelle licence à une œuvre protégée par le droit d'auteur. La raison pour laquelle BSD est compatible GPL est que le code sous licence BSD peut être utilisé dans un travail sous GPL, mais le code BSD d'origine est toujours sous licence BSD. Dans le cadre du travail dérivé, il est également sous licence GPL, mais vous devez conserver la licence d'origine intacte.
Scott Whitlock
3
@Scott BSD dit que vous devez conserver les clauses du BSD. Cela ne restreint cependant pas leur ajout, alors peut-être que c'est une interprétation raisonnable
Armand
2
opensource.org/licenses/mit-license.php déclare explicitement que toute personne obtenant une copie du code peut sous-licencier le logiciel.
Frank Shearar
2

Désolé mais la plupart d'entre vous ont tort.

La licence et la propriété sont deux choses différentes. Vous ne pouvez pas renouveler la licence de quelque chose qui ne vous appartient pas. N'est-ce pas votre décision à prendre.

Le propriétaire est le détenteur des droits d'auteur, pas vous. Ainsi, vous ne pouvez pas renouveler la licence de leur travail. Comme vous ne possédez pas leur travail, vous ne faites que le concéder sous licence. Autrement dit, le propriétaire vous permet de l'utiliser. Il / Elle ne vous donne pas la propriété.

Il sera ridicule de penser, par exemple, que l'auteur original (ou TOUTE PERSONNE ayant obtenu le code BSD) doit suivre la GPL pour utiliser le code original juste parce que vous avez décidé d'utiliser LEUR CODE sur un projet GPL.

Cependant, vous pouvez concéder sous licence GPL VOTRE PROPRE code. Et puis, CETTE PARTIE, pas l'original, est sous la GPL. Comme l'auteur original n'a pas mis le travail sous GPL et que vous ne concédez que des licences et NE possédez PAS le travail original.

Vous pouvez utiliser le code sous licence BSD sur votre code GPL (comme BSD vous le permet, tant que vous suivez les termes BSD, et l'un n'est PAS DE SUPPRIMER la licence des copies), mais vous ne pouvez pas simplement re-licencier le tout, car vous ne le possédez pas. Encore une fois, ce n'est pas votre décision à prendre. Si toutefois vous souhaitez utiliser un code GPL tiers avec du code BSD. Ensuite, le problème sera conforme à la partie GPL.

Ricardo Santos
la source
1
Je pense que la déclaration ci-dessus "Vous ne pouvez pas renouveler la licence de quelque chose que vous ne possédez pas" est incorrecte, de nombreuses licences accordent le droit de sous-licencier des œuvres protégées par le droit d'auteur. Parfois, les octrois de sous-licences restreignent davantage les droits qui peuvent être accordés en vertu de la sous-licence, mais pas toujours. Les détails dépendent de la situation et de la question de savoir si vous avez été autorisé à le faire.
Cameron
De plus, si vous incluez la licence BSD dans vos copies, cela signifie que le code est toujours BSD et qu'il ne peut pas être sous GPL en même temps.
warvariuc