Je travaille sur un prototype de système logiciel qui (au moins au début) sera en source fermée.
Afin de gagner du temps, je pense utiliser (c'est-à-dire un lien statique) une bibliothèque sous licence GPLv3 , afin de pouvoir tester rapidement ma conception. Si je distribuais le logiciel à ce stade, je devrais distribuer le code source avec lui.
Et si je ne le fais pas, mais que je m'assure que mon système fonctionne, puis que je remplace la bibliothèque GPL par mon propre code avant de distribuer? Le résultat serait-il «contaminé» par la GPL?
J'ai le sentiment que conserver ou non la bibliothèque GPL dans mon historique Git peut faire une différence.
licensing
version-control
gpl
closed-source
Laurent S
la source
la source
Réponses:
La GPL écrit :
Cette condition ne s'applique donc que si votre travail est "basé sur" la bibliothèque, que la licence définit comme suit:
Autrement dit, votre programme est "basé sur" la bibliothèque si et seulement s'il s'agit d'une œuvre dérivée conformément à la loi sur le droit d'auteur. La définition juridique de ce terme varie quelque peu selon les juridictions et ne concerne généralement pas directement les logiciels. Par exemple, la US Copyright Act écrit:
Ce que cela signifie pour les logiciels doit être interprété par les tribunaux, sur la base de décisions similaires antérieures. Je ne connais pas suffisamment la jurisprudence pertinente de votre juridiction pour dire avec certitude comment un tribunal déciderait de votre cas. On pourrait soutenir que «remplacer la bibliothèque GPL par son propre code» est un acte de traduction, en particulier si votre code est fortement inspiré par l'implémentation GPL. Même la réutilisation de l'API de la bibliothèque GPL pourrait vous faire atterrir dans de l'eau chaude (voir Oracle vs Google ).
Si la réponse vous intéresse, je vous recommande de demander un avis juridique compétent plutôt que de demander à des étrangers sur Internet.
la source
Tant que vous ne diffusez le logiciel à personne pendant que vous vous connectez aux bibliothèques GPL, vous êtes en sécurité. L'aspect viral de la GPL n'intervient que si vous distribuez votre logiciel.
Ce serait mieux si vous pouviez trouver une bibliothèque avec une licence plus permissive, bien sûr, comme LGPL ou APL2 ou MIT.
la source
Je ne pense pas que votre question concerne réellement la GPL. Il s'agit du prototype et de son utilisation future comme base du système logiciel livrable.
Si vous créez un prototype jetable et que vous n'allez pas réutiliser le code de votre système livrable, alors allez-y et utilisez une bibliothèque GPL.
Trois approches que vous pouvez adopter
Cependant, si vous voulez faire évoluer le prototype (quelque chose que beaucoup de gestionnaires préconisent!), Vous avez trois approches que vous pouvez adopter:
Je vous suggère de suivre la première approche, car vous disposez ensuite d'un travail open source que vous pourrez utiliser à l'avenir dans le cadre de votre portefeuille professionnel.
La deuxième approche est également bonne, car c'est de cette façon que vous devriez concevoir le système, en créant les fonctions / classes exactes dont vous avez besoin et en les supprimant jusqu'à ce que vous ayez la bibliothèque ou le code personnalisé qui remplit cette fonctionnalité.
la source
Je peux penser à deux aspects à considérer avec votre approche. Le premier est simple, en ne distribuant pas votre projet ou (ou comme c'est la GPLv3 , le rendant disponible pour un usage public) pendant que vous utilisez du code qui est publié sous la GPL, il est difficile de voir comment vous seriez obligé de distribuer votre code sous licence GPL également sous les conditions de redistribution.
Le deuxième aspect est peut-être plus important pour vous. Lorsque vous créez votre propre implémentation pour remplacer la bibliothèque GPL, vous devez faire attention à ne pas créer un travail dérivé. Bien que je sois sûr que vous avez de bonnes intentions, en ne copiant pas directement le code source - vous êtes plus susceptible que de ne pas copier des parties importantes de l'API de la bibliothèque.
S'il s'agit d'un produit commercial, ce risque doit être considéré et évalué en lisant attentivement la licence GPLv3 et, en cas de doute, en demandant un avis juridique professionnel.
la source
Si vous prévoyez d'écrire votre propre code pour remplacer le code GPL, vous aurez un problème potentiel car vous n'écrivez pas le code dans une salle blanche. Vous voudriez vraiment que quelqu'un qui n'a jamais regardé le code GPL écrive une bibliothèque de remplacement. D'un autre côté, si vous souhaitez simplement remplacer une bibliothèque GPL par une bibliothèque déjà publiée sous une autre licence, ce n'est pas un problème, l'autre bibliothèque a probablement été déjà écrite dans un environnement de salle blanche.
la source
Si vous donnez accès aux révisions à l'aide du code GPL, elles seront entièrement GPL. Mais vous ne voulez pas, car ce ne serait pas de source fermée ...
Pour tout état ultérieur qui n'utilise plus de code GPL, le fait que vous ayez utilisé du code GPL un peu plus tôt n'est tout simplement pas pertinent.
la source
La GPL n'est déclenchée que lors de la distribution ... vous pouvez faire ce que vous voulez si vous ne publiez pas une version modifiée ou un travail dérivé.
Si vous voulez publier votre source dans un référentiel public comme GitHub , alors oui, vous pouvez avoir un problème. Utiliser git n'est pas pertinent s'il est privé.
la source