PGL / LGPL

Eléphant du PHP | 396 Messages

01 août 2007, 10:16

Bonjour à tous,

Si je vends une application PHP et que je veux y integrer une librairie sous licence GPL et / ou LGPL (FCKeditor ou TinyMCE pour être précis), est-ce que les sources de l'application entière doivent être dispo ou seulement les sources de la librairie? (sachant que ne la modifie pas, je ne vois pas l'intêret mais bon)

Dispo sous quelle forme d'ailleurs?

Merci d'avance de vos réponses

ViPHP
ViPHP | 2287 Messages

01 août 2007, 10:32

Bonjour à tous,

Si je vends une application PHP et que je veux y integrer une librairie sous licence GPL et / ou LGPL (FCKeditor ou TinyMCE pour être précis), est-ce que les sources de l'application entière doivent être dispo ou seulement les sources de la librairie? (sachant que ne la modifie pas, je ne vois pas l'intêret mais bon)
Bonjour,

Le problème n'est pas le même pour de la GPL ou de la LGPL.

Sous GPL, si tu distribues la totalité de l'application dans un seul "package", la GPL s'applique à l'ensemble du paquet livré. Tu dois livrer toutes les sources sous la "preferred form for editing", à savoir le format le plus lisible et modifiable pour celui qui le reçoit.

Ceci dit, tu peux éviter le problème de "contamination" de la GPL à l'ensemble de ton projet en proposant le téléchargement séparé (que tu n'as même pas besoin d'assurer toi-même si tu utilises le projet GPL tel qu'il est déjà disponible) de la partie sous GPL, car la GPL ne fait référence qu'à l'acte de distribution.

La LGPL se distingue de la GPL sur ce point précis, elle ne concerne que le logiciel qui t'es fourni sous cette licence et ne vient pas s'appliquer à l'ensemble de la livraison, tu peux distribuer l'ensemble comme il te plait.
Dispo sous quelle forme d'ailleurs?
La forme qui te plaît. Il peut s'agir de fichiers .fla pour du flash, de sources php pour du php, de .psd pour des images composées sous photoshop... En fait la GPL t'impose juste d'offrir la possibilité à l'utilisateur d'obtenir pour un coût modique (qui ne doit pas être une source de revenu complémentaire de la livraison du projet lui-même) les sources intégrales du package distribué qui contient tout ou partie de code sous GPL.

J'espère être clair :D
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 396 Messages

01 août 2007, 10:48

Le problème n'est pas le même pour de la GPL ou de la LGPL.
FCKeditor est sous les 2 en même temps (+MPL!), comment s'y retrouver? :shock:
http://www.fckeditor.net/license
Sous GPL, si tu distribues la totalité de l'application dans un seul "package", la GPL s'applique à l'ensemble du paquet livré. Tu dois livrer toutes les sources sous la "preferred form for editing", à savoir le format le plus lisible et modifiable pour celui qui le reçoit.

Ceci dit, tu peux éviter le problème de "contamination" de la GPL à l'ensemble de ton projet en proposant le téléchargement séparé (que tu n'as même pas besoin d'assurer toi-même si tu utilises le projet GPL tel qu'il est déjà disponible) de la partie sous GPL, car la GPL ne fait référence qu'à l'acte de distribution.

La LGPL se distingue de la GPL sur ce point précis, elle ne concerne que le logiciel qui t'es fourni sous cette licence et ne vient pas s'appliquer à l'ensemble de la livraison, tu peux distribuer l'ensemble comme il te plait.
Je ne saisis pas bien ta notion de "package"
Quand j'installe mon appli PHP chez un client (dans son Intranet), je n'ai pas de "package", juste des dossiers / fichiers. Peux-tu m'éclairer là-dessus?
De même, si j'installe mon sur mon serveur Internet?

ViPHP
ViPHP | 2287 Messages

01 août 2007, 11:12

FCKeditor est sous les 2 en même temps (+MPL!), comment s'y retrouver? :shock:
http://www.fckeditor.net/license
Ca veut tout simplement dire que tu as le choix de te plier à l'une ou à l'autre. Une licence est un ensemble de droits et de devoirs que l'auteur te concède en tant qu'utilisateur du logiciel.
Je ne saisis pas bien ta notion de "package"
Quand j'installe mon appli PHP chez un client (dans son Intranet), je n'ai pas de "package", juste des dossiers / fichiers. Peux-tu m'éclairer là-dessus?
De même, si j'installe mon sur mon serveur Internet?
Le problème tourne autour du mot "distribution". Si ton projet est livré sous la forme d'une archive zip ou tar, c'est alors de cela qu'il s'agit. Dans ton cas il s'agit de l'ensemble des fichiers que tu livres (Ou alors il faut clairement spécifier que les composants sous la licence XXX ne font pas partie de ta livraison, mais que pour le confort du client tu acceptes de te charger de leur installation, puisque le bon fonctionnement de ton logiciel en dépend).

Pour ton serveur internet le problème est exactement le même (mais encore plus simple si le destinataire final de l'application, c'est toi-même : tu as encore (heureusement ! :D ) tous les droits quand tu te distribues un logiciel à toi-même...).
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 396 Messages

01 août 2007, 12:00

FCKeditor est sous les 2 en même temps (+MPL!), comment s'y retrouver? :shock:
http://www.fckeditor.net/license
Ca veut tout simplement dire que tu as le choix de te plier à l'une ou à l'autre. Une licence est un ensemble de droits et de devoirs que l'auteur te concède en tant qu'utilisateur du logiciel.
Ok (pas très claire leur page :) )
Je ne saisis pas bien ta notion de "package"
Quand j'installe mon appli PHP chez un client (dans son Intranet), je n'ai pas de "package", juste des dossiers / fichiers. Peux-tu m'éclairer là-dessus?
De même, si j'installe mon sur mon serveur Internet?
Le problème tourne autour du mot "distribution". Si ton projet est livré sous la forme d'une archive zip ou tar, c'est alors de cela qu'il s'agit. Dans ton cas il s'agit de l'ensemble des fichiers que tu livres (Ou alors il faut clairement spécifier que les composants sous la licence XXX ne font pas partie de ta livraison, mais que pour le confort du client tu acceptes de te charger de leur installation, puisque le bon fonctionnement de ton logiciel en dépend).
Si je fais, dans la page qui utilise FCKeditor, un lien vers leur site (sachant que je ne modifie pas les sources, leur site est la meilleure source non?) tout en insérant la licence LGPL quelquepart dans mon appli, je devrais être dans le cadre de la licence non?
Pour ton serveur internet le problème est exactement le même (mais encore plus simple si le destinataire final de l'application, c'est toi-même : tu as encore (heureusement ! :D ) tous les droits quand tu te distribues un logiciel à toi-même...).
Pas bête :lol:

ViPHP
ViPHP | 2287 Messages

01 août 2007, 12:25

Si je fais, dans la page qui utilise FCKeditor, un lien vers leur site (sachant que je ne modifie pas les sources, leur site est la meilleure source non?) tout en insérant la licence LGPL quelquepart dans mon appli, je devrais être dans le cadre de la licence non?
Si c'est de la LGPL tu n'as même pas besoin de t'embêter. La LGPL n'est pas contaminante (elle a été conçue à partir de la GPL dans ce but précis) et tu peux livrer ton appli telle quelle avec FCK (et sa licence, qui ne s'applique qu'à lui, bien entendu). Tu peux (et peut-être même tu dois, mais là je ne suis pas sûr, donc lis bien la licence) préciser dans la licence globale de ton application qu'elle englobe des composants sous LGPL.
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 396 Messages

01 août 2007, 12:34

et tu peux livrer ton appli telle quelle avec FCK (et sa licence, qui ne s'applique qu'à lui, bien entendu).
C'est ce que je voulais dire... Integrer la LGPL quelque part pour FCKeditor (et non pas pour l'application elle-même)

Merci pour ton aide en tout cas

ViPHP
ViPHP | 2287 Messages

01 août 2007, 12:42

C'est ce que je voulais dire... Integrer la LGPL quelque part pour FCKeditor (et non pas pour l'application elle-même)

Merci pour ton aide en tout cas
Pas de quoi :D Ta démarche est excellente. C'est une très bonne chose de se renseigner pour bien respecter les licences (qui peuvent être vraiment casse-tête à lire et à comprendre...). Trop peu de développeurs font cet effort, alors qu'ils le devraient tous.
if(!@work()){ Nespresso(); } else { what(); }
______________________________