[GPL] Repompage d'un projet GPL de PHP vers J2EE

Salutations à tous,

Mon bientôt ex-employeur (je suis en plein préavis post-démission) m’a demandé de faire un truc qui m’a fait bondir de ma chaise, et je voudrais votre avis sur la chose.

En clair, on m’a demandé de repomper un projet GPL (existant en PHP/MySQL), et de refaire “pareil” en J2EE. Bien évidemment, le résultat est sensé être revendu à un client (au sein d’un package plus large de composants).

Ma question est donc : les status de la GPL sont clairs lorsqu’on prend des bouts de code existant, mais qu’en est-il concernant du repompage pur et simple de projet avec un changement de langage au passage ? (Une “refonte” totale du code malgré la repompe flagrante). Certains d’entre vous ont-ils déjà rencontré des cas similaires ?

J’ai une furieuse envie d’envoyer chier mon employeur sur ce coup là, mais si je pouvais le faire avec un cas de jurisprudence à la clé, ca donnerait plus de poids à ma démarche…

Merci beaucoup !

Salut, la GPL est très permissive et il me semble que sur ce point la, justement là revente, ça ne pose pas de problème.

Wikipedia :

Par contre c’est clair que caypascool comme démarche.

Bah, tu peux pas trop l’envoyer chier. Au mieux, tu devras lui expliquer que la partie pompée devra être distribuée sous licence GPL mais encore c’est pas sur. Je sais comment ça se passe dans l’autre sens : proprio => implementation GPL. Les gars lisent le code ou font du reverse engineering et après ils codent à tête reposée (ie sans avoir le code proprio sous les yeux) mais ils codent les même fonctionaliltés en ayant étudié le fonctionnement/code proprio. C’est un exercice de funambulisme mais c’est faisable donc dans l’autre sens, ça risque d’etre faisable aussi.

(en réponse à KaD) Oui, la GPL n’empêche pas la revente de code, mais sous réserve de déclarer ouvertement que le code a question a des bouts de GPL dedans, et de fournir le code source de la partie en question ainsi qu’une copie de la license (je schématise mais en gros c’est ce que j’en ai compris). Et le disclaimer, le code source et la license GPL, vous pensez bien que le client n’en verra pas l’ombre.

Bah en fait, le client si il est pas con, il comprendra que y’a eu du boullot de dev meme si une partie du produit s’appuie sur une base libre. Y’a toute une économie du libre qui s’organise avec des sociétés de services qui se spécialisent justement dans ce genre de mission (adaptation d’un projet libre à un client, avec developement de modules proprios ou libre) Par contre si ta boite facture le client super cher en argumentant que c’est un gros dev effecturer from scratch, là c’est sur qu’il va faire la guelle en voyant la licence GPL.

Y’a aussi une autre chose pour ta boite, si tu fais juste un developpement « inspiré » du projet libre, ils peuvent garder ça en closed source et le revendre à d’autres clients alors que si tu es obligé de releaser en GPL, le code sera accessible aux concurrents. (C’est un des gros arguments des boites qui aiment pas le libre)

Je pense que le truc principal c’est que tu ne peux pas vendre un projet gpl en disant que c’est toi qui l’a fait. Tu peux juste vendre les modifications apportées, l’assistance, l’installation, etc.

C’est faux tu peux vendre du GPL, le seul truc c’est que tu es aussi obligé de le distribuer gratuitement mais par exemple, tu peux très bine distribuer ton linux sur un FTP et vendre les ISOs prêtes à graver ou des CDs. (Je sais pas si il y a des distribs Linux qui fonctionnent comme ça, mais OpenBSD est un peu sur ce modèle là)

La GPL ne protège pas les algorithmes des projets. Il faut déposer des brevets pour ca. Ce que couvre la GPL c’est le code source de l’application.

Si un projet A est fait en php sous GPL, alors les utilisateurs (clients) de ce projet A sont en droit de demander les sources code de cette application (que l’application soit gratuite ou payante, ca n’a rien a voir).

Si un projet B reprend le projet A et le modifie, sont projet doit obligatoirement garder la meme licence GPL et donc fournir les memes choses aux utilisateurs.

Par contre dans ton cas, tu reprends pas le code source d’un projet mais tu codes un autre projet dans un autre langage. Pour moi c’est tout a fait possible et je ne vois pas ce qui empêcherait de faire ca dans la licence GNU GPL.

(je suis un peu perdu).

Je pensais que la GPL interdisait la vente, mais pas la L-GPL.

Par contre, il semble facile de réimplémenter un projet un peu différemment pour en revendiquer la propriété intellectuelle…

[s]Tout comme acemtp. La réécriture d’un projet GPL dans un autre langage ne pose aucun problème tant que tu ne conserves aucun bout de code ou resource du projet original. Le nouveau projet pourra tout à fait est propriétaire, fermé et payant.

Et au niveau éthique, vu qu’il n’y a pas de reprise de code mais juste d’architecture ou d’algorithmes je dirais que c’est de bonne guerre tant les projets libres ont tendances à pomper à mort sur les applis proprios (je n’y vois rien de mal au contraire, je trouve ça bien qu’on puisse copier sans limite concepts et algo, sinon on n’avancerait pas).[/s]

Bon ben apparamment non en fait.

[quote=“vectra, post:9, topic: 44996”](je suis un peu perdu).

Je pensais que la GPL interdisait la vente, mais pas la L-GPL.

Par contre, il semble facile de réimplémenter un projet un peu différemment pour en revendiquer la propriété intellectuelle…[/quote]

La GPL interdit le fork closed source, la LGPL le permet c’est ça la difference. La gratuité n’est pas liée au libre, mais quand on est obligé de releaser les sources gratuitement, c’est sur qu’il devient difficille de faire payer.

[quote=« vectra, post:9, topic: 44996 »](je suis un peu perdu).

Je pensais que la GPL interdisait la vente, mais pas la L-GPL.

Par contre, il semble facile de réimplémenter un projet un peu différemment pour en revendiquer la propriété intellectuelle…[/quote]
Pour un fanboy Linux tu ne connais pas trop tes classiques. En gros, la LGPL a pour principale particularité qu’elle n’est pas viralle, elle permet d’utiliser un programme LGPL (souvent une librairie d’ailleurs) dans un programme propriétaire du moment que les changements spécifiques au code sous LGPL sont disponibles sous la même licence. Voir plus précisement la section 6 de la licence.

Je ne suis pas d’accord…

Et sinon pour le problème de deneb, je pense surtout que ça dépend du niveau de copie. Si tu écris un programme en copiant le fonctionnement du programme GPL, pour qu’il remplisse les mêmes fonctions, ait la même interface, je pense que c’est OK (mais tu pourrais faire ça aussi sur un programme proprio, ce serait juste plus compliqué car tu ne verrais pas très bien comment cela se passe à l’intérieur).
Par contre, si tu prends le code source, et que tu le traduis ligne par ligne, je pense que c’est assimilable à de la copie pure et simple. Je m’explique : si c’était possible, on pourrait alors prendre les paroles d’une chanson, les traduire dans une autre langue et produire cette « nouvelle » chanson nous mêmes. Et j’imagine qu’on ne peut pas B)

Si tu mattes meme de loin un projet GPL et que tu t’en inspire pour du closed source, il y a un TRES fort argument legal que tout ce que t’as ecrit doit etre mis sous GPL lui meme, donc open source. C’est bien la raison pour laquelle je me fais mettre une tete “comme ca” regulierement sur l’importance de ne pas approcher de pres ou de loin un projet open source en GPL, meme ne serais ce que pour le regarder 5 minutes un fichier source. Il m’a ete tres clairement explique que si on faisait ca, meme en passant sur une recherche sur le web ou quoi, on mettait tout le produit en jeu. Bien entendu la parano est de mise chez les avocats, ca va de soi. Enfin… prendre consciement un projet GPL et le refaire en un autre langage en esperant que ca soit pas GPL… je te laisse imaginer…

Rien ne t’empêche de t’inspirer, de pomper, de modifier le projet GPL existant et de fournir ta nouvelle application GPL au client.
En fait ce que tu vas vendre à ton client, ce n’est pas la nouvelle application en elle même (qui devra rester en GPL) mais plutôt le service adapter l’ancienne appli PHP en Java.

Il faudra bien préciser à ton client que l’application que tu lui fourni sera aussi accessible à la concurrence à cause de la licence GPL, mais tu peux justifier ça par un coùt de développement inférieur car tu te bases toi-même sur une application existante.

En tout cas, ce qui est sûr : tu n’as pas le droit de transformer une application GPL en closed-source.

Je ne suis pas d’accord avec ce qui est dit ici.

pour l’histoire de la chanson, ca n’a rien a voir, tu mélanges la licence GPL avec les droits d’auteur. La GPL n’a rien a voir avec les droits d’auteurs ni avec les patents.

Glop: la parano des avocats n’a rien à voir avec la réalité d’une licence. Ils préfèrent prendre + de précaution que nécessaire pour être sur. C’est comme si on longer les murs sur un trottoir parce qu’on a peur que les voitures montent dessus et nous écrase. C’est sur que qui peut le plus peut le moins. Il est vrai que si tu ne regardes pas le code sources de projet opensource, tu as aucune chance de faire du copie de code (encore que va prouver que tu n’as pas regarder le code source). Le risque est que tu regardes un projet opensource en C++ et que 2 semaines après, sans le faire exprès, tu recodes une fonction à l’identique en C++ et qui pourrait être donc assimilé à de la copie bête et méchante d’un bout de code protégé par la GPL. On m’a dit la même choses que toi (ne pas regarder les projets opensource) mais c’était justement à cause du risque de faire du copier/coller (volontaire ou involontaire) d’un autre projet du même langage.

Dans ce cas précis que nous expose deneb, ce n’est pas le même langage, ca ne peut donc pas être assimilé comme du copier coller de source GPL dans un projet non GPL donc pour moi la GPL ne l’interdit nul part.

Heu non, c’est pas que pour du copier coller, volontaire ou involontaire, ca c’est le copyright et la license couvre bien plus que ca. Apres moi je fais que repeter les instructions que j’en entendu d’avocats specialises dans ce domaine, on en fait ce qu’on veut, c’est pas mes fesses B)

Donc, si on a un traducteur automatique de langages de programmation fiable, tu penses qu’on peut le lancer sur des produits GPL et diffuser ces nouveaux produits sans la licence ? Cela me semble très bizarre.

Ce qui voudrait dire que les gens de microsoft ne pourraient même pas regarder leurs propre tutos s’il étaient en GPL pour faire des projets closed source ? C’est génial ce truc. Tu fais une fois un code standard pour un site web quelconque en GPL et jamais tu peux le réutiliser toi même B), je commence à comprendre le soucis qu’il y avait avec cafzone v2.0.
Sinon, pour le sujet de base, ben tu peux toujours alerter ton patron, mais bon…

Non, la LGPL n’autorise pas le fork closed source. Ce qu’elle autorise c’est de linker son code avec du code proprio, par exemple dans le cas d’une lib. Mais tu n’as pas le droit de prendre une lib LGPL, la modifier, et sortir une version proprio de la lib.

Non, tu n’es pas obligé de releaser les sources gratuitement et publiquement à tout le monde. Tu dois fournir les sources aux gens à qui tu vends le logiciel si ils les réclament, mais rien ne t’oblige à les fournir à n’importe qui sur internet.

Ben non, ca depend entierement de la loi sur le copyright, c’est la loi sur le copyright qui dit ce qui peut etre considéré comme un « derivative-work » ou pas. Si ce que tu fais rentre dans le cadre du fair use (ou l’equivalant dans la loi du pays), tu es pas concerné par les restrictions de la license.

Faut arreter d’etre parano (ou de faire du FUD sur la GPL), c’est pas par ce que tu lis du code, et meme si ensuite tu t’inspires de l’algo, que ton code est soumis à la GPL. Si tu fais pas de gros copier/coller de code, y a pas de problème.

Après traduire ligne à ligne du code d’un language à un autre, c’est different, et la il est fort possible que ca ne soit pas autorisé.

N’importe quoi. Tu fais entierement ce que tu veux avec le code qui t’appartient, que tu l’ais releasé en GPL ou pas, ca reste ton code, et tu peux continuer à en faire ce que tu veux. La GPL ca s’applique aux gens à qui tu distribue le logiciel.

[quote=“kaneloon, post:18, topic: 44996”]Ce qui voudrait dire que les gens de microsoft ne pourraient même pas regarder leurs propre tutos s’il étaient en GPL pour faire des projets closed source ? C’est génial ce truc. Tu fais une fois un code standard pour un site web quelconque en GPL et jamais tu peux le réutiliser toi même B) , je commence à comprendre le soucis qu’il y avait avec cafzone v2.0.
Sinon, pour le sujet de base, ben tu peux toujours alerter ton patron, mais bon…[/quote]

Non ce n’est pas du tout vrai, il suffit de regarder du coté de mysql et de sa double license GPL-commerciale. Les projets Microsoft qu’ils soient GPL où pas appartiennent avant tout à Microsoft et ils sont libres de changer de license à tout moment et même de proposer un logiciel sous plusieurs licenses.

Ne pas oublier qu’un logiciel appartient avant tout à son auteur et que c’est celui-ci qui défini la méthode de distribution et le coût de ses créations.