Puis-je utiliser le logiciel GPL dans une application commerciale

204

J'ai 3 questions sur la GPL ici:

  1. Si j'utilise le logiciel GPL dans mon application, mais que je ne le modifie ni ne le distribue, dois-je publier mon application sous GPL?

  2. Que se passe-t-il si je modifie certains logiciels utilisés par mon application? Dois-je alors publier mon application sous GPL, ou puis-je simplement fournir le logiciel modifié selon les termes de la GPL?

  3. Et si j'utilise le logiciel GPL sans le modifier, puis-je le distribuer avec mon application?

Mon cas d'espèce est que j'ai un framework PHP sur lequel j'utilise la bibliothèque GeSHi pour mettre en évidence certaines sorties.

  1. Parce que GeSHi est GPL, mon framework doit-il être GPL?

  2. Puis-je modifier GeSHi pour des cas d'utilisation particuliers de mon application si je remets les modifications aux responsables de GeSHi?

  3. Puis-je redistribuer mon framework avec GeSHi?

Pétah
la source
10
Commercial! = Propriétaire
Gerstmann
2
Juste curieux, que veut dire distribuer dans ce cas? Si le programme en question était, par exemple, un micrologiciel dans un appareil où il ne peut être touché par personne d'autre que par la société qui vend l'appareil, s'agit-il d'une "distribution"?
Wes Miller
2
Oui c'est la distribution. C'est pourquoi vous trouvez des choses comme les routeurs ADSL où le code source est (doit être) disponible pour le téléchargement. Des fournisseurs renommés rendent la source disponible parce que les conditions de la licence l’exigent. Il en va de même pour les boîtiers NAS, les caméras IP et de nombreux autres gadgets.
Rapidement maintenant
2
@quickly_now - c'est pourquoi le logiciel Tivoisation a été ajouté à la GPLv3. Par conséquent, si vous utilisez du code GPLv2 dans une appliance, vous n'êtes pas obligé de le publier, mais si vous utilisez du code GPLv3. N'oubliez pas que Tivo a utilisé le code GPL et n'a jamais publié ses modifications, ce qui a dérangé un groupe de personnes et a en partie conduit à la GPLv3.
Scott Whitlock

Réponses:

177

Si j'utilise le logiciel GPL dans mon application, mais que je ne le modifie ni ne le distribue, dois-je publier mon application sous GPL?

RÉPONSE: Votre question est un peu ambiguë. Deux cas:

(a) Si vous ne distribuez pas VOTRE DEMANDE, la réponse est non, car vous n'avez pas distribué votre demande. Par exemple, s'il s'agissait d'un usage interne uniquement dans votre entreprise, vous n'avez aucune obligation de faire quoi que ce soit.

(b) Si vous distribuez VOTRE APPLICATION et que vous avez utilisé quelque chose de GPL dans votre application (même si vous ne vous connectiez qu'à une bibliothèque à l'exécution) - et même si vous ne facturez pas d'argent - et même si vous ne modifiez pas que la GPL s / w de quelque manière que ce soit - vous DEVEZ alors mettre à disposition la source de VOTRE APPLICATION.

Rendre la source disponible ne signifie pas télécharger. C’est peut-être que vous devez obtenir une demande écrite et envoyer une photocopie d’une liste (voir les commentaires: vous ne pouvez pas réellement envoyer une liste. C’était exagéré de dire quelque chose) . Vous êtes autorisé à facturer des frais de manutention / copie «raisonnables». Mais vous ne pouvez pas échapper à l'obligation de rendre votre propre code source disponible.

Que se passe-t-il si je modifie certains logiciels utilisés par mon application? Dois-je alors publier mon application sous GPL, ou puis-je simplement fournir le logiciel modifié selon les termes de la GPL?

REPONSE: Voir ci-dessus. Si vous avez utilisé GPL s / w, vous devez rendre votre code source disponible. Cela inclut le code GPL modifié.

Et si j'utilise le logiciel GPL sans le modifier, puis-je le distribuer avec mon application?

REPONSE: Voir ci-dessus. Vous pouvez le distribuer (le code GPL), à condition de rendre votre source disponible.

Parce que GeSHi est GPL, mon framework doit-il être GPL?

REPONSE: Si vous distribuez votre framework, alors OUI.

Puis-je modifier GeSHi pour des cas d'utilisation particuliers de mon application si je remets les modifications aux responsables de GeSHi?

RÉPONSE: Vous le pouvez si vous le souhaitez. Tu n'es pas obligé. Vous pouvez le modifier, mais lorsque vous distribuez votre application, vous êtes obligé de rendre votre source disponible, ainsi que la source des modifications apportées à la bibliothèque.

Puis-je redistribuer mon framework avec GeSHi?

RÉPONSE: Vous le pouvez si vous le souhaitez. Si votre application n'est pas distribuée avec le code GPL et que vous obligez les utilisateurs à la télécharger séparément pour l'utiliser, votre cas est un peu plus spécial et peut provoquer des arguments, mais le même principe s'appliquera probablement: vous devez rendez votre source disponible.

Si vous voulez éviter ces problèmes, vous devez utiliser des éléments avec une licence différente ou au moins avec la LGPL, qui permettra l'appel en cours d'exécution des bibliothèques sans la propagation virale des conditions GPL dans votre code.

En cas de doute, vous avez besoin d'un avis juridique. Tous les conseils que vous recevez ici (de moi ou de quelqu'un d’autre) doivent être traités avec une attention particulière. Seul un avocat peut vous donner des conseils juridiques appropriés.

Rapidement
la source
67
Il faut aimer la GPL:
forcer
31
Juste une remarque: cela violerait probablement la licence de fournir le code source sous forme de photocopie. Comme indiqué dans la licence: "Le code source d'un travail désigne la forme de travail préférée pour y apporter des modifications."
Mipadi
26
@Petah: La GPL est comme un virus: elle infecte tout ce qu'elle touche. Si vous fournissez une interface générique et que vous autorisez un utilisateur à installer les composants de son choix, vous POUVEZ vous en tirer sans être contaminé par la GPL. CEPENDANT, supposons que vous donniez vos documents et que quelqu'un d'autre réunisse les deux ensemble ... alors il semblerait que vos documents seraient touchés par la GPL. Vous avez une situation très difficile, peu importe comment vous essayez de vous en sortir.
Rapidement maintenant
10
Si la question a été posée à plusieurs reprises, pourquoi ne s'agit-il pas d'un doublon?
11
Notez que le fait de facturer des frais de traitement "raisonnables" n’est pas un moyen de dissuasion puissant pour les personnes intéressées par votre code source; le premier destinataire de votre code source peut choisir de fournir légalement votre code source à d’autres personnes.
Brian
12

Cela semble très fortement en désaccord si vous l'utilisez sur un site Web, plutôt que de redistribuer un exécutable.

Vous pouvez copier, distribuer et modifier le logiciel à condition de suivre les modifications / dates des fichiers source et de conserver les modifications sous GPL. Vous pouvez distribuer votre application à l'aide d'une bibliothèque GPL dans le commerce, mais vous devez également fournir le code source. GPL v3 tente de combler certaines lacunes dans GPL v2.

Plus précisément

Si vous distribuez cette bibliothèque dans un exécutable, vous devez divulguer votre code source en le fournissant soit à côté de votre distribution, soit en répertoriant un moyen accessible (URL, copie physique) pour obtenir le code source pendant 3 ans. Ne s'applique pas si vous servez via un portail Web.

https://tldrlegal.com/license/gnu-general-public-license-v3-%28gpl-3%29

Maslow
la source
2
Pourriez-vous développer sur ceci? Actuellement, c'est un peu votre phrase et le texte de tldrlegal. En quoi l'utilisation de GPL sur un site Web diffère-t-elle de son utilisation dans une application autonome?
Un site Web ne distribue généralement pas de logiciel (mais fournit seulement un service)
Basile Starynkevitch
3
A CÔTÉ: il existe une licence AGPL qui tente d’adresser la GPL en tant que service: tldrlegal.com/license/…
kbrock
Si la bibliothèque GPL en question est écrite en HTML, en javascript et en CSS, et que le code de la bibliothèque est "distribué" par le serveur sur le navigateur Web des personnes visitant le site Web, je me demande si cela pourrait entraîner d'autres types de code HTML, javascript, et le code CSS pour devenir GPL. Un point intéressant est que ce code serait déjà "disponible" simplement en affichant la source de la page Web, bien que ce ne soit peut-être pas sous sa forme préférée. Cependant, même dans ce cas, votre code côté serveur n’est pas distribué et, par conséquent, j’imagine qu’il n’aurait pas besoin d’être GPL.
still_dreaming_1
2

Clause de non- responsabilité : je ne suis pas avocat et je n’ai lu aucune des deux versions de la GPL depuis un moment. Cette réponse risque donc d’être juridiquement inexacte.

Si vous publiez / distribuez un logiciel contenant des composants sous GPL (tels que des bibliothèques liées statiquement), votre logiciel doit être couvert par la GPL. (C'est l'impression donnée pour la version 2; la version 3 peut être différente.)

Si vous publiez / distribuez un logiciel à l'aide de bibliothèques LGPL, votre logiciel n'a pas besoin d'être couvert par la GPL, mais les bibliothèques doivent conserver la LGPL.

La modification des composants [L] GPL'd suggère une contribution au créateur / responsable. Je ne comprends pas en quoi cela affecte les licences de votre produit.

Agi Hammerthief
la source
-4

Nous pouvons imposer de telles règles dans la jungle, mais dans la vie réelle (juridique du pays ou de l’État), cela dépend de qui, qui, quand et quoi.

Le problème juridique (la loi) pose lorsque vous distribuez un programme GPL en tant que binaire ou bibliothèque sur un système d’exploitation non GPL. Le programme GPL infecte et infecte le processus parent et enfant non GPL (licence propriétaire et même autre licence open source) du point de vue de la loi. Infecter signifie que le programme dérivé viole la GPL, infecté signifie que le programme GPL enfreint sa propre licence. Aucun problème n’existe lorsque vous compilez une source GPL distribuée en tant qu’acte individuel (personne, organisation, entreprise).

bismark
la source
11
cela semble simplement répéter les points soulevés et expliqués dans la réponse précédente qui a été publiée il y a 4 ans
gnat