Licence open source

Définition d’un logiciel libre

Le logiciel libre se définit par le respect de quatre libertés fondamentales :

  • Exécuter le programme.
  • Etudier le programme et l’adapter selon son besoin (accès au code source).
  • Redistribuer le programme pour aider son prochain.
  • Améliorer le programme et distribuer ces améliorations au public.

Définition d’une licence open source

L’OSI, Open Source Initiative, a édicté une définition précise de ce qui signifie open source. Avoir une définition officielle précise et très important, une licence ne doit pas pourvoir être plus ou moins open source : elle l’est ou ne l’est pas, les choses doivent être claires.

Il y a deux grandes familles de licences open source : la famille BSD et la famille GNU GPL.  On parle parfois de licences copyleft pour les secondes et de licences non copyleft pour les premières.

La famille BSD

La licence BSD (Berkeley Software Distribution)  autorise n’importe quelle utilisation du programme, de son code source et de travaux dérivés. Le code sous licence BSD peut en particulier être utilisé intégré à des logiciels sous licence non open source. On sait que Microsoft a repris du code TCP-IP sous licence BSD dans Windows.

La seule contrainte spécifique est l’interdiction de chercher à tirer avantage de la dénomination de l’auteur, ici l’Université de Berkeley.

On peut Redistribuez le logiciel sans son code source, ou encore inclure un élément sous BSD dans un produit sous une autre licence.

C’est la licence la plus libérale, les programmes sous licence BSD sont quasiment dans le domaine public. Dans la famille BSD, on trouve aussi la licence MIT et la licence Apache. Cette dernière est d’une grande importance puisque utilisée déjà par la cinquantaine de projets de la fondation Apache.

 

La famille GNU GPL

La licence GNU GPL, « GNU General Public Licence », se caractérise principalement par le droit de modifier le programme et de redistribuer ces modifications, qui constituent des œuvres dérivées, à la condition que ce soit sous la même licence GPL.

  • oeuvre dérivée : si vous prenez un bout de code source du programme A, que vous modifiez des lignes ou ajoutez des lignes pour obtenir un programme B, c’est oeuvre dérivée.
  • Distribuer un logiciel inclut vendre des copies de celui-ci. Si vous distribuez des copies, vous devez redistribuer le code source avec le logiciel.

Autre point, si vous avez le droit de vendre des copies de logiciels sous GNU GPL, il faut savoir que si quelqu’un achète une copie, il aura le droit de distribuer le logiciel (gratuit ou payant). c’est pour cela la plupart des entreprises qui créent des logiciels libres sous GNU GPL préfèrent vendre des services en rapport avec le logiciel, comme un abonnement de support technique par exemple.

Tout projet qui inclurait un élément sous licence GNU GPL ne pourra être distribué  que sous GNU GPL.