Choisir une licence

N'écrivez pas une nouvelle licence si vous pouvez employer l'une de celles qui sont listées ici. La propagation de licences nombreuses et incompatibles cause du tort au logiciel open source car on ne peut pas utiliser des fragments d'un programme au sein d'un autre programme si les deux licences qui les protègent sont incompatibles.

Abstenez-vous d'utiliser la licence Artistic à moins que vous ne prévoyiez de l'étudier attentivement et d'en ôter les échappatoires. Puis, prenez quelques décisions :

  1. Souhaitez-vous ou non que l'on puisse rendre des modifications secrètes ? Si vous souhaitez pouvoir obtenir, de la part de ceux qui les ont apportées, le code source des modifications, utilisez une licence qui l'exige. La GPL et la LGPL sont de bons candidats. Si cela ne vous ennuie pas qu'on puisse modifier votre programme sans vous en rendre compte, utilisez les licences X ou Apache.

  2. Souhaitez-vous que quelqu'un puisse fusionner votre programme avec son propre logiciel, propriétaire ? Si c'est le cas, utilisez la LGPL, qui autorise explicitement cela sans permettre à autrui d'apporter des modifications à votre propre code sans les publier, ou utilisez les licences Apache ou X, qui autorisent le fait de rendre des modifications secrètes.

  3. Souhaitez-vous qu'on puisse vendre des versions de votre programme sous licence commerciale, non open source ? Si c'est le cas, distribuez votre programme sous les termes de deux licences. Je recommande la GPL en tant que licence open source ; vous pourrez trouver une licence commerciale appropriée dans des livres tels que Copyright Your Software (protégez vos logiciels grâce au copyright), édité par Nolo Press.

  4. Souhaitez-vous que tous ceux qui utilisent votre programme acquittent une somme pour bénéficier de ce privilège ? Si c'est le cas, alors peut-être que l'open source n'est pas pour vous. Si souhaitez que certains utilisateurs vous donnent de l'argent, c'est toujours possible en publiant votre programme sous une licence open source. La plupart des auteurs de logiciels open source considèrent que leurs programmes sont des contributions au bien public, et se fichent de recevoir ou non de l'argent pour ces derniers.

Tableau 11-1. Comparaison des pratiques des différentes licences

LicenceLe programme peut être mélangé avec du logiciel non libreLes modifications peuvent être rendues secrètes et non communiquées à l'auteurTout un chacun peut placer le programme sous une nouvelle licenceLa licence renferme des privilèges particuliers pour le détenteur du copyright, qui peuvent s'appliquer à vos modifications
GPLNNNN
LGPLONNN
BSDOONN
NPLOONO
MPLOONN
Domaine publicOOON