Je conçois un logiciel en tant que projet de service qui ne sera accessible qu'en ligne. Je peux avoir une forte dépendance sur un exécutable qui est couvert par GNU GPL (v2 ou version ultérieure).
Je comprends que mon code, si jamais je le distribue, doit également être distribué selon les termes de la GPL. Je suis à peu près sûr que l'exécution du service sur le réseau ne transmet / distribue pas le code. Ainsi, ai-je raison de penser que je peux utiliser la dépendance GPL sans avoir à divulguer tout mon code?
Juste pour que je puisse donner un exemple concret: disons que je conçois sur un système de traitement de documents en ligne, un peu comme Google Docs. Je veux pouvoir télécharger pratiquement n'importe quel type de fichier dans le système et le convertir en n'importe quel format interne. Au lieu d'essayer de supprimer un convertisseur, je préfère utiliser un programme existant que je connais qui permet la conversion. Ce programme est un exécutable avec une licence GNU GPL v2 (ou ultérieure). Puis-je légalement avoir un logiciel en tant que service sans fournir mon code source?
la source
Réponses:
D'après la description que vous avez fournie, la réponse est "non, vous n'avez pas à divulguer". Vous vous fiez à la sortie de l'exécutable GPL ou vous le traitez comme un système, qui sont deux exceptions à la nature virale de la GPL. Explorez la FAQ GPL et vous trouverez vos réponses en fonction des spécificités de votre scénario.
la source
IANAL mais IMO la GPL ont une petite ambiguïté ici (ou interprétation). La GPL vous donne beaucoup de liberté en ce qui concerne "l'utilisation", mais elle le fait beaucoup de limitations concernant la "distribution des œuvres dérivées". Tout d'abord, il s'agit de l'utilisation par rapport aux travaux dérivés. Si votre code "utilise" uniquement le logiciel GPL, vous n'avez pas besoin de distribuer votre code qui utilise le code GPL (si vous modifiez le code GPL lui-même cependant, vous devez toujours distribuer cette partie de vous prévoyez de distribuer le changements), d'autre part si c'est considéré comme un travail dérivé, alors vous devez distribuer votre code source. L'un des points clés est de savoir si votre code s'exécute dans le même espace d'adressage de processus que le code GPL,
Il y a aussi l'ambiguïté si la fourniture d'un service Web pour permettre aux gens d'utiliser du code GPL est considérée comme une redistribution du logiciel ou simplement une façon d'utiliser le logiciel. Je pense que la plupart des gens considèrent que la simple fourniture d'un service Web ne relève pas de la redistribution.
Mieux vaut demander à l'auteur du logiciel ce qu'il pense de ce que vous faites. Il vaut mieux respecter leur interprétation au lieu de faire votre propre interprétation. Au pire, si cela devient un problème, vous pourriez affirmer que vous avez la permission explicite des auteurs eux-mêmes ou vous auriez la possibilité de trouver une autre bibliothèque plus permissive ou de négocier une exception.
la source
GPL gives you a lot of freedom when it comes to "usage", but it does it lots of limitation concerning "distribution of derivative works"
. Bien que cette partie de la GPL soit assez simple, dans la GPLv2, il est possible d'interpréter si un SaaS est un "usage" ou une "distribution". La GPLv2 n'a rien dit sur le SaaS car il a été conçu avant que le SaaS ne soit banal, d'où l'ambiguïté.