C. Charreyre christian.charreyre@ciose.fr http://www.ciose.fr Licences libres & embarqué Licences libres et embarqué - 16 Mars 2015 1
Licence Attribution-Noncommercial-Share Alike 4.0 International You are free: to Share - copy and redistribute the material in any medium or format to Adapt - remix, transform, and build upon the material The licensor cannot revoke these freedoms as long as you follow the license terms. Under the following conditions: Attribution You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. NonCommercial You may not use the material for commercial purposes. ShareAlike If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original. No additional restrictions You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits. License text : http://creativecommons.org/licenses/by-nc-sa/4.0/legalcode Licences libres et embarqué - 16 Mars 2015 2
CIO en quelques mots Société d'ingénierie en systèmes embarqués : électronique et logiciel Au service de nos clients depuis 1990 15 spécialistes en embarqué et temps réel Expert en Linux embarqué depuis 2000, OpenEmbedded et Yocto depuis 2008 CA annuel : 1 500 000 Siège à Saint-Etienne Agence à Marseille Agréé CIR Licences libres et embarqué - 16 Mars 2015 3
C. Charreyre en quelques mots Associé au sein de CIO Responsable des technologies Linux embarqué Formateur Linux embarqué (avec Captronic et en direct) 30 ans dans l'embarqué et le monde Unix / Linux Fervent promoteur du logiciel libre Membre de Medinsoft Commission Logiciel Libre Licences libres et embarqué - 16 Mars 2015 4
Avertissement Licences relèvent du droit Informations fournies dans ce document le sont par un technicien et non un juriste Considérer ce document comme informatif et si nécessaire faire appel à un juriste spécialisé Licences libres et embarqué - 16 Mars 2015 5
Quelques définitions OpenSource : logiciel dont les sources sont accessibles Gratuit : logiciel dont l utilisation n est pas soumise à redevance, mais dont l accès au source n est pas automatique: de nombreux freeware sous Windows Logiciel libre : logiciel pour lequel l utilisateur a les 4 degrés de liberté suivants: Liberté d exécution (0) Liberté d'accès au source à fin d'étude ou de modification (1) Liberté de redistribution, tel quel (2) ou modifié (3) Licences libres et embarqué - 16 Mars 2015 6
Quelques définitions www.ciose.fr Source : http://www.gnu.org/philosophy/categories.html Licences libres et embarqué - 16 Mars 2015 7
Quelques définitions Permissive licence : les droits liés au logiciel libre ne sont pas garantis en cas de redistribution Possibilité de restreindre l'accès au code source du binaire redistribué (identique ou modifié) Ex : MIT, BSD Copylefted licence : les droits sont garantis en cas de redistribution Pas de restriction des droits en cas de redistribution (identique ou modifié) Ex : GPL Licences libres et embarqué - 16 Mars 2015 8
Les licences GPL / LGPL De nombreux éléments du monde Linux relèvent de la licence GPL (Gnu General Public License), ou de ses variantes (LGPL = Gnu Lesser General Public License ) Texte complet des diverses licences GNU à http://www.gnu.org/licenses/index.html Kernel et beaucoup de logiciels sous GPL v2 Nouvelle version de la GPL = GPL v3. Voir le quick guide à http://www.gnu.org/licenses/quick-guide-gplv3.html Un certain nombre de bibliothèques sous LGPL (dont la glibc) Licences libres et embarqué - 16 Mars 2015 9
Les licences GPL / LGPL La licence GPL est "contaminante" : Le code GPL propage la licence à tout programme qui l'utilise Une licence dérivée applicable aux librairies : la licence LGPL : Ne propage pas la licence aux programmes utilisateurs Licences libres et embarqué - 16 Mars 2015 10
Les licences GPL / LGPL Redistribuer le code des librairies LGPL System call Application GPL Application propriétaire Code GPL System call Librairie GPL Librairie LGPL Librairie propriétaire Kernel Licences libres et embarqué - 16 Mars 2015 11
Les licences GPL / LGPL Kernel Linux GPL insmod Driver GPL Driver GPL Driver non GPL insmod Driver non GPL Accès réduit aux services du kernel (EXPORT_SYMBOL_GPL vs EXPORT_SYMBOL) Licences libres et embarqué - 16 Mars 2015 12
Matrice de compatibilité des licences Source : http://www.gnu.org/licenses/quick-guide-gplv3.html Licences libres et embarqué - 16 Mars 2015 13
Conséquences? A priori l'industriel ne souhaite pas ouvrir son code applicatif (licence GPL) Sauf S'interdire d'utiliser du code GPL, même partiellement Si les gains escomptés sont supérieurs aux pertes Réutilisation de code GPL forte économie de développement Le code ouvert ne pénalise pas le produit ex : code très fortement lié à un device difficile à reproduire Le code seul sans le savoir faire associé est un actif relatif Si l'industriel veut créer une communauté autour de son produit Amélioration du produit par des contributions d'utilisateurs Marketing autour de l'ouverture du produit Licences libres et embarqué - 16 Mars 2015 14
Conséquences? Faut il renoncer à utiliser des composants issus du logiciel libre? Non car de nombreuses bibliothèques disponibles sous licence LGPL Possibilité de produire du logiciel propriétaire appuyé sur ces bibliothèques Non car utiliser les richesses de l'écosystème Linux peut raccourcir et sécuriser les développements Puiser dans l'écosystème Linux (y compris GPL) pour tout ce qui n'est pas l'applicatif métier : shell, daemons réseau, window manager, services etc... Licences libres et embarqué - 16 Mars 2015 15
Quelles obligations de distribution? Fournir spontanément les codes sources sous GPL ou LGPL Versions exactes + patches + outils de génération (Makefiles, autoconfiguration etc...) Fichiers ReadMe + License ou Copying + texte de la licence Seul le coût de production des sources (gravure CD) peut être facturé Possibilité de se limiter à une offre écrite de fourniture sur demande Licences libres et embarqué - 16 Mars 2015 16
Quelles obligations de distribution? Pas d'obligation de publication générale (site FTP) ou de contribution amont (modifications) Mais rien n'empêche celui qui reçoit les sources d'en faire ce qu'il veut Mais remonter les modifications / améliorations participe à l'amélioration du logiciel (cercle vertueux) Contribuer participe au respect du contrat social du libre : valeurs de partage Licences libres et embarqué - 16 Mars 2015 17
Quelles obligations de distribution? Le fait de livrer un device ne dédouane pas de fournir les sources des logiciels inclus Au contraire cela complexifie la tâche car ce sont tous les éléments du Root File System qui sont concernés : Bootloader Kernel Busybox Toutes les librairies ou utilitaires sous licence GPL ou LGPL Grande proportion de ce qui est compilé hors logiciels applicatif métier Licences libres et embarqué - 16 Mars 2015 18
Exemples de contentieux Freebox : Busybox et Iptables dans le logiciel de la Freebox Free considère qu'il n'a pas a fournir les sources car Freebox louée FSF France assigne Illiad en justice en 2008 Transaction en 2011 : mise en place site http://floss.freebox.fr/ H. Welte vs Sitecom H. Welte auteur de netfilter / iptables GPLv2 Sitecom produit hardware Wifi dont firmware téléchargeable contient netfilter / iptables Pas mention crédits / licence ni possibilité télécharger code source Sitecom condamné par tribunal allemand pour violation GPL obligation de respecter GPLv2 pour toute copie/distribution sous peine de pénalités Licences libres et embarqué - 16 Mars 2015 19
Exemples de contentieux H. Welte vs Skype Skype propose téléphone IP basés sur Linux depuis site Web Pas licence et code source avec les téléphones, seulement un lien dans la documentation Tribunal estime que c'est insuffisant injonction à fournir licence + code source avec les téléphones Pour un détail des cas jugés en Europe, voir Philippe Laurent - Open Source / Content Licences before European Courts - http://faif.us/cast-media/faif_0x2c_fosdem-laurent_slides.pdf Licences libres et embarqué - 16 Mars 2015 20
Un exemple : Samsung Nombreux produits basés sur logiciels Open Source Création site dédié Open Source Relelase Center : http://opensource.samsung.com Licences libres et embarqué - 16 Mars 2015 21
Ressources Open Compliance Program de la Linux Foundation : http://www.linuxfoundation.org/programs/legal/c ompliance Documents, formations et outils pour gérer les problèmes de licences dans l'embarqué, en particulier mobile et consumer electronics (contenus riches) SPDX : Standard Package Data Exchange : http://spdx.org/ Standard et outils pour échanger de manière normalisée les informations de licence de packages logiciels Licences libres et embarqué - 16 Mars 2015 22