Linux France

S'abonner à flux Linux France
Mis à jour : il y a 1 heure 15 min

Kernel Recipes 2016 : découvrez la 5e édition de la conférence sur le noyau Linux

Jeudi 1 Septembre

hupstream est fier de vous présenter la 5e édition de Kernel Recipes. Cette 5e édition aura lieu dans les locaux de Mozilla à Paris, du 28 au 30 septembre 2016. Les 4 premières années ont été l'occasion de belles rencontres avec des gens passionnés et passionnants. Nous fêtons cette 5e édition en conservant l'idée que l'événement doit être abordable pour tous, à taille humaine pour favoriser les échanges, convivial.

Le programme de cette année se propose de balayer un certain nombre de sujets : sécurité, développement, outils, documentation, embarqué, hardware…

Parmi les intervenants de cette édition : Greg KH (Linux Foundation), Willy Tarreau (HaproxyTech), Jonathan Corbet (LWN.net), Konstantin Ryabitsev (Linux Foundation), Michael Kerrisk, Steven Rostedt (Red Hat), Daniel Vetter (Intel), Ben Hutchings (Codethink), Dodji Sekeleti (Red Hat), Borislav Petkov (SUSE), Tejun Heo (Facebook), Hans Verkuil (Cisco), Laurent Pinchart (Ideas On Board), Mickaël Salaün, Kevin Hilman (BayLibre) et Jean Delvare (SUSE).

Le programme est maintenant complet mais vous pouvez proposer une intervention pour le jeudi 29 septembre, lors de la session de lightning talks. Enfin nous vous proposons 2 soirées pour poursuivre les discussions de la journée.

Un grand merci enfin à notre partenaire Gandi et nos sponsors, Mozilla, HaproxyTech, BayLibre, SUSE.

Les inscriptions démarreront dans la journée du 1er septembre 2016.

Télécharger ce contenu au format Epub

Lire les commentaires

Linutop OS XS disponible pour le Raspberry PI3

Mercredi 31 Août

Linutop OS XS est une distribution conçue pour simplifier l’usage en entreprise d’un Raspberry Pi. Elle est basée sur raspbian Jessie et peut être utilisée sur Raspberry Pi 3 (et zero, A, A+, B, B+, 2).

NdM.: nous n'avons pas plus d'informations sur les différences entre la version démo (image CD/USB/SD) et la version complète.

Parmi les nouveautés : mise à jour du panneau de configuration Linutop, améliorations du kiosque d'affichage dynamique et du wifi. Et on y retrouve toujours VLC avec accélération Hardware, XFCE, VNC, etc.

Avantages :

  • Panneau de configuration graphique en français
  • Permet de construire un affichage dynamique local ou distant à moindre coût avec une consommation électrique minimale

Principaux usages :

  • Kiosque Internet : salle d'attente, hôtel, bureau, école, borne d'accès Internet publique…
  • Affichage dynamique et diffusion audio : école, musée, magasins communication interne…
Télécharger ce contenu au format Epub

Lire les commentaires

État de l’espéranto sous GNU/Linux

Mercredi 31 Août

L’espéranto, créé pour être facile à apprendre et servir de passerelle neutre entre les peuples, continue tranquillement à faire son chemin dans le monde entier. Faisons un point sur la prise en charge, tant du point de vue des traductions que de l’écriture, de cette belle et intéressante langue sous GNU/Linux.

Sommaire Introduction Qu’est-ce que l’espéranto ?

L’espéranto est une langue inventée par Ludwik L. Zamenhof. Il habitait dans une ville proche de la frontière entre l’Autriche, la Prusse et l’Empire russe. Il parlait couramment le russe, le polonais, l’allemand, l’hébreu et le yiddish, et pensait que l’incapacité à communiquer jouait un rôle majeur dans les conflits entre groupes ethniques.

Après de nombreuses années de travail, il publie en 1887 le livre « Langue Internationale » décrivant sa langue, très simple et rapide à apprendre, destinée à favoriser la compréhension entre les peuples. Avec la montée du nationalisme précédant la Première Guerre mondiale et les idéalismes de l’époque, l’idée d’une langue internationale était très attrayante.

Le Volapük, précédente tentative similaire, se répandait depuis 1879. Mais le développement ouvert et dynamique de l’espéranto convainquit un nombre important de personnes dont une bonne partie des locuteurs du Volapük. Son succès est tel qu’en 1905, à peine 18 ans après l’apparition de la langue, se tient le 1er congrès mondial d’espéranto à Boulogne-sur-Mer.

Bien sûr, l’histoire de l’espéranto n’est pas sans reliefs. La politique a joué un grand rôle dans son histoire : des projets concurrents à une époque où l’idée de langue internationale intéressait certaines élites, aux répressions des régimes nazis et stalinien, en passant par l’opposition de la France à son adoption en tant que langue internationale par la Société des nations (ancêtre de l’ONU).

On peut donc qualifier l’espéranto de succès : c’est, parmi des centaines de tentatives, la seule langue construite à être devenue une langue vivante. En effet, il y a plus d’une centaine de milliers d’espérantophones, et ce nombre de locuteurs augmente constamment. Il y a même des espérantophones natifs !

Aujourd’hui on peut se faire héberger à l’étranger grâce au Pasporta Servo, faire un service civique pour faire connaitre l’espéranto, ou participer à un festival culturel en espéranto ! Des gens sont payés pour travailler en espéranto à la construction de sites web d’apprentissage de langue (deutsch.info, slovake.eu, mluvtecesky.net) ou à des projets concernant l’espéranto.

L’espéranto et le mouvement du logiciel libre

Malgré le succès de la langue, il y a assez peu de logiciels libres traduits en espéranto. Ça parait logique : si le logiciel est disponible dans une de nos langues natales, pourquoi s’embêter à le traduire ?

Pourtant c’est utile pour que tout le monde puisse comprendre le logiciel même s’il n’est pas traduit dans chaque langue vivante existante. C’est un privilège de francophone d’avoir beaucoup de logiciels traduits dans notre langue.

D’un autre côté, la plupart des logiciels traduits en espéranto — tous ceux que je connais — sont des projets communautaires de logiciel libre : là où il semble assez peu probable pour une entreprise de dépenser de l’argent pour une traduction en espéranto, le modèle collaboratif attire des traducteurs bénévoles.

Certains sites web de logiciels libres sont aussi disponibles en espéranto, comme celui de Firefox ou celui de Mageia. À noter qu'en dehors des logiciels libres, il est possible d'utiliser Facebook, Google et Ipernity en espéranto.

Le souci avec les sites non-communautaires, même si on peut parfois ajouter des traductions, c’est qu’on peut se retrouver bloqué bêtement. Par exemple, une traduction de Twitter existe, mais ce dernier n’a personne qui peut la valider (et ne semble pas compter ça dans ses priorités).

De plus, le mouvement espérantiste est empreint de valeurs proches du logiciel libre : le partage, l’entraide, etc. D’ailleurs de nombreux et nombreuses espérantistes utilisent GNU/Linux.

Ainsi, la majorité des associations utilisent des ordinateurs sous GNU/Linux tous les jours ou pour l'organisation des festivals et congrès : pour l'administration (comptabilité sous Grisbi), l'édition de leurs magazines avec Scribus, leurs sites web avec SPIP…

Traduction en espéranto Ajout de la locale Espéranto dans glibc

En informatique, ce qu’on appelle locale ou paramètres régionaux sont les informations utiles à la régionalisation des logiciels. Ceci concerne notamment la langue, la représentation des chiffres, le format de date et d’heure, la monnaie et le système d’unités utilisées.

Les paramètres régionaux du système sous GNU/Linux sont gérés par la glibc, et définit selon le format language[_territory][.codeset], par exemple, fr_FR.UTF-8, en_US.UTF-8 ou eo.UTF-8. Tous les exemples utilisent UTF-8 car à part dans des cas très particuliers, il n’y a pas de raison d’utiliser autre chose.

L’ajout de l’espéranto permet à tout le monde de bénéficier :

  • De logiciels traduits en espéranto plus facilement
  • Noms de jours, en espéranto
  • Format de date court, noms de mois en espéranto
  • etc.

Mais le système de locale est très flexible ! Regardons par exemple, grâce à la commande locale, les différents paramètres régionaux gérés (ici sur un système configuré en fr_FR.UTF-8) :

LANG=fr_FR.UTF-8 LC_CTYPE="fr_FR.UTF-8" LC_NUMERIC="fr_FR.UTF-8" LC_TIME="fr_FR.UTF-8" LC_COLLATE="fr_FR.UTF-8" LC_MONETARY="fr_FR.UTF-8" LC_MESSAGES="fr_FR.UTF-8" LC_PAPER="fr_FR.UTF-8" LC_NAME="fr_FR.UTF-8" LC_ADDRESS="fr_FR.UTF-8" LC_TELEPHONE="fr_FR.UTF-8" LC_MEASUREMENT="fr_FR.UTF-8" LC_IDENTIFICATION="fr_FR.UTF-8" LC_ALL=

Les guillemets indiquent quelles sont les variables dont la valeur a été héritée de LANG. Chacune de ses variables peut être configurée indépendamment : on peut configurer un système globalement anglais (en mettant LANG=en_US.UTF-8) mais avoir un format d’heure en français si on veut un format 24 heures (en mettant LC_TIME=fr_FR.UTF-8). En général, on ajoute ou remplace ces assignations dans /etc/locale.conf.

Ça faisait longtemps qu’une demande était présente pour avoir l’espéranto dans glibc : c’était dans Debian et Ubuntu, sur Arch Linux avec le paquet AUR glibc-eo, mais le projet a d’abord refusé les langues construites, puis la politique du projet a changé, mais il a fallu du temps avant que quelqu’un s’en occupe. Rapport de bug.

Logiciels libres traduits en espéranto

Plusieurs logiciels ont une traduction complète ou presque :

Et un grand nombre ont une traduction relativement complète (au-delà de 60 %) :

Il faut noter que le pourcentage total ne veut pas dire grand-chose pour l’utilisation d’un logiciel au quotidien. Par exemple, pour KDE, les fichiers « principaux » sont bien traduits, et d’ailleurs, le projet met en avant quatre fichiers ou répertoires principaux à traduire en priorité pour autoriser la diffusion de paquet linguistique.

Il est aussi à noter que le logiciel libre, c’est aussi vous ! Si vous parlez couramment l’espéranto et que votre logiciel favori n’est pas traduit entièrement (voire pas du tout, ou alors de qualité insuffisante), il ne tient qu’à vous de contribuer en devenant traducteur. Il est bon de rappeler que la contribution dans le logiciel libre ne s’adresse pas qu’aux développeurs.

Écrire en espéranto Saisie en espéranto

Une des particularités de l’espéranto est qu’il utilise quelques lettres accentuées, coiffées d’un accent circonflexe (ĉĝĥĵŝ) ou d’une brève (ŭ). En solution de secours, on peut placer un x après la lettre (ĉ = cx), ce qui est utile pour les URL par exemple. Mais pour le texte, on peut faire mieux.

Depuis 2004, il existe une disposition de clavier dans X.org, un qwerty agrémenté des lettres spécifiques à l’espéranto accessible via AltGr. Cependant, contrairement à Windows, n’importe quelle disposition disposant d’une touche morte accent circonflexe permet de taper ces lettres.

On retrouve aussi la brève sur de nombreuses dispositions : en français (variante) en Maj+Altgr+3, en anglais (US, international) en Maj+Altgr+9, en bépo en Altgr+w, etc.

Bref, on trouve facilement une façon de taper les caractères accentués de l’espéranto adaptée à ses habitudes.

Correction orthographique

Comme toute langue dont les mots sont séparés par des espaces, les outils de correction orthographique fonctionnent très bien pour l’espéranto ! Ainsi, il suffit d’installer le paquet Hunspell pour l’espéranto, et la correction sera disponible dans tous vos logiciels.

Apprendre l’espéranto

Outre dans les nombreuses associations qui dispensent des cours ou par des livres d'apprentissage, il est possible d'apprendre l'espéranto sur des sites web.

Lernu.net

Jusqu’à fin 2015, le site le plus utilisé (200 000 inscrits) était Lernu.net. Lancé en 2002, il est disponible dans plus de vingt langues. Depuis quelques semaines, le site et le cours principal ont subi une grosse mise à jour !

Duolingo

Le dernier arrivé Duolingo compte désormais plus de 500 000 élèves, il a ouvert son cours d'espéranto en mai 2015, uniquement en anglais (mais un cours en espagnol est en phase de bêta). Ce site web et application pour mobile et tablette propose un apprentissage gratuit mais n'est pas libre. Le site se finance par la traduction effectuée par les élèves utilisateurs.

Kurso de esperanto

Le logiciel Kurso de Esperanto, présenté dans une dépêche sur LinuxFr.org, développé par le brésilien Carlos Pereira en C++/Qt fonctionne sur différentes plateformes. Il est distribué sous licence libre (GNU GPLv3). Le contenu pédagogique a été repris des cours en dix leçons que l’on trouve sur Ikurso (voir ci-dessous).

Ikurso

La plateforme Ikurso et son cours en dix leçons a été développée pour mettre en relation des élèves et des correcteurs bénévoles. Le contenu pédagogique est dans le domaine public et le code des cours ainsi que la partie de gestion des élèves sont disponibles sur GitHub.

Méthode Zagreb

Le cours de la méthode Zagreb a été développé dans les années 1980, une version informatisée est disponible sur GitHub et une version de démonstration est disponible en ligne en onze langues.

Conclusion

Peu de logiciels sont disponibles avec une traduction relativement complète en espéranto, mais on peut facilement apprendre l’espéranto et écrire en espéranto sous GNU/Linux. Nous ne nous sommes pas vraiment étendu·e·s sur l’espéranto en tant que tel — ce n’est pas le sujet de la dépêche — mais il y aurait tellement à dire !

Atendante, amuziĝu se vi estas Esperantisto kaj uzanto de GNU/Linux!
(En attendant, amusez-vous bien si vous êtes espérantiste sous GNU/Linux !)

Télécharger ce contenu au format Epub

Lire les commentaires

Donnez votre avis sur la nouvelle architecture de Cozy

Mercredi 31 Août

Cozy est un cloud personnel que nous suivons et évoquons régulièrement sur LinuxFr.org. Il a fait récemment parler de lui via le recrutement de Tristan Nitot, sa version 2.0, sa quête permanente d'améliorations, sa toute nouvelle application de synchronisation de fichiers ou encore sa récente levée de fonds. Aujourd'hui, l'équipe Cozy Cloud fait appel à vous.

Nous souhaitons développer une nouvelle version majeure de Cozy qui puisse répondre à de nouveaux besoins :

  • permettre aux auto-hébergés d'avoir du multi-utilisateurs
  • diminuer grandement la consommation de ressources par instance Cozy hébergée pour en réduire le coût
  • améliorer la sécurité globale
  • revoir certains aspects de la plateforme qui ne nous plaisaient pas.

Fidèle à notre attachement pour le Logiciel Libre, le dépôt git dans lequel le développement va se faire est public. Il contient pour le moment surtout un document qui décrit la nouvelle architecture que l'on souhaite mettre en place.

Mais avant de commencer à coder, il nous semble particulièrement important d'avoir l'avis de la communauté. Donnez-nous vos commentaires et impressions. Nous souhaitons savoir ce que nous avons pu manquer, quelles sont les forces et faiblesses que vous voyez dans cette architecture, ce que nous pourrions faire différemment. Alors, à vos claviers !

Télécharger ce contenu au format Epub

Lire les commentaires

Revue de presse de l'April pour la semaine 34 de l'année 2016

Mardi 30 Août

La revue de presse de l'April est régulièrement éditée par les membres de l'association. Elle couvre l'actualité de la presse en ligne, liée au logiciel libre. Il s'agit donc d'une sélection d'articles de presse et non de prises de position de l'association de promotion et de défense du logiciel libre.

Sommaire

[L'Essor] Saint-Etienne capitale du logiciel libre en 2017

Par Denis Meynard, le samedi 27 août 2016. Extrait:

Les organisateurs des Rencontres mondiales du logiciel libre visent 5 000 participants sur la première semaine de juillet prochain.

Lien vers l'article original: http://lessor.fr/saint-etienne-capitale-du-logiciel-libre-en-2017-15892.html

[Numerama] Partenariat avec Microsoft: l'Éducation nationale devant les tribunaux pour la rentrée

Par Guillaume Champeau, le mercredi 24 août 2016. Extrait:

Microsoft et l'Éducation nationale auront rendez-vous le 8 septembre prochain au tribunal de grande instance de Paris, où ils sont assignés par le collectif Edunathon qui reproche à l'État d'avoir écarté abusivement des acteurs du logiciel libre d'un marché public dissimulé.

Lien vers l'article original: http://www.numerama.com/business/190924-partenariat-avec-microsoft-leducation-nationale-devant-les-tribunaux-pour-la-rentree-scolaire.html

[ICTjournal] La Ville de Berne prépare sa sortie des logiciels propriétaires

Par Rodolphe Koller, le mardi 23 août 2016. Extrait:

La Ville de Berne investit plus de 800'000 francs pour analyser la possibilité de remplacer ses logiciels commerciaux par des solutions open source.

Lien vers l'article original: http://www.ictjournal.ch/fr-CH/News/2016/08/23/La-Ville-de-Berne-prepare-sa-sortie-des-logiciels-proprietaires.aspx

[ZDNet France] Linux domine le monde. Et ensuite?

Par Steven J. Vaughan-Nichols, le mardi 23 août 2016. Extrait:

Grâce à quelques améliorations significatives au cours de la dernière année et demie, Linux est maintenant le modèle de développement du logiciel.

Lien vers l'article original: http://www.zdnet.fr/actualites/linux-domine-le-monde-et-ensuite-39840990.htm

[Le Point] Contre le chiffrement, le dangereux projet de Cazeneuve

Par Guerric Poncet, le mardi 23 août 2016. Extrait:

Les experts craignent des conséquences catastrophiques alors que la France et l'Allemagne veulent limiter le chiffrement des télécommunications.

Lien vers l'article original: http://www.lepoint.fr/chroniqueurs-du-point/guerric-poncet/contre-le-chiffrement-le-dangereux-projet-de-cazeneuve-23-08-2016-2063292_506.php

Et aussi:

Voir aussi:

[Silicon] Document Foundation et Free Software Foundation font front commun

Par David Feugey, le lundi 22 août 2016. Extrait:

La Document Foundation se rapproche de la Free Software Foundation Europe afin de favoriser l’adoption de LibreOffice.

Lien vers l'article original: http://www.silicon.fr/libreoffice-document-foundation-free-software-foundation-155533.html

Télécharger ce contenu au format Epub

Lire les commentaires

Sortie de la version 7.6 de Bokeh

Mardi 30 Août

Bokeh est un portail documentaire libre et communautaire sous licence AGPLv3.
Il permet aux bibliothèques et médiathèques de tous types, isolées ou en réseau, avec un ou plusieurs systèmes de gestion de bibliothèque d'agréger en un point d'entrée unique:

  • leurs fonds physiques (livres, DVD, journaux…),
  • leurs fonds numériques (fonds patrimonial numérisé, par exemple)
  • des catalogues numériques externes (Arte VOD, Jamendo, Numerique Premium…).

Le moteur d'indexation et de recherche intégrée offre une interface unifiée aux utilisateurs pour qu'ils puissent consulter ce fonds, rechercher des documents précis ou bien élargir sur des ressources susceptibles de les intéresser.

Les abonnés aux médiathèques peuvent réserver des documents ou gérer leurs prêts entre autres. CMS et gestion de lettres d'information permettent aux médiathécaires de publier la programmation événementielle du réseau, d'enrichir et mettre en avant leurs fonds.

Les principales évolutions de la version 7.6.0
  • Amélioration de la recherche et de son paramétrage
  • Refonte de l'ergonomie de la gestion des paniers
  • Nouveaux connecteurs aux ressources numériques: ASSIMIL, SoundCloud, Cité de la musique
  • Annuaire des bibliothèques : carte interactive basée sur OpenStreetMap et prise en charge des ouvertures et fermetures normales ou exceptionnelles permettant d'afficher un indicateur temps réel des bibliothèques ouvertes
  • Gestion des bibliothèques favorites de l'utilisateur permettant une mise en avant de celles-ci dans les résultats de recherche et dans la liste des exemplaires des documents
  • Refonte graphique de l'administration permettant de choisir entre plusieurs thèmes et variantes de couleurs
  • Intégration des statistiques directement dans l'administration grâce à Piwik
  • Intégration avec d'autres SIGB libres: PMB et Waterbear. Les SIGB libres Koha et AFI-Nanook sont évidemment toujours supportés.
  • Compatibilité PHP 7.0.6 et supérieures
Télécharger ce contenu au format Epub

Lire les commentaires

Chartres Mini Maker Faire d'octobre 2016 : appel à participation

Lundi 29 Août
Chartres Mini Maker Faire : l'aventure a commencé !

BetaMachine, le Hackerspace de Chartres, organise la première édition de Chartres Mini Maker Faire les 7, 8 et 9 octobre 2016 à Chartres lors des Artisanales de Chartres.

Une Mini Maker Faire est à la fois une fête de la science, une foire populaire et l'événement de référence en matière d'innovation partout dans le monde. Ce concept regroupe stands de démonstration, ateliers de découverte, spectacles et conférences autour des thèmes de la créativité, de la citoyenneté, de l'écologie, de la fabrication, des cultures Do It Yourself, Makers, des communs…

Cet événement réunira une vingtaine d'exposants et pourquoi pas vous ! Parmi ceux-ci, seront présents des passionnés de technologies, des artisans, des amateurs, des ingénieurs, des clubs de sciences, des artistes, des étudiants et quelques startups et autre hurluberlus. Plus de 10 000 visiteurs sont attendus sur les trois jours.

Chartres Mini Maker Faire proposera :
  1. Des animations et démonstrations sur stands (particuliers, associations, collectifs… et quelques startups) ;
  2. Un espace central partagé entre les exposants pour faire des animations/ateliers avec le public (ex. : montage pcb, couture, dessin, Repair Café, papier maché, semi de courge, coding-goûter, etc…) ;
  3. Une scène pour lightning talk (10-15 min) et conférences (30-45 min) offrira une tribune libre aux orateurs (-trices) amateur(e)s ou professionnel(le)s pour petits et gros projets.
Envie d'exposer vos idées, projets, lubies ?

Il reste encore des stands et nous serions très heureux de vous avoir parmi nous sur ces 3 jours. Les stands (6m2, 9m2 et >9m2) sont gratuits pour les non-professionnels. L'entrée est libre pour les visiteurs. L'agencement, les animations et activités sont en mode "open-bar". Libre à vous de proposer ce que vous voulez.

Déposez votre projet avant le 2 septembre 2016.

En exclusivité pour les exposants ;-) !

De plus, des afters nocturnes à BetaMachine seront organisées les 7 et 8 octobre avec au programme : repas conviviaux, musique, démos, ateliers bidouille et partages / discussions en tout genre.

N'hésitez pas à en parler aussi autour de vous aux autres Lab, artistes, Makers que vous connaissez. Plus on est de fous, plus on rit non ?

À votre disposition également pour répondre à toutes vos questions par courriel à l'adresse : makers CHEZ makerfairechartres.com.

Télécharger ce contenu au format Epub

Lire les commentaires

Agenda du Libre pour la semaine 35 de l'année 2016

Dimanche 28 Août

Calendrier web, regroupant des évènements liés au Libre (logiciel, salon, atelier, install party, conférence) en France (rien de prévu cette semaine en Belgique ou au Québec),, annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 11 événements est en seconde partie de dépêche.

NdM.: côté Suisse, l'agenda n'est pas actuellement accessible en raison d'une migration DNS en cours. Nous cherchons toujours à généraliser la diffusion des résumés des agendas du libre francophone : actuellement la génération automatique du markdown avec liens et tag pour LinuxFr.org est possible depuis les AdL de Belgique, de France et du Québec (mais il faut quelqu'un pour générer la dépêche en modération toutes les semaines, pour chaque site AdL différent).

Sommaire Agenda du Libre pour la semaine 35 de l'année 2016 [FR Montpellier] Infogérance GEM Rabelais - Le mardi 30 août 2016 de 10h00 à 16h00.

Début de migration des 4 ordinateurs du parc informatique du GEM (Groupe d’Entraide Mutuelle) Rabelais de la version Ubuntu 14.04 vers la version Ubuntu 16.04
Le GEM Rabelais est l’une des structures dont le parc informatique a été installé et configuré par Montpel’libre.
L’association laisse la structure gérer la maintenance régulière mais intervient régulièrement pour les tâches d’administration complexes. La prochaine aura donc lieu le 30 août 2016 à partir de 10h pour commencer à migrer les 4 ordinateurs de la version Ubuntu 14.04 actuellement installée, vers la version Ubuntu 16.04.

[FR Rennes] Apéro du Libre - Le jeudi 1 septembre 2016 de 19h00 à 22h00.

L'association Actux vous donne rendez-vous pour un nouvel Apéro du Libre, jeudi 1ᵉʳ septembre 2016 à partir de 19h, au Papier Timbré, 39 rue de Dinan à Rennes (au croisement de la rue d'Échange).
Les Apéros du Libre sont des rencontres conviviales autour d'un verre, pour discuter, échanger et parfois troller entre utilisateurs et curieux de logiciels et culture libres.
Pour rappel, cet événement a lieu habituellement tous les premiers jeudi du mois, même heure, même endroit et est ouvert à tous !

[FR Paris] Soirée de Contribution au Libre - Le jeudi 1 septembre 2016 de 19h30 à 22h30.

Parinux propose aux utilisateurs de logiciels libres de se réunir régulièrement afin de contribuer à des projets libres. En effet, un logiciel libre est souvent porté par une communauté de bénévoles et dépend d'eux pour que le logiciel évolue.
Nous nous réunissons donc tous les jeudis soirs dans un environnement propice au travail (pas de facebook, pas de télé, pas de jeux vidéos, pas de zombies).
Vous aurez très probablement besoin d'un ordinateur portable, mais électricité et réseau fournis.

[FR Tours] L'auto-hébergement et pourquoi pas chez-vous ? - Le jeudi 1 septembre 2016 de 20h00 à 22h00.

Touraine Data Network dans le cadre de son objet "la défense et la promotion du réseau des réseaux Internet" vous propose un atelier sur l'auto-hébergement.
Venez découvrir les principes de l'auto-hébergement de ses propres services numériques: Pourquoi et comment ? L'essayer et pourquoi pas l'adopter !
Des ateliers complémentaires peuvent être organisés sur d'autres créneaux (essentiellement pour la mise en pratique l'atelier du jeudi soir étant la pour la découverte).

[FR Villeneuve d'Ascq] Libre à Vous - Le samedi 3 septembre 2016 de 09h00 à 12h00.

Vous souhaitez tester GNU/Linux sur votre ordinateur, vous recherchez un logiciel pour une fonction précise, des conseils ou de l'aide sur les logiciels libres ?
Libre à Vous est une permanence destinée à vous faciliter l'utilisation de l'informatique. Vous repartirez avec « le plein » de logiciels libres, fiables, évolutifs, performants et gratuits.
C'est chaque samedi matin au Centre d'Infos Jeunes à la ferme Dupire, 80 rue Yves Decugis à Villeneuve d'Ascq (métro Triolo) de 9h00 à 12h00.

[FR Châteaubriant] Forum des associations - Le samedi 3 septembre 2016 de 10h00 à 16h00.

Forum des associations à Châteaubriant (44110) à la Halle de Béré  (rue Brient 1er, à côté de Hyper U, route de St Aubin des Châteaux).
L'association alis44110 présentera la machine à lire de HandyDV Linux mais aussi un montage Arduino, diverses distributions et un lecteur de T-shirts en ligne de commande. Et un ordi-planche.
Une tombola pour les personnes ayant essayé la machine à lire permettra de gagner un ordinosaure tout équipé.

[FR Aix-en-Provence] Samedi Libre - Le samedi 3 septembre 2016 de 10h00 à 18h00.

Ces Samedis libres sont organisés par l'Axul en collaboration avec plusieurs associations de logiciels libres des Bouches-du-Rhône (et souvent du Var).
Ils proposent des présentations générales et une aide technique pour le dépannage et la mise à jour d'ordinateurs avec des logiciels libres. Ils présentent aussi des démonstrations de matériels libres.
De nombreuses démonstrations sont disponibles sur place

[FR Ivry sur Seine] Cours de l'Ecole du Logiciel Libre - Le samedi 3 septembre 2016 de 14h00 à 18h00.

Présentation de l'E2L
Quel est le rôle de l'école du logiciel libre ?
Tout d'abord, ce n'est pas une école comme les autres. Elle n'a pas d'établissement fixe, pas de cours de récréation, pas de carte d'étudiant, ni de diplôme de fin d'année.

[FR Paris] Rencontres Fedora 24 - Le samedi 3 septembre 2016 de 14h00 à 18h00.

L'association Borsalinux-Fr vous invite à venir (re-)découvrir Fedora 24 à la Cité des Sciences et de l'Industrie samedi 3 septembre 2016 de 14h à 18h.
L'événement prendra place en complément du traditionnel samedi du libre, dans le Carrefour numérique de la Cité.
Venez installer votre machine sous cette toute nouvelle mouture de Fedora, observer les avancements faits depuis la dernière version ou même simplement discuter avec les contributeurs francophones du projet Fedora ou d'autres distributions.

[FR Saint Chamond] Numérique : opportunités et dangers - Le dimanche 4 septembre 2016 de 10h00 à 11h30.

L'avènement du numérique apporte des tas d'opportunités (accès à la connaissance, démocratie, communication etc), mais aussi des risques concernant la vie privée (pistage, piratage) et l'environnement (consommation de ressources, renouvellement volontaire ou forcé et faible recyclage).
Les logiciels libres font partie des pistes de solutions à ces problématiques, avec d'autres bonnes pratiques qui seront proposées.
Cette conférence est destinée au grand public, et a lieu dans le cadre du festival "Groseille et Ciboulette", dont le programme complet est disponible dans ce PDF. Elle sera animée par un membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre), le dimanche 4 septembre de 10h15 à 11h30 (45 minutes de conférence, 30 minutes de questions/réponses).

[FR Brignoles] Dimanche du Libre - Le dimanche 4 septembre 2016 de 10h00 à 19h30.

Les membres de l'association GULLIVAR (Groupe d'Utilisateurs de Logiciels Libres de l'Intérieur du Var) vous invitent au dimanche du Libre de Brignoles, le dimanche 4 septembre 2016, dans la salle des Saint Anges, chemin de San Sumian à Brignoles.
Programme de la journée du 4 septembre 2016.
10h, ouverture de la salle (matinée libre, configuration des pc, install-party, etc..).

Télécharger ce contenu au format Epub

Lire les commentaires

LinuxConsole 2.5, la distribution pour les enfants et adolescents

Dimanche 28 Août
LinuxConsole 2.5 est disponible au téléchargement.

Cette distribution est une distribution indépendante des autres, qui utilise son propre système de paquets (opkg), et qui est construite "from scratch".

Cette version se passe encore de Systemd, qui sera utilisé dans la branche 3.x. Ce n'est pas par choix idéologique, mais par souci de simplicité, que systemd n'est toujours pas l'init par défaut (c'est toujours busybox est utilisé pour cela)

Pourquoi est-ce une distribution pour les enfants et les adolescents ?

Pour sa facilité d'installation sur des ordinateurs anciens (que l'on refile souvent à ses enfants), et la logithèque très fournie en jeux et logiciels musicaux.

Logiciels

Cette distribution est originale, la gestion des logiciels aussi :

  • Toutes les bibliothèques (gtk2,gtk3,qt4,kde4,wine,java) sont incluses dans l'image de base
  • Les paquets peuvent être vus comme les "applications" des smartphones : il n'y a pas de dépendances à installer (à part pour les paquets qui dépendent de Qt5)
Les logiciels prêts à l'emploi
  • Navigateur web qupzilla
  • Lecteur multimedia VLC
  • Jeux extremetuxracer + minetest + supertuxkart (64 Bits)
  • Logiciel de mixage audio Mixx (64 Bits)
  • Des outils système (gparted, cups)
Les logiciels à installer avec une connexion réseau

Ces logiciels nécessitent un accord de licence, ou sont souvent mis à jour, ce sont donc des scripts d'installation qui sont utilisés pour leur installation

  • Firefox
  • Thunderbird
  • Steam
  • Skype
  • Minecraft
Les logiciels présents dans les dépots Jeux
  • Open Arena
  • Tous les jeux KDE
  • Supertux
  • megaglest
  • freedroidRPG
  • xmoto
  • gcompris
  • hedgewars
  • neverball
  • armagetronad
  • aisleriot
  • zynaddsubfx
  • qjackctl
  • fluidsynth
  • astromenace
  • wesnoth
  • torcs
Musique
  • mixxx (32 bits)
  • LMMS
  • vmpk
  • drumstick
  • qtractor
  • rosegarden
Multimedia
  • freetuxtv
  • VLC
  • audacity
Bureautique
  • inkscape
  • gimp
  • Libreoffice
Outils
  • Filezilla
  • VirtualBox (64 bits)
Logiciels éducatifs
  • tuxpaint
  • langagelinotte
  • guvcview
  • stellarium
Installation

Pour installer LinuxConsole sur un disque dur, il suffit de démarrer en mode liveCD, de cliquer sur le lien présent sur le bureau.

Après avoir créé une partition ext4 nommée "linuxconsole", GRUB s'installe sur le disque dur (et active le double démarrage si Windows est installé sur une autre partition)

Dibab devient YDFS

L'outil qui sert à construire LinuxConsole 2.5 a changé de nom, il s'appelle désormais yourdistrofromscratch. Une autre dépêche sera écrite pour décrire cet outil.

Historique

LinuxConsole est une distribution développée depuis 2002, historiquement orientée jeux vidéos, pour "utiliser son ordinateur aussi simplement qu'une console de jeux"

Nouveautés

Cette version propose deux architectures : 32 et 64 bits.

Ce sont les noyaux LTS qui ont été choisis, le dernier pour la version 64 bits (4.4.19), et l'avant dernier pour la version 32 bits (4.1.30).

Overlayfs remplace aufs, pour gérer l'accès en écriture dans l'arborescence des fichiers de l'image Squashfs ; de ce fait ces noyaux n'ont pas eu besoin d'être patchés.

La version 32 bits

Elle démarre avec le bureau LXDE (qui nécessite peu de mémoire vive)

Le 32 bits est prévu pour les ordinateurs anciens (on peut facilement l'installer sur une machine équipée de Windows XP, avec le fork de Wubi)

La version 64 bits

La grosse nouveauté pour cette publication, c'est le support officiel des architectures 64 bits, cela a demandé un certain effort. pour activer :

  • le multilib (indispensable pour wine et steam)
  • le boot UEFI (indispensable pour certaines machines récentes)

Cette version démarre avec le bureau Mate

Utilisation

On peut essayer LinuxConsole en gravant l'ISO pour démarrer sur CD (version 32 bits) / DVD (Version 64 bits)

Ces ISO sont aussi compatibles "LiveUSB", en utilisant Rufus ou Unetbootin

Pour une utilisation "LiveUSB" avec persistance de données, il faut réaliser une installation via Virtualbox, en démarrant depuis le liveCD Virtuel, puis en connectant la clé USB, et en lançant l'installation sur celle-ci

Le système de fichier principal (/usr) étant contenu dans une image Squashfs, l'espace disque occupé est très faible, ce qui fait que c'est une distribution particulièrement bien adaptée pour des ordinateurs de type "Notebook"

Les pilotes fournis sont très complets, et libres (vidéo, son, réseau). La détection du matériel est automatique.

Un travail particulier a été fourni pour que le démarrage soit aussi rapide que possible (10 secondes sur une machine récente)

Télécharger ce contenu au format Epub

Lire les commentaires

Le logiciel libre au-delà de x86

Dimanche 28 Août

Si le Logiciel Libre est devenu au fil du temps, et grâce à votre passion, un élément majeur de l'informatique moderne, il n'en va pas de même pour le matériel. Toute personne qui essayé de libérer son ordinateur de bureau jusqu'au firmware de la carte mère, ou qui s'est intéressée à l'évolution du projet Coreboot ces dernières années le sait : la situation des quatre libertés sur nos stations de travail est actuellement très mauvaise du point de vue matériel. Cette dépêche propose un état des lieux de la situation actuelle.

Sommaire La situation actuelle État des firmwares

Le wiki du projet Coreboot (projet visant à analyser le fonctionnement des firmwares non-libres embarqués sur les cartes mères et à les remplacer, totalement ou en partie, par un firmware libre) détaille cette situation dans un article listant les programmes non-libres que Coreboot peut être amené à charger pour permettre le fonctionnement correct de la carte mère. Le site du projet Libreboot (modification de Coreboot visant à se passer totalement de l'exécution de code non-libre, sur un nombre de modèles évidemment beaucoup plus restreint) donne des détails sur certains firmwares. Selon le cas, le programme en question peut être optionnel ou absolument nécessaire, son remplacement difficile ou complètement impossible, son potentiel de contrôle sur l'informatique de l'utilisateur négligeable, gigantesque ou simplement inconnu.

Rappelons que la conception de la carte mère dépend principalement du CPU qui y est rattaché, et que le marché du CPU sur les ordinateurs de bureau est en gros partagé entre deux géants : Intel et AMD. Aperçu de la situation :

Sur les plateformes Intel : - le firmware GBE (Gigabit Ethernet) : c'est un petit binaire de 8 Ko, qui contient des informations d'initialisation du chipset Ethernet intégré à la carte mère. Il ne contient pas de code exécutable, et il est possible de s'en passer si on n'utilise pas le port Ethernet intégré à la carte. Sur les plateformes GM45/GS45 (génération de processeurs Penryn, chez Lenovo cela correspond à la génération "*00" : X200, T400, T500, etc, apparus aux alentours de 2008), le GbE a été libéré par rétro-ingénierie grâce aux efforts du projet Libreboot. - le VBIOS (VGA BIOS, ou VGA Option ROM) : c'est un firmware de quelques dizaines de Ko qui s'exécute sur le processeur principal et permet d'initialiser l'affichage vidéo lors des premières étapes du démarrage de l'ordinateur. Il est possible de s'en passer sous GNU/Linux, l'OS initialisant lui-même l'affichage vidéo lors du chargement du noyau. Cependant, l'écran restera noir durant les premières secondes du boot, avant que le noyau ne prenne le relais. Il est possible de contenir l'exécution du VBIOS avec coreboot, au moins en partie (celui-ci peut encore accéder à des sections arbitraires de la RAM directement). Comme pour le contrôleur Ethernet, il n'est pas utilisé si on utilise un autre GPU que celui intégré à la carte mère : dans ce cas c'est un autre VBIOS, présent dans la carte graphique, et probablement lui aussi non-libre, qui sera utilisé. Sur les ordinateurs Thinkpad T60 (plateformes i945, génération de processeurs Yonah et Merom, apparus aux alentours de 2006) utilisant les GPU Intel GMA 950, le VBIOS a été libéré par rétro-ingénierie grâce aux efforts du projet Libreboot. - le microcode CPU : c'est un petit firmware qui sert à mettre à jour le microcode interne du CPU. En effet, les microprocesseurs Intel embarquent une ROM contenant un microcode nécessaire au bon fonctionnement du CPU. Ce microcode est historiquement considéré comme acceptable par la FSF, car en lecture seule et non mis à jour, il peut être considéré comme du hardware. Depuis la fin des années 1990 cependant, Intel distribue des mises à jour de ces microcodes pour résoudre des défauts dans les microcodes embarqués. Ces mises à jour sont placées dans les BIOS par les constructeurs de cartes mères. Depuis quelques années, on commence même à voir des mises à jour distribuées au niveau du système d'exploitation lui-même (si vous utilisez Debian par exemple vous avez peut-être constaté qu'on vous recommandait d'installer un paquet non-libre avec un nom du style 'intel-microcode'), car les mises à jour du constructeur via le BIOS ne sont plus toujours suffisantes. On pense qu'il est possible de se passer des mises à jour du microcode CPU si on exclut les générations de CPU les plus récentes. Il est difficile cependant de donner une date précise, car cela dépend de la génération, des bugs que le microcode est supposé corriger, peut-être aussi du numéro de série. Des gens ont signalé des bugs mineurs sur certains processeurs de 2008, alors que d'autres ont dit n'avoir pas constaté de bug avec des CPU de générations plus récentes. Il est donc théoriquement possible de se passer de ce microcode, mais il est généralement admis que les microcodes embarqués dans les CPU au sortir de l'usine sont de plus en plus bugués au fil des générations, et que la probabilité d'être dépendant d'une mise à jour de microcode est de plus en plus grande. Notons que les microcodes Intel sont signés avec une signature RSA 2048 bits, et ne seront donc probablement jamais libérés. Notons aussi que ce microcode effectue des tâches extrêmement basiques (décomposer des instructions en sous-instructions plus simples à traiter par le matériel), et la probabilité qu'il contienne des fonctionnalités pouvant compromettre le système est extrêmement faible (elles seraient trop difficiles à mettre en place à ce niveau). - le ME (Management Engine) : la bête noire des développeurs de Coreboot. C'est un très gros firmware pouvant aller jusqu'à 5 Mo, s'exécutant sur un processeur ARC situé dans le PCH (Platform Controller Hub, équivalent moderne du northbridge) des chipsets Intel et séparé du processeur principal. Ce firmware est constamment en fonctionnement lorsque l'ordinateur est allumé. Le but annoncé de ce firmware est d'implémenter la technologie AMT (Intel Active Management Technology), qui permet notamment de retrouver son ordinateur lorsqu'on se l'est fait voler, en permettant d'effectuer toutes sortes d'opérations dessus, à distance, indépendamment du système d'exploitation, pour peu que celui-ci soit branché au réseau au moins une fois. On peut par exemple éteindre/rebooter/réveiller la machine à distance, capturer les paquets du réseau, lire les fichiers ouverts, accéder aux programmes en cours d'exécution, faire des captures d'écran, enregistrer la frappe au clavier, utiliser la webcam et le micro, rendre l'ordinateur définitivement inopérant, etc. Une liste un peu plus étoffée des fonctionnalités et des applications possibles [est disponible](https://en.wikipedia.org/wiki/Intel_Active_Management_Technology). Pour ce faire, le ME doit bien évidemment avoir un accès aux adaptateurs réseau, à la gestion de l'énergie, au contenu de la RAM en lecture et en écriture, et ce sans que les systèmes d'exploitation hôte ne puisse le savoir. C'est grosso-modo un petit système d'exploitation, totalement sous le contrôle d'Intel, tournant à côté du système d'exploitation principal, de façon totalement transparente. Le ME serait aussi le siège de la technologie Intel Boot Guard introduite plus récemment, dont le but est d'empêcher toute modification des firmwares embarqués en vérifiant leur signature au boot, rendant impossible le remplacement de l'UEFI par un firmware non-approuvé par Intel. Boot Guard n'est apparemment pas activé par défaut sur les plateformes actuelles. Les emmerdes volant toujours en escadrille, c'est aussi dans le ME qu'on trouve la technologie PAVP (Protected Audio-Video Path), un équivalent de HDCP, mais plus robuste (en gros les flux vidéo et audio déchiffrés sont transmis directement au GPU sans que le CPU n'ait connaissance de quoi que ce soit, rendant impuissant les applications de capture audio/vidéo). Ce petit bout de BIOS génère tant d'inquiétudes sur le plan des libertés numériques que certains développeurs lui ont créé [un site dédié](http://me.bios.io/Main_Page). Bien évidemment, ce firmware est signé depuis la génération Penryn (~2008), et nécessaire au fonctionnement du système depuis les ordinateurs de la génération Nehalem (fin 2008-début 2009), pour lesquels le système freeze 30 minutes après le boot si le ME n'est pas présent. Sur les générations post-Nehalem (Sandy Bridge et postérieures), l'ordinateur ne boote simplement pas. Sur les plateformes i945 (Yonah et Merom, ~2006), il n'y avait pas de PCH, le ME était donc présent dans le contrôleur Ethernet. Il était non-signé, optionnel, plus petit (1,5 Mo) et ne contenait probablement que des données d'initialisation (le hardware n'étant pas capable de charger du code exécutable depuis le contrôleur). Sur les plateformes Penryn, les développeurs de Libreboot ont pu désactiver le chargement du ME, bien que celui-ci soit signé, via une bidouille du descripteur de fichiers du BIOS. Bien que certains passionnés essayent cependant d'en faire une [rétro-ingénierie partielle](http://io.netgarage.org/me/) afin de connaître son fonctionnement, il est pratiquement sûr que le ME ne sera jamais libéré. - le MRC (Memory Reference Code) : c'est un firmware présent dans les UEFI des plateformes Intel à partir de la génération Sandy Bridge (~2011). Il tourne sur le CPU principal, et permet d'initialiser la RAM et l'USB. Apparemment ce blob est non-signé, et pourrait potentiellement être remplacé un jour par rétro-ingénierie. Sur les plateformes AMD : - NIC firmware : c'est le firmware du chipEthe rnet (Network Interface Controller) embarqué, équivalent du GBE chez Intel. Apparemment ce blob ne concernerait que les chips Broadcom intégrés, relativement rares. Il pourrait en théorie être remplacé assez facilement. - VBIOS (VGA BIOS/VGA Option ROM) : mêmes caractéristiques que sur les plateformes Intel. Notons que celui-ci n'a pas été libéré sur les Thinkpad dotés d'un GPU AMD : les modèles T60p et assimilés présentent donc des soucis d'initialisation vidéo au niveau du BIOS à l'heure actuelle. Notons aussi que AMD ne fabriquant pas que des GPU embarqués, le VBIOS d'AMD est également présent dans des cartes graphiques. Une tentative de libération de ceux-ci par rétro-ingénierie avait d'ailleurs été tentée il y a quelques années dans le projet "open radeonbios", mais celui-ci n'était pas allé très loin (juste une initialisation du port VGA et de la 2D sur certaines vieilles cartes). - le microcode CPU : mêmes fonctions et mêmes caractéristiques que celui d'Intel. Dans Debian, on a pu voir arriver le paquet amd-microcode quelques mois après le paquet intel-microcode. Là aussi, des utilisateurs rapportent des bugs nécessitant d'appliquer les mises à jour du microcode sur des plateformes récentes. Comme pour Intel, il est signé en RSA 2048 bits et ne sera probablement jamais libéré. - AMD IMC (Integrated Microcontroller) : il s'agit d'une sorte d'EC (Embedded Controller) présent dans le southbridge des cartes mères AMD depuis au moins 2007 (et peut-être même bien avant). Pour rappel, l'EC est un petit firmware présent sur les cartes mères (mais généralement en-dehors du BIOS, sur une puce dédiée) et prenant en charge les fonctions basiques de gestion de l'énergie. Il est possible de s'en passer au moins sur certaines cartes (qui utilisent l'EC classique à la place). Il est possible que l'IMC soit libéré par rétro-ingénierie dans un futur proche. - AMD XHCI (eXtensible Host Controller Interface) : c'est le firmware du contrôleur USB 3.0. Il est apparu lorsque AMD a commencé à implémenter l'USB 3.0 dans ses cartes mères (probablement au moment de la sortie de la plateforme Bulldozer/Fam15h et du chipset AM3+, donc aux alentours de 2011). Il est possible de s'en passer, mais alors il faut accepter de perdre les fonctionnalités USB 3.0 de la carte mère. Non-signé, il est théoriquement possible de le remplacer par rétro-ingénierie. - SMU (System Management Unit) : le SMU se présente comme un EC subsidiaire présent dans le northbridge des cartes de la génération Fam15h et postérieures, prenant en charge la gestion de l'énergie des composants PCI et notamment des GPU, et gérant peut-être d'autres choses essentielles au système (avec un accès au moins partiel à la RAM). Il implémente notamment un petit processeur tournant par-dessus le processeur principal, les fonctions du SMU étant exécutées sur ce processeur secondaire. Le SMU est un blob signé, mais une faille de sécurité y a été découverte en 2014, permettant d'injecter du code dans une petite section non concernée par la signature. AMD a corrigé la faille dans une mise à jour du SMU, mais la clé de chiffrement (symétrique, HMAC) reste la même. Il a ensuite été découvert qu'on pouvait récupérer la clé HMAC du SMU sur des plateformes non mises à jour via cette faille, ce qui a été fait, et il est désormais théoriquement possible de libérer le SMU sur les plateformes AMD actuelles. Il est fort probable que la clé de chiffrement soit changée sur les futures plateformes.

Note : cette architecture à base de processeurs virtuels tournant sur le processeur principal est en fait une architecture assez courante des blobs du BIOS (c'est apparemment aussi comme ça que sont implémentés l'IMC, le XHCI, le ME d'Intel et le PSP d'AMD), et le hacker Rudolf Marek qui a présenté une analyse du firmware SMU au 31ème Chaos Communication Congress en 2014 a proposé de les baptiser "matroshka processors" (processeurs-poupées russes).

- PSP (Platform Security Processor) : l'équivalent du Management Engine, mais côté AMD. Il est apparu dans les cartes AMD Fam15h 4ème génération, correspondant à la plateforme Excavator/Carrizo, sorties en 2015. Comme le ME, il implémente son propre microprocesseur (un Cortex A8) et fait tourner un petit système d'exploitation par-dessus, indépendamment du système hôte et de façon totalement transparente. On n'a pour l'instant pas beaucoup d'informations précises sur ce qu'il fait : probablement des choses liées aux DRM, à l'image de PAVP chez Intel, et à la sécurité (TPM, accélération crypto, RNG). Les fonctionnalités du ME non-liée à la sécurité seraient absentes du PSP pour le moment, mais il n'est pas exclu qu'elles y soient intégrées un jour. Apparemment il aurait accès à la RAM, comme le ME. La carte mère ne boote pas si le PSP est absent. Le PSP est un peu plus documenté que le ME (on connaît l'algo de compression), et AMD fournit au projet coreboot un PSP "minimaliste" qui ne ferait qu'initialiser les composants de la carte mère au démarrage. On suppose que les futures versions du PSP intègreront des fonctionnalités actuellement gérées par d'autres parties du BIOS/EFI (comme initialiser la mémoire).

Pour résumer : si vous avez un ordinateur Intel acheté entre 2005 et 2008, vous ferez face face à un GBE, un VBIOS, un petit ME "passif" et non-signé, et peut-être un microcode CPU. Pour un ordinateur post-2008, vous aurez un GBE, un VBIOS, un ME signé désactivable et peut-être un microcode. Après 2009, vous aurez un GBE, un VBIOS, un ME signé non-désactivable et peut-être un microcode. À partir de 2011, vous devrez faire face un GBE, un VBIOS, un ME signé nécessaire au boot, un MRC et très probablement un microcode. Si vous avez un ordinateur AMD acheté avant 2007, vous ferez face à un VBIOS, et peut-être un microcode et un firmware NIC. Après 2007, vous aurez un VBIOS, un IMC, peut-être un microcode et un firmware NIC. À partir de 2011, vous aurez un VBIOS, un IMC, un XHCI, un SMU signé et peut-être un microcode et un firmware NIC. Après 2015, vous devrez faire face à un VBIOS, un IMC, un XHCI, un SMU signé, un PSP signé, peut-être un firmware NIC, et probablement un microcode.

Au fil des années et des générations de processeurs, on observe bien une tendance : le nombre de blobs non-libres dans nos cartes mères augmente, leur taille augmente, la probabilité qu'ils soient nécessaires au fonctionnement du système augmente également, de même que la probabilité qu'ils soient signés et donc irremplaçables, et enfin le nombre de choses qu'ils sont capables de faire sur le système s'étend également. Les ordinateurs Intel qui donnent à l'utilisateur un degré de liberté raisonnable, et validés RYF par la FSF datent, au mieux, de 2008. On constate aussi qu'AMD finit toujours plus ou moins par faire les mêmes bêtises qu'Intel, avec quelques années de retard. Le comportement d'AMD vis-à-vis d'Intel fait un peu penser à celui du Parlement Européen vis-à-vis du Sénat américain sur les lois liées au numérique : il suffit que le second décide de faire une connerie pour que le premier lui emboîte le pas quelque temps après.

La situation de la liberté de l'utilisateur sur les stations de travail modernes n'est donc guère radieuse, et on a de bonnes raisons de penser qu'elle sera de pire en pire dans les années qui viennent.

État du marché

Se pose alors logiquement la question suivante : Comment en est-on arrivé-là ?

Difficile de répondre objectivement à cette question sans avoir une connaissance exhaustive de l'histoire des ordinateurs personnels au cours du dernier quart de siècle, mais on peut déjà avoir des éléments de réponse en observant le marché actuel.

D'abord, il faut savoir que lorsqu'on parle des ordinateurs personnels, on parle presque exclusivement de plateformes x86. x86 est un jeu d'instructions (ISA : Instruction Set Architecture) mis au point par Intel à la fin des années 70, qui est peu à peu devenu le standard de fait dans les ordinateurs personnels, les serveurs et même plus récemment les supercalculateurs. Cette architecture est presque totalement contrôlée par Intel : tous les développements faits par Intel sur l'architecture x86 depuis la sortie de l'Intel 80486 en 1989 sont la propriété exclusive du fabricant. L'autre gros fabricant de processeurs compatibles x86, AMD, fait figure d'exception puisqu'il a obtenu d'Intel une licence x86 sur les processeurs 8086 et 8088, en 1982, à une époque ou Intel en accordait à ses concurrents. Il a tout de même fallu une bataille juridique pour qu'AMD puisse, en 1995, continuer à faire concurrence à Intel en développant ses propres améliorations sur x86. Malgré cela, Intel garde un contrôle très fort sur le marché, avec une supériorité technologique reconnue (le rapport performances/consommation fait qu'Intel possède une quasi-exclusivité sur le laptop) et une part dominante tournant autour de 80%.

En théorie, le BIOS ou UEFI est indépendant du microprocesseur, car il est situé sur la carte mère et est développé par le fabricant de la carte. Cependant, la carte mère est conçue pour accueillir un CPU d'une certaine marque et d'une certaine génération, et doit donc disposer un socket et d'un chipset compatibles, dépendants du fabricant du CPU, qui est alors en mesure de dicter ses conditions au fabricant de la carte mère. Dans le cas d'Intel et AMD, ces conditions incluent l'intégration obligatoire au sein du BIOS d'un package logiciel contenant les firmwares décrits plus haut. Ce package s'appelle FSP dans le cas d'Intel (Firmware Support Package) et AGESA dans le cas d'AMD (AMD Generic Encapsulated Software Architecture).

Note : Au moment où j'écris ces lignes, AMD essayerait de sous-licencier sa licence x86 à un constructeur chinois, ce qui laisserait a priori espérer qu'un nouveau concurrent puisse apparaître sur le marché du x86 dans les prochaines années. Cependant, il n'y a pas grand chose à espérer de cette tentative : clarifier la situation ne serait-ce que sur le plan juridique va prendre énormément de temps, il y a fort à parier qu'Intel ne laissera pas un nouveau concurrent émerger aussi facilement, que l'État américain mettra tout son poids dans la balance pour que la souveraineté américaine sur le marché des ordinateurs personnels et serveurs ne soit pas mise à mal, et, même si AMD réussit, on ne sait pas du tout sous quelles conditions cette licence sera vendue, ni si ce concurrent vendra des produits conçus dans l'intérêt de l'utilisateur (peut-être qu'ils seront simplement limités au marché chinois et assortis d'un package logiciel PRC-compliant).

Il existe d'autres architectures que x86 utilisées dans les ordinateurs personnels. Richard Stallman est connu pour avoir longtemps utilisé un netbook Lemote Yeeloong dépourvu de BIOS afin de ne pas dépendre de logiciels non-libres. Cet ordinateur utilisait un processeur Loongson utilisant l'architecture MIPS, aux performances médiocres, mais visiblement assez puissant pour permettre à Richard d'y faire tourner GNU/Linux-libre et sans doute EMACS. Certains constructeurs commencent à vendre des ordinateurs portables utilisant l'architecture ARM et donc non soumis aux conditions d'Intel et d'AMD. Certains Google Chromebook notamment utilisent un processeur ARM et sont vendus avec un BIOS Coreboot au moins partiellement libre. Bien que nettement plus puissants que les ordinateurs MIPS, les ordinateurs ARM restent significativement limités au niveau du matériel et en termes de puissance, comparativement aux ordinateurs x86 de génération équivalente.

On le voit, la situation en termes de concurrence sur le marché des ordinateurs personnels est elle aussi très mauvaise. Le marché est soumis à un quasi-monopole d'Intel, ou un oligopole Intel-AMD, suivant comment on voit les choses. Il n'y a grosso-modo pas de concurrence et la situation sur x86 est complètement bloquée. Cette situation génère beaucoup d'inquiétudes, tant en termes de conséquences sur les droits du consommateur qu'en termes d'évolution du marché.

Proposition n°1 : le matériel libre Un nouveau regard

Le concept de matériel libre est difficile à définir. Théoriquement, il s'agit d'appliquer au matériel électronique, et par extension, aux autres objets physiques, les quatre libertés fondamentales du logiciel libre. Aujourd'hui, ce concept se heurte encore aux limites de notre technologie : il n'existe pas actuellement de moyen abordable, rapide et peu coûteux de copier du matériel électronique et donc d'assurer la liberté n°2. Pour cette raison, Richard Stallman et la FSF ne reconnaissent pas le concept de matériel libre et ont longtemps refusé de donner une analyse détaillée de la question. Pourtant, le matériel libre constitue pour certains libristes l'ultime espoir face à l'écueil principal du logiciel libre : la compatibilité avec le matériel. En effet, si le matériel est libre, on sait comment il fonctionne, et on peut donc facilement écrire des logiciels pouvant l'exploiter.

Les années 2000 et 2010 ont vu se développer de nombreux projets de matériel électronique pouvant s'apparenter, du moins en partie, au concept de matériel libre, et regroupés sous la bannière de l'"open hardware".
Le terme open hardware n'a lui non plus pas de définition précise. Selon les projets, il désigne tantôt du matériel libre, tantôt des circuits imprimés (PCB) libres sur lesquels se greffent des composants pas nécessairement libres. À l'heure actuelle, la très vaste majorité des projets dits open hardware appartiennent à la deuxième catégorie. Ce sont des PCB, dont les schémas sont publiés sous licence libre, reliant entre eux des composants (microprocesseurs, contrôleurs, puces diverses) non-libres. Pire encore, ces composants non-libres ne sont pas nécessairement documentés, et les projets pouvant se vanter de n'intégrer que du matériel parfaitement documenté se comptent sur les doigts d'une main.

En mars 2015, Richard Stallman a finalement publié un article détaillant ses réflexions sur le sujet, et définissant les positions officielles de la FSF concernant le matériel libre. Dans cet article, il réaffirme son rejet du terme "open hardware" ainsi que son scepticisme quant à la possibilité factuelle d'exercer la liberté n°2. Mais il introduit également quelques points nouveaux dans son discours :

  • on ne peut pas copier le matériel pour l'instant, mais on peut copier les fichiers qui le décrivent : il faut donc parler de "schémas de conception libres" (Free Hardware Designs)

  • les schémas de conception libre pourraient un jour devenir le seul moyen pour un utilisateur de faire son informatique librement

  • pour l'instant, il n'est pas nécessaire de rejeter le matériel non-libre, mais un jour, cela le sera peut-être. En attendant, les schémas de conception libres doivent être soutenus et encouragés.

  • il existe différents niveaux de conception pour le matériel. Les circuits électroniques des PCB sont un premier niveau, les circuits des puces embarquées sur ces PCB sont un second niveau, les cellules internes d'un FPGA en sont un troisième, etc. Il est probable qu'un jour on ait à libérer tout le matériel pour pouvoir faire son informatique librement, mais dans l'état où progressent les choses, nous devrons probablement libérer le matériel un niveau après l'autre.

  • avec des schémas de conception libres, on reste dépendant du fabriquant du matériel. Pour que la liberté sur le matériel soit effective, il faudra une démocratisation des moyens de production correspondant à ce niveau de conception de matériel.

Cet article a également fait l'objet d'un journal de whygee sur linuxfr, introduisant un site récapitulatif de certains projets de schémas de conception libres. L'occasion de jeter un œil sur les efforts entrepris dans le domaine jusqu'à maintenant.

La situation actuelle

On l'a bien vu et les contributeurs du projet Purism s'en sont mordus les doigts : dans l'état actuel des choses, il n'est pas possible de faire un ordinateur dépourvu de logiciels non-libres basé sur x86.

Le projet Purism, décrit dans une dépêche de 2015 dont les fondateurs ont tenté de faire croire à qui voulait les entendre qu'ils fabriqueraient un ordinateur portable doté d'un processeur Intel x86 dernière génération, et dépourvu de blobs signés et autres firmwares non-libres, a bien évidemment échoué, pour toutes les raisons décrites plus haut.

Malgré tout, il existe quantité de projets de schémas de matériel libres sérieux. La plupart sont des PCB basées sur des processeurs ARM ou MIPS, intégrant quelques contrôleurs (Ethernet, USB…) documentés, et une ou deux puces non documentées ne présentant pas ou peu d'alternatives, comme un GPU et parfois une puce Wifi. La situation déplorable des GPU embarqués sur ARM a été décrite dans une dépêche en 2013, et n'a pas vraiment changé depuis. Quelques projets cependant essayent ou ont essayé de rester aussi loin que possible du matériel nécessitant des logiciels non-libres, comme le défunt Ben Nanonote, basé sur un processeur MIPS, et le Novena Laptop, utilisant un processeur ARM et un GPU Vivante dont le firmware non-libre peut être désactivé. Ceux-ci sont bien évidemment bien en-dessous des Thinkpad x86 certifiés RYF par la FSF en terme de performances.

À un niveau de conception plus haut, on a les projets de microprocesseurs. Les projets cités par whygee dans son journal sont F-CPU et YASEP, mais il en existe d'autres, notamment le fameux projet OpenCores (qui semble maintenant être remplacé par LibreCores ), dont le sous-projet le plus avancé semble être OpenRISC, un microprocesseur basé sur l'architecture libre RISC-V. Les communautés de concepteurs de schémas de microprocesseurs libres semblent s'orienter dans deux principales directions, les FPGA, qui offriraient de grandes possibilités techniques, mais auraient des performances encore médiocres, et l'architecture RISC-V. Dans les deux cas, la communauté se heurte au problème de la dépendance au fabricant évoqué précédemment. Il est bien beau de concevoir des microprocesseurs, encore faut-il trouver quelqu'un prêt à les fabriquer, et qui plus est à les fabriquer en respectant la spec. De ce côté la situation est au point mort depuis toujours, même si un mince espoir commence à affleurer.

La question "Comment faire fonctionner aujourd'hui un système totalement libre sur une machine répondant aux exigences d'une station de travail moderne, notamment en termes de performances ?" reste en suspend.

Une solution à court terme Situation de différentes architectures

Timothy Pearson (tpearson) est un important contributeur du projet Coreboot. Par le biais de son entreprise Raptor Engineering, il a aidé à porter Coreboot sur des cartes mères AMD pour serveurs, et a développé un logiciel d'automatisation de tests de la version de développement de Coreboot sur ces cibles.

En avril 2016, il publie sur la liste de diffusion de la FSFE un courriel intitulé Uncorrectable freedom and security issues on x86 platforms, dans lequel il détaille les problèmes de liberté des plateformes x86 rencontrés par les développeurs de Coreboot et de Libreboot, et donne un aperçu de la situation des différentes architectures non-x86 comme alternatives possibles pour des stations de travail utilisant un système libre, dans un futur immédiat. Les architectures possibles sont :

  • ARM : l'ISA ARM est la propriété d'ARM Holdings, une compagnie britannique qui conçoit des microprocesseurs et en vend des licences d'exploitation, mais n'en produit pas. Actuellement plus d'une quinzaine de fabricants disposeraient d'une licence ARM, ce qui témoigne d'un marché relativement ouvert. Le nombre de projets open hardware utilisant des processeurs ARM laisse penser que ces processeurs sont ensuite vendus sous des termes relativement libéraux. Les processeurs ARM courants sont généralement peu puissants, avec une puissance comparable aux x86 bas de gamme, très peu chers, presque imbattables en termes d'efficacité énergétique, et atrophiés de beaucoup des fonctionnalités importantes de x86 (support d'hyperviseur, ECC, SATA, PCIe…). Pour cette dernière raison les ARM courants sont inenvisageables pour une station de travail digne de ce nom. Il existe cependant des processeurs ARM haut de gamme qui ont une puissance comparable au milieu de gamme x86 et disposent des fonctionnalités de ces derniers, mais qui sont très chers.

  • MIPS : l'ISA MIPS est développée par MIPS Technologies, qui comme ARM vendait des licences d'exploitations à différents fabricants. MIPS Technologies appartient depuis 2013 à Imagination Technologies (qui n'est pas vraiment l'ami du logiciel libre), mais quelques compagnies continuent à produire des processeurs MIPS. La plus connue est sûrement le chinois Lemote. Les processeurs MIPS sont généralement peu chers, bien en dessous des ARM en termes de puissance, et d'une efficacité énergétique légèrement supérieure. Théoriquement suffisants pour faire fonctionner un netbook bas de gamme, ils sont surtout utilisés dans l'embarqué et ne sont pas vraiment envisageables pour une station de travail libre.

  • POWER : l'ISA POWER est développée par IBM, qui vend des licences d'exploitations à quelques fabricants. En 2013 IBM fonde l'OpenPOWER Foundation avec quelques autres acteurs, et propose ses nouveaux processeurs milieu et bas de gamme POWER8 sous des termes très libéraux, allant même jusqu'à fournir un package de firmwares libres pour faire fonctionner les cartes embarquant ces processeurs. Les processeurs POWER8 haut de gamme ne sont pas concernés mais ceux-ci sont avant tout destinés au marché des serveurs haute fiabilité et ne sont pas pertinents pour un ordinateur personnel. Les POWER8 milieu et bas de gamme, en revanche, offrent des performances équivalentes aux processeurs de dernière génération x86, offrent toutes les fonctionnalités qu'on peut attendre d'une station de travail, consomment beaucoup d'énergie et sont encore très chers.

  • RISC-V : l'ISA RISC-V ("risc-five") est développée par l'Université de Berkeley, et est librement disponible sous licence BSD. Personne ne fabrique de processeurs RISC-V actuellement. Les processeurs RISC-V sont théoriquement peu puissants et peu efficaces énergétiquement, selon les sources ils pourraient être légèrement inférieurs ou légèrement supérieurs aux actuels MIPS en termes de performances. Cette architecture n'est pour l'instant pas envisageable pour une station de travail libre, mais comme elle est entièrement libre, elle pourrait devenir une solution pour le logiciel libre à très long terme.

  • SPARC : l'ISA SPARC est développée par Sun Microsystems, qui appartient depuis 2010 à Oracle (pas vraiment ami du libre lui non plus). L'architecture du processeur SPARC T2 a été libérée sous licence GPL en 2007 et a vu naître quelques modifications libres, mais n'a pas vraiment évolué depuis et n'est pour l'instant pas envisageable pour une station de travail libre (elle n'est même pas mentionnée dans le mail de tpearson).

En résumé, les seules ISA constituant pour l'instant de bons candidats pour une alternative à x86 à court et moyen terme sont les haut de gamme ARM et les bas de gamme POWER8.

ARM

Regardons un peu plus attentivement les opportunités du côté des processeurs ARM haut de gamme. Ceux-ci, on l'a vu, possèdent toutes les fonctionnalités qu'on peut attendre d'un processeur équipant un ordinateur personnel moderne (PCIe, ECC, SATA, USB3, support d'hyperviseur, etc.). Parmi les acteurs développant des plateformes ARM haut de gamme, on trouve NXP Semiconductors, surtout connu sous son ancien nom : Freescale. Leur LS2085A NPU (Network Processing Unit) est probablement ce qui se rapproche le plus d'une station de travail moderne dans le monde ARM haut de gamme.

Le NXP LS2085A est une carte mère équipée de 8 cœurs ARM 64 bits Cortex-A57, avec slots de RAM DDR4, connecteurs PCIe, SATA3, USB3, GigabitEthernet, etc. La carte utilise un facteur de forme inhabituel, peut-être BTX, et est apparemment pensée pour équiper des boitiers horizontaux rackables.

Côté inconvénients, les processeurs n'ont pas de cache L3, elle embarque au moins un firmware non-libre dont l'élimination désactive les ports Ethernet intégrés (mais il est possible d'utiliser une carte réseau PCI), et bien évidemment, elle sera très chère (apparemment elle n'est pas encore disponible à la vente au moment où j'écris ces lignes).

POWER

Jetons maintenant un œil du côté des opportunités concernant les processeurs POWER8 milieu et bas de gamme. Les processeurs POWER8 sont une gamme de processeurs basés sur la spécification Power ISA v2.07 d'IBM. Comme les ARM haut de gamme, ils proposent toutes les fonctionnalités intéressantes qu'on retrouve chez les processeurs x86 modernes. Les POWER8 bas de gamme actuels affichent des performances supérieures aux ARM haut de gamme actuels.

Contrairement aux x86, qui sont little-endian (petit-boutistes), les processeurs POWER sont historiquement big-endian (gros-boutistes), mais les générations actuelles comme POWER8 sont bi-endian (biboutistes).

Les processeurs POWER8 mettent l'accent sur la bande passante : contrairement à l'ARM A57 ils possèdent des caches L3, et même des caches L4 pour certains modèles, offrent une importante bande passante pour les entrées/sorties et la mémoire, et proposent une interface additionnelle à PCIe appelée CAPI (Coherent Accelerator Processor Interface) supposée plus avantageuse en terme de latence.

IBM fournit, via l'OpenPOWER foundation, des firmwares libres pour faire fonctionner les cartes mères à base de POWER8. Contrairement aux ordinateurs sous ARM, les firmwares relatifs aux contrôleurs NIC et GPU intégrés sont libres, la seule exception étant le microcode du CPU. Cependant ce microcode est très différent de celui présent dans les processeurs d'Intel et d'AMD : il fait beaucoup moins de choses, effectue des tâches bien plus basiques, est stocké sur un module du processeur et n'est pas chargé depuis l'OS, et pourrait même être considéré comme acceptable par la FSF. IBM ne publie pas le code pour des raisons techniques, mais prévoit de résoudre ces problèmes et de libérer le microcode CPU de la prochaine génération de microprocesseurs (POWER9).

Bien évidemment, aucun des binaires nécessaires au fonctionnement de la carte mère n'est signé. Il existe cependant un mécanisme de signature dans les plateformes POWER8, mais celui-ci est totalement sous le contrôle de l'utilisateur : l'utilisateur peut ajouter sa propre clé, signer ses binaires et faire en sorte que l'ordinateur vérifie les signatures au boot. C'est un système de sécurité similaire à celui présent dans les Chromebook ARM de Google.

Du côté des inconvénients, rappelons que les processeurs POWER8 bas et milieu de gamme sont chers, et qu'ils ont une consommation entre 130 et 190W, ce qui exclut toute possibilité de les utiliser pour remplacer les x86 dans des ordinateurs portables. Cependant, ils restent de bons candidats pour des stations de travail fixes.

Malheureusement, les constructeurs de machines POWER ne proposent en général pas de produits pouvant faire office d'ordinateur personnel pour libristes : les cartes mères haut de gamme sont excessivement chères, les cartes mères bas de gamme n'utilisent pas les firmwares OpenPOWER, mais de vieux firmwares non-libres, et généralement leur facteur de forme les rend inadaptées aux stations de travail.

C'est pourquoi Raptor Engineering a décidé de produire une carte mère ATX bas de gamme basée sur POWER8, appelée Talos. Celle-ci aurait un socket POWER8 pouvant accueillir un processeur 130W ou 190W au choix, et serait dotée d'une connectique impressionnante : 8 slots de RAM DDR3 (jusqu'à 256GB), 8 connecteurs SATA3, 1 slot PCI, 4 slots PCIe 8x, 2 slots CAPI/PCIe 16x, 1 slot mPCIe, 2 connecteurs USB 3.0 internes, 4 ports USB 3.0 externes, 2 ports eSATA externes, 1 port HDMI, 2 connecteurs RS232 externes, 1 connecteur GPIO, 2 ports Gigabit Ethernet. La carte mère devrait également intégrer des interrupteurs physiques pour activer/désactiver le NIC intégré et l'écriture des puces hébergeant les firmwares du BIOS et les clés de sécurité. Le GPU intégré sera un ASpeed AST2400 BMC, un simple contrôleur vidéo 2D sans accélération graphique. Pour tout usage allant au-delà de la simple bureautique (jeux, rendu 3D, etc), Raptor Engineering recommande une carte graphique, par exemple une Nvidia GK104 de la génération Kepler, qui, couplée avec le pilote nouveau, constitue une des dernières cartes de Nvidia pouvant fonctionner sans binaire signé. Ainsi, Il serait possible de constituer un ordinateur personnel capable de faire tourner des jeux comme Xonotic, sur un système totalement libre (si on exclut le microcode CPU et sans doute aussi le firmware du disque de stockage).

Actuellement la carte mère Talos est en développement, et Raptor Engineering essaye actuellement d'évaluer la demande pour ce produit. Pour un prix attendu d'environ 3700$, Raptor Engineering proposera la carte mère Talos, un CPU POWER8 octocore 130W, et la quasi-totalité des schémas des circuits de la carte mère. Ces derniers ne seront pas sous licence libre.

Il est probable que seuls les plus riches des libristes poilus achèteront une carte mère POWER8 Talos, mais il est aussi probable que cette initiative amorce l'émergence d'un nouveau marché de niche dans le monde des processeurs POWER, et fasse naître un nouvel espoir chez ceux qui voudraient utiliser une station de travail moderne, puissante et ouverte, pour programmer, travailler, créer, jouer librement, ou tout simplement faire leur informatique loin de la surveillance des autres, au cours des 5 à 10 prochaines années.

L'invasion de firmwares intelligents, de microcodes de plus en plus évolués, voir de micro-systèmes en dessous des systèmes d'exploitations sur les matériels modernes, suit l'évolution des capacités de la moindre des puces. Cela force aussi à remettre en perspective nos définitions de firmwares et à considérer beaucoup d'entres eux comme du logiciel devant être libéré.

Complément : même si POWER8 semble être le meilleur candidat pour une station de travail fixe, il fait peu de doute qu'on devra lui préférer ARM sur les ordinateurs portables. Ceux qui suivent le blog de la FSF ou la newsletter de ThinkPenguin ont été notifiés de l'existence d'un nouveau projet : le dispositif EOMA68 de Rhombus Tech. Je n'ai pas regardé en détail, mais apparemment ce serait une carte mère à base d'ARM embarquée dans un boîtier, qui pourrait ensuite être couplé à d'autres éléments pour former soit un ordinateur fixe, soit un laptop, soit un routeur, etc, au choix de l'utilisateur. Je n'ai pas regardé ce projet très en détail et j'ai quelques doutes sur les possibilités techniques de faire un truc puissant et moderne avec un tel objectif de modularité, mais le fait que le projet soit déjà bien avancé et que la certification RYF fasse partie des objectifs mérite qu'on y jette un œil.

Télécharger ce contenu au format Epub

Lire les commentaires

À Toulouse, ouverture d'une formation de développeur d'Applications « full-stack »

Jeudi 25 Août

Une nouvelle formation 100% open-source ouvre à l'INP/ENSEEIHT de Toulouse fin octobre : "Développeur d'Applications Full-Stack". L'école publique d'ingénieurs ENSEEIHT accueille la formation et offre un campus avec toutes les facilités en plein centre de Toulouse ; elle délivrera un diplôme bac+3. L'ensemble est structuré en 5 mois d'enseignement de novembre à mars suivis de 4 mois de stage en entreprise d'avril à juillet.

Elle vise à combler le manque de développeurs d'applications web et mobiles, en les formant aux technologies les plus demandées : Python, Node.JS, Angular, React, Git, etc. Bien sûr toute la formation sera faite sous Linux, sous une forme essentiellement appliquée de classes inversées.

Un projet 'fil-rouge' choisi par groupes d'étudiants leur permettra de développer une application de leur choix - l'occasion aussi de concrétiser un projet de start-up pour ceux le souhaitant.

5 entreprises partenaires participent aux enseignements et sont prêtes à signer des « Préparations Opérationnelles à l’Emploi » (POE) tant la demande est grande dans ce secteur. La POE permet à un demandeur d'emploi d'être financé par Pôle Emploi,

L'inscription est possible jusqu'à début octobre et il reste des places vacantes. Le profil recherché est ouvert (un simple entretien d'admission aura lieu). Parlez-en autour de vous, si vous avez des amis qui ont la fibre numérique et qui souhaitent se réorienter vers un métier passionnant et porteur.

Télécharger ce contenu au format Epub

Lire les commentaires

Appel de wallabag aux fabricants de liseuse

Mercredi 24 Août

La rentrée littéraire approche. C'est l'occasion de lancer un petit appel aux fabricants de liseuses.

wallabag est un service de lecture différée : vous sauvegardez en un clic des articles web dans votre compte et vous les lisez plus tard en mode déconnecté sur votre smartphone ou tablette. Le tout dans un mode épuré pour vous concentrer uniquement sur le contenu de l'article. Une présentation vidéo existe et vous permettra de mieux comprendre l'idée.

Il s'agit d'une alternative libre et opensource à Pocket, une solution propriétaire déjà intégrée sur les liseuses Kobo.

L'idée : voir wallabag intégré chez un ou plusieurs fabricants de liseuses.

Le travail à fournir n'est pas impressionnant : wallabag propose déjà un export des articles aux formats ePUB et PDF (et bien d'autres). Techniquement, wallabag propose une API pour permettre aux applications des liseuses de récupérer les contenus sauvegardés.

Si vous travaillez dans le monde de l'édition numérique, si vous êtes fabricants de liseuses (et vous souhaitez concurrencer Kobo :-) ), si vous connaissez quelqu'un qui travaille dans l'édition numérique, si vous souhaitez pouvoir utiliser wallabag sur votre liseuse, écrivez à nicolas CHEZ loeuillet.org, contactez-le via twitter @nicosomb, partagez ce message, commentez-le ci-dessous, diffusez-le :).

Pour tous ceux qui se demandent quel est l'intérêt d'une liseuse vis-à-vis d'un bouquin papier, les lecteurs de LinuxFr.org ont listé quelques avantages, façon Prévert :

  • Une lisibilité excellente, même dehors.
  • Et la nuit alors ? Avec une liseuse éclairée on peut lire sans lumière donc sans déranger la personne qui dort à côté :-) ; en plus le changement de page est complètement silencieux, l'autre à côté apprécie d'autant mieux!
  • Des centaines de bouquins dans un espace super réduit (idéal pour les voyages, le camping, la randonnée, … c'est les vacances, pas les ennuis).
  • Idéal aussi dans la poche : la liseuse rentre dans la poche, le bouquin ça déroche.
  • Et puis tous les bouquins n’existent pas en format poche.
  • Ça prend moins de place dans une bibliothèque.
  • C'est léger, beaucoup plus léger, ce qui est pratique quand on lit des pavés, ou pour partir en congés, et même à l'étranger.
  • Les déménagements sont moins pénibles :-)
  • Marque-pages automatique.
  • Peut-être que c’est juste une autre manifestation du syndrome des deux mains gauches (ou quatre pieds gauches), mais les marques-pages ont tendance à s’égarer et on perd à chaque fois plusieurs minutes à retrouver où on en était avec les bouquins papier.
  • L'achat ou la dépose de fichiers sont super simples.
  • L'autonomie en semaines (un avantage de la liseuse contre un autre équipement électronique).
  • Les livres peuvent être moins chers : ce n'est pas forcément le cas, mais ça l'est toujours pour les livres dans le domaine public.
  • Ça permet de garder ses livres même après un accident : si la liseuse est perdue, passe sous l'eau ou brûle, elle est aussi fichue qu'un livre en papier le serait dans les mêmes conditions, mais les livres eux-mêmes, si on est prévoyant, on en a une sauvegarde sur son PC Debian.
  • Ça permet de lire dans des positions impossibles avec un livre en papier, par exemple dans un bus bondé ou avec zéro main (sauf une de temps en temps pour tourner la page), ou encore allongé sur le côté (pour faire ça avec un livre en papier, il faut un bras sous le corps pour tenir un côté du livre, ce qui est intenable parce que le sang ne peut pas bien y circuler, et un bras au-dessus pour tenir l'autre côté, ce qui est épuisant).
  • Suivre très facilement les notes, les renvois, le glossaire d'une simple pression du doigt.
  • De plus si la note renvoie vers un lien sur le oueb, la liseuse est généralement connectée à un réseau, ce qui permet de le consulter très facilement à tout endroit.
  • L'accès au dictionnaire en un quart de seconde… C'est bien sûr évident quand on lit dans une langue étrangère. Mais c'est aussi très utile en français. On se retrouve subitement à vérifier la définition de certains mots alors que, par paresse, on ne l'aurait jamais fait avec un livre papier.
  • Le dictionnaire anglais-français intégré. Mine de rien bien utile pour la lecture de certains romans.
  • Ça permet de lire des articles arXiv sans les imprimer et se trimbaler avec des feuilles A4 agrafées.
  • De même, on peut exporter des blogs/sites web vers sa liseuse.
  • La possibilité de surligner et retrouver facilement les passages intéressants « à développer »
  • Ensuite, la possibilité d'avoir ainsi plusieurs livres à disposition. Pour deux raisons :
    1. parce qu'on lit plusieurs livres en parallèle
    2. parce qu'il arrive qu'on finisse un livre pendant la première moitié d'un trajet de plusieurs heures.
  • Un bouquin papier qui tombe dans l’herbe ou la boue est défiguré à vie. Une liseuse ça se nettoie.
  • Un bouquin papier tient mal l’humidité genre rosée, la liseuse aucun souci.
  • Il y a même des liseuses étanches, donc on peut lire sous l'eau :)
  • Pour ceux qui détestent avoir trop de choses chez eux, un bouquin physique fini qui traîne est une gêne. La perte de temps qu’est la logistique pour s’en débarrasser (que ce soit donnons.org/vente d’occasion qui demande de prendre rendez-vous avec un particulier, ou aller à Emmaüs) insupporte au plus haut point.
  • De même, la logistique pour se procurer le bouquin (aller à la bibliothèque/la librairie) peut ennuyer. La liseuse c’est trois clics. Bon, heureusement aujourd’hui il y a des libraires en ligne, c’est moins contraignant.
  • Pouvoir se trimbaler avec 1 ou 2 bouquins de chaque genre (SF, physique, fantasy, philosophie, économie) pour pouvoir choisir ce qui nous fait envie.
  • Pouvoir garder des bouquins sous le coude sans s’encombrer. Avant il devait être réellement exceptionnel. Du genre LA référence du genre. Maintenant aucun scrupule à garder des bouquins électroniques « pas trop mal » (et c’est là qu'on se rend compte que « devrais-je garder ce bouquin ? » après l’avoir refermé et « ai-je bien fait de garder ce bouquin » 6 mois plus tard sont des questions bien différentes avec des réponses bien différentes).
  • Ça permet aussi de choisir la taille des caractères, la fonte, les espacements interlignes. Bref, toute la mise en page. C'est un chouia plus compliqué sur le papier.
  • Ça semble anecdotique, mais des bouquins avec du papier un peu trop transparent ou avec des caractères trop petits, des lignes trop espacées, etc. on en trouve à la pelle (et comme les préférences varient d'un lecteur à l'autre, c'est dur de contenter tout le monde).
  • Et en parlant de caractères, il existe des polices d'écriture spéciale pour les dyslexiques (comme opendyslexic.org par exemple).

Ceci étant dit, il est évident qu'une liseuse n'a rien d'indispensable, on vit très bien avec des livres en papier. Et on ne découvre les avantages (et les inconvénients) d'une liseuse qu'en essayant, et en essayant assez longtemps : si tu n'essaie pas en vacances par exemple, tu passeras à côté d'une bonne partie de l'intérêt de ces appareils.

NdM.: la liste des défauts reste à faire (pollution, coût, éventuel problème d'interopérabilité, gestion de mises à jour, DRM éventuel, etc.).

Télécharger ce contenu au format Epub

Lire les commentaires

Financement participatif de HandyDV Linux et sa machine à lire

Mardi 23 Août

Nous autres, êtres humains, possédons cinq sens majeurs mais savez‐vous que la vision représente 80 % de l’ensemble des sens utilisés au quotidien !

La seconde partie de la dépêche, après un petit retour sur la mal‐voyance, évoque HandyDV Linux, un projet de machine à lire gratuite, en recherche d’un financement participatif.

Sommaire Petit retour sur la mal‐voyance

Selon les critères de l’OMS (Office Mondial de la Santé), une personne est dite malvoyante lorsque son acuité visuelle est inférieure à 3/10e après correction pour le meilleur œil ou lorsque son champ de vision est réduit à 5 degrés. Si vous être myope, par exemple avec -2,5 dioptries, sans vos lunettes correctrices, vous êtes déjà aux 3/10e de vision. Un champ de vision à 5 degrés, c’est voir le monde au travers du chas d’une petite aiguille à coudre !

La mal‐voyance est un handicap invisible à nous autres mais ayant des répercussions sans pareilles dans la vie sociale et dans les actes de la vie quotidienne. Tout devient bien plus compliqué. Et que dire de la vie des non‐voyants où l’environnement et le quotidien deviennent un parcours d’obstacles. La technologie devient alors une aide, encore faut‐il la maîtriser. Les non‐voyants savent mieux que quiconque aiguiser leurs autres sens et les développer à l’extrême, notamment l’ouïe, le toucher ou l’odorat. On a vu ainsi, à Châteaubriant, un moniteur d’auto‐école non‐voyant. Il savait, à l’oreille, quand le feu passait au vert ! En Belgique, à Fontaine‐Lévêque, des non‐voyants peuvent s’inscrire à une auto‐école. D’autres personnes ont développé des capacités que certains mammifères marins utilisent : l’éco‐localisation.

Mais lire un papier, son courrier, ses relevés bancaires ? Vous allez me dire, il y a le braille ! Oui, mais les devenus non‐voyants sont peu nombreux à pouvoir l’apprendre (perte de la sensibilité fine au bout des doigts).

Sur un papier, les lettres n’ont ni odeur, ni relief , elles ne font pas de bruit et restent absolument silencieuses. Il existe heureusement des machines à lire, mais leur prix est prohibitif : au minimum 3 000 euros. L’isolement, le repli sur soi guettent.

HandyDV Linux

C’est là qu’intervient un projet formidable, développé par un Alsacien, Christophe Lévêque, qui prépare une machine à lire gratuite. Mais plus encore : un système d’exploitation, baptisé HandyDV Linux, permettant aux mal‐voyants, non‐voyants, débutants et autres, d’être à l’aise avec un ordinateur. Et pas un ordinateur sophistiqué : un simple ordinateur et même un ordinosaure, c’est‐à‐dire un ordinateur de 5 à 10 ans d’âge. Et tout ça gratuitement.

Testé pour vous

Nous avons testé pour vous et vous pourrez voir par vous‐même, car la machine à lire sera en démonstration au forum des associations à Châteaubriant le 3 septembre 2016. Petit cadeau : tous ceux qui l’auront testée pourront participer à une tombola pour gagner… un ordinosaure tout équipé !

Ce qu’il vous faut : un ordinateur, le système HandyDV Linux, et une simple imprimante scanneur. Posez votre document sur la vitre du scanneur, comme vous voulez : dans le bon sens, ou pivoté de 90° ou même de 180°. Installez‐vous à l’ordinateur, et prenez quatre de vos doigts que vous posez sur Ctrl + Win + Alt + A presque simultanément. Et l’ordinateur vous parle : il vous dit qu’il lance l’opération, vous demande combien de pages il doit lire, fait la numérisation, fait une reconnaissance des caractères, vous demande de choisir votre logiciel et, hop, le texte est à l’écran ! Et l’ordinateur vous lit le texte, tout haut !

Vous pouvez choisir votre voix (2 voix de femmes et 3 voix d’hommes, au choix). Vous pouvez relire une ligne du dessus, lire une ligne plus bas, faire épeler les lettres. Et, finalement, vous pouvez même enregistrer le texte dans un fichier à conserver…

L’opération prend trois minutes maxi. Ce qui fait que, même pour une personne voyante, l’opération est « rentable », car tout le texte est recopié en trois minutes. Oui, mais si le document a des colonnes ? Pas de problème ! Oui, mais si c’est un document que j’ai reçu par messagerie ? Pas de problème non plus (sauf si le document est mal contrasté). L’essai a été fait en mettant la machine à lire en concurrence avec un scanneur ordinaire. C’est la machine à lire qui a gagné, haut la main !

Un site Internet est en préparation, il comportera le système « confort de lecture » permettant à la personne de choisir la couleur du fond, la couleur du texte et la taille des caractères adaptées à sa vue. Le noir sur fond blanc est souvent trop agressif pour des yeux malades ! Le site Internet offrira aussi un manuel simplifié avec tous les raccourcis clavier nécessaires !

Compensation

Pour les déficients visuels, l’informatique n’est pas qu’un outil de loisir, c’est un moyen de compensation pour la lecture et l’écriture. Lire son courrier, écrire une lettre prend ici une autre dimension.

Avec HandyDV Linux, les personnes déficientes visuelles peuvent bénéficier des apports des livres audio au format DAISY et ainsi avoir l’accès à toutes les offres d’ouvrages offertes par les bibliothèques sonores.

HandyDV Linux offre également la possibilité d’envoyer des courriers électroniques, avec ou sans pièces jointes, très simplement, étape par étape, en suivant les indications de la synthèse vocale. Ce n’est pas de l’assistanat, ce n’est que de l’accompagnement.

Et, bien sûr, la possibilité, entre autres, par exemple pour les malvoyants, d’agrandir totalement ou partiellement le contenu de l’écran, de modifier la taille et la forme des polices y compris pour les personnes dyslexiques, d’avoir des thèmes avec des contrastes adaptés, de pouvoir à tout moment modifier le contraste d’un contenu. La revue d’écran vocale restitue les informations affichées à l’écran à l’aide de la synthèse vocale et ainsi permet aux non‐voyants d’agir, réaliser des tâches, communiquer quasiment comme nous, mais différemment : la navigation au clavier supplante alors l’usage de la souris.

Les personnes en situation de handicap peuvent retrouver une autonomie administrative, une autonomie dans bon nombre d’actes de la vie quotidienne, comme consulter son journal ! Elles retrouvent un accès à l’information.

C’est formidable, non ?

Financement

Tout le travail est fait bénévolement par une équipe répartie sur la France entière et même en Angleterre ! Le système d’exploitation sortira en octobre 2016. Il sera libre et gratuit. Mais, quand même, l’équipe a besoin d’investir un peu : car l’installation de « confort de lecture » passera par une entreprise spécialisée.

Un financement participatif a donc été lancé, pour 3 000 €. Cette somme devra être récoltée avant le 28 septembre 2016, sinon l’équipe n’aura rien et sera bien en peine pour financer l’entreprise spécialisée.

Si donc vous voulez participer, c’est chez Ulule.

Un montant de 5 €, 10 €, 20 €, c’est déjà très sympa. Davantage ? C’est merveilleux ! 1500 € ont déjà été trouvés, et il reste 28 jours. Faites un geste.

Une association est en cours de constitution, des demandes de subvention sont lancées (notamment auprès de la Banque Populaire).

J’ai hâte que vous puissiez juger sur pièces !

Télécharger ce contenu au format Epub

Lire les commentaires

Changement de version et améliorations du Micro Music Player (mmp-2.1)

Lundi 22 Août

Micro Music Player (mmp) est un lecteur musical minimaliste, sous licence GPLv3. La nouvelle version 2.1 n'implique pas beaucoup de changements majeurs au niveau du cœur du programme, mais pas mal d'améliorations ont été faites sur la présentation des données et l'ergonomie du programme. Et il faut aussi noter qu'une version Windows (⩾7) 64 bits est désormais disponible (qui fonctionne légèrement différemment de la version GNU/Linux).

Barre de progression

L'ajout majeur est une barre de progression, qui manquait cruellement aux versions antérieures, et l'affichage sur le côté de celle-ci de l'avancement temporel du morceau de musique en cours de lecture.

La barre de progression est bien sûr actionnable de manière à vous déplacer dans le morceau en cours de lecture.

Métadonnées

D'accord, mmp ne peut désormais plus se vanter de se passer des métadonnées, dont l'accès est d'ailleurs optionnel en interne: si les métadonnées ne sont pas accessibles : mmp-2.1 utilise une fonction de secours (principe nommé fallback en programmation). Mais grâce aux métadonnées beaucoup de choses sont possibles comme l'ajout de la barre progression (car la durée totale du morceau est lue dedans).

Image de couverture

L'algorithme de sélection de l'image de couverture, qui n'est utilisé que si l'image de couverture n'est pas présente dans les métadonnées, a été amélioré de manière à ce que mmp-2.1 vous assure d'afficher la face avant de l'album (exception faite du cas où votre dossier à lire ne contient que l'image de la face arrière de l'album ou autre images…).

Présentation des données à l'utilisateur

Un effort a été fait sur la présentation des données à l'utilisateur :

  • D'abord concernant la lecture en cours, l'affichage du nom de fichier brut a été remplacé par le motif suivant: ``N° Track Nom de l'artiste - Titre de la chanson Durée totale de la chanson.``

Mais vous pouvez toujours retrouver les noms des fichiers dans la liste de lecture qui n'a pas changé.

  • Puis mmp-2.1 n'affiche plus le nom du dossier en cours de lecture sur le bouton de sélection du dossier à lire, mais affiche le nom de l'album en cours de lecture (Vous aurez des surprises lors de la lecture d'une compilation par exemple !).
Version Windows enfin disponible !

Une version Windows (compatible Windows >= 7) 64 bits, est enfin désormais disponible, qui diffère un peu de la version pour GNU/Linux en ces termes:

  1. Au lieu de pouvoir choisir un dossier musical à écouter le bouton principal de l'interface vous permet de choisir des chansons. Sachant que les touches Ctrl et Shift (Maj) vous permettent de sélectionner plusieurs chansons à la fois.

  2. Dans le panneau de configuration vous pouvez choisir la déclinaison du thème (Adwaita) de votre interface: soit foncé soit clair. En lieu et place du dossier à ouvrir par défaut lors de la sélection (Mais le sélecteur de fichiers se souvient automatiquement du dernier dossier ouvert.).

Ergonomie

Concernant l'ergonomie vous pouvez désormais sélectionner plusieurs morceaux de musique à lire aussi bien par le biais du menu ou de part votre gestionnaire de fichiers grâce à son option ouvrir avec (tout comme le contenu d'un dossier d'ailleurs):

Sélectionner simplement les morceaux de votre choix ou le dossier à lire et Micro Music Player vous jouera la musique choisie.

Pour finir de nombreux raccourcis clavier ont été ajoutés pour le confort de ceux aimant ceux-ci.

Fonctionnalité repeat-one

J'ai bien essayé d'implémenter une fonctionnalité repeat-one mais je n'ai pas trouvé d'icônes correspondantes dans l'un des deux jeux d'icônes sélectionnables dans le panneau de configuration. C'est l'unique raison pour laquelle cette nouvelle version de MicroMusicPlayer n'implémente toujours pas cette fonctionnalité. J'en suis autant désolé que vous, mais c'est mon vice de la perfection que je paye.

Télécharger ce contenu au format Epub

Lire les commentaires

Revue de presse de l'April pour la semaine 33 de l'année 2016

Lundi 22 Août

La revue de presse de l'April est régulièrement éditée par les membres de l'association. Elle couvre l'actualité de la presse en ligne, liée au logiciel libre. Il s'agit donc d'une sélection d'articles de presse et non de prises de position de l'association de promotion et de défense du logiciel libre.

Sommaire

[Le Monde.fr] Des outils d’espionnage de l’unité d’élite de la NSA publiés par des pirates

Par la rédaction, le jeudi 18 août 2016. Extrait:

L’affaire, au parfum de guerre froide, intrigue les spécialistes des services de renseignement et de sécurité informatique depuis trois jours. Le 13 août, The Shadow Brokers, un groupe de pirates inconnu jusqu’alors, a publié sur Internet une série d’outils et de programmes d’espionnage informatique qu’il prétend avoir dérobé au groupe Equation, une référence transparente à la National Security Agency (NSA), responsable aux Etats-Unis de l’espionnage numérique.

Lien vers l'article original: http://www.lemonde.fr/pixels/article/2016/08/18/des-outils-d-espionnage-de-l-unite-d-elite-de-la-nsa-publies-par-des-pirates_4984544_4408996.html

[ZDNet France] Windows 10 - Microsoft ignore le choix des utilisateurs et leur vie privée

Par Christophe Auffray, le jeudi 18 août 2016. Extrait:

Un an après le lancement de Windows 10, l'Electronic Frontier Foundation (EFF) recense toutes les pratiques qu'elle juge discutables employées par Microsoft pour favoriser l'adoption de Windows 10 et collecter des données personnelles.

Lien vers l'article original: http://www.zdnet.fr/actualites/windows-10-microsoft-ignore-le-choix-des-utilisateurs-et-leur-vie-privee-39840818.htm

[ZDNet France] Des empreintes PGP frauduleuses révèlent une attaque contre des figures de l’hacktivisme

Par Louis Adam, le mercredi 17 août 2016. Extrait:

Dans un mail publié en début de semaine sur la mailing-list du kernel Linux, un utilisateur alerte sur une tentative d’imposture visant notamment Linus Torvalds. De fausses clefs GPG ont été uploadées sur un serveur de clefs, et celles-ci partagent la même empreinte que les vraies clefs utilisées par des développeurs du kernel Linux et activistes des libertés numériques.

Lien vers l'article original: http://www.zdnet.fr/actualites/des-empreintes-pgp-frauduleuses-revelent-une-attaque-contre-des-figures-de-l-hacktivisme-39840792.htm

[Agefi.com] Vers un «autre» système financier

Par Axel Lehmann, le mercredi 17 août 2016. Extrait:

Blockchain. Pourquoi et comment les divers potentiels de ce corpus technologique s’avèrent véritablement fascinants

Lien vers l'article original: http://www.agefi.com/quotidien-agefi/une/detail/edition/2016-08-17/article/blockchain-pourquoi-et-comment-les-divers-potentiels-de-ce-corpus-technologique-saverent-veritablement-fascinants-433179.html

[L'OBS] Les algorithmes en prison!

Par Olivier Ertzscheid, le mardi 16 août 2016. Extrait:

Depuis 10 ans, je répète souvent à mes étudiants que l’un des fondements essentiel de toute démocratie est la confidentialité de l’acte de lecture. Et tous ceux qui passent entre mes mains ont droit à la lecture commentée des «Dangers du livre électronique» de Richard Stallman, lequel texte me permet d’introduire ensuite les – heureusement nombreux – aspects positifs de (certains) livres électroniques.

Lien vers l'article original: http://rue89.nouvelobs.com/2016/08/16/les-algorithmes-prison-264924

[L'Informaticien] Le partenariat Microsoft / Education nationale devant le tribunal

Par Guillaume Périssat, le mardi 16 août 2016. Extrait:

Le partenariat signé en novembre 2015 entre l'Education nationale et Microsoft se retrouvera le 8 septembre devant le juge. Le collectif EduNathon considère en effet cet accord comme un marché public déguisé.

Lien vers l'article original: http://www.linformaticien.com/actualites/id/41344/le-partenariat-microsoft-education-nationale-devant-le-tribunal.aspx

Télécharger ce contenu au format Epub

Lire les commentaires

Agenda du Libre pour la semaine 34 de l'année 2016

Dimanche 21 Août

Calendrier web, regroupant des évènements liés au Libre (logiciel, salon, atelier, install party, conférence) en France (rien de prévu cette semaine en Belgique ou au Québec), annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 7 événements est en seconde partie de dépêche.

NdM.: côté Suisse, l'agenda n'est pas actuellement accessible en raison d'une migration DNS en cours. Nous cherchons toujours à généraliser la diffusion des résumés des agendas du libre francophone : actuellement la génération automatique du markdown avec liens et tag pour LinuxFr.org est possible depuis les AdL de Belgique, de France et du Québec (mais il faut quelqu'un pour générer la dépêche en modération toutes les semaines, pour chaque site AdL différent). La fusion des résumés France / Belgique / Québec a été faite pour la première fois, à la main.

Sommaire Agenda du Libre pour la semaine 34 de l'année 2016 [FR Foix] Linux : Découverte et Initiation - Le jeudi 25 août 2016 de 16h00 à 18h00.

A l'occasion du 25ème anniversaire du système informatique d'exploitation Linux.
Miguel animera une petite séance de découverte et d'initiation au pingouin pour l'appréhender sous toutes ses formes !
Temps convivial de questions / réponses pour finir.

[FR Paris] Soirée de Contribution au Libre - Le jeudi 25 août 2016 de 19h30 à 22h30.

Parinux propose aux utilisateurs de logiciels libres de se réunir régulièrement afin de contribuer à des projets libres. En effet, un logiciel libre est souvent porté par une communauté de bénévoles et dépend d'eux pour que le logiciel évolue.
Nous nous réunissons donc tous les jeudis soirs dans un environnement propice au travail (pas de facebook, pas de télé, pas de jeux vidéos, pas de zombies).
Vous aurez très probablement besoin d'un ordinateur portable, mais électricité et réseau fournis.

[FR Toulouse] Quatrième/Quelconque Jeudi/Jour du Libre - Le jeudi 25 août 2016 de 20h00 à 23h00.

Le groupe d'utilisateurs de logiciels libres de Toulouse Toulibre en collaboration avec Tetaneutral.net fournisseur d'accès internet et hébergeur libre proposent aux sympathisants de se retrouver l'un des mardis ou jeudis de chaque mois pour échanger autour des logiciels libres, des réseaux libres, discuter de nos projets respectifs et lancer des initiatives locales autour du Libre.
Ce repas est ouvert à tous, amateurs de l'esprit du Libre, débutants ou techniciens chevronnés.
Ce Qjelt aura lieu le jeudi 25 août 2016 à 20h00, au restaurant "la Paniolade" situé au 146 Boulevard de Suisse à Toulouse.

[FR Cognac] Internet: utilisateur et acteur - Du vendredi 26 août 2016 à 10h00 au dimanche 28 août 2016 à 16h00.

Apprendre à utiliser Internet, en devenir acteur et les bases pour le maitriser…
À partir de 12 ans jusqu'à 70ans
Projet: construire une page internet pour un carnet de voyage en 3 jours

[FR Montpellier] Permanence « Les logiciels libres, parlons-en ! » - Le vendredi 26 août 2016 de 17h00 à 19h00.

Le Faubourg Marché, qu’est-ce que c’est ?
Le Faubourg Marché est une permanence partagée qui permet aux associations d’accueillir ensemble, les publics de ces associations une fois par semaine, le vendredi entre 17h00 et 19h00 (ou au delà sous réserve d’accord préalable), au 19, rue du Faubourg de Nîmes, 34000 Montpellier.
L’idée est de s’informer et d’informer les adhérents des diverses associations sur le fonctionnement du lieu et des associations, et notamment sur les 5 partenaires qui l’animent et lui permettent ainsi d’exister (autour.com, L’Accorderie, enercoop, modulauto, La Nef). Lors de cette permanence partagée vous pourrez rencontrer les associations La Graine (monnaie locale de Montpellier), éCOhabitons, Montpellier à pied, et bien sûr Montpel’libre.

[FR Aiglun] Opération Libre - Du vendredi 26 août 2016 à 18h00 au dimanche 28 août 2016 à 18h00.

Opération Libre, c'est un week-end complet pour contribuer ensemble aux communs numériques, notamment OpenStreetMap, Wikipédia et Wikimedia Commons.
La prochaine édition aura lieu à Aiglun, près de Digne les samedi 27 et dimanche 28 août prochains.
Historiens, géographes, botanistes, développeurs, cartographes, photographes, designers, traducteurs, vidéastes, professionnels ou en herbe… et tous les curieux êtes invités à nous rejoindre pour 48 heures d'animations participatives destinées à collecter et libérer les informations et outils d'une commune avec les habitants et des contributeurs rassemblés pour l'occasion.

[FR Villeneuve d'Ascq] Libre à Vous - Le samedi 27 août 2016 de 09h00 à 12h00.

Vous souhaitez tester GNU/Linux sur votre ordinateur, vous recherchez un logiciel pour une fonction précise, des conseils ou de l'aide sur les logiciels libres ?
Libre à Vous est une permanence destinée à vous faciliter l'utilisation de l'informatique. Vous repartirez avec « le plein » de logiciels libres, fiables, évolutifs, performants et gratuits.
C'est chaque samedi matin au Centre d'Infos Jeunes à la ferme Dupire, 80 rue Yves Decugis à Villeneuve d'Ascq (métro Triolo) de 9h00 à 12h00.

Télécharger ce contenu au format Epub

Lire les commentaires

Dans les coulisses du standard C++

Samedi 20 Août

Le C++ a bientôt la quarantaine, et pourtant très actif en ce moment avec la finalisation de la prochaine version C++17. Profitons en pour faire le point avec une série d'articles sur le C++. Cette première dépêche nous dévoile la face cachée du C++, et donc peut intéresser tous les lecteurs LinuxFr.org :-)

Sommaire

Dépêches C++

Chère lectrice, cher lecteur LinuxFr.org. Tes collègues sont en vacances, et tu cherches à t'occuper ? Ou alors, tu es en vacances et l'actualité informatique te manque déjà ? Et bien, voici une première dépêche d'une longue série sur le C++. Ainsi tu seras en avance technologique dès la rentrée.

Résumé des dépêches :

  1. Cette première dépêche "Les coulisses du C++" présente la naissance du langage, puis du standard, sa spécification non-libre, payant, ouvert, délaissé au profit de son brouillon (draft), peu lu par les développeurs C++, évoluant lentement mais sûrement…

  2. La deuxième dépêche "Genèse du C++17" reviendra sur les dernières réunions du comité de normalisation.

  3. La troisième dépêche "Nouveautés C++17 du langage" présentera des changements du langage très intéressants : déduction des arguments template std::array a{1,2,3};, décomposition du retour de fonction auto [x, y] = f(); , namespace aa::bb{} équivalent à namespace aa{ namespace bb{}}, if constexpr sélectionne du code à la compilation, lambda constexpr, lambda capture *this, if(init;condition) comme for(init;cond;inc), variables inline… Mais il faudra encore attendre pour l'intégration des Concepts, Modules, Syntaxe d'appel uniforme et Réflexion.

  4. La quatrième dépêche "Nouveautés C++17 de la bibliothèque standard" présentera les changements au niveau de la bibliothèque standard qui pourraient bousculer notre petite vie de développeur : algorithmes parallélisés, std::string_view, std::filesystem, std::variant, std::any, std::optional, les fonctions spéciales mathématiques… Mais les intervalles (Ranges), le réseau (Networking) seront intégrés pour une version ultérieure.

  5. "Bilan C++17 et attentes pour C++20". Version mineure ou majeure ? D'un côté, les améliorations sont nombreuses et appréciables. Mais de l'autre, aucune fonctionnalité majeure n'est intégrée, exceptées celles qui sont déjà disponibles dans Boost (donc déjà supportées par un large panel d'anciens compilateurs). Conséquences sur le processus de normalisation ? Qu'attendre de C++20 ? Intérêt du C++ aujourd'hui ? Et les langages alternatifs ? Comment s'impliquer ?

  6. … d'autres dépêches à venir :-)

Partage

Chère lectrice, cher lecteur LinuxFr.org. Tu souhaites donner un coup de main pour les dépêches suivantes ? Rejoins-nous dans l'espace de rédaction collaborative sur LinuxFr.org. Un compte est nécessaire pour y accéder.

Après publication, les dépêches sont figées sur LinuxFr.org. Alors, pour continuer à améliorer ce contenu libre (fôtes, oublis, franglais, maladresses…), n'hésite à pas à aller sur le dépôt Git C++FRUG. C'est là aussi que tu trouveras les versions de ces dépêches les plus à jour :

  1. Les coulisses du standard C++ ;
  2. Genèse d'une version mineure ;
  3. Nouveautés du langage ;
  4. Nouveautés de la bibliothèque standard ;
  5. Bilan et attentes pour C++20.

Avec toutes nos contributions réunies, nous profiterons d'avantage de nos découvertes individuelles et nous offrirons un contenu CC-BY-SA de qualité pour créer, par exemple, un article Wikipédia C++17 en français :-)

Naissance d'un nouveau langage

A la fin des années 70, dans la cadre de sa thèse en Angleterre, le Danois Bjarne Stroustrup étudiait le paradigme de la programmation objet (avec le langage Simula). En 1979, aux Laboratoires Bell (États-Unis), Bjarne propose de rajouter ce paradigme objet au langage C qu'il appela "C with Classes".

Durant les années 80, les nouvelles fonctionnalités qui sont progressivement intégrées au tout nouveau C++ provoque un schisme entre les fans du C classique et les enthousiastes du C++.

Création du comité de normalisation C++

Dans la seconde moitié des années 80, le usenet comp.lang.c++ bouillonne, les premiers compilateurs C++ commencent à diverger, les développeurs ont du mal à écrire du C++ portable, et dix ans après la création de "C with Classes" des événements majeurs se produisent :

  • Avril 1989, le groupe de travail WG14 (comité du C) souhaite une normalisation du C++ ;
  • Mai 1989, à la demande du WG14, Andrew Koenig et Bjarne Stroustrup rédigent "C++: as close as possible to C - but no closer" pour expliquer les divergences (incompatibilités) du C++ par rapport au C (ce qui est valide en C et qui ne l'est pas en C++) ;
  • Juillet 1989, Dmitry Lenkov explique la création d'un groupe de travail C++ officiel et d'y inclure d'office Bjarne Stroustrup ;
  • Février 1990, première réunion du comité ANSI C++ ;
  • Juin 1991, la réunion du comité ANSI C++ réunit de très nombreux participants non-USA et la décision est prise de travailler conjointement avec le groupe de travail WG21 international.

Sigle   Définition ISO Organisation internationale de normalisation IEC Commission électrotechnique internationale JTC 001 Joint Technical Committee 001 SC 22 Subcommittee 22 (Sous-comité 22) dédié aux "langages de programmation, leur environnement et les interfaces avec les logiciels système" WG 14 Working Group 14 (groupe de travail 14) dédié au langage C (WG 14 sur le site de l'ISO) WG 21 Working Group 21 dédié au C++ (WG 21 sur le site de l'ISO) La puissance du C++

En 1991, un nouveau paradigme, la programmation générique (template) est ajouté. Ainsi que les exceptions.

Le C++ devient alors un formidable langage alliant un découplage puissant et la performance du code exécutable optimisé par les compilateurs C adaptés (cette flexibilité est très bien illustrée dans l’excellent journal Expressions template pour les nuls de serge_sans_paille). Mais cette compatibilité avec le langage C contraint à utiliser une grammaire pas toujours simple et un temps de compilation souvent long.

En 1994, Erwin Unruh présente au comité C++ un code source qui permet de calculer les nombres premiers à la compilation. Pour une partie des membres du comité, c'était une curiosité. Tandis que les autres membres se grattaient la tête et prirent conscience que l'on venait de découvrir, par hasard, que les template du C++ permettaient le paradigme de la métaprogrammation !

Cette découverte ouvre la voie à d'extraordinaires optimisations en permettant au compilateur de réaliser des calculs à la compilation (à ne pas confondre avec la réalisation de calculs à l'initialisation ou durant l'exécution). Ces techniques atteignent des sommets avec boost::mpl (2002), boost::proto (2008) et le futur boost::simd.

Au détriment d'une grammaire difficile, des erreurs faciles, d'une compilation lente et d'un débogage (debug) laborieux. Mais c'est un des rares langages qui offre au développeur autant d'abstraction et de performance en même temps. La passion de ce langage l'emporte. Avec le temps, les pièges sont connus, les techniques maîtrisés, et le C++ devient un vrai bonheur. :-)

De plus, ce langage bien vivant continue d'évoluer dans le bon sens. Les très nombreux outils qui orbitent autour de ce formidable langage continuent aussi d'apporter plein de nouvelles fonctionnalités. :-D

Les membres du comité de normalisation

En 1998, les membres finalisent le premier standard C++ : C++98. Soit une vingtaine d'années après la création du langage, et une dizaine d'années après l'initiative de normaliser celui-ci.

Pour devenir membre du comité international de normalisation du C++, appelé officiellement ISO/IEC JTC 001/SC 22/WG 14/WG 21, il faut être membre d'une représentation ISO de son pays. Une dizaine de pays sont représentés :

C'était IBM qui payait les frais de représentation du Comité de Normalisation Cpp de l'AFNOR. Mais, au départ à la retraite des employés IBM membres C++, plus personne ne payait les frais de représentation, et la France n'était plus officiellement représentée. Depuis peu, les choses sont rentrés dans l'ordre.

Une centaine de membres actifs se rencontrent quelquefois par an dans le cadre de la normalisation du C++ (essentiellement pour voter). Le plus gros du travail se fait à distance. Les membres C++ et les autres passionnés du C++ se rencontrent également lors des grandes rencontres du C++ : CppCon, C++Now, Meeting C++

Dans l'intérêt des utilisateurs du C++, les membres du comité accordent au comité et à l'ISO une licence mondiale, non exclusive, irrévocable, permettant l'octroi d'une sous-licence transférable pour l'affichage du contenu, la reproduction, l'adaptation, la distribution, la création de travaux dérivés à des fins commerciales ou non commerciales. En 2012, cette règle a notamment été rappelée à IBM, Intel et Oracle (voir N3423 §2.4).

Le standard ne peut être reproduit

Comme la plupart des documents publiés par l'ISO, la mention de droit d'auteur indique que la reproduction n'est pas autorisée :


© ISO/IEC 2014 – All rights reserved

COPYRIGHT PROTECTED DOCUMENT

All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission.
Permission can be requested from either ISO at the address below or ISO’s member body in the country of the requester.

Cette position est la même pour les autres langages gérés par l'ISO (Fortran, C…). Mais aussi pour Java, C# et de nombreux autres.

Dans la pratique, cela ne gène pas les développeurs de ces langages. Ce type de mention empêche juridiquement la reproduction du standard (même un paragraphe ou un code d'exemple). Des sites qui respectent à la lettre le droit d'auteur comme Wikipédia refusent de contenir la reproduction même partielle d'un tel document. D'autres sites comme stackoverflow sont plus pragmatiques.

Notons que d'autres langages de programmation ont des spécifications libres :

Le standard est payant

De plus, obtenir le standard C++ coûte cher. Même la version PDF téléchargée :

(voir aussi d'autres site vendant le standard)

Les anciens standards supprimés

Encore plus incroyable : chaque nouvelle publication du standard révoque/supprime (withdraw) la version précédente :

L'embêtant est que la plupart des projets C++ actuellement utilisés sont codés en C++03. Et la plupart des entreprises utilisent encore aujourd'hui des versions de compilateurs qui ne supportent pas (ou partiellement) le standard C++11.

Alors comment s'informer du standard C++ utilisé par le bon vieux compilateur que l'on est obligé d'utiliser ? Aller les consulter à l'INRIA ? Par exemple, cet utilisateur a besoin d'acheter le standard C++03 qui n'est plus à la vente.

Ouf, les brouillons du comité

Les documents en cours de rédaction (draft) du comité de normalisation sont gratuitement accessibles :

Quand le comité de normalisation C++ valide un brouillon (nouvelle version C++), ce brouillon bénéficie de dernières corrections. Puis, le comité le fournit à l'ISO qui change la mise en forme pour en faire une version officielle.

Documentations C++ de référence

Les standards C++ (officiels ou brouillons) ne sont pas simples à lire. Ces documents utilisent une terminologie très spécifique pour une spécification très rigoureuse. En fait, ces documents sont surtout utiles aux développeurs des compilateurs et à ceux qui implémentent des bibliothèques standards (std::).

Les utilisateurs du C++ (langage et bibliothèque standard) utilisent historiquement des livres (souvent ceux écrits par Bjarne Stroustrup et Scott Meyers) et plus récemment des sites web :

  • fr.cppreference.com en Français sous double licences CC-BY-SA-3.0 et GFDL (disponible en différentes langues, la version en Anglais est la plus à jour) ;
  • cplusplus.com seulement en Anglais et n'autorisant pas la reproduction (pas de licence libre) ;
  • … liste à compléter dans les commentaires.




 

Un standard ouvert

Note des auteurs de cette dépêche : Nous avons un profil plutôt technique (développeurs) et non pas juriste. Ce chapitre contient peut-être des erreurs importantes, mais nous avons tenté de rédiger ce qui nous semble correct… Nous n'avons pas pris le risque de nous aventurer à comparer C++ avec Java, C#… Celles et ceux qui connaissent bien le sujet, merci de nous éclairer dans les commentaires. :-)

Le C++ est bien un standard ouvert, sans brevet logiciel, sans propriété intellectuelle. C'est à dire que le langage et sa bibliothèque standard (API) peuvent être implémentés librement.

De même, le nom "C++" n'est pas une marque, ni aucun type de propriété intellectuelle. À la différence de la marque JavaScript® déposée par Oracle, ou des marques non déposées Rust™, Go™ (et une autre Go™).

Et même si C++ n'est pas encore aussi ouvert que peut l'être Rust™, de nombreux membres du comité améliorent constamment la façon de travailler pour plus de transparence et plus de proximité avec les utilisateurs C++, comme l'utilisation d'un compte GitHub.

Les versions C++

Même si le langage naît à la fin des années 1970, il n'est normalisé que 20 ans plus tard afin d'arrêter la profusion de versions C++ incompatibles.

La table suivante liste les différentes versions C++ normalisées ainsi que le brouillon C++17 en cours de consolidation. Nous pouvons remarquer le saut considérable du nombre de pages entre C++03 et C++11.

Version Pages C++98 ISO/IEC 14882:1998 1998-09-01 776 pages C++03 ISO/IEC 14882:2003 2003-10-15 786 pages (+1%) C++11 ISO/IEC 14882:2011 2011-09-01 1356 pages (+73%) C++11 Draft N3376 2012-02-28 1324 pages C++14 Draft N4296 2014-11-19 1368 pages (+3%) C++17 Draft N4606 2016-07-12 1586 pages (+16%)

Attention, ce dernier lien est celui du brouillon C++17 le plus récent lors de la rédaction de cette dépêche. Cette version sera certainement obsolète quelques mois après la publication de cette dépêche.

Ceux qui ont l'œil aiguisé remarqueront que le brouillon N3376 représentant la version C++11 a été publiée (2012-02-28) après la norme officielle 14882:2011 (2011-09-01). Ce N3376 correspond en fait à des corrections éditoriales mineures apportées au brouillon N3291 fourni à l'ISO. C'est le prmier brouillon de post-publication, le first post-publication draft en anglais.

Technical Specification (TS)

Les spécifications techniques notées TS pour Technical Specification sont les documents de travail les plus importants du comité de normalisation. Ces documents sont la base de discussion des évolutions du standard.

Généralement, les spécifications techniques sont composés de deux parties :

  • La première partie donne les motivation du changement (l'avantage d'avoir telle fonctionnalité dans le C++ avec des exemples de code) ;
  • La seconde partie liste toutes les modifications à appliquer au standard C++ en cours de rédaction (au "draft").

Numérotation des documents

A partir de 1990, le comité numérote ses documents officiels sur 4 chiffres en commençant par le n°0000. Ce numéro est incrémenté pour chaque nouveau document ou nouvelle révision d'un document.

En 1991, le préfixe N est adoptée, et le premier document à en profiter est le N0007. N comme Number (Numéro).

Ces numéros xxxx peuvent paraître obscures, mais sont très importants car ils sont utilisés comme références rigoureuses aux fonctionnalités C++ :

  • dans les échanges entre membres du comité ;
  • par de nombreux sites web.

Pour faire le lien entre principales spécifications techniques (TS) et leur numéro xxxx de la révision la plus récente, une astuce est d'utiliser la page experimental sur cppreference.com.

Voici, en exemple, l'historique des TS a propos des "Modules" :

Année Numéro Titre Révision 2004 N1736 Modules in C++ 1 2005 N1778 Modules in C++ 2 2006 N1964 Modules in C++ 3 2006 N2073 Modules in C++ 4 2007 N2316 Modules in C++ 5 2012 N3347 Modules in C++ 6 2014 N4047 A Module System for C++ 1 2014 N4214 A Module System for C++ 2 2015 N4465 A Module System for C++ 3 2016 P0142R0 A Module System for C++ 4

Remarquons le changement de nommage pour la révision de 2016. Le nouveau nommage PxxxxRx a été mis en place en septembre 2015 avec un P comme Proposal (Proposition). Progressivement, les PxxxxRx doivent remplacer les Nxxxx. L'avantage est de conserver le même numéro xxxx pour toutes les révision du document.

Comme en C++, on commence par compter la première Révision à partir de R0. L'exemple ci-dessus est un cas particulier : R0 est bien la première révision du nouveau format, mais la quatrième révision des documents "A Module System for C++".

Defect Report (DR)

Même après moult relectures par les meilleurs experts C++ au monde, avec toutes les précautions prises par les institutions officielles, les publications des standards C++ contenaient 5000 anomalies ayant fait l'objet, chacune, d'un rapport d'anomalie (Defect Report) !

Lors de ses réunions, le comité discute des rapports d'anomalie et devrait publier régulièrement des rectificatifs techniques (Technical Corrigendum). Mais le comité n'a jamais publié aucun rectificatif technique à ce jour !

Par exemple, le comité avait approuvé un rectificatif technique en 2003. Et finalement, le comité publie comme étant une nouvelle version du standard => C++03 :

A technical corrigendum was approved in 2003, . and the standard was published again as the ISO/IEC 14882:2003 edition, published 2003-10-16.

Bon, c'est vrai, à la décharge du comité, ce rectificatif technique de 2003 contenait une nouvelle fonctionnalité : Value initialization. C'était la dernière fois, que le comité avait travaillé sur un rectificatif technique.

Néanmoins, même si le comité ne publie aucun rectificatif technique, les rapports d'anomalie approuvés doivent être pris en compte par les compilateurs. Des sites comme cppreference.com listent les changements induits par ces rapports d'anomalie :

Les versions officielles du C++ deviennent donc vite obsolètes après leur publication car ces documents sont figés et ne bénéficient pas des corrections apportées par les rapports d'anomalie. Par conséquence, celui qui achète une version officielle du standard C++, devrait aussi suivre tous les rapports d'anomalie approuvés par le comité…

Pour terminer, notons aussi que des rapports d'anomalie approuvés lors d'une réunion du comité se retrouvent ne plus être approuvés lors de la réunion suivante.

Alors, chère lectrice, cher lecteur LinuxFr.org, es-tu étonné(e) par ce fonctionnement. Connais-tu d'autre façons de maintenir un tel document ? Comment cela se passe dans d'autres langages de programmation ? As-tu des idées d'amélioration ?

Un langage compliqué qui se simplifie

Par rapport à tous les langages utilisés en production, avouons que le C++ est peut être le langage le plus complexe que l'humanité ait pu inventer ! Les développeurs C++ en ont bien conscience. C'est peut-être la raison pour laquelle les participants aux meetups se montrent souvent bienveillants à l'égard des autres langages. Les développeurs C++ aimeraient un langage plus simple, à condition de "ne pas sacrifier la sacro-sainte performance".

Le C++ est tellement vaste et semé de subtilités que les développeurs C++ n'en connaissent bien souvent qu'une petite portion. Ainsi, lors d'un entretien de Bjarne Stroustrup (un des experts C++ les plus actifs du comité), celui-ci avait indiqué qu'il connaissait seulement 60% du standard. Ceux qui maîtrisent vraiment le C++ sur le bout des doigts sont appelés des juristes du C++, ou plus généralement "language lawyers" en anglais (ils ne sont pas forcément de bons développeurs).

Pour inverser la tendance, certains membres du comité de normalisation, comme Bjarne Stroustrup (le créateur du C++) souhaitent accélérer l'évolution du langage vers un C++ plus intuitif, plus sûr, et toujours plus performant.

Un process de normalisation qui s'ouvre d'avantage

C'est dans ce cadre que l'initiative C++ Core Guidelines (Recommandations C++) a été lancée. A la fois pour proposer un sous-ensemble du C++ plus sûr, plus simple et sans sacrifier les performances. Mais aussi pour faire pression sur les membres du comité pour adopter les idées de la Guidelines Support Library (Bibliothèque de support des recommandations) activement implémentée sur le dépôt Git de Microsoft, mais aussi sur le dépôt Git de Martin Moene qui est compatible avec beaucoup plus de compilateurs.

Pour faciliter les contributions au standard, le comité a aussi migré sur GitHub. Le standard en cours de rédaction/maintenance est sur le dépôt Git draft (brouillon). L'intégration d'une fonctionnalité au brouillon (standard en cours de rédaction) est souvent formalisée par une fusion (merge) d'une branche Nxxxx vers la branche master.

Cycle de publication triannuel

Après la version majeure C++98 (et son correctif C++03), un nouveau standard C++ devait être publié dans les années suivantes. Comme sa date de publication n'était pas fixée, cette version a été nommée temporairement C++0x.

Mais, avec le manque de maturité de certaines fonctionnalités et les requêtes continuelles d'ajout de nouvelles fonctionnalités, le comité de normalisation n'arrivait pas à stabiliser le standard. Et finalement C++0x a été publié en 2011 ! Ne perdons pas la face, 0x = 11 est correct mathématiquement avec x = B en hexadécimal :-)

Afin d'éviter tout nouveau glissement, le comité a alors décidé de publier un nouveau standard C++ tous les 3 ans, en figeant les fonctionnalités l'année N-1. Avec un cycle d'une version majeure (C++11) suivie d'une version mineure (C++14).

Malgré des dates de publication figées, les appellations C++1y (pour C++14) et C++1z (pour C++17) perdurent. Par exemple, l'option de compilation -std=c++1z ou le tag c++1z sur stackoverflow.

Les membres du comité de normalisation utilisent le terme C++17 (et non pas C++1z). Soyons confiants, C++1z verra bien le jour en 2017 (et non pas en 2018, ni après).

Implémentation de référence

Le comité ne fournit pas plus d'implémentation de référence ou de preuve de concept. Mais les membres du comité travaillent en étroite collaboration avec les éditeurs de compilateurs (notamment GCC et LLVM/Clang).

Néanmoins, en 1999, des membres du comité ont quand même créé le projet Boost.org afin de proposer et valider des implémentations de fonctionnalités candidates de la bibliothèque standard. Ainsi, dès 2005, la publication du brouillon C++ TR1 est en lien direct avec les développements fournis par le projet Boost.org.

D'ailleurs, c'est devenu le parcours classique pour les nouveaux composants de la bibliothèque standard. C'est par exemple le cheminement de std::filesystem. Et plus récemment, quand le Français Joël Falcou a proposé la fonctionnalité SIMD, les membres du comité l'ont invité à intégrer Boost dans un premier temps. Cela permet également de vérifier de la popularité d'un composant.

La suite…

La prochaine dépêche va nous permettre d'entrer enfin dans le vif du sujet C++17.

Merci de nous donner un coup de main à la rédaction des prochaines dépêches C++17. Pour participer ou lire en avance les prochaines dépêches :

Droit d'auteur, remerciements et licences

Le texte de cette dépêche est protégé par le droit d'auteur la gauche d'auteur et réutilisable sous licence CC BY-SA 4.0. Merci aux nombreux auteurs sur le dépôt Git et sur LinuxFr.org : olibre, duckie, rom1v, Oliver H, cracky, Lucas, palm123, Adrien Dorsaz, Martin Peres, RyDroid, M5oul, Anthony Jaguenaud et Benoît Sibaud. Merci aussi à Klaim, Édouard A, rewind, David Demelier, gasche, freem et ®om pour leurs commentaires pertinents.

Aussi un immense merci à mes collègues développeurs, qui à défaut de m'aider à la rédaction, ont illustré cette dépêche (et les dépêches suivantes) avec des dessins humoristiques sous licence libre : Ziyue, AKP, Florent B, et Jae-Zun. Merci aussi à Dominic Alves pour son dessin C++ sous licence libre. Merci à Theppitak Karoonboonyanan pour maintenir la police de caractères Purisa.

Merci d'avance de l'aide apportée sur les prochaines dépêches C++17 en cours de préparation : Micka pour ses exemples utiles et AMB007 pour les bogues trouvés dans les codes C++ d'exemple.

Télécharger ce contenu au format Epub

Lire les commentaires

OpenWRT et LEDE (Linux Embedded Development Environment) : à fourchettes tirés...

Samedi 20 Août

LEDE (Linux Embedded Development Environment) est le fork d'OpenWRT, une distribution GNU/Linux pour matériel embarqué (dont les routeurs WiFi), annoncé en avril 2016. Une part notable des développeurs d'OpenWRT ont décidé de forker le projet OpenWRT. C'est une annonce importante, le projet OpenWRT semblait ralentir dans ses évolutions, notamment par l'absence d'annonces sur la prochaine version stable.

Ce départ massif, et l'absence de méthode de ralliement au projet OpenWRT va pour le moment ralentir considérablement la sortie de la prochaine version stable.

LEDE veut réinitialiser le projet (le terme "reboot" est celui utilisé), et s'orienter explicitement vers l'embarqué. Les routeurs WiFi sont évidement toujours au centre du projet (héritage d'OpenWRT). On commençait à trouver OpenWRT sur des équipements moins spécialisés comme le Raspberry Pi ou le monde x86 (32/64bits).

De mon point de vue, nous n'en sommes qu'à la fourniture d'une version instable. Il sera intéressant de voir comment évoluent les choses. On pourrait également assister, comme pour Ampache, à une réintégration du projet LEDE au niveau d'Openwrt, qui sait…

NdM.: quelques données chiffrées, donc quantitatives et pas forcément qualitatives :

  • LEDE : sur Github 188 étoiles, 111 forks, 7 personnes, 35838 commits, 1 publication et 107 contributeurs ; sur la liste de diffusion, des centaines de courriels par mois ; sur IRC, 7 comptes-rendus de réunions.
  • OpenWRT : sur Github 354 étoiles, 229 forks, 16 personnes, 37878 commits, 5 publications et 76 contributeurs ; une liste de diffusion interne privée, une activité certaine sur leur forum et plus aucune réunion depuis 2009 (ou le wiki n'est pas à jour)
Télécharger ce contenu au format Epub

Lire les commentaires

Une boîte à outils libre pour l'éco-constrution

Vendredi 19 Août

Ce 4 août 2016, une campagne de financement participatif de l’Open Building Institute (OBI) et l’Open Source Ecology (OSE) a collecté avec succès 115 860 $ (sur un objectif de 80 000 $) auprès de 1 902 contributeurs, afin de soutenir le développement d'une boîte à outils Open Source visant à rendre la construction de logements écologiques plus facile, moins chère, plus rapide et à la portée de tout le monde.

Lors de cette campagne, l’OSE a annoncé l’organisation de son premier atelier européen sur leur kit de construction d'imprimante 3D à Ghent en Belgique.

Présentation de l’OBI et l’OSE

L’Open Source Ecology fondé par Marcin Jakubowski développe le Global Village Construction Set (GVCS) visant à publier les spécifications d'une cinquantaine de machines agricoles et industrielles nécessaires à la civilisation.

L’Open Building Institute a été fondé par Catarina Mota en partenariat avec l’Open Source Ecology et est l’aboutissement de plusieurs années d’expériences de construction d’habitat écologique abordable dans leur ferme « Factor e Farm » du Missouri aux États-Unis.

Présentation de la boîte à outils OBI et de leur plan de route

L’Open Building Institute met à disposition une bibliothèque Open Source de modules de construction (murs, fenêtres, portes, toits…) et de procédures d’assemblage rapide permettant une fabrication modulaire et évolutive d’une habitation.

L’équipe prévoit d'offrir un service clé en main de construction pour les futurs propriétaires en 2017. Pour cela, il propose un programme de formation pour les constructeurs basé sur un modèle de production social (feuille de route).

Un atelier collaboratif planifié en novembre 2016 a pour objectif de monter une maison hors réseau de près de 70 m2 en cinq jours, avec une équipe d’une trentaine de personnes, pour un budget de matériaux d’environ 22 500 €, suivi de la construction d'une ferme aquaponique.

Prochain groupe de travail de l’OSE [BE Ghent] OSE 3D Printer Construction Set Workshop - Du jeudi 8 septembre 2016 à 09h00 au vendredi 9 septembre 2016 à 18h00.

Le premier groupe de travail européen de l’OSE aura lieu ces 8 et 9 septembre 2016 à Ghent en Belgique sur leur kit de construction d’imprimante 3D. Lors de cette formation immersive, les participants fabriqueront pour la première fois ce kit Open Hardware, et auront la possibilité de fabriquer leur propre imprimante. Le kit est composé de modules pouvant être assemblés pour construire une imprimante 3D de la taille souhaitée, ainsi que d’autres machines-outils à commande numérique (CNC de fraisage, tournage, découpage laser, …), et des instructions de configuration des logiciels libres pilotant l’imprimante.

Une partie de cet atelier est également dédiée aux concepts d’Extreme Manufactoring, d’entreprise distributive et d’économie collaborative et Open Source soutenue par l’OSE.

Télécharger ce contenu au format Epub

Lire les commentaires

Haiku a 15 ans

Vendredi 19 Août

Le 18 août 2001, le premier message sur la liste de diffusion de OpenBeOS était envoyé par Marcus Overhagen ("Ok, let's start"). 15 ans plus tard, le projet est toujours là, même si les progrès semblent un peu lents ces derniers temps.

Sommaire Le projet Haiku

Haiku est un système d'exploitation compatible avec les applications et pilotes de périphériques écrits pour BeOS. Le but est de fournir un systéme léger et efficace pour les ordinateurs personnels.

Haiku est publié sous la licence MIT (en majorité, certains composants utilisent d'autres licenses libres). Il propose une ABI stable, ce qui permet la diffusion de logiciels compilés, de façon durable.

Historique du projet

Durant les premières années du développement de Haiku, il n'était pas encore un système d'exploitation complet. Les premiers développements ont été faits sur la base de BeOS, dont l'architecture modulaire permettait le remplacement progressif des différentes parties du système. L'un des premiers développements complétés fut donc… la gestion des économiseurs d'écrans.

Dès avril 2002, un premier prototype de l'app_server (l'équivalent du serveur X) permettait d'afficher une fenêtre. Mais ce n'est que bien plus tard, en mars 2005, qu'il a enfin pu fonctionner sur un système intégralement compilé à partir des sources de Haiku, sans morceaux binaires de BeOS.

Les choses se sont enchaînées assez rapidement à cette période, avec la gestion du réseau (avril 2005), la mise en place du gestionnaire de fichier Tracker (juillet 2005), puis le support de l'USB (septembre 2006). En 2007 s'ajoute le support des contrôleurs SATA, et en février 2008, il devient possible de compiler Haiku sous Haiku pour la première fois (auparavant la compilation s'effectuait depuis BeOS ou Linux).

Le 30 juillet 2008 voit les premiers commits de ce qui sera HaikuPorts, un équivalent des ports BSD. Assez simple au début, le format des recettes évoluera plus tard pour ressembler fortement au Ebuild de Gentoo, il est maintenant documenté sur le wiki du projet avec de nombreux conseils de portage. La catégorisation des ports reprend d'ailleurs celle de Gentoo.

En janvier 2009, c'est l'arrivée de GCC 4. Haiku continue d'utiliser principalement gcc 2.95.3 afin de maintenir la compatibilité avec les exécutables, pilotes et bibliothèques écrits pour BeOS, mais il est désormais possible d'utiliser gcc4 pour les nouveaux logiciels, et donc de pouvoir bénéficier d'un support à jour des langages C et C++ (C99, puis C++11).

En septembre 2009, la première version (alpha 1) de Haiku est publiée. Elle est suivi d'une deuxième version alpha en 2010, apportant le support du wifi (WEP) et un navigateur basé sur WebKit, La dernière version publiée est la version alpha 4, de novembre 2012. Elle apporte la gestion du WPA2 ainsi que de nombreuses autres améliorations (pilotes de périphériques, systèmes de fichiers, etc).

Évènements et conférences

Les développeurs et utilisateurs de Haiku se retrouvent tous les ans au mois d'octobre à Düsseldorf pour BeGeistert, la conférence annuelle autour de BeOS et des systèmes compatibles. La conférence est suivie d'un "coding sprint", une semaine durant laquelle les développeurs sont réunis dans une salle pour travailler à plein temps sur le projet et faire avancer les choses.

Vous pouvez également rencontrer certains développeurs aux RMLL, au FOSDEM, au Capitole du Libre, aux JDLL ou à l'Alchimie tous les deux ans. Ce sont autant d'occasions pour donner des conférences et mieux faire connaître le projet.

Vers une version bêta

Depuis 2012, le développement continue, avec du travail sur le moteur HTML WebKit, les portages x86_64, PowerPC et ARM, la gestion des médias en streaming (webradios, par exemple), mais surtout la gestion de l'USB3 (disponible dans les nightly builds depuis quelques semaines) et le gestionnaire de paquets, qui était la dernière grosse fonctionnalité manquante pour une version bêta de Haiku. Une grosse partie du travail consiste à mettre en place les serveurs qui se chargeront de compiler les paquets binaires pour les dépôts de logiciels, et de préparer les "recettes" contenant les instructions pour compiler ces paquets.

Malgré un délai un peu long depuis la dernière publication (plus de 3 ans), les choses avancent.

Les efforts de développement se concentrent actuellement sur plusieurs points, pour la livraison des versions beta 1 puis R1:

  • Le système de compilation automatique des paquets pour les dépôts de logiciels,
  • Les pilotes de périphériques, en particulier l'USB3 et les cartes graphiques intel,
  • Diverses nouveautés dans l'interface kit (l'API pour les interfaces graphiques), et des applications en bénéficiant,
  • L'intégration du "launch daemon", un gestionnaire de services. Auparavant, un simple script bash suffisait à démarrer le système, mais cela ne s'interfaçait pas bien avec le découpage en paquets (chaque paquet devant modifier l'unique script pour s'intégrer dans la séquence de démarrage). Le launch daemon permet la déclaration des services chacun dans un fichier séparé, avec la gestion des dépendances et des évènements (montage des disques, connexion au réseau), ainsi que le redémarrage automatique des services en cas de crash.

Un travail de longue haleine est en cours pour corriger plusieurs problèmes détectés par Coverity et PVS Studio, deux outils d'analyse statique conçus pour détecter les problèmes de sécurité et certaines erreurs courantes. Ces deux outils commerciaux proposent une offre gratuite pour les projets libre, qui leur permet de tester leurs outils sur différentes bases de codes. Les développeurs de PVS studio ont également publié une analyse des problèmes détectés les plus intéressants.

La version beta1 de Haiku remplacera GCC 4 par GCC 5. Actuellement c'est la version 5.3 qui est proposée dans les nightly builds, mais cela peut changer en fonction des versions publiées par le projet GCC.

Nouveautés dans la communauté

En dehors des évolutions de Haiku lui-même, les choses bougent dans le projet et dans la communauté.

Le site web de Haiku va migrer de Drupal 6 (en fin de vie) vers Hugo et Discourse. Cela le rendra plus responsive (adaptatif) et permettra de réorganiser un peu le contenu.

Haiku a cette année encore participé avec treize autres organisations au Google Code-In (GCI) donnant aux 13-17 ans une première expérience de contribution à des projets libres. Haiku participe à GCI depuis la première édition en 2010. Et s'il n'a pas été retenu parmi les très nombreux candidats aux Google Summer of Code (GSoC) cette année, des participations antérieures ont apporté de nombreuses contributions (API de localisation, support IPv6, ext3, client natif NFSv4, Additions Invités pour VirtualBox, ports de libUSB, du compilateur et runtime Go, d'OpenJDK, mise à jour du portage SDL 1.3, le support de l'architecture x86_64…), ainsi que des contributeurs réguliers.

Moins bonne nouvelle, les sites haikuware.com et bebits.com, qui étaient les dépôts de logiciels historiques pour Haiku et BeOS, sont maintenant hors ligne suite à des désaccords entre le propriétaire du site et le projet Haiku. Cependant, le nouveau gestionnaire de paquets les remplace avantageusement et plusieurs nouveaux dépôts apparaissent, qui sont compatibles avec ces nouveaux outils. On peut notament consulter la liste des paquets en ligne sur Haiku Depot Server, le site qui permet d'annoter les paquets pour une belle présentation dans l'application Haiku Depot (icônes, captures d'écran, descriptions dans plusieurs langues, commentaires et évaluations).

D'autre part, le projet HaikuArchives rassemble le code source de nombreuses applications pour Haiku et BeOS, qui ont été abandonnées par leurs auteurs originaux. Ceci permet d'assurer la maintenance de ces applications, en attendant qu'elles soient reprises par de nouveaux développeurs. Pour la plupart de ces applications, les sources étaient déja disponibles, mais certaines ont été diffusées pour la première fois par les auteurs originaux suite aux demandes du projet HaikuArchives. Une façon un peu inhabituelle, mais plutôt efficace, de produire du logiciel libre.

Enfin, Haikuports reçoit régulièrement des pull-requests rajoutant de nouvelles recettes et patches. Plus de 140 personnes ont déjà participé.

Télécharger ce contenu au format Epub

Lire les commentaires

Pages