Choisir une licence OpenSource

J’ai un projet à developper cette année pour l’université, avec un groupe. Il s’agit d’une appli web.
On s’est dit que l’on pourrait la mettre sous licence OpenSource. Premièrement car il s’agit d’un projet étudiant qui nous sert à apprendre, et deuxièmement car cela nous permettrait d’utiliser gratuitement certains services web tel que SourceForge par exemple.

Cependant, plus je me renseigne afin d’arriver à choisir la bonne licence, moins j’ai l’impression d’y arriver.

On aimerai :

  • permettre la redistribution, la modification libre du code source
  • que les personnes qui modifient notre code, le laisse libre.
  • empêcher les personnes qui récupèrent la source de distribuer l’appli par la vente, ou faire payer pour son utilisation (mais qu’à la rigueur on n’en ai le droit, même si nous ne partons pas avec l’idée de faire du fric)

Le problème à rajouter, c’est que l’on part avec l’idée d’utiliser des API propriétaires, genre celle de Google ou Yahoo. Et qu’il faut que l’on trouve une licence qui le permette ou un moyen pour que cela n’annule pas la licence.

J’ai aussi lu certains trucs sur les licences double voir multiple. Mais je n’ai pas vraiment réussi à comprendre exactement dans quel cas les utiliser, et comment chaque licence s’applique.

Bref je sollicite votre aide. B)

Si vous connaissez une licence faisant partie de cette liste qui répond à nos besoins ou qui s’en approche, ce serait sympa de l’indiquer. B)

Merci

La GPL ou LGPL :

OK pour toutes les licenses Open Source

Tout l’intéret de la GPL : si ton code est en GPL, les améliorations doivent rester en GPL.

La GPL n’interdit pas de se faire du fric sur le logiciel, mais il oblige de mettre à disposition les modifs qui doivent rester en GPL (cf point précédant).

Maintenant, je ne connais pas toutes les licences OpenSource dans le détails, mais évite la BSD car cette license autorise l’utilisation de ton code dans un projet commercial et n’oblige pas de mettre les modifis à disposition.

Chez Creative commons, tu devrais trouver ton bonheur : http://fr.creativecommons.org/contrats.htm

Ouais, mais Creative Commons, c’est pas envisageable, pour le coup des API propriétaires, non ?

J’me pose le même genre de question, en ce moment, d’ailleurs.

Ouais la GPL correspond pour tous ces points. Malheureusement de part ce que j’ai lu, si il y a du code propriétaire avec le reste du code en GPL, la licence est nulle. Donc faut que l’on trouve un moyen qui autorise la présence de ce code propriétaire avec du code libre.

Je crois que Creative Commons ne se limite qu’aux oeuvres. Textes, photos, peintures, musiques, films, etc… Ils parlent aussi de sites webs, mais je pense que cela doit se limiter qu’au HTML et CSS.

Renseigne toi du coté de la LGPL, normalement, tu peux faire cohabiter des licenses libres et non libres dans un même programme.

La GPL est “virale” donc ça risque de poser probleme avec les API propriétaires et la LGPL authorise les forks commerciaux. Tout est affaire de compromis. Une solution élégante peut etre de mettre la maximum en GPL et de faire des plugins chargés dynamiquement et non nécessaire au fonctionnement de la couche de base dans une licence moins restrective. Un peu comme les modules proprio d’un kernel open source.

Attention, nous faisons une appli web. Pas un logiciel. Et vu comme c’est partie les APIs web seront utilisé pour des fonctionnalités de « base ».

Question con : pourquoi ne pas créer ta propre licence ? Un truc basique, qui réponde à 100% à tes besoins.

A moins que je ne me trompe, une licence logicielle n’est rien d’autre qu’un “contrat” qu’on accepte tacitement en utilisant un logiciel. Il n’y a pas de dispostion légale particulière à prendre en compte me semble-t-il.

Tu t’inspires des licences existantes, tu rajoutes ta sauce et hop le tour est joué.

Les licences Creatives Common permentent de rajouter une telle clause mais alors ce n’est plus du libre.

edit : Ce n’est pas les Créatives Common qui sont en cause mais le fait même d’empecher la revente qui est considéré pas libre. en effet ca va a l’encontre des 4 libertés fondamentales du Logiciel Libres.

Je ne pense pas en être capable. Car un programme tombe sous le droit d’auteur, qui est à ma connaissance assez complexe, d’autant plus en France. De part ce que j’ai lu, certains pensent que les licences comme GPL ne correspondent pas vraiment au droit français.

Ouais mais non, on veut faire de l’OpenSource, pas du libre. Si je ne me trompe pas, ce n’est pas exactement la même chose.
J’ai lu aussi que certaines licences autorisaient de revendre lorsque le prix servait à rembourser les coûts liés à la duplication de CD, à la mise en boite etc… Ceci nous gêne bien sûr pas.

Enfin le plus gros problème, c’est les APIs propriétaires. Et je ne suis pas vraiment partant pour utiliser la LGPL. Elle a avant tout été prévue pour que des bibliothèques libres puissent être inclues dans des logiciels propriétaires.

Flag + /summon perco.

Sinon, il existe une license libre française : http://www.cecill.info/

Je n’ai pas regarder dans le détail et elle est encore jeune mais ça peut correspondre à tes besoins.

Merci pour le lien vers le site officiel de CeCILL, j’étais passé à côté. PLutôt intéressante comme licence, je vais plus me renseigner dessus.

Si j’ai bien compris. Le mieux est de choisir une licence qui correspond bien à l’ensemble du projet, et qui exclu bien sûr les bouts de code propriétaire. Et signaler à côté que cette partie ne tombe pas sous la licence, etc.
Je pense que les APIs doivent être un peu des cas à part mais je n’ai pas trouvé d’infos dessus. Enfin je crois qu’en procédant comme ça cela ne devrait pas trop poser de problème.

En tout cas, ça me permet de voir que le monde des licences libres est un beau bordel. B)

Faut voir pour les API y’a pas mal de codes C# qui utilisent les WInforms proprietaires en licence GPL. Donc c’est peut etre possible.

non non… là je passe B)

Bonjour à tous,

[quote]J’ai un projet à developper cette année pour l’université, avec un groupe. Il s’agit d’une appli web.
On s’est dit que l’on pourrait la mettre sous licence OpenSource. Premièrement car il s’agit d’un projet étudiant qui nous sert à apprendre, et deuxièmement car cela nous permettrait d’utiliser gratuitement certains services web tel que SourceForge par exemple.[/quote]
Sourceforge, bof… Avis perso B)
Gna !, Tigris, TuxFamily, Code-Libre (pas encore d’hébergement de site web), Berlios
Vous trouverez les présentations de ces forges sur la page dédiée du wiki Veni, Vidi, Libri.

[quote]On aimerai :

  • permettre la redistribution, la modification libre du code source
  • que les personnes qui modifient notre code, le laisse libre.
  • empêcher les personnes qui récupèrent la source de distribuer l’appli par la vente, ou faire payer pour son utilisation (mais qu’à la rigueur on n’en ai le droit, même si nous ne partons pas avec l’idée de faire du fric)[/quote]
    Une licence libre requiert 4 libertés (utiliser, étudier, copier/diffuser, modifier).
    Il me semble que ces 4 critères correspondent à vos attentes.
    Pour que les personnes qui modifient le code le laisse libre, il faut opter pour une licence de type "copyleft’. Le copyleft englobe les 4 libertés et ajoute la contrainte de réciprocité, à savoir que le code dérivé doit se placer sous la même licence. La Réciprocité est aussi appelée plus péjorativement viralité ou contaminance. Et le copyleft peut-être plus ou moins fort. Parmi les licences les plus copyleft, on peut citer la GNU GPL, l’OSL, ou encore la CeCILL. Moins copyleft : la GNU LGPL, la CeCILL-C, la MPL.

L’idée même de restreindre le caractère commercial de l’appli est difficile à mettre en œuvre, voire impossible, avec une licence libre. Cela nuit à l’une des libertés. Mettre sous licence libre une application, ou un code, n’interdit pas son utilisation commerciale, et si vous choisissez pour son utilisation commerciale, une tierce personne peut opter pour la redistribuer gratuitement à son tour, ou même de la faire payer, sans vous en reverser un seul centime.

L’idéal pour ceci serait de proposer une double licence : une licence à fort copyleft comme la GNU GPL, par exemple d’un côté, obligeant ainsi les utilisateurs à redistribuer leurs programmes sources s’ils l’utilisent. Et une licence commerciale d’un autre côté pour les entreprises qui souhaitent se baser dessus pour en faire une application commerciale, sans en redistribuer eux-mêmes les sources. C’est le choix qui a été fait, notamment, par MySQL…

[quote]Le problème à rajouter, c’est que l’on part avec l’idée d’utiliser des API propriétaires, genre celle de Google ou Yahoo. Et qu’il faut que l’on trouve une licence qui le permette ou un moyen pour que cela n’annule pas la licence.
Là réside tout le problème.[/quote]
Coupler une licence libre à une licence propriétaire n’est théoriquement pas possible. En fait, le problème vient principalement sur la garantie des 4 libertés, et notamment la libre diffusion de l’application. En effet, la majorité des licences propriétaires interdisent la diffusion de l’application. Pour s’en affranchir, il faut donc NE PAS diffuser soi même l’application propriétaire.

Cela dit, suivant l’utilisation précise de ces API, il est possible éventuellement d’utiliser à titre exceptionnel des licenecs libres.

En fait, cela paraît compliqué en théorie, mais dans la pratique, c’est assez simple. Voir l’exemple ci-dessus de MySQL. Le navigateur FireFox lui-même utilise une triple licence : GNU GPL, LGPL, MPL.

L’idée est en fait de proposer un ensemble de licences afin de permettre à son application d’utiliser le maximum de licences possibles. Les licences GPL, LGPL et MPL étant incompatibles, prévoir de placer le code sous ce trio équivaut à « s’affranchir » de ces incompatibilités. Pour une tierce personne qui souhaite utiliser une partie du code placé sous cette tri-licence, il pourra choisir laquelle correspond le mieux à son utilisation, pour son propre code.

Bref, on assoupli considérablement les possibilités d’utilisation de chaque licence.

Bien évidemment, il faut que chaque (en tout cas, la majorité) contribution apportée au logiciel original soit placé sous les trois licences afin de garantir la pérennité de la triple licence.

C’est exactement là où je voualis en venir. Là où un logiciel 100% libre donnera dans ses sources la liste des auteurs et des licences utilisées, un code basé en partie sur des bouts de codes non libres devra être parfaitement transparent. Et noter à l’intérieur de ces codes chaque licence, chaque auteur et contributeur, et surtout la liste des EXCEPTIONS à la licence utilisée, en précisant que le code est sous licence propriétaire, et où trouver le code.

Tout dépend des API utilisées. une API windows, nécessaire au fonctionnement d’un logiciel sous cet OS n’est pas un frein à l’utilisation d’une licence libre. En fait, on peut se baser sur des pilotes ou des API de l’OS, sans considérer qu’il s’agit d’entorse à la licence libre.

Pour une API web, aucune idée… J’imagine que ce genre d’API n’est pas tributaire d’un système d’exploitation, mais s’il est tributaire d’un langage ou d’une plateforme propriétaire, le même raisonnement peut être appliquée. Si je développe un soft sous Visual Basic, je peux très bien placer mon code sous licence libre.

Oui, effectivement, on entre ici dans un monde à part, où se cotoie le monde des développeurs et le monde des juristes. Les deux ayant une vision bien particulière de ce que doit faire une licence. Ajouté au nombre de licences libres existentes, et au peu d’informations disponibles (et le peu de temps disponible pour toutes les étudier pour un développeur qui n’a pas vocation de devenir juriste) fait qu’il est difficile de s’y retrouver B)

C’est une question intéressante. Bien que l’idée puisse paraître bonne, il vaut mieux éviter.
Aujourd’hui il existe énormément de licences libres, ou semi-libres, et très peu sont les personnes capables d’en comprendre toutes les caractéristiques. Déjà que le nombre de personnes connaissant les licences GNU GPL et les comprenant sont faibles… En fait, personne n’a envie de lire une licence, quelle qu’elle soit. En créé une, c’est non seulement penser que tout un chacun va devoir lire cette licence, mais en plus, il faudra qu’elle soit respectée. Ensuite, il faut qu’elle soit conforme au droit français, d’une part, mais applicable à d’autres juridications, si jamais le code est téléchargé depuis un pays étranger… Bref, vraiment à éviter.

Oui, et non… La scission est venue il y a fort longtemps entre la FSF (Free Software Foundation) et l’OSI (Open Source Initiative), la vision de la FSF étant davantage « philosophique » que celle de l’OSI, qui pensait que cette vision trop « idéologique » de R.M. Stallman, entre autres, ne soient mal perçus du côté économique (en gros pour les entreprises et l’utilisation commerciales des licences libres).
Aujourd’hui, le fossé s’est considérablement réduit, et il n’y a plus vraiment de quoi partager les deux courants.

C’est le cas pour toute licence libre :smiley:
En fait, suivant les organismes, on peut ou non vendre un logiciel, mais pas les sources. On peut cependant se faire payer pour le support de celles-ci. D’autres organismes penchent plus sur l’inverse : un logiciel doit être gratuit, l’accès au sources pouvant être payant.
Personnellement, je préfère dire que quoi que ce soit, tôt ou tard, il est possible de trouver une application sous licence libre gratuitement sur le web, il ne faut pas se voiler la face, il est très difficile de gagner de l’argent sur la seule distribution d’un logiciel libre.
Associer des services (installation, formation, personnalisation, support, hotline, accès aux forums, aux documents…) est certainement plus simple pour efectivement espérer un peu de retombée financière… choisir une double licence libre / commerciale peut également être un excellent choix.

Oui, la GNU Library GPL a été créée dans ce but.
Non, la GNU Lesser GPL ne se cantonne plus qu’à ça :smiley: En fait, la GNU LGPL est devenue aujourd’hui la Lesser GPL, et même si l’utilisation majeure de celle-ci se cantonne aux bibliothèques, elle n’en est plus la seule utilisation possible.

Même si le principe reste le même. Elle permet de s’associer à du code non-libre, dans le cas où il est impossible de faire autrement. Elle est dite de copyleft amoindrie ou standard, dans la mesure où seul la partie placée sous licence LGPL devra être redistribué / modifié sous la même licence. La partie sous licence propriétaire ne pouvant pas être modifiée.

J’espère avoir répondu suffisament clairement, si ce n’est pas le cas, surtout nhésitez pas à me demander des précisions, où à visiter plus en détail le wiki de Veni, Vidi, Libri :stuck_out_tongue:

Librement,

Tolosano

[EDIT] Pourquoi mes citations ne fonctionnent pas ?? [/EDIT]