: principes, enjeux, licences Séminaire ENACT - Angers - 11 janvier 2005 Frédéric Couchet <fcouchet@april.org> Free Software Foundation France - APRIL http://www.fsffrance.org/ - http://www.april.org/
Logiciel libre Au programme Principes du logiciel libre Petit historique Les enjeux du logiciel libre Les licences de logiciel libre
Principes du logiciel libre Penser à la libre expression ou le libre-échange, pas à la bière gratuite. 4 libertés : Liberté d utilisation d un programme Liberté de distribution d un programme Liberté d étudier et modifier un programme Liberté de distribuer les modifications d un programme Ne pas confondre logiciel commercial, logiciel libre et logiciel propriétaire
Le logiciel propriétaire Liberté d utilisation d un programme : oui (sous conditions) Liberté d étudier un programme : non Liberté de modification d un programme : non Liberté de distribution d un programme : non
Ne pas se tromper propriétaire!= commercial libre s oppose à propriétaire freeware, shareware... libre ne se réduit pas à l accès au code source
A l origine de la formalisation du logiciel libre 1984 - projet GNU (système GNU : GNU/Linux, GNU/Hurd) : volonté de créer un système entièrement libre Richard M. Stallman «invente» le logiciel libre (modèle de la recherche scientifique) Création en 1985 de la Free Software Foundation, organisation à but non lucratif pour disséminer et financer les projets logiciel libre pour sécuriser le logiciel libre à tous niveaux Rédaction en 1989 de la première version de la GNU General Public License (GNU GPL) avec des juristes
Un peu d histoire 1969 : ARPANET, UNIX, les premières RFC 1977 : Projet BSD 1984 : projet GNU 1991-1993 : *BSD 1991 : noyau Linux 1996 : noyau Hurd Linux + GNU + XFree86 +... -> système d exploitation complet Distributions GNU/Linux : Debian, Red Hat, Mandrake...
Accélération 1995 : création de Red Hat 1997 : démarrage de GNOME mai 1997 : article «The Cathedral and the Bazaar» de Éric S. Raymond 1998 : code source de Mozilla, support d Apache par IBM, logiciels propriétaires (SGBD), Open Source Initiative 1999 : magazines spécialisés GNU/Linux, arrivée massive d éditeurs, sociétes de services depuis 2000 : projets de loi, soutien de gouvernements. Code source d OpenOffice.org 2003 : Les logiciels libres font partie des questions débattues au SMSI
Distributions Distributions GNU/Linux Linux ne désigne qu une partie d un système complet, le noyau Pour pouvoir travailler il faut une distribution : des logiciels un programme d installation initiale un système d installation/désinstallation Debian, Red Hat, Mandrake... Cf http://www.distrowatch.com Distributions BSD, et logiciels libres pour systèmes propriétaires
Deux grands acteurs Free Software Foundation Open Source Initiative
Free Software Foundation (www.gnu.org) référence philosophique Fondée en 1985 par Richard M. Stallman, organisation à but non lucratif pour disséminer et financer les projets logiciel libre pour sécuriser le logiciel libre Financement : dons, vente de CDs, manuels... Logiciel libre Philosophie/Mouvement La FSF soutient GNU mais aussi Debian (1993) et d autres Aspects légaux du logiciel libre : sécurisation du logiciel libre La référence
Open Source Initiative création en 1998 notamment par Eric Raymond Open Source Definition «Projet» marketing du logiciel libre Labélisation de licences Marque déposée «Open Source Software»
Processus de création (1) Création du libre fondée sur l utilité sociale Internet favorise la diffusion et la création de logiciels libres Coopération rendue possible à grande échelle Evaluation par les pairs, sur des critères techniques
Processus de création (2) émulation très forte entre équipes compétition «ouverte», aucun secret de fabrication seules les meilleures solutions sont conservées (sorte de sélection naturelle) coopération, transparence on ne réinvente pas la roue à chaque fois => efficacité réutilisation de codes source, de composants fonction de la licence compatibilité des licences
Quelques enjeux du libre Diffusion et partage de l information Indépendance Diversités culturelles Pérennité des solutions Maîtrise et conservation de ses données Le logiciel libre répond à un besoin
Droit d auteur Programmes informatique protégés par le droit d auteur, le droit d auteur accorde un monopole, le droit d interdire Le droit d auteur garantit qu on ne peut : copier un programme pour le donner ou le vendre, (essayer de) le modifier, l utiliser en dehors des clauses stipulées par sa licence Le droit d auteur n interdit en revanche pas d écrire un nouveau programme : aux fonctionnalités similaires, compatible au niveau des formats d entree/sortie, interopérable avec le programme original Type de licence de distribution de logiciels (licences propriétaires, GNU GPL, BSD, X...)
Article L122-6 CPI L auteur a le droit d autoriser «la reproduction permanente ou provisoire d un logiciel en tout ou partie, par tout moyen, et sous toute forme [...]; la traduction, l adaptation, l arrangement, ou tout autre modification d un logiciel et la reproduction du logiciel en résultant; la mise sur le marché à titre onéreux ou gratuit [...]»
Licences de logiciel libre Déterminent les droits et devoirs des utilisateurs Différents types de licences dans le logiciel libre, couvrent des besoins spécifiques Conséquences différentes en fonction de la licence hérédité/persistance avec la GPL intégration des licences BSD-like GNU GPL, BSD, X, CeCILL...
Licences de logiciels libres licences avec Copyleft («gauche d auteur») : obligation de diffuser les versions modifiées sous les mêmes termes, le logiciel reste libre (GPL) licences sans Copyleft : on peut apporter des clauses restrictives, la version dérivée du logiciel peut ne pas être libre (X, BSD) de nombreuses licences exotiques (lisez avant d adopter) GNU GPL : création d un «pot commun» auquel chacun peut ajouter mais rien retirer «licence propriétaire» : réservation du programme «licence libre» : organisation de la diffusion du programme
Licence permissives On peut apporter des clauses restrictives, la version dérivée peut ne pas être libre BSD, X, Apache (choix «permissif» pour les travaux dérivés): avantage: Le code ou des extraits peuvent être réutilisées dans n importe quel type de logiciel libre ou pas, intégration Inconvénient: Conséquence: le logiciel contribué par des dévelopeurs du libre peut profiter à des projets propriétaires sans contrepartie En particulier: possibilité de bifurcation d une version propriétaire à partir de la version libre
Licence BSD Copyright (c) The Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
Licences restrictives ou plutôt libératrices obligation de diffuser les versions modifiées sous les mêmes termes, le logiciel reste libre GPL (notion de «copyleft») Avantage: le travail de la communauté ne peut pas être récupéré, persistance ou hérédité de la liberté Inconvénient (ou avantage selon le point de vue): Impossible de faire une version propriétaire La GNU GPL est une restriction mineure du point de vue du droit d auteur
GNU GPL, préambule Les licences de la plupart des logiciels sont conçues pour vous enlever toute liberté de les partager et de les modifier. A contrario, la Licence Publique Générale est destinée à garantir votre liberté de partager et de modifier les logiciels libres, et à assurer que ces logiciels soient libres pour tous leurs utilisateurs. La présente Licence Publique Générale s applique à la plupart des logiciels de la Free Software Foundation, ainsi qu à tout autre programme pour lequel ses auteurs s engagent à l utiliser. (Certains autres logiciels de la Free Software Foundation sont couverts par la GNU Lesser General Public License à la place.) Vous pouvez aussi l appliquer aux programmes qui sont les votres.
GNU GPL, section 2. b) Vous pouvez modifier votre copie ou vos copies du programme ou toute partie de celui-ci, ou travail basé sur ce programme, et copier et distribuer ces modifications ou ce travail..., à condition que vous vous conformiez également aux conditions suivantes :... b) C est sous les termes de la Licence Publique Générale que vous devez distribuer l ensemble de toute réalisation contenant tout ou partie du programme, avec ou sans modifications.
L évolution d une licence (1) Les licences accordent les libertés Les licences peuvent protéger les libertés Les licences n existent pas dans un espace vide Interprétation en fonction du système légal en vigueur Le système légal est construit par les hommes politiques, les juristes et ceux qui s y intéressent
L évolution d une licence (2) Les systèmes légaux ne sont pas statiques La technique n est pas statique Compatibilité des licences entre elles Modalité d application d une licence logiciel libre Evolution des licences (l acte de publication a changé)
Processus de création et licence logiciel libre Réutilisation de code source, de composants Modalité d application d une licence logiciel libre Compatibilité des licences entre elles
Respect des licences de logiciel libre Protection des quatre libertés GNU GPL: nombreux utilisateurs donc plus facile à défendre (> à 70 % des projets libres) Une douzaine de «potentialités de violation de la GNU GPL» par an Le contact initial suffit à régler le problème Dans les cas complexes, discussion avec les responsables Pas de paiements de dommages, le respect de la GNU GPL est le plus important seul l auteur peut agir
La Free Software Foundation, GNU et la GPL Utiliser la GPL n implique pas de faire partie du projet GNU Utiliser la GPL n implique pas de faire partie de la FSF Utiliser la GPL n implique pas de donner ses droits à la FSF La FSF est l éditrice de la GNU GPL
Rôle de la FSF Conseil sur les différentes licences et compatibilité des licences entre elles Modalité d application d une licence logiciel libre Défendre la GNU GPL par la conciliation avant la procédure Evolution de la GNU GPL (l acte de publication a changé) Interaction avec le système juridique et le système politique Interaction avec des développeurs, des sociétés de service, des administrations Logiciel mais aussi données et documentation (GNU Free Documentation License)
Le logiciel libre et les services publics Indépendance des gouvernements: formats ouverts, transparence, interopérabilité et logiciels libres Une administration produit ou commandite du logiciel libre L argent public ne doit payer qu une fois Logiciels métiers Mutualisation Licence CeCILL en 2004 (CEA, CNRS, INRIA)
Entreprises fortes compétences chez les jeunes ingénieurs, «culture libre» à leur entrée dans la société SSII spécialisées en logiciel libre («SS2L/SSLL») : Easter Eggs, Idealx, Linagora... SSII traditionnelles : Cap Gemini, Altran...
Diffuser en logiciel libre? très peu de code destiné à la vente immense majorité des développeurs payés pour écrire du code un logiciel sans bug n existe pas la "valeur" du logiciel augmente avec sa diffusion libre diffuser du logiciel libre : altruisme ou égoïsme? coûts de développement déjà dépensés publication en logiciel libre le rend résistant au temps (perte développeurs originaux, évolution)
Conclusion Quatre libertés: utilisation, étude, modification, redistribution Le logiciel libre s appuie sur le droit d auteur et le ressource Le contexte légal du logiciel libre a permis la mobilisation d une extraordinaire quantité d énergie Intégration de code et de licences
Références FSF: http://www.gnu.org/licenses/ OSI : http://www.opensource.org/licenses/ APRIL : http://www.april.org FSF France : http://www.fsffrance.org