Syndiquer le contenu
Mis à jour : il y a 16 heures 12 min

Appel à contribution pour la traduction du livre « Gestion de versions avec Subversion »

4 octobre, 2016 - 09:47

Vous avez envie de collaborer à un projet libre, mais vous ne savez pas programmer. Vous maîtrisez l’anglais et vous aimez quand la documentation technique est bien rédigée. Vous voulez approfondir les concepts de gestion de versions et comprendre pourquoi votre logiciel préféré est le meilleur (qu’il s’agisse de Subversion ou d’un autre avec un modèle différent). Si vous vous reconnaissez dans au moins une de ces descriptions, vous pouvez participer !

Subversion continue d’évoluer et la documentation technique qui l’accompagne aussi. Le livre Gestion de versions avec Subversion détaille, non seulement l’ensemble des commandes disponibles, mais fournit aussi des exemples concrets d’utilisation et approfondit les concepts de ces logiciels qui sont au cœur de tout logiciel libre. La version PDF « pèse » environ 500 pages. Autant dire que le travail de traduction ne manque pas.

Ainsi, la version française actuelle du livre Gestion de versions avec Subversion correspond à Subversion 1.5. Afin de recoller à la version anglaise, nous cherchons des volontaires pour poursuivre la traduction pour la version 1.8. Il s’agit donc de :

  • porter la version française 1.5 vers la 1.8 ;
  • traduire les nouveautés depuis la version 1.5 ;
  • faire des lectures croisées pour tout ce qui a déjà été traduit.

Comment participer :

  • pour de petites contribution : soumettez vos améliorations et traductions dans la partie Gestion des tickets de SourceForge ;
  • si vous avez plus d’ambition : créez un compte sur sourceforge.net et demandez les droits de propagation sur le projet.

Au plaisir de vous lire bientôt !

Télécharger ce contenu au format Epub

Lire les commentaires

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

4 octobre, 2016 - 07:05

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'informatique] Adoption du projet de loi Numérique: ce qu’il faut savoir

Par Victoria Manon, le samedi 1 octobre 2016. Extrait:

Le projet de loi Numérique vient d’être adopté par le Parlement. Qu’est-ce que les Français doivent savoir au sujet de cette nouvelle loi?

Lien vers l'article original: http://www.linformatique.org/adoption-du-projet-de-loi-numerique.html

Et aussi:

[Que Choisir.org] Ordinateur et logiciels préinstallés

Par Camille Gruhier, le jeudi 29 septembre 2016. Extrait:

Selon la Cour de justice de l’Union européenne, la vente d’un ordinateur équipé de logiciels préinstallés ne constitue pas une pratique commerciale déloyale. Tant pis si le consommateur ne peut ni choisir librement son système d’exploitation, ni contester la présence non sollicitée des multiples logiciels. Un revers pour les défenseurs du logiciel libre, une déception pour l’UFC-Que Choisir.

Lien vers l'article original: https://www.quechoisir.org/actualite-ordinateur-et-logiciels-preinstalles-la-justice-europeenne-ecarte-la-pratique-deloyale-n22691

Voir aussi:

[Numerama] La Russie reste déterminée à se passer de Windows

Par Julien Lausson, le mercredi 28 septembre 2016. Extrait:

Les autorités russes maintiennent leur plan consistant à remplacer tous les logiciels américains par des solutions locales ou, à défaut, open source pour en contrôler le code.

Lien vers l'article original: http://www.numerama.com/politique/197616-la-russie-reste-determinee-a-se-passer-de-windows.html

[Politis.fr] Numérique: Hollande soigne Bill Gates

Par la rédaction, le mercredi 28 septembre 2016. Extrait:

Le gouvernement français a défendu la pratique de la vente liée d’ordinateurs et de systèmes d’exploitation.

Lien vers l'article original: http://www.politis.fr/articles/2016/09/numerique-hollande-soigne-bill-gates-35442

[ZDNet France] OW2 Con: comment mieux protéger les projets open-source?

Par Louis Adam, le mercredi 28 septembre 2016. Extrait:

À l’occasion de l’OW2Con qui se déroulait à Paris cette semaine, David Wheeler, responsable du programme de badge lancé par la Core Infrastructure Initiative, est revenu sur le succès de cette initiative.

Lien vers l'article original: http://www.zdnet.fr/actualites/ow2-con-comment-mieux-proteger-les-projets-open-source-39842564.htm

[Libération] La ville de demain nous appartient

Par Patrick Cappelli et Xavier Colas, le lundi 26 septembre 2016. Extrait:

«Citadins & Citoyens»: échos de la journée de débats organisée ce dimanche par «Libération» au BHV Marais.

Lien vers l'article original: http://www.liberation.fr/evenements-libe/2016/09/26/la-ville-de-demain-nous-appartient_1511334

Télécharger ce contenu au format Epub

Lire les commentaires

Renouveau de JabberFR

3 octobre, 2016 - 05:09

JabberFR est une association née en 2012 à partir de la structure officieuse existant depuis environ 2003 sous le même nom, qui a avec le temps fusionné avec les services fournis par (feu) l’APINC. JabberFR était plus une fédération de services qu’un simple serveur, avec pour but affiché de rendre la vie plus facile aux utilisateurs francophones de Jabber, via des services mis en commun et exposés de la même façon sur chaque serveur de la fédération :

  • l’annuaire des utilisateurs (JUD), pour faciliter la découverte de contacts ;
  • le serveur de discussions chat.jabberfr.org ;
  • la passerelle IRC irc.jabberfr.org, pour faciliter la transition ;
  • un serveur mandataire SOCKS (XEP-0065) pour assurer un transfert de fichiers efficace.

Les buts affichés de l’association sont :

  • mettre à disposition (enfin, continuer la mise à disposition) des services de messagerie instantanée libres à travers les serveurs gérés par l’association, tels que jabber.fr, chat.jabberfr.org, ou im.apinc.org ;
  • promouvoir les applications et services qui y sont liés, notamment grâce au wiki, ou par la présence de membres à des évènements grand public ;
  • améliorer l’existant en développant des logiciels ou composants lorsque le besoin est ressenti.
Sommaire Fermeture de l’APINC et migration des services Évolutions

Les serveurs Jabber étant hébergés historiquement et à titre gracieux chez l’APINC, qui a annoncé la fin de l’association en avril dernier, il a fallu déménager les services vers de nouveaux horizons afin de garantir la continuité du service après l’arrêt planifié des machines courant juillet.

La migration et le passage d’une ancienne version d’Ejabberd à la dernière version de Prosody (la future version stable, actuellement en période de gel des fonctionnalités) permet, tout d’abord, de ne pas avoir à couper quoi que ce soit en cas de changement de certificat, ce qui est une obligation quand on utilise Let’s Encrypt, en raison de la fréquence des renouvellements.

De plus, il permet également de se débarrasser du composant pour salons [MU-Conference],(http://gna.org/projects/mu-conference) qui n’est plus maintenu depuis des années, au profit du module intégrable dans Prosody, auquel a été ajouté, par exemple, la gestion des archives ou un pastebin, dès qu’un message dépasse une certaine taille.

De la même façon, le service de salons accessible par navigateur sur chat.jabberfr.org est passé de MUCkl, qui n’est plus maintenu, à Candy. Il utilise maintenant un serveur anonyme au lieu d’un compte unique dont les identifiants étaient en clair dans les sources JavaScript. Ce serveur anonyme, en conjonction avec mod_muc_banip_ permettra une modération plus aisée et fine des utilisateurs anonymes qui abuseraient du service, là où l’on devait auparavant bannir toute personne passant par l’interface Web pour être débarrassé d’une seule.

L'ancienne passerelle IRC a été remplacée par biboumi, qui est activement maintenu, simple à utiliser, et performant.

Les utilisateurs auront également droit aux « nouveautés » (comprendre post‐2008) du protocole telles que :

  • Stream Management (XEP-0198), qui permet de savoir si l’on a bien reçu tous les messages du serveur et vice versa, ainsi que de restaurer une session qui s’est terminée de façon impromptue (pour des problèmes de réseau, par exemple) ;
  • Message Carbons (XEP-0280), qui fait que le serveur duplique les messages émis ou reçus aux différents clients connectés qui prennent en charge l’extension, garantissant une transition totalement transparente d’un appareil à un autre ;
  • Message Archive Management (XEP-0313), qui est la spécification de référence pour les archives de messages XMPP côté serveur, et qui succède à Message Archiving (XEP-0136), bien que n’étant pas encore totalement stabilisée ;
  • Client State Indication (XEP-0352), qui permet à un client de signaler son état d’inactivité au serveur, auquel cas le serveur aura l’autorisation de filtrer un certain nombre d’éléments non essentiels quand le client est inactif, diminuant ainsi la bande passante utilisée et améliorant l’autonomie d’autant ;
  • XMPP Subprotocol for WebSocket (RFC 7395), qui vient rejoindre XMPP over BOSH (XEP-0206) pour fournir aux clients Web un moyen de se connecter directement au serveur, cette fois‐ci en collant mieux au fonctionnement par TCP classique, tout en permettant de contourner le blocage mis en place sur certains réseaux ;
  • Blocking Command (XEP-0191), qui vient remplacer Privacy Lists (XEP-0016) pour le filtrage des communications indésirables, d’une façon beaucoup plus simple à implémenter pour les clients et beaucoup plus efficace côté serveur ;
  • HTTP Upload (XEP-0363), pour permettre aux utilisateurs d’envoyer de petits fichiers sur le serveur, certains clients comme Conversations ou Gajim l’utilisent pour envoyer des images à l’intérieur des messages ;
  • Push Notifications (XEP-0357), pour les clients mobiles tournant sur un système d’exploitation restrictif quant aux connexions restant ouvertes (iOS, Windows Phone, Android 6+), permet de notifier au serveur du fabricant que le client a reçu un message, qui le transférera à ce dernier pour le réveiller. Il est à noter qu’à aucun moment les serveurs du développeur de l’application, ni ceux d’Apple, Google ou Microsoft n’ont accès au contenu ni à l’expéditeur du message : uniquement « tel téléphone a reçu un message ».

La plupart des clients mobiles (tels que Conversations ou Yaxim) savent tirer parti de ces extensions pour réduire la consommation de batterie, la bande passante utilisée et fournir une meilleure expérience à l’utilisateur. Des clients de bureau tels que Gajim ou poezio peuvent également en bénéficier, par exemple en cas de connexion instable.

Détails techniques de la migration

Le passage à Prosody ne s’est pas fait sans accroc, à commencer par le script de migration fourni par Prosody qui a des difficultés sur les bases de données de taille supérieure à ce qui est habituel. Il a donc fallu développer des modules Prosody dédiés (depuis Ejabberd et depuis Mu-Conference), afin de réaliser la migration sans tomber à court de mémoire.

Un certain nombre de services s’appuyaient sur des technologies obsolètes voire franchement périmées, telles que Ruby 1.8. Un des effets néfastes est qu’il est impossible de mettre à jour les bibliothèques pour éviter les problèmes de sécurité, puisqu’elles ont évolué avec le langage et ses ruptures de compatibilité. Cette dette technique est bien sûr due au fait que les projets sont uniquement en mode « maintenance » une fois leur but atteint, et Debian oldstable permettait de retarder le compte à rebours des modifications majeures à effectuer.

De la même façon, les morceaux de services écrits en PHP laissaient des warnings indésirables dans les journaux système et utilisaient directement l’interface PHP MySQL, qui n’existe plus depuis PHP 7, au lieu de passer par le plus moderne PDO. Il a donc fallu procéder à une légère mise à niveau. Une partie des services en PHP n’est d’ailleurs toujours pas accessible, car leurs données étaient hébergées sur un autre serveur MySQL que celui qui a été l’objet de sauvegardes (et la connexion n’étant réalisée que dans le fichier .php du service, le problème n’a été détecté que tardivement).

La migration a été l’occasion de mettre en œuvre une certaine automatisation des services et d’avancer sur l’empaquetage de ces derniers, les serveurs de l’association étant restés assez statiques pendant de nombreuses années. Cela permettra, si le besoin apparaît, de migrer à nouveau, en ayant simplement à restaurer les bases de données et en réinstallant les paquets de services et en les reconfigurant, sans avoir de surprises.

Hébergement

Le serveur est actuellement un dédié chez online.net (DC3) fourni par mathieui et administré par Link Mauve. Côté technique, il est équipé d’un processeur Xeon E3-1220, 8 Gio de mémoire vive, 2 × 1 Tio de disque et d’une connexion gigabit, ce qui devrait être plus que suffisant pour tous les services que fournit JabberFR.

Rétrospective sur l’année passée

Bien que le serveur ait subi assez peu de perturbations durant l’année passée (principalement une interruption des composants), nous tenons à présenter nos excuses pour le manque de réactivité quant à la mise à jour du certificat de jabber.fr et des domaines associés, qui a été victime de la procrastination ainsi que des problèmes de dépendances en chaîne (passage à Let’s Encrypt → vieil Ejabberd → impossible de recharger un certificat → volonté de passer à Prosody → bloqué par la version de Debian → bloqué par des problèmes techniques → etc.). Cela faisait un certain temps qu’un certificat valide avait été généré pour jabber.fr, mais devoir recharger à la main Ejabberd tous les deux mois n’était pas une alternative raisonnable.

Évolutions à venir Finalisation de la réécriture d’Omnipresence

Omnipresence, le service disponible sur presence.jabberfr.org qui permet d’afficher son état, son statut ou son avatar XMPP sur le Web fait partie des services en Ruby 1.8, MySQL et PHP qui ont été cassés par la migration. Il est donc maintenant réécrit en Python 3.5, mais toutes les fonctionnalités ne sont pas encore rétablies et la base de données est encore une exportation vers une base temporaire SQLite.

Réouverture et nettoyage des domaines personnalisés

JabberFR propose depuis longtemps d’héberger un serveur Jabber aux gens qui n’ont pas le temps ou l’envie de le faire eux‐mêmes. Cela se traduit techniquement par un enregistrement DNS sur le domaine pointant vers jabber.fr, et un hôte virtuel rajouté dans la configuration de notre serveur. Une bonne partie des domaines ajoutés depuis l’ouverture du service soit n’existe plus, soit pointe ailleurs, ce qui n’intéresse personne. Nous allons donc vérifier au cas par cas quels domaines fonctionnent encore, notifier le propriétaire, si possible, dans le cas contraire, et les enlever de notre configuration s’ils ne sont plus intéressés. Les outils d’inscription automatisée ne sont pas encore remis en route, mais vous pouvez d’ores et déjà nous contacter si vous avez envie de mettre en place ce service pour votre domaine. Nous vous encourageons, bien sûr, à vous auto‐héberger si vous en avez les capacités, et vous fournissons notre aide et ressources dans ce but.

Réouverture des inscriptions aux services Web

Les inscriptions au wiki et au forum étaient fermées depuis un moment. Un des objectifs est de mettre en place le composant pour la XEP-0070 de Chteufleur, afin de fournir une validation via XMPP des comptes utilisateurs. Le greffon MediaWiki nécessaire est en cours d’élaboration.

Recherche de volontaires pour moderniser le site Web

Comme exposé plus haut, JabberFR a tout un héritage de services, notamment Web, qui lui permettent d’être une vitrine pour les fonctionnalités offertes par XMPP. Cependant, il y a des éléments dont l’âge se fait sentir, tels que le design du site Web ou des choses moins visibles comme le code derrière. Il n’est, bien sûr, pas question de devenir un site flashy réclamant du JavaScript pour tout avec des animations dans tous les sens (ce serait mal nous connaître), mais JabberFR est quand même à la recherche de volontaires pour donner un coup de fraîcheur visuelle et technologique pour son site.

Recherche de volontaires pour la mise à jour du wiki

Le wiki de JabberFR est une ressource très complète sur les différents clients, serveurs et autres entités de l’écosystème XMPP. Malheureusement, le contributeur principal du wiki nous a quittés pour de nouveaux horizons il y a quelques années, et la fermeture des inscriptions pour cause de pourriel n’a pas aidé (ce qui est en passe d’être résolu, voir plus haut). JabberFR est donc à la recherche de volontaires pour défricher un peu le contenu du wiki et remettre les fiches d’information au goût du jour.

Spécifications pour les clients et serveurs

Afin d’éviter un travail quasi‐quotidien de maintien du wiki, une spécification pour les clients, serveurs et autres logiciels XMPP est à l’étude, pour pouvoir tirer les informations directement depuis les projets concernés. Tout progrès accompli dans ce sens sera bien évidemment proposé à la XSF, afin de ne pas disperser les efforts.

Clients Web complets accessibles sur le site

Un sujet qui nous tient à cœur est bien évidemment l’accessibilité d’XMPP et, comme ces dernières années ont vu l’arrivée d’un nombre de clients XMPP Web de qualité tels que Salut à Toi, Libervia ou Movim, nous souhaiterions en mettre à disposition directement via le portail JabberFR, afin qu’installer un client lourd ou faire confiance à une tierce partie ne soit pas un prérequis.

En bref

Ce déménagement aura été l’occasion de dépoussiérer nos services de fond en comble, mais ce n’est que le début ! Les prochaines étapes sont les plus importantes, pour améliorer l’ergonomie du site, pour fournir des services que les gens attendent, pour faciliter au maximum la venue d’un nouvel utilisateur et bien plus encore. Nous comptons également rouvrir les adhésions à l’association, afin de subventionner le serveur et pour venir aux différents événements du Libre ; et nous comptons sur vous pour nous y aider !

Télécharger ce contenu au format Epub

Lire les commentaires

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

2 octobre, 2016 - 13:25

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

Sommaire Agenda du Libre pour la semaine 40 de l'année 2016 [FR Villeurbanne] Rencontres de l'Aventure Ordinaire - Du lundi 3 octobre 2016 à 10h00 au samedi 8 octobre 2016 à 23h00.

Les Rencontres de l'Aventure Ordinaire invitent l'Open Bidouille Camp
Du 3 au 8 octobre, venez au CCO pour échanger, mettre en pratique, manipuler et expérimenter autour du pouvoir d'agir, du Do It Yourself, des médias citoyens et des savoir-faire partagés !
L'entrée est libre et tout est gratuit !

[FR Montpellier] Linux Mint et Logiciels Libres - Le lundi 3 octobre 2016 de 19h00 à 21h00.

L’équipe de Montpel’libre vous propose une permanence Logiciels Libres, discussions libres et accompagnements techniques aux systèmes d’exploitation libres.
Il est aussi possible, sur inscription, de présenter plusieurs logiciels libres (Blender, LibreOffice, Gimp…) selon la demande et la présence des intervenants spécialisés.
Notre bibliothèque de livres, documents, revues… GNU/Linux, systèmes et logiciels libres est disponible à la consultation dans la salle des partenaires, au premier étage.

[FR Marseille] Réunion des contributeurs à OpenStreetMap de la région PACA - Le lundi 3 octobre 2016 de 19h00 à 23h00.

Les contributeurs d'OpenStreetMap de la région de Marseille se réunissent le lundi 3 octobre 2016, à partir de 19h00
page du Wiki d'OpenStreetMap sur les réunions de Marseille 
Pour ceux qui compteraient participer à la réunion et qui viennent pour la première fois, nous avons pour habitude que chacun(e) amène quelque chose à boire et/ou à grignoter.

[FR Rennes] Réunion mensuelle - Le lundi 3 octobre 2016 de 20h00 à 23h00.

Bonjour à tous,
Grifon FAI associatif sur Rennes organise sa réunion mensuelle au Hackerspace de Rennes à 20h.
Ayant pour but la promotion, l’utilisation et le développement d’Internet.

[FR Paris] Mapathon Missing Maps - Le mardi 4 octobre 2016 de 02h30 à 21h30.

Venez découvrir comment contribuer à OpenStreetMap, le "Wikipedia de la carte", durant un « mapathon » !
(un événement convivial où l'on se retrouve pour cartographier, échanger et apprendre à utiliser les outils permettant de contribuer à OSM).
Cet événement s'inscrit dans le cadre de l'initiative globale Missing Maps, projet humanitaire qui vise à cartographier en amont les parties du mondes vulnérables aux catastrophes naturelles, crises sanitaires, environnementales, aux conflits et à la pauvreté.

[FR Castelnau-le-Lez] Section GNU/Linux - Le mardi 4 octobre 2016 de 10h00 à 12h00.

L’équipe de Montpel’libre vous propose une permanence de dépannages pour vous aider à vous familiariser avec votre système GNU/Linux au quotidien. Le contenu de l’atelier s’adapte aux problèmes des personnes présentes et permet ainsi d’adapter l’acquisition de nouvelles compétences au rythme de chacun.
Vous pourrez y aborder plusieurs thèmes :
Présentation de Linux

[FR Montpellier] Rencontre du Groupe Blender - Le mardi 4 octobre 2016 de 17h00 à 19h00.

Nous avons le plaisir de vous annoncer cette réunion du groupe Blender à Montpellier. (Le premier mardi du mois)
Rencontrer un groupe d’utilisateurs du logiciel de modélisation 3D Blender pour échanger et actualiser ses connaissances sur ce logiciel à la fois très puissant et riche en potentialités. Attention, il ne s’agit pas d’ateliers d’initiation à Blender.
Les thèmes que nous vous proposons d’aborder :

[FR Paris] Tuppervim #48 - Le mardi 4 octobre 2016 de 20h00 à 22h00.

Le tuppervim est un évènement mensuel organisé dans les locaux de Mozilla.
Il a lieu un mardi du mois (généralement le premier).
Le texte suivant a été honteusement copié du site http://tuppervim.org

[QC Québec] Linux Meetup Québec - Le mardi 4 octobre 2016 de 02h00 à 22h00.

Bonjour à tous!Vous êtes invités à participer au prochain Linux-Meetup de Québec qui aura lieu le mardi 4 octobre 2016 au Local de Linuq de 18h à 22h. Vous pouvez souper sur place avec nous et les discussions de groupe commenceront vers 19h.Comme toujours, les thèmes de discussion seront déterminés par les participants présents … discussions libres et ouvertes!Nous invitons tous les amateurs de logiciels libres (peu importe la plate-forme) à venir discuter. C'est vraiment une excellente occasion de socialiser et de faire connaissance avec d'autres qui partagent les mêmes intérêts.La rencontre est gratuite et ouverte à tous (de débutants à experts) et rassemble des gens de diverses professions: gestionnaires, professeurs, administrateurs de systèmes, ingénieurs, programmeurs, retraités, étudiants, etc.Les Linux-Meetup se déroulent simultanément à travers le monde tous les premiers mardis du mois ainsi que dans plusieurs régions du Québec.Au plaisir de vous rencontrer!--Bertrand Lesmerises

[FR Auch] Initiation à Linux - Le mercredi 5 octobre 2016 de 14h00 à 17h00.

Cette découverte de Linux est proposée au Café associatif d'Auch, l'Abri des Possibles, tous les mercredi.

[FR Paris] Plénière du GTLL de Systematic - Le mercredi 5 octobre 2016 de 14h30 à 18h30.

Vous êtes une entreprise ou un académique, n'hésitez pas à venir partager ce moment avec les membres du GTLL et du nouveau Groupe thématique Systèmes d'information pour networker et discuter des dernières actualités :
Appels à projets en cours et tendances R&D, Paris Open Source Summit, Printemps de l'Innovation Open Source, Livret bleu Fondamentaux juridiques du Logiciel Libre et Open Source pour l'IoT. L'idée est de préparer les projets de R&D de la rentrée.
Programme14:30 Mot d'accueil de Florent Zara, pour Henix, membre historique du GTLLPrésentation de Systematic et du GTLL - Actualités et perspectives, Stéfane Fermigier, président du GTLL, fondateur d'Abilian- Software Heritage et l'OSIS - Roberto Di Cosmo, vice-président du GTLL, Inria Irill Irif UPD- Paris Open Source Summit 2016  : Benjamin Jean & JC Elineau, présidents du POSS 2016Présentation du nouveau GT Systèmes d'information, par Jean-Pierre Corniou, président du GT Systèmes d'information, DGA de SIA PartnersAppels à projets- Les appels à projets en cours, Achille Lerpinière (Direction Générale des Entreprises)- Efficacité du dispositif LabCom, Yannick Moy (AdaCore)- IRT SystemX, un guichet pour doubler un investissement R&D (sous condition de colocalisation à Palaiseau)Témoignages- Un aperçu des derniers projets du GTLL : AndroidInCloud (Alter Way), CozyCloud, etc.- Un industriel engagé dans la R&D : embarqué et IoT open source chez OWI / Smile, Pierre Ficheux16:00 Pause networkingEn scène- Présentation des idées de projets- Présentation des nouveaux membres et de compétences

[FR Montpellier] Initiation Logiciels Libres Gimp - Le mercredi 5 octobre 2016 de 17h00 à 19h00.

Partez à la découverte, puis utilisez The GIMP
Un atelier vous sera proposé :
Mercredi 5 octobre 2016 de 17h00 à 19h00

[FR Lyon] Apéro admin sys - Le mercredi 5 octobre 2016 de 19h00 à 22h00.

Rencontre mensuelle devant une bière ou autres types de boisson des administratrices/administrateurs système, devops, ….
Pas de sujet annoncé pour cette fois mais on trouvera bien :)
On se met aussi sur meetup car il faut être au goût du jour.

[FR Toulouse] Rencontre Logiciels Libres - Le mercredi 5 octobre 2016 de 19h30 à 22h30.

L'association Toulibre organise une rencontre autour des Logiciels Libres le mercredi 21 septembre, de 19h30 à 22h30 au Centre Culturel Bellegarde, 17 rue Bellegarde à Toulouse.
Pendant toute la soirée, venez poser vos questions au sujet du Logiciel Libre et trouver de l'aide pour installer ou utiliser des Logiciels Libres sur votre ordinateur.
Pour cela, vous pouvez si besoin apporter votre ordinateur, un accès Internet est disponible sur place.

[FR Nice] Internet et Vie privée - Le mercredi 5 octobre 2016 de 20h30 à 22h00.

Comment protéger sa vie privée sur Internet et sur vos smartphones ? Comment communiquer sans donner des informations personnelles aux rapaces du web ? comment devenir multimilliardaire en quelques années en vendant des informations intimes sur la vie des autres ?
Le Nicelab, laboratoire ouvert de Nice, vous invite à une soirée de découverte et débats le mercredi 5 octobre à 20H30, au Court Circuit, 4 rue Vernier à Nice.
Entrée gratuite, et débat accessible à tout public.

[FR Louvain-La Neuve] Odoo Experience: 180 Conférences gratuites - Du mercredi 5 octobre 2016 à 21h00 au vendredi 7 octobre 2016 à 16h00.

Odoo Experience est un cycle de 180 conférences et formations gratuites a destination des développeurs (Python, JavaScript, Odoo) et des chefs d'entreprises (pour toutes les apps de gestion d'Odoo)
L'événement attire 2000 personnes pendant 3 jours.

[QC Montréal] Rencontre des contributeurs à OpenStreetMap - Le mercredi 5 octobre 2016 de 18h30 à 21h30.

La saison d'activités 2016-2017 commence, notre rencontre mensuelle des contributeurs est toujours au rendez-vous. Le format évolue : cette année, nous troquons la rencontre informelle autour d'un verre par une rencontre de travail ayant pour but d'améliorer directement les données d'OpenStreetMap.
En groupe, nous pourrons ainsi mener à bien les tâches de notre choix (n'oubliez pas, on contribue à OpenStreetMap parce qu'on aime ça) : importer de données de la Ville, de Canvec, répondre aux appels de HOT et Missing Maps… et pourquoi pas réaliser nos propres projets ? Débutants, vous êtes les bienvenus ! Nous serons présents pour vous montrer comment contribuer à l'aide d'iD, l'éditeur de données en ligne et facile à utiliser, ou de JOSM. Dans tous les cas, prenez votre ordinateur portable avec vous, la salle dans laquelle nous nous trouverons n'est pas équipée de machines de prêt.
La première rencontre le mercredi 5 octobre dès 18h30 à la Grande bibliothèque de BAnQ, au 475 boulevard de Maisonneuve est (métro Berri-UQÀM). Nous serons présents dans la salle 2.181 : au second étage en sortant des ascenseurs, continuez tout droit jusqu'aux vitres, la salle sera dans le couloir à votre droite.

[FR Poitiers] Jeudi du Libre - Le jeudi 6 octobre 2016 de 17h30 à 20h30.

Comme chaque premier jeudi du mois, les membres de l’APP3L se réunissent au Centre Régional d’Information Jeunesse (CRIJ).
Et vous invitent à les rejoindre, de 17h30 à 20h30, afin d'échanger et d'en apprendre plus à propos des logiciels libres.
Si vous le désirez, vous pouvez venir avec votre ordinateur portable ou fixe (nous prêterons écrans, claviers et souris).

[FR Le Mans] Autour d'un verre autour du Libre - Le jeudi 6 octobre 2016 de 19h00 à 22h30.

Libristes, hackers, pasionnés ou néophites, ou même simplement curieux, voici venu le 1er jeudi du mois.
Le HAUM (Hackerspace AU Mans) et LinuXMaine (Association de promotion du logiciel libre en Sarthe) vous donnent rendez-vous "autour d'un verre autour du libre", à partir de 19h à l'épicerie du pré, 31 Rue du Pré, 72100 Le Mans.
En mode free, à partir de 19h, vous pouvez venir accompagné, avec des bidouilleries, avec de la presse spécialisée, avec un ordi, avec des questions, avec votre curiosité, etc…

[FR Lyon] Jeudi vie privée - Le jeudi 6 octobre 2016 de 19h00 à 21h30.

Ce jeudi 6 octobre 2016 : Atelier jeudi vie privée de 19h00 à 21h30
Gratuit mais inscription obligation à epn@salledesrancy.com
Chiffrofête et L’EPN des Rancy de la Maison Pour Tous, situé 249 Rue Vendôme – 69003 Lyon propose de vous faire découvrir : SMSSecure

[FR Lyon] Jeudi du libre - Le jeudi 6 octobre 2016 de 19h00 à 21h00.

Ce jeudi 6 octobre 2016 : Atelier jeudi du libre de 19h à 21h00 (gratuit, sans réservation)
L'ALDIL et L’EPN des Rancy de la Maison Pour Tous, situé 249 Rue Vendôme – 69003 Lyon propose de vous faire découvrir une conférence dont la thématique est : Science, Internet et Logiciel Libre.
La science, Internet et le logiciel libre ont beaucoup en commun, au niveau de la façon de fonctionner comme au niveau des enjeux et des problématiques à prendre en compte.Au cours de cette conférence, nous parlerons des parallèles à faire entre ces différents domaines, et des raisons pour lesquelles, en tant que citoyens, nous sommes tous concernés, d’un côté comme de l’autre.

[FR Tours] L'auto-hébergement et pourquoi pas chez-vous ? - Le jeudi 6 octobre 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 Chartres] Chartres Mini Maker Faire - Du vendredi 7 octobre 2016 à 14h00 au dimanche 9 octobre 2016 à 18h00.

Quoi ? Où ? Comment ?
Chartres Mini Maker Faire est le rendez-vous des Makers, inventeurs, artistes, ingénieurs, artisans, entrepreneurs ou simples amateurs et curieux. Sur 3 jours du 7 au 9 octobre 2016 et sur un peu moins de 1000m² seront proposées des démonstrations, des animations et conférences sur des thèmes liés au Mouvement Maker, Citoyen & Hacker, comme par example (liste non-exhaustive) :
Sciences et techniques (électronique, informatique, robotique, mécanique…)

[FR Sète] Formation sécurité informatique et cryptographie - Le vendredi 7 octobre 2016 de 16h00 à 20h30.

Montpel’libre premier centre formateur Tails en France a le plaisir de vous proposer un nouveau cycle de formation, cryptographie et sécurité informatique. En partenariat avec
Merci d’avoir choisi de participer aux ateliers « Sécurité Informatique et Cryptographie » organisés par Le Club de la Presse et Montpel’libre.
Formation Crypto, séance de préparation, premier module :

[FR Strasbourg] Soirée bidouille/hack - Le vendredi 7 octobre 2016 de 18h00 à 22h00.

Hackstub est un groupe d'enthousiastes des technologies qui se reconnaissent dans l'éthique et la culture hacker. Notre but est de construire une communauté locale, ainsi qu'un lieu d'expérimentation ouvert pour travailler sur des projets, échanger, et réfléchir l'utilisation des technologies et leur impact sur la société.
Nous nous retrouvons tous les vendredi soir à partir de 18h pour bidouiller dans une ambiance conviviale, discuter des problématiques politiques liées aux nouvelles technologies, et apprendre en faisant. Certains font de la programment, administrent leur serveur, d'autres bidouillent de l'électronique, ou encore rédigent un mémoire de philo, et d'autres encore expliquent certaines notions aux plus néophytes. Aucune compétence ou connaissance particulière n'est requise, venez comme vous êtes ! (Mais un laptop vous sera sûrement utile :-)).

[FR Marseille] Soirée mensuelle - Le vendredi 7 octobre 2016 de 19h00 à 23h30.

Le PLUG organise une soirée le vendredi 7 octobre.
La soirée commence plus tôt que d’habitude, avec le meetup de Hack In Provence de 18h30 à 20h.
L’apéro du PLUG démarrera vers 19h pour continuer à discuter de sécurité, de logiciel libre, d’open source et de tout ce qui gravite autour.

[FR Villeneuve d'Ascq] Libre à Vous - Le samedi 8 octobre 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 Montreuil-en-Touraine] Numérisons le village - Du samedi 8 octobre 2016 à 09h30 au dimanche 9 octobre 2016 à 17h30.

Opération Libre à Montreuil-en-Touraine les 8 et 9 octobre 2016.
Paysages et botanique, édifices religieux ou patrimoniaux, histoire et folklore local, données municipales . . . Vous aimez le patrimoine et souhaitez valoriser ces lieux qui vous tiennent à cœur ?
Wikipedia, OpenStreetMap, TelaBotanica, OpenData . . . Vous aimez ces projets mondiaux libres de partage de connaissances et de données ?

[FR Castelnau-le-Lez] Atelier de développement et programmation - Le samedi 8 octobre 2016 de 10h00 à 12h00.

Les ateliers Dev/Prog de Castelnau changent de créneau, du mardi matin ils passent au samedi matin, pour satisfaire à vos attentes.
Rendez-vous hebdomadaire, tous les mardis, salle 40 de la mjc (fermé pendant les vacances).
Cet atelier de développement est essentiellement axé sur les langages du Web : html, css (même si ce ne sont pas des langages à proprement parler) javascript et PHP, possibilité aussi d’utiliser Ajax, Jquery, Sqlite et MySql, mais il peut aussi aborder d’autres langage à la demande.

[FR Ivry sur Seine] Cours de l'Ecole du Logiciel Libre - Le samedi 8 octobre 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 Le Mans] Logiciels libres: Découverte, installation et ateliers - Du samedi 8 octobre 2016 à 14h00 au lundi 24 octobre 2016 à 18h00.

Samedi 8 octobre à partir de 14h à la Maison pour tous Jean Moulin
Install party - La plupart des logiciels sont payants mais il existe d'autres solutions dans le monde du logiciel libre que l'association Linux Maine vous propose de découvrir. Possibilité d'apporter votre PC portable
Dans le cadre d'effervescience 2.0, Révolutions numériques.

[FR Saint-Avé] Ciné-débat Les Nouveaux Loups du Web - Le samedi 8 octobre 2016 de 14h00 à 17h00.

Projection-débat autour du film LES NOUVEAUX LOUPS DU WEB.
Le samedi 8 octobre à 14h au Centre Culturel Le Dôme à SAINT-AVE (56)
L'événement est organisé par l'Association Rhizomes en collaboration avec Jupiter Films, distributeur cinéma.

[FR Ramonville-Saint-Agne] Robot de mail Sympa - Le samedi 8 octobre 2016 de 14h00 à 16h00.

Venez découvrir l'outil de listes de diffusion SYMPA.
Grâce à lui, vous pourrez envoyer des courriels à tous les adhérents de votre association.
Ou encore, maintenir plusieurs listes : l'une pour les adhérents, l'autre pour le CA ou le Bureau, etc.

[FR Paris] NUMOK - Conférence "Degooglisons Internet" - Le samedi 8 octobre 2016 de 14h00 à 18h00.

Numok - Festival numérique des bibliothèquesOrganisée par les bibliothèques de la Ville de Paris, la 1ère édition du festival Numok met en avant le numérique comme lieu de partage, de jeu et de découverte. Du 15 au 30 octobre, une riche programmation est proposée gratuitement à tous les publics, avertis ou totalement novices, petits ou grands.
Présentation du projet "Degooglisons Internet" initié par Framasoft
Ces dernières années ont vu se généraliser une concentration des acteurs d’Internet (Youtube appartient à Google, WhatsApp à Facebook, Skype à Microsoft, etc.). Cette centralisation est nuisible, non seulement parce qu’elle freine l’innovation, mais surtout parce qu’elle entraîne une perte de liberté pour les visiteurs. Les utilisateurs de ces derniers services ne contrôlent plus leur vie numérique : leurs comportements sont disséqués en permanence afin de mieux être ciblés par la publicité, et leurs données - pourtant privées (sites visités, mails échangés, vidéos regardées, etc.) - peuvent être analysées par des services gouvernementaux.

[QC Montréal] Création de thèmes pour Wordpress - Du samedi 8 octobre 2016 à 08h30 au dimanche 9 octobre 2016 à 16h30.

Formation de 14 heures offerte au Collège de Maisonneuve. À la fin du cours, le participant pourra concevoir un thème WorPpress.

[QC Montréal] SQIL - GNOME Summit - Le samedi 8 octobre 2016 de 13h00 à 17h00.

Un événement de style « unconference ». Il y a toutefois des contributeurs dans la communauté GNOME qui s’intéressent à y faire des ateliers pour mentorer des nouveaux contributeurs intéressés à se joindre au projet. De par sa nature internationale, l’événement se déroule principalement en anglais.
Veuillez vous pré-inscrire ici: https://wiki.gnome.org/Events/Summit/2016/Participants

Télécharger ce contenu au format Epub

Lire les commentaires

C++17, Genèse d’une version mineure

2 octobre, 2016 - 10:45

La série de dépêches C++ continue. Cette seconde dépêche nous amène dans les réunions du comité de standardisation en vue de publier la prochaine version C++17 et nous permettra de vérifier ce titre provocateur (comment ça mineure ?). Cette dépêche peut intéresser tous les lecteurs de LinuxFr.org, pas seulement les développeurs. Les prochaines dépêches seront plus techniques.

Sommaire Dépêches C++

Cette dépêche est la deuxième d’une série de cinq dépêches sur le C++. La première dépêche Les coulisses du standard C++ a été publiée fin août dernier.

  1. La dépêche précédente, Les coulisses du C++, présente la naissance du langage, sa longue normalisation, sa spécification officielle non libre, payante, ouverte, délaissée au profit de son brouillon (draſt), peu lue par les développeurs C++…

  2. Cette dépêche, Genèse du C++17, raconte les dernières réunions du comité de normalisation et donne des éléments pour expliquer ce long processus de normalisation.

  3. La troisième dépêche, Nouveautés C++17 du langage, présentera les changements au niveau du langage : 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 bien 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) et le réseau (networking) seront intégrés pour une version suivante du C++.

  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. Cette cinquième dépêche s’attaquera aux questions existentielles du C++ : Quelles conséquences sur le processus de normalisation ? Qu’attendre de C++20 ? Intérêt du C++ aujourd’hui ? Quels langages alternatifs ? Que faire pour dynamiser l'évolution du C++ ? 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. Tu y 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 davantage de nos découvertes individuelles et nous offrirons un contenu CC BY-SA de qualité pour créer, par exemple, des supports de formation (Meetups), des articles sur d’autres blogs… Par contre, pour le moment nous ne pouvons pas encore en faire profiter Wikipédia : notre dépêche étant en CC BY-SA version 4.0 et Wikipédia encore sur la version précédente :-/

Deux sommets pour délimiter le périmètre C++17

Comme le prévoit le cycle de publication triannuel, c’est en 2016 (année N-1) que le comité de normalisation du C++ vote le périmètre fonctionnel du C++17. Ainsi, les membres du comité se sont réunis à deux reprises pour intégrer de nouvelles fonctionnalités au C++ :

  1. Une semaine début mars, à Jacksonville (Floride), pour adopter beaucoup de fonctionnalités, mais aussi pour rejeter plusieurs fonctionnalités majeures très attendues ;
  2. Une semaine fin juin, à Oulu (Finlande), pour intégrer pas mal d’autres fonctionnalités et ainsi clore l’ajout des fonctionnalités.

La semaine se déroule sur six jours, du lundi au samedi. Pas de grasse matinée car les premières réunions débutent à 8h30. Ces réunions permettent de débattre et voter l’intégration de chacune des spécifications techniques (Technical Specification). Plusieurs réunions se déroulent en parallèle, et les membres rejoignent les réunions selon leur centre d’intérêt. Après ces réunions officielles, les membres se retrouvent pour continuer à échanger ou pour améliorer les spécifications techniques.

Mais à Oulu, un phénomène naturel a eu un impact direct sur la productivité : le soleil se couche après minuit en juin ! Si bien, que la plupart des membres ne se rendaient pas compte de l’heure et ont continué à bosser bien plus tard que d’habitude. En plus du soleil qui dort seulement deux heures par nuit, le décalage horaire (jetlag) a achevé les non-européens qui ont eu besoin de plusieurs jours de repos pour s’en remettre !

Voici à quoi ressemble le soleil à une heure du matin au mois de juin (ici c'est à Tromsø à 600 km de Oulu)

Des racines C++17 très profondes

Les membres du comité de standardisation C++ n’avaient pas pu intégrer toutes les fonctionnalités qu’ils souhaitaient dans C++11 car cela aurait retardé d’autant plus la publication de cette version (déjà que la publication était prévue avant 2010…). Les membres avaient donc décidé d’intégrer les fonctionnalités mineures dans C++14 et de continuer à mûrir les fonctionnalités majeures pour C++17.

Par conséquent, C++17 n’a pas commencé à être construit au lendemain de la publication de C++14, mais bien avant : certaines parties datent du début des années 2000 !

Plus de 10 ans pour intégrer les fonctionnalités

Effectivement, certaines fonctionnalités sont dans le tuyau depuis plus de dix ans :

Par contre, d’autres fonctionnalités majeures sont toujours dans le tuyau :

Comme quoi, le comité de standardisation prend son temps pour bien s’assurer que chaque fonctionnalité soit parfaite et cela peut prendre une dizaine d’années ! L’objectif étant de ne pas dégrader d’avantage la complexité inhérente au C++, avec comme contre partie d’avoir un langage de programmation qui évolue doucement…

Mais pourquoi autant de temps ?

Avant de répondre à cette question, voici un petit exercice. Il faut trouver la correction pour que le code C++ suivant compile :

struct MaClasse { template <class T> void f() { } }; template <class T> void maFonction (T& t) { t.f<int>(); //expected primary-expression before 'int' } int main() { MaClasse maclasse; maFonction(maclasse); }

Quelques compilateurs en ligne pour tester tes idées :

Le message d'erreur du compilateur GCC :
(le texte du message n'a pas changé entre GCC-4.4 et GCC-6.2)

$ g++ enigme.cpp enigme.cpp: In function ‘void maFonction(T&)’: enigme.cpp:10:12: error: expected primary-expression before ‘int’ t.f<int>(); //error: expected primary-expression before 'int' ^~~ enigme.cpp:10:12: error: expected ‘;’ before ‘int’

Allez une grosse image pour ne pas être tenté de lire la réponse tout de suite.

Allez, deux indices : Primo, c’est du vieux C++98 (ne cherchez pas midi à C++14 heures) ; Secundo, ci-dessous le message d’erreur fourni par le compilateur Clang-3.8.

$ clang++ enigme.cpp enigme.cpp:10:7: error: use 'template' keyword to treat 'f' as a dependent template name t.f<int>(); //error: expected primary-expression before 'int' ^ template

Les plus rapides qui publient en commentaire une solution sans regarder la réponse ont gagné :-) Les vainqueurs auront le droit de poser en commentaire d'autres énigmes sur le thème des bizarreries du C++.

Encore une grosse image. On joue le jeu, on ne triche pas !

Réponse

Il manquait juste le mot clef template à un endroit un peu inattendu :

struct MaClasse { template <class T> void f() { } }; template <class T> void maFonction (T& t) { t. template f<int>(); // Oh le piège ! } int main() { MaClasse maclasse; maFonction(maclasse); }

Cette syntaxe permet de dire au compilateur que T::f() est template quelque soit le type T (plus précisément, ici en absence du mot clef typename, le compilateur sait que c’est un appel à une fonction template). En effet, sans le mot clef template dans maFonction(), le compilateur ne peut pas être sûr que T::f() soit une fonction template. Le compilateur pourrait seulement s’en douter et le vérifier lors de l’instanciation de maFonction<MaClasse>()…

Avouons que ce n’est pas très joli joli, non ?

Ceux qui ont décidé de cette syntaxe doivent s’en mordre les doigts.

Mais revenons en à notre question, Mais pourquoi autant de temps ?
L’hypothèse est que ce type de décisions du passé a traumatisé les membres du comité de normalisation du C++ : « ne recommençons pas les mêmes erreurs, ne nous précipitons pas, prenons le temps de bien mûrir les nouvelles fonctionnalités… »

Chère lectrice, cher lecteur de LinuxFr.org, à ton avis, pourquoi aussi peu de fonctionnalités majeures dans C++17 ?

C++1z ou C++17 ?

Historiquement, les versions C++ n'étaient pas publiées à date fixe. De plus, la version C++ qui devait suivre C++03 avait été reportée à maintes reprises. Cette version a été nommée temporairement C++0x. Et, finalement, C++0x a été publié en 2011 ! (mais bon en hexadécimal 0x = 11 est correct avec x = B)

Afin d’éviter tout nouveau glissement, le comité a alors décidé de publier un nouveau standard C++ tous les trois 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 l’étiquette c++1z sur stackoverflow.

Donc, C++1z est utilisé par les sceptiques pour désigner la version qui succédera à C++14. Et C++17 est utilisé pour désigner la version qui sortira en 2017.

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).

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, licences, remerciements

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, Benoît Sibaud, cracky, palm123, Lucas, Adrien Dorsaz, RyDroid, M5oul, Storm et Martin Peres. Cette dépêche fut commencée en juin 2016 et contient plus de 1300 révisions !

Merci à Klaim, Édouard A, rewind, et gasche pour leurs commentaires pertinents.

Merci à mes collègues développeurs qui, à défaut de m’aider à la rédaction, ont illustré cette série de dépêches avec des dessins humoristiques sous licence libre :

Et merci à ceux qui permettent de réutiliser leur travail :

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

Bilan à un an des domaines .fr d’une et deux lettres

2 octobre, 2016 - 08:54

Le 9 décembre 2014, l’AFNIC a commencé à accepter l’enregistrement de noms de domaine en .fr de moins de trois lettres. Où en sommes‐nous ?
Quelques heureux propriétaires ont bien tout paramétré et l’on peut accéder à leur site dans la grande tradition du Shell, c’est‐à‐dire en tapant un nom abrégé en deux ou trois lettres. Mais peu de domaines servent vraiment, la plupart sont aux mains des squatteurs, les autres tombent dans le vide.

Vous trouverez ci‐après une exploration quantitative et financière (mais passionnante) de cette brumeuse affaire.

Sommaire

Le 9 décembre 2014, l’AFNIC a commencé à accepter l’enregistrement de noms de domaine en .fr de moins de trois lettres, en trois phases :

  • 9 décembre 2014 : les titulaires de droits ont pu demander l’enregistrement de leur nom de domaine (pour 200 €) ;
  • 16 février 2015 : ouverture à tout le monde, au tarif de 15 000 € ;
  • 23 février 2015 : le tarif passe à 10 000 € ;
  • 2 mars 2015 : 5 000 € ;
  • 9 mars 2015 : 100 € ;
  • 11 mars 2015 : l’AFNIC se rend compte que 311 domaines ont été enregistrés le 9 mars entre 11 h 30 et 11 h 59, soit juste avant le passage à 100 €, les registrars responsables indiquent que c’est une erreur technique et ces domaines sont remis à disposition du public ;
  • 17 mars 2015 : 12 €.
Le rush Rapidité d’enregistrement des nouveaux domaines

Prix

Tout d’abord, les chiffres ne correspondent pas exactement à ce qu’on peut voir plus haut. Pourquoi ? Il y a deux raisons :

Tout d’abord, les différentes phases ont commencé à 12 h chaque jour et non à midi, alors que les informations de whois ne permettent de connaître que la date d’enregistrement, pas l’heure.

La deuxième raison, c’est que la liste des domaines enregistrés en période de sunrise, donc théoriquement avant le 16 février 2015 à 12 h, qui vient directement de l’AFNIC, contient plusieurs domaines indiqués comme créés le 17 ou le 18 février. Même s’ils sont inutilisés, leurs infos de whois montrent clairement qu’ils font partie de la période de sunrise, donc ils sont comptés comme ayant coûté 200 €, mais créés plus tard.

Cela nous donne donc un total de… aucun domaine acheté à 15 000 € et un seul à 10 000 € : mi.fr (inutilisé à ce jour).

Durées de renouvellement

À l’heure actuelle (septembre 2016), la grande majorité des domaines n’ont été achetés que pour une période d’un an : 734 expireront avant 2018 s’ils ne sont pas renouvelés avant.

Parmi les 46 autres, la plupart n’ont été pris que pour une durée de deux ou trois ans.

Domaines libres après le rush

Le 23 mars 2015 au soir, une semaine après l’ouverture générale à prix normal des domaines en .fr, 797 domaines avaient été enregistrés sur les 3 163 domaines nouvellement disponibles.

Parmi les domaines encore libres, un seul domaine d’une lettre : ý.fr (qui est toujours disponible en 2016) et seulement 14 domaines sans aucun accent. La plupart sont d’ailleurs enregistrés dans les semaines qui suivent, à part uz.fr qui n’est déposé que le 18 août 2015.

Domaines internationaux

Sur les 797 domaines enregistrés donc, 113 comportaient des accents. Les noms de domaines accentués (appelés IDN) sont autorisés à l’enregistrement pour le .fr depuis mai 2012. Ils sont toutefois rarement utilisés à cause du risque de confusion : mettre un site sur libération.fr ou humanité.fr, c’est prendre le risque que les visiteurs oublient l’accent et se retrouvent ailleurs. D’ailleurs, ces sites ont été enregistrés respectivement par les journaux Libération et l’Humanité, sans pour autant être utilisés.

Domaines risqués

Au‐delà du simple risque de confusion avec ou sans accents, un certain nombre de domaines avec accents sont particulièrement risqués : en effet, le standard IDNA a été revu en 2008, mais beaucoup d’applications utilisent encore la version définie en 2003. La différence est particulièrement notable entre Firefox (IDNA 2008) et Chrome (IDNA 2003).

En ce qui concerne les domaines disponibles sur le .fr, seule une lettre est différente entre ces deux standards : le ß. Le standard 2003 indique que la lettre devrait être considérée comme « ss », alors que le standard 2008 en fait une « lettre accentuée » à part entière.

Ce n’est pas tout à fait anodin, car cela signifie que certains domaines, par exemple mon propre ssz.fr est accessible par le lien suivant uniquement en utilisant Chrome : ßz.fr, alors que les utilisateurs de Firefox tomberont sur une page d’erreur.

Cela touche quand même 112 noms au total, dont quatre ont été enregistrés : lß.fr, zß.fr, ß.fr et ßß.fr. Non seulement ces sites sont accessibles aléatoirement, mais en plus les domaines pre‐2008 correspondants existent déjà ! lss.fr, zss.fr, ss.fr et ssss.fr sont tous déjà des sites enregistrés, les domaines avec des ß sont donc tout simplement inutilisables, à moins d’accepter que les visiteurs se retrouvent parfois sur un site totalement différent.

Accents qui existent en français

Parmi les noms de domaines enregistrés, 23 comportent les lettres accentuées suivantes qui ne se retrouvent pas en français : å, ä, á, ã, í, ì, ñ, ó, ò, ö, õ, ß et ú.

75 noms de domaine ont été enregistrés avec des accents effectivement présents en français.

Digrammes qui existent en français

Sur les 624 domaines de deux lettres enregistrés au total, 229 sont une combinaison de lettres qui n’existe pas en français, comme « wx » ou « jœ ».

Renouvellement en 2016

Entre le 23 mars 2015 et le 21 septembre 2016, 52 domaines n’ont pas été renouvelés. La grande majorité se compose de séquences de lettres peu utilisées, comme kï.fr ou ææ.fr, mais quelques‐uns sont un peu plus surprenants : éo.fr ou zé.fr sont tout à fait prononçables, par exemple, ce ne sont certainement pas les pires domaines disponibles.

69 nouveaux domaines ont été enregistrés. Ce qui porte le total, au 21 septembre 2016, à 780 domaines .fr de moins de trois lettres.

L’utilisation

Au‐delà de l’enregistrement des noms de domaine, l’important est surtout l’utilisation qui en est faite.

DNS

Sur les 780 domaines actifs à l’heure actuelle, seulement 96 d’entre eux n’ont aucune configuration DNS. Parmi ceux‐ci, 61 sont des domaines enregistrés pendant la période de sunrise, soit exactement la moitié d’entre eux ! Ce qui semble indiquer que les domaines ont été déposés par les titulaires de droits, sans jamais avoir eu l’intention de les utiliser.

HTTP

Presque tous les domaines, à l’exception de cinq d’entre eux, comportent un sous‐domaine www, c’est donc cette adresse que je vais utiliser pour mes tests HTTP.

Sur les 679 domaines associés à un serveur, seulement trois ne répondent pas en HTTP. Pour les autres, les deux tiers font une simple redirection.

Les 58 redirections 301 sont presque exclusivement des utilisations « légitimes » des domaines : hp.fr redirigeant vers hp.com, cm.fr vers creditmutuel.fr.

Parking et squat

Sur les 402 redirections 302 (redirections temporaires, donc), 382 pointent vers le même site, en réalité une entreprise dont l’activité principale semble être le squattage de noms de domaines : Dratar.

Parmi les 20 autres redirections, j’en compte… 4 qui mènent réellement vers un site (comme hm.fr, qui redirige vers hm.com, le site de H&M) et devraient probablement utiliser le code 301 plutôt que 302.

31 sites répondent par un code 503, « Service indisponible ». Ils ont été achetés à 100 € l’unité par une autre entreprise de squat : Kifdom qui les propose à la vente pour la modique somme de 10 000 €, voire 15 000 € pour so.fr et même 50 000 € pour dl.fr ! On ne doute de rien.

Parmi les 142 sites qui répondent par un 200, donc directement avec du contenu, 18 ont été achetés par un autre squatteur : Sonexo et sont proposés à la vente, sans indiquer de prix.

17 sont parqués chez Sedoparking, un service de parking et de vente de noms de domaines plutôt destiné aux particuliers. Les prix varient et ne sont pas tous indiqués, mais ils vont de 90 € à 10 000 €. Magique !

32 sont proposés ou parqués chez divers services mineurs de « protection de marque » ou autres entreprises de squat.

40 sont parqués chez OVH, apparemment achetés par des particuliers, mais sans qu’aucune action n’ait été entreprise pour les utiliser.

31 sont « en construction », sans contenu, etc.

En conclusion

Sur les 780 domaines en .fr de moins de trois lettres déposés à ce jour, il y en a donc 58 qui redirigent vers d’autres sites, 36 qui hébergent du contenu, et 686 qui ne servent à rien, dont 448 explicitement achetés pour être revendus plus chers et alimenter la spéculation.

Je pense qu’aujourd’hui, un an après l’ouverture de ces noms de domaine, personne n’est gagnant, ni les propriétaires de marques obligés d’acheter leurs noms pour éviter que d’autres ne le fassent, ni l’AFNIC qui a vendu un grand total de un domaine à 10 000 € et quelques‐uns à 5 000 €, mais dont les tarifs de renouvellement sont à 12 €.

Une suggestion

À mon humble avis, l’AFNIC devrait n’autoriser le renouvellement d’un domaine que lorsque du contenu est publié dessus, avec une exceptions pour les propriétaires de marques, mais qui devraient cependant faire autre chose que juste les laisser pourrir sans entrées DNS ou avec une page à la con d’une boîte de « protection de marque ».

Je précise que j’ai écrit ça sur ÿ.fr à l’origine. Mais, je n’allais pas poster un journal tout vide avec juste un lien, alors bon.

Télécharger ce contenu au format Epub

Lire les commentaires

Ma domotique avec le système Angharad, troisième génération

30 septembre, 2016 - 09:36

Angharad gère les lumières, les thermostats, les interrupteurs, les capteurs, les images des caméras, la musique.

C’est mon système domotique maison à base de C, d’API REST et de client Web avec plein de JQuery dedans. Dans sa 3e génération, c’est un ensemble de bibliothèques gérant les protocoles Z-Wave et Taulas pour créer facilement plein de modules domotiques. L’API est documentée sur GitHub. Sagremor, le client Web écrit avec AngularJS, permet de tout piloter.

Sommaire Préambule

Il y a quelques deux ans de ça, j’ai parlé de mon système domotique maison à base d’API REST et de client Web avec plein de JQuery dedans. Depuis, j’ai continué ce projet avec entrain et il en est maintenant dans sa 3e génération : Angharad sur GitHub.

Pourquoi 3e génération et pas version 3.0 ? Parce qu’au début, c’était pas mal un serveur autonome, mais avec le temps, c’est devenu un ensemble de logiciels qui forment un écosystème et se parlent entre eux via des protocoles ad hoc.

Pourquoi je n’ai pas parlé de la 2e génération ? Surtout parce qu’elle n’est pas venue en une seule fois ; les idées et les améliorations sont venues petit à petit pendant l’année qui a suivi mon premier journal. Les principales améliorations ont été l’ajout du support de Z-Wave, l’ajout de services Web en PHP pour gérer les photos et les flux d’une instance Motion et les lecteurs de musique avec mpd.

Cheminement

Puis je voyais AngularJS et je voyais aussi que mes API REST étaient quand même pas super propres : que du status 200, même en cas d’erreur, et je me disais que supporter une autre base de données, normaliser par‐ci, uniformiser par‐là aurait été pas mal.

Et puis, je me demandais si les service annexes, caméra et musique, pouvaient être intégrés facilement à mon idée de serveur d’API REST en C, parce que j’aime bien le C.

Et j’ai commencé un nouveau module pour brancher un capteur de température à un Raspberry Pi et y accéder avec une API REST et j’ai trouvé que, même en réutilisant mon code, c’était long et fastidieux pour coder un simple service Web.

Je me suis donc mis à faire des bibliothèques qui me faciliteraient la manipulation des requêtes HTTP (celui‐là, j’en ai déjà parlé il n’y a pas très longtemps), les logs ou encore les requêtes SQL.

Je n’ai pas inventé l’eau chaude non plus, mais quand je cherchais des bibliothèques existantes, je n’en trouvais pas qui me paraissaient simples, efficaces et pas trop lourdes.

Angharad, ça fait quoi concrètement ?

Cela gère les lumières, les thermostats, les interrupteurs, les capteurs, les images des caméras, la musique. Cela automatise tout ça avec des scripts et des tâches planifiées, ça gère des alertes, et ça supervise les données également.

Domotique pure

Pour la partie domotique pure (lumières, interrupteurs, thermostats, capteurs), ça gère le protocole Z-Wave via la bibliothèque Openzwave et une clef USB Z-Wave.

Cela gère aussi le protocole Taulas qui est une évolution du protocole de communication que j’avais mis en place avec les Arduinos du début. Donc en utilisant des Arduinos ou autre chose, du moment que ça respecte le protocole, ça parle avec le serveur.

On peut rajouter d’autres protocoles domotiques si ça nous chante, il « suffit » de programmer sa bibliothèque qui implémente les bonnes fonctions, on la compile, on la copie dans le répertoire dédié, on recharge les modules avec l’API Kivabien© et, hop, on a un nouveau type de périphérique, sans même avoir à relancer le serveur, grâce à la magie de dlopen() et dlsync().

Autres services

There is no IOT, just devices dedicated to a simple task.
Pour les autres services (caméras, musique, etc.), on utilise un principe similaire avec des bibliothèques compilées et chargées pendant l’exécution. Là, le système est plus permissif et autorise à créer ses propres API et faire ses propres accès à la base de données.

Motion

Cela permet d’accéder aux flux temps réel et aux images enregistrées par un service Motion.
Pour accéder aux images, il faut que le serveur Angharad puisse accéder au répertoire sur lequel sont les images Motion, donc un répertoire réseau ou quelque chose du genre.
Pour accéder au flux, c’est directement grâce à l’adresse URL fournie au service. J’ai essayé de proxyfier le flux MJPEG, mais sans grand succès…

MPD

Chez moi, j’ai placé des Raspberry Pi dans pas mal de pièces, branchés sur des haut‐parleurs. La plupart du temps, j’y fais jouer une webradio locale que j’ai créée via LiquidSoap et Icecast. J’ai donc limité les commandes MPD à stop, play, pause, changer le volume et lancer une liste de lecture. Mais, bon, lister les artistes, albums, chansons, fichiers ne serait pas hyper compliqué à gérer.

Liquidsoap

D’ailleurs, ladite webradio est un peu gérable elle aussi, on a accès aux infos des dix derniers morceaux joués, et on peut faire play, pause, stop et next sur la radio.

Application cliente

On gère sa maison via Sagremor, qui est une application AngularJS 1.5 avec du Bootstrap dedans. Elle permet de manipuler toutes les API. Je ne suis pas très fort en ergonomie et encore moins en design eye candy, mais l’interface a l’air assez intuitive, au moins pour les commandes de base (allumer, éteindre, etc.), pour que ma blonde ou un invité s’en serve sans que j’ai à expliquer.

Pour le coté pratique, j’ai deux tablettes Android Ubislate 7Ci, j’y ai collé un Firefox qui fait tourner l’application cliente, et je les ai placées à chaque entrée chez moi juste à côté de la porte.

J’ai toujours le projet de faire une application cliente Android et, maintenant que j’ai une machine un peu plus récente, j’ai pu m’y mettre. Parce que développer des applications Android quand on ne peut pas lancer l’émulateur Android sur sa machine, c’est pas facile…

Essaye donc !

C’est tout libre, les bibliothèques sont en LGPL, les programmes serveurs GPL v3, l’application cliente est sous licence MIT.

Je n’ai pas la prétention de faire mieux que les autres, comme Domoticz ou Jeedom, juste d’avoir un serveur domotique qui réponde à mes besoins ; et puis c’est un bon moyen d’apprendre des nouvelles technos et de tester des concepts.

J’aimerais bien fédérer des amateurs autour de ce projet, mais je ne sais pas trop par où commencer. S’il y a des curieux pour tester et participer, c’est avec plaisir !

Télécharger ce contenu au format Epub

Lire les commentaires

Le Frido, un livre de mathématique libre pour l’agrégation

29 septembre, 2016 - 14:12

Le Frido est un livre de mathématique libre du niveau de l’agrégation. Fort d’un peu plus de 1 600 pages, il couvre la quasi entièreté du programme. Ce cours de mathématique est libre au sens de la licence FDL, et ses sources LaTeX sont sur GitHub depuis le début du projet.

Rapide historique

Le Frido (alors nommé Mes Notes de mathématique) avait été accepté par le jury lors de la session 2013, durant laquelle quelques exemplaires étaient disponibles dans la bibliothèque à Paris. C’était alors, à ma connaissance, le premier livre disponible d’agrégation à ne pas être commercialisé, mais à être distribué librement via Internet.

Un changement de règlement de l’agrégation, survenu en 2015, a envoyé les exemplaires disponibles au pilon : pour pouvoir être utilisé par les candidats, un livre doit dorénavant être commercialisé. Les candidats passés en 2015 et 2016 ont dû se passer du Frido pour préparer leurs oraux.

Collaboration

Comme beaucoup de projets libres, Le Frido a pour ambition d’attirer des contributeurs. Le dépôt Git a déjà été cloné, et j’ai reçu quelque correctifs, ainsi que des courriels signalant diverses fautes (corrigées depuis).

Une liste des contributeurs est disponible dans le texte.

Si vous avez une âme de mathématicien, n’hésitez pas à faire de la relecture ; et, si de surcroît vous avez une âme LaTeXienne, il y a du boulot (entre autres) parce que les jolis \newenvironment, c’est pas mon fort.

Si vous avez dans l’idée de passer l’agrégation de mathématique en 2018, emparez‐vous du projet parce qu’il y aura presque certainement une nouvelle version publiée en décembre 2017 pour les oraux de 2018.

La mise en vente

Afin de respecter le nouveau règlement, j’ai décidé de mettre mon livre en vente, tout en laissant la licence FDL. Pour cela, j’ai opté pour l’auto‐édition chez TheBookEdition.com, qui me permet de vendre le livre tout en gardant mes droits d’auteurs.

À cause de sa taille, le livre est divisé en trois volumes et il faudra débourser 68,5 euros (+ frais d’envoi) pour l’avoir au complet.

Le livre en vente (en papier) reste disponible au téléchargement sur mon site, et ses sources restent disponibles sur GitHub. Tout le monde est content.

La couverture

Les dessins des couvertures sont également libres, parce que repris de Pepper & Carrot, très belle BD publiée sous licence Creative Commons By 4.0, et dont l’auteur, David Revoy, ne cache pas son attachement à l’art libre.

Mon modèle économique

Le livre est libre et je ne le vends finalement qu’à regret, pour me conformer au règlement de l’agrégation de mathématique. J’ai donc choisi de ne faire aucun bénéfice sur les ventes.

Si quelqu’un désire faire un don, rien n’est refusé ; des instructions sont données dans le livre.

Télécharger ce contenu au format Epub

Lire les commentaires

Linux From Scratch 7.10 : Vous êtes aux commandes

29 septembre, 2016 - 08:51

L’équipe de traduction francophone est heureuse de vous annoncer la publication de la nouvelle version de Linux From Scratch (LFS). Cette version est disponible aussi bien dans sa variante SysV init que dans sa variante systemd. Il s’agit de la première version entièrement traduite via un service pootle (une plate‐forme de traduction collaborative), ce qui a permis à plusieurs personnes de travailler dessus simultanément.

En parallèle à la publication de la version 7.10 de LFS, nous avons publié la version 7.9 de Beyond Linux From Scratch (BLFS).

Pour les trois du fond qui ne suivent pas, rappelons que Linux From Scratch (Linux à partir de zéro) est un livre expliquant étape par étape comment construire son propre système GNU/Linux. Contrairement à une idée très répandue, LFS n’est pas destinée à des hackerz d’élite. Son ambition est avant tout éducative, même si des connaissances préalables en Bash, en compilation et beaucoup de patience seront un atout pour en venir à bout.

Et pour les deux intellos qui lèvent déjà la main au premier rang, il existe Beyond Linux From Scratch (Au‐delà de LFS), un livre destiné aux aventuriers avides de plus de sensations, qui contient les instructions pour plusieurs centaines de paquets supplémentaires, pour les systèmes serveurs, les ordinateurs de bureau, avec des applications graphiques, de bureautique (même LibreOffice !), la gestion du son, de la vidéo et bien d’autres.

Alors, quoi de neuf dans LFS ?

LFS 7.10 a été l’occasion d’un grand bouleversement pour les contributeurs, car elle a vu la fusion des deux variantes, SysVinit et systemd, dans un seul et même dépôt. La très grande majorité du livre étant identique entre ces deux variantes, il devenait difficile en amont de les maintenir séparément. Cette fusion n’est pas la fin de l’une des deux versions, car il est maintenant possible de construire aussi bien le livre SysVinit que systemd à partir de ce dépôt unique.

Tout comme en amont, les deux variantes francophones ont été fusionnées. Cependant, nos méthodes de traduction différaient entre ces deux variantes et nous avons dû trancher : ce sera la modernité avec la méthode gettext qui l’emportera.

Quant aux nouveautés de cette version, pour citer en partie l’annonce de la publication en anglais :

Cette nouvelle version contient une mise à jour majeure de la chaîne d’outils avec les versions glibc-2.24, binutils-2.27 et gcc-6.2.0. Au total, 29 paquets ont été mis à jour et un énorme travail rédactionnel a été réalisé pour améliorer les textes tout au long du livre.

Et BLFS ? Vous êtes en retard !

L’équipe a beaucoup bougé ces derniers temps et, outre le changement de coordinateur de la traduction, nous avons gagné de nouveaux contributeurs ponctuels, grâce à la nature collaborative du service que nous avions mis en place exprès pour eux. Expérience concluante !

Ces bouleversements ont aussi été l’occasion de passer BLFS entièrement sous la nouvelle méthode de traduction gettext ; et elle a bénéficié de la première relecture complète de son histoire. Un travail titanesque qui nous aura demandé près de deux mois à temps plein pour améliorer sensiblement la qualité de la traduction. Malgré tous nos efforts, il reste probablement encore des fautes. Si vous en repérez, n’hésitez pas à nous les signaler.

Nous nous focalisons maintenant sur la sortie prochaine de BLFS 7.10 (en français, la version anglaise étant déjà sortie). Comme pour LFS, il s’agit d’une version fusionnée avec les deux variantes, ce qui sera pour nous l’occasion de traduire la variante systemd en plus de SysVinit, puisque nous n’avions jusqu’à maintenant pas assez de volontaires.

Traduction, et pourquoi pas vous ?

Que vous ayez de bonnes compétences en anglais ou non, vous pouvez nous aider ! Si vous êtes intéressé par le travail dans notre équipe, vous pouvez nous rejoindre sur IRC (#lfs-fr sur freenode) ou sur notre liste de diffusion pour discuter de ce que vous pouvez apporter et pour coordonner les efforts. Nous sommes notamment toujours à la recherche d’un traducteur pour CLFS, les astuces et tous les autres projets qui gravitent autour de LFS. Bien sûr, vous pouvez aussi ponctuellement aider pour quelques relectures.

Linux From Scratch: Your Distro, Your Rules (votre distrib’, vos règles).

Télécharger ce contenu au format Epub

Lire les commentaires

GNOME 3.22 Karlsruhe : A Land Far, Far Away

28 septembre, 2016 - 21:30

On ne présente plus GNOME, l’environnement de bureau libre (depuis toujours), sexy (depuis la série 3.x), ergonomique (selon les points de vue), personnalisable (non, là, je plaisante, en revanche) et, dorénavant, à la pointe de la technique !

GNOME 3.22, nom de code Karlsruhe, est sorti le mercredi 21 septembre 2016, avec, sous le capot, rien de moins qu’une révolution…

La dernière version de GNOME est le résultat de six mois de développement dont 22 980 changements effectués par approximativement 775 contributeurs.

Sommaire

Général Wayland, Wayland, Wayland !

Le choix de faire reposer par défaut GNOME sur Wayland a été différé à de nombreuses reprises… Le travail d’intégration est achevé et GNOME-Wayland est à présent comparable en termes de fonctionnalités à GNOME-X11. Ceci sans compter les bonus apportés par l’implémentation du protocole Wayland en termes de finition, de sécurité et même d’efficacité énergétique, ni les nouvelles possibilités qui s’ouvrent aux développeurs !

Périphériques d’entrée

Ces derniers mois ont vu arriver la prise en charge des tablettes graphiques par GTK+ sous Wayland (cf. ce billet de blogue), ce qui fut une des grosses raisons du retard de Wayland par défaut. En effet, si Wayland est probablement prêt à 99 % (statistiques sorties du chapeau), comme toujours, ce sont les détails qui bloquent. Bien qu’une majeure partie de la population utilisera essentiellement souris et clavier, sortir un système d’exploitation sans prise en charge de périphériques d’entrée avancés n’est pas possible de nos jours. C’est ainsi que libinput a annoncé successivement les versions 1.3.0 et 1.4.0 à quelques mois d’intervalle. Cette dernière version donne à son mainteneur l’occasion de jeter un œil en arrière pour mesurer le chemin parcouru.

Parmi les apports intéressants de Wayland, nous pouvons noter la gestion de pointeurs multiples : chaque périphérique de pointage est indépendant avec son propre pointeur (et même une icône de pointeur différente), contrairement à X où tous les périphériques se partageaient un pointeur unique. Ainsi, une souris et une tablette affichent deux pointeurs indépendants simultanément. On pourrait donc imaginer de nouvelles manières de travailler où un artiste pourrait dessiner avec un stylo à la main, et cliquer sur des boutons de l’autre main. On pourrait même avoir deux stylos numériques et dessiner simultanément (comme si vous dessiniez avec deux pinceaux en même temps, chacun pouvant avoir une texture, couleur et brosse différentes), ce qui est actuellement impossible. Ce type de fonctionnalité ouvre de nouvelles perspectives pour l’art numérique, mais aussi au niveau de l’interaction homme‐machine. Bien sûr, cela nécessite que les applications qui souhaitent tirer avantage de ceci adaptent leur code.

Mais quand on parle d’avancée dans les périphériques d’entrée, on parle notamment de tablettes graphiques, car ce sont des périphériques très polyvalents. Les souris, les claviers, etc., ce type de périphériques est plutôt bien supporté depuis longtemps et, même s’ils peuvent profiter de quelques touches un peu hors norme, ce sont généralement des fonctionnalités bien définies. C’est d’un ennui !
Les tablettes graphiques, en revanche, ont cette particularité qu’elles sont fournies de boutons génériques, c’est‐à‐dire qui n’ont pas de fonction par conception, à charge de l’utilisateur de les configurer. C’est ainsi que Carlos Garnacho explique l’amélioration de la prise en charge de ces boutons dans Wayland : plutôt qu’associer seulement une combinaison de type « touche clavier » (ex : ctrl + lettre), il est désormais également possible d’associer des actions (donc une fonction sémantique). Mais encore mieux, les applications seront capables de configurer les boutons, un peu comme des profils applicatifs. Un artiste pourra ainsi configurer un bouton pour lancer une action particulière dans GIMP, par exemple un effet souvent utilisé, alors que dans Inkscape, ce même bouton pourra avoir une toute autre fonction. Cela nécessitera, bien sûr, une prise en charge au niveau du code des applications intéressées par ce type de fonctionnalité, qui sont donc probablement avant tout les applications de création graphique (davantage susceptibles d’avoir des utilisateurs possédant ce type de périphériques).

Mutter

Mutter aussi a été optimisé durant ce cycle de développement : amélioration du copier‐coller entre les applications X11 et les applications Wayland natives. Meilleure gestion du multi‐écran sous Wayland…

Applications tournant nativement

Outre les applications au cœur de GNOME, citons‐en quelques autres tournant nativement sous Wayland : LibreOffice, à partir de la version 5.0 (quelques finitions peuvent rester nécessaires ici ou ) ou encore Pitivi à partir de la version 0.95.

Rappelons également que les applications non encore converties à Wayland — par exemple, Firefox (ticket 635134) et GIMP (qui doit attendre le portage vers la version 3 de GTK+) — tournent néanmoins parfaitement et fluidement dans une session Wayland de GNOME, via le procédé XWayland.

Enfin, nous savons déjà que Fedora 25, par exemple, activera Wayland par défaut. Ainsi, RedHat tient une liste à jour de ce qui ne marche pas encore, mais également de ce qu’il reste à faire pour que certains outils puissent continuer à marcher sur Wayland avec GNOME.

Paramètres

Le centre de paramétrage est en train de changer de design avec une barre latérale de navigation où sont listées les paramétrages par catégorie avec leurs icônes et descriptions. Cette barre latérale redimensionnable est placée sur la gauche de la fenêtre.

L’ancienne vue est toujours celle par défaut. N’importe qui peut donc la lancer avec gnome-control-center-alt. À vous de tester et de remonter ce qui ne va pas !

Shell
  • meilleure prise en charge de Wayland ;
  • implémentation du système de permissions qui demandera à l’utilisateur s’il souhaite partager sa géolocalisation ou autoriser l’accès à certains périphériques (webcam, microphone…) pour les applications isolées qui en feront la demande ;
  • plusieurs dizaines de corrections de bogues.
Applications

Des fonctionnalités pour utilisateurs avancés font leur apparition dans cette version, comme la possibilité de renommer les fichiers en masse dans Fichiers (qui rattrape Thunar, son équivalent Xfce, sur ce point) ou d’éditer les méta‐données de vos fichiers musicaux via Musique. Ces fonctionnalités ont été implémentées par des étudiants du GSoC 2016, respectivement Alexandru Pandelea [blogue] et Saiful B. Khan [blogue].

Logiciels
  • gestion des applications Flatpak et Snap ;
  • prise en charge des extensions GNOME Shell ;
  • prise en charge initiale de Steam ;
  • les boîtes de dialogues pour la mise à niveau du système d’exploitation ont été retravaillées ;
  • l’information concernant la taille des paquets est désormais séparée en deux : la taille à télécharger et celle nécessaire pour l’installation ;
  • ajout d’un bouton d’annulation et d’informations de progression sur la page de détails ;
  • l’origine d’un paquet est désormais indiquée quand ce dernier est disponible depuis plusieurs sources différentes ;
  • prise en charge des liens appstream:// ;
  • ajout d’informations concernant les applications isolées.
Agenda

L’agenda a été encore peaufiné, avec une gestion des alarmes, le changement possible de mois par raccourci clavier, une vue de tous les évènements du mois en cliquant sur le nom du mois, la prise en charge du glisser‐déposer…

Fichiers Renommage en masse

Nautilus se dote d’un outil de renommage en masse de fichiers qui permet de faire du « rechercher et remplacer », mais également d’utiliser un patron prédéfini. Ce patron peut utiliser les étiquettes (tags) des fichiers musicaux.

À noter que les conflits sont surlignés en jaune par sécurité.

Fichiers compressés

L’ouverture des fichiers compressés s’est toujours faite avec un outil tiers, comme file-roller. Ceci empêchait de gérer la progression de la décompression au sein de Nautilus (mais également l’annulation, la répétition et la décompression en arrière‐plan en fermant la fenêtre), une bibliothèque a donc été mise en place pour ça : gnome-autoar.

Nautilus gère maintenant la création d’archives et leur décompression. Cette nouvelle bibliothèque permettra à d’autres applications, comme Evolution ou Epiphany, de gérer les archives directement.

Le comportement par défaut est de décompresser l’archive sélectionnée avec un double clic, mais une option dans les préférences permet de désactiver ce choix si besoin est.

Autres

Le menu de droite s’améliore, pour s’inspirer un peu de Firefox, par exemple dans la gestion du zoom.

La gestion du bureau est maintenant séparée de Nautilus pour plus de facilité de travail.

Cartes

Cartes utilise désormais Mapbox. Plutôt que de passer par un serveur mandataire (proxy) pour éviter une nouvelle interruption de service en cas de changement de fournisseur de tuiles, un fichier service.json est désormais téléchargé depuis les serveurs de GNOME pour savoir quel fournisseur de tuiles utiliser directement, ce qui rend l’affichage bien plus rapide.

Enfin, le « rebouclage horizontal » de la carte pour pouvoir faire le tour de la planète est maintenant là.

Jeux

Jeux est une jeune application GNOME pour présenter les jeux stockés dans votre ordinateur, qu’il s’agisse de jeux installés (natifs, Steam), de jeux à part (comme ceux utilisant l’infrastructure LÖVE) ou même de jeux à émuler (ROM et images disque). Dans le cas de ces derniers, Jeux se charge de les lancer dans sa propre fenêtre, faisant ainsi office de frontal pour émulateur basé sur Libretro.

Cette version 3.22 comporte pas mal de nouveautés majeures :

  • prise en charge des manettes de jeu ;
  • prise en charge du plein écran ;
  • prise en charge des jeux PlayStation pour l'émulation ;
  • téléchargement des pochettes de jeu pour la plupart des consoles (les pochettes sont récupérées depuis TheGamesDB.net pour les jeux consoles et le magasin Steam pour les jeux Steam),
  • affichage des jeux Atari 2600, Atari 7800, NEC CD-ROM² et Mega-CD ;
  • ajout d’icônes pour LÖVE et Nintendo DS.

Les détails figurent dans l’annonce de la sortie sur le blog d’Adrien Plazas.

Machines

L’outil de gestion des machines virtuelles présente les nouveautés suivantes :

  • ajout d’une option de clonage ;
  • l’ordre d’affichage des différentes machines virtuelles est préservé d’une session à l’autre ;
  • les noms d’hôte n’utilisent plus de caractères qui poseraient problème sous Microsoft Windows ;
  • les nouvelles machines virtuelles n’exposent plus la connexion SPICE à tous les utilisateurs ;
  • prise en charge des adresses URL SPICE spice+unix ;
  • ajout d’une action « redémarrer » et suppression de l’action « pause » dans le menu contextuel du mode Affichage.
Web

Le navigateur par défaut prend maintenant en charge le « coller et aller » (permettant de rendre directement à la page dont l’adresse est dans la presse‐papiers), déjà présent sous Firefox par exemple. La nouvelle fenêtre des raccourcis clavier fait maintenant son arrivée. Enfin, il est maintenant possible de dupliquer un onglet.

Musique

Certains auront noté que les performances de Musique n’étaient pas extraordinaires, mais c’est maintenant du passé.

Enfin, tout comme Web, Musique implémente également la page des raccourcis clavier.

Photos

Une prise en charge expérimentale du partage de photos (courrier électronique, Bluetooth, Google, Flickr…) fait son entrée, accompagnée de la possibilité d’annuler toutes les modifications effectuées sur une photo. Vous pouvez désormais envoyer vos photos dans les nuages directement.

Les fichiers GIF étant mal pris en charge (les fichiers GIF animés ne le sont pas toujours), ces derniers ne sont plus affichés pour le moment.

Documents

Documents vous permet maintenant de lire les fichiers au format EPUB (dans Books) et, pourquoi pas, en plein écran avec une barre d’outils sombre !

Évolution

Évolution vient juste de changer son moteur de rendu pour passer de Webkit 1 à Webkit 2 pour l’affichage des courriels. C’est un changement qui a pris du temps, mais qui a permis de résoudre plusieurs dizaines de bogues et d’apporter diverses améliorations.

Développeurs Builder

Builder se refait une beauté :

  • nouveau système de recherche et de remplacement ;
  • nouvelle barre de compilation qui fournit des informations sur la configuration, la branche du système de gestion de versions et autres informations importantes ;
  • un nouvel outil pour le profilage de code basé sur Sysprof ;
  • amélioration des modèles de projets ;
  • ajout d’une interface de configuration des logiciels de gestion de versions ;
  • amélioration de la prise en charge de Vim ;
  • nouveau greffon de gestion des couleurs ;
  • amélioration de l’interface concernant la commande git clone, le sélecteur de fichiers ou l’assistant ;
  • nouvelle icône.
Flatpak

Flatpak (anciennement xdg-app). Une sortie a eu lieu le 21 juin 2016.

Rappelons brièvement pourquoi cette nouvelle technologie fait autant de bruit : Flatpak devrait permettre aux Linuxiens d’installer l’application de leur choix sans se soucier de leur distribution, de la version de celle‐ci ou même des dépendances requises. En intégrant Flatpak à Logiciels (cf. plus haut), GNOME veut rendre son usage aussi simple que l’est déjà celui des logiciels distribués via APT ou RPM.

Une page dédiée recense quelques dépôts Flatpak disponibles : un dépôt gnome-apps pour les applications GNOME en version stable, un dépôt gnome-nightly-apps pour les applications GNOME en version nightly, un dépôt nightly-graphics d’outils de création graphique non liés à un environnement de bureau particulier et également en version nightly (tels que Darktable, GIMP, Inkscape et MyPaint) et enfin des dépôts pour LibreOffice, Telegram ou Pitivi.

À défaut de bundle pour le moment, un script préparé par un développeur de Red Hat permet de compiler Firefox depuis sa branche master, puis de le lancer et de le mettre à jour facilement en tant qu’application Flatpak.

Flatpak est disponible sur la plupart des distributions GNU/Linux courantes. Debian, parmi d’autres distributions, est prête.

Glib

En bref :

  • refonte de l’API de journalisation pour supporter les champs clef‐valeur structurés dans les journaux ;
  • ajout de la gestion du transfert de ces derniers au service systemd-journald ;
  • les sorties basées sur stdio bénéficient désormais de couleurs ;
  • réorganisation de l’infrastructure de journalisation autour d’une fonction writer pour laquelle les applications spécifient leur stratégie de journalisation et dépréciation des gestionnaires de journaux en faveur de ce dernier, afin d’éliminer l’ambiguïté sur où et comment prendre en charge les journaux ainsi que les conflits entre gestionnaires de journaux ;
  • d’autres fonctionnalités encore de l’infrastructure de journalisation sont présentées dans une API publique, laissant libres les applications de choisir entre différentes stratégies, allant de celle par défaut de la GLib à une personnalisation complète ;
  • les tests unitaires des messages de journal sont maintenant plus flexibles, car on peut les faire dans une fonction writer personnalisée plutôt qu’avec des fonctions internes à GLib (limitant, car imposant un ordre strict des vérifications de messages) ;
  • la journalisation structurée simplifie l’implémentation de procédés de journalisation plus puissants, et devrait entraîner une moindre confusion sur les conflits entre les gestionnaires de journaux des différentes bibliothèques ;
  • facilitation de l’inclusion de plus de métadonnées dans les messages journaux, comme les identifiants de message (comme avec journald : https://www.freedesktop.org/software/systemd/man/systemd.journal-fields.html) ;
  • utilisation de journald si actif.
GTK+ Coup d’œil dans le rétro

Vous pouvez regarder la conférence (en anglais) GTK: Are we in the future, yet?, donnée au dernier GUADEC par Emmanuele Bassi, qui revient notamment sur l’évolution de GTK+ au cours de ces vingt dernières années.

Nouveautés de GTK+ 3.22

Nous attendions l’avènement de GTK Scene Kit (GSK) pour cette version, mais ce sera finalement pour la prochaine, autrement dit GTK+ 4.0. Nous en reparlerons donc à cette occasion. En attendant, les plus impatients d’entre vous pourront suivre (en anglais) le travail en cours sur le blogue d’Emmanuele Bassi [feuille de route de GTK+].

GTK+ 4.0 en approche ! Insaisissable GTK+ (= le problème)

Commençons par un résumé du feuilleton exposant le problème.

Ceux qui lisent LinuxFr.org le savent bien : le thémage avec le CSS a reçu une refonte majeure dans la précédente version de GTK+. Vers avril/mai, certains ont publiquement râlé en découvrant après coup que leurs applications ne se comportaient soudainement plus comme prévu, et divers échanges ont suivis. L’occasion de poser, une fois de plus, la question de la stabilité des interfaces de programmation de GTK+, spécialement de la série 3.x

Hasard ou coïncidence, il a été décidé mi‐mai de réactiver le blogue relatif au développement de GTK+. De fait, celui‐ci est alimenté avec talent par Emmanuele Bassi et permet de suivre, semaine après semaine, l’actualité du développement de GTK+.

Vous avez dit Less‐than‐perfect API stability ?

Reconnaissant (par euphémisme interposé) le problème posé par le manque de stabilité de l’API de GTK+ 3, mais soulignant dans le même temps l’inconvénient que créerait un engagement de stabilité à long terme de cette dernière (qui risquerait de bloquer les évolutions futures nécessaires de la bibliothèque), les développeurs réunis au GTK Hackfest de Toronto mi‐juin ont proposé un plan qui semblait alors assez peu lisible (voir certains billets de blogue : “Gtk 4.0 is not Gtk 4”, “Gtk 5.0 is not Gtk 5”, GTK versioning and distributions, Dispatches from the GTK+ hackfest, Gtk+ Versioning, Long term support for GTK+…). Les diverses propositions (résumées sur une page de wiki) ont provoquées beaucoup de discussions et, bien sûr, du troll en pagaille, parfois virulent.

Tout est bien qui finit bien (du moins, espérons‐le)

Le consensus final est cependant bien plus simple et tout à fait compréhensible (car plus proche de la gestion de versions sémantique à laquelle les gens sont habitués). Tous les deux ou trois ans, une nouvelle version majeure stable sortira, ce qui implique un gel des fonctionnalités existantes (API stable). Bien sûr, des versions mineures stables pourront ajouter des widgets ou mettre à jour des implémentations, mais rien de transcendantal et, en particulier, il n’y aura pas de nouvelles fonctionnalités, ni de changement de thèmes ou d’API. Chaque version stable sera maintenue pour au moins trois ans (avec des corrections de bogues mettant à jour la micro‐version) et les développeurs d’applications tierces sont appelés à utiliser cette branche stable faite pour ne plus casser les applications. Exceptionnellement, la première version stable est GTK+ 3.22, car c’est une étape de transition, mais les versions stables ultérieures seront 4.0, puis 5.0, 6.0, etc.

Parallèlement à chaque sortie d’une nouvelle majeure stable, une nouvelle branche numérotée x.90 deviendra la nouvelle branche de développement. De cette branche éclora tous les six mois une version de développement. Ces versions pourront casser l’API, les thèmes, etc. Bien sûr, cela ne signifie pas que l’API sera cassée à chaque fois. Les développeurs GTK+ éviteront au maximum de casser le fonctionnement existant ; et, les rares fois où ils le feront, ils communiqueront dessus. En d’autres termes, cette branche de développement suivra la logique de développement actuelle de GTK+ 3.

Les développeurs d’applications tierces ne sont pas encouragés à utiliser ces versions (mais peuvent le faire, en acceptant le prix d’un travail de maintenance plus élevé). En revanche, on s’attend à ce que les applications core du projet GNOME, bien plus proches de GTK+ et de ses évolutions, se basent sur ces versions de développement et profitent ainsi des dernières nouveautés.

Tout cela peut mieux se comprendre par ce schéma d’exemple :

GStreamer La compilation de GStreamer bientôt confiée à Meson plutôt que les Autotools

Jusqu’à présent le projet GStreamer utilisait la suite d’outils de compilation du projet GNU nommée Autotools, créée dans les années 80.
Nirbheek Chauhan et Tim‐Philipp Müller, pour le compte de Centricular, travaillent depuis quelques mois à utiliser un autre outil : Meson. Celui‐ci s’avère prometteur en ce qu’il permet de raccourcir drastiquement le temps de compilation : d’un facteur 2,5 sur GNU/Linux et d’un facteur 10 sur Windows ! Les tests se poursuivent sur l’ensemble des plates‐formes prises en charge par GStreamer : GNU/Linux, Mac OS X, Windows, iOS et Android.
Dans son billet, Nirbheek Chauhan semble aussi enthousiaste à l’égard de Meson que dépité à l’égard d’Autotools qu’il évoque en ces termes : « Appeler Autotools le X.Org des outils de compilation relève de la flatterie. C’est juste un outil horrible. Nous devons vraiment consacrer du temps à trouver quelque chose qui travaille pour nous plutôt que contre nous. »
Emmanuele Bassi y est également allé de son rapport d’expérience, et Pitivi 0.97 a sauté le pas.
Vous pouvez regarder la conférence donnée au dernier GUADEC sur le sujet par Nirbheek Chauhan.

Oxydation de GStreamer

Décidément la rouille (rust, en anglais) corrode tout : après Firefox, voici venu le tour de GStreamer !
Sebastian Dröge (alias slomo) (Centricular), à l’occasion du GStreamer Spring Hackfest 2016, a travaillé avec Luis de Bethencourt (Samsung) à permettre de lier le code C de GStreamer avec du code Rust (lire ce billet). Selon lui, dans un premier temps, des composants comme les analyseurs et les (dé)multiplexeurs gagneraient à être écrits en Rust compte tenu de leur complexité et de leur exposition à des données de tout genre et de toute provenance (parfois non garantie). Plus tard, des parts plus importantes du code de GStreamer pourraient également être réécrites en Rust.

Intégration dans les distributions

GNOME 3.22 sera intégré dans Fedora 25 prévue pour novembre 2016, Arch Linux, Ubuntu GNOME 17.04, Debian (cette version devrait logiquement être proposée dans Debian 9 Stretch), ainsi que dans un certain nombre d’autres distributions GNU/Linux.

Par ailleurs, comment ne pas signaler que, peu après la parution de GNOME 3.20, Gedit a finalement été doté d’une nouvelle version pour systèmes Microsoft Windows ? La 3.20.1 pour Windows 64 bits succède donc à la 2.30 pour Windows 32 bits !

Vitalité du projet

Notons tout d’abord le satisfecit donné par un des développeurs de Fichiers concernant la petite équipe de développement qui s’est formée depuis un an et demi autour de ce composant majeur de notre environnement de bureau favori et qui revient de loin, semble‐t‐il, pour le coup.

Voyons ensuite les statistiques de développement de la précédente version (3.20) de GTK+ présentées par Emmanuele Bassi (qui avait déjà fait le point à l’occasion de la version 3.18 en deux billets). Au passage, on se rend mieux compte du travail qu’a représenté la refonte du « thémage » avec le CSS (le nombre de lignes de code ajoutées et supprimées atteint respectivement 158 427 et 117 823 dans la version 3.20 de GTK+, contre 78 676 et 54 508 dans la version précédente).

Ce billet liste les projets retenus pour le Google Summer of Code 2016.

À l’occasion du GNOME Asia Summit 2016, Tobias Mueller [blogue] est revenu sur les cinq ans de GNOME 3.

Autour de GNOME Pitivi

Les versions 0.96 et 0.97 de Pitivi, le logiciel de montage vidéo non linéaire libre, puissant et intuitif, qui partage les technologies du bureau GNOME (la boîte à outils graphiques GTK+, le moteur multimédia GStreamer) et respecte ses bonnes pratiques pour l’IHM (énoncées ici), sont sorties durant ce cycle de développement (respectivement les 30 juin et 8 août 2016). Si votre distribution ne vous propose pas encore cette version, vous pouvez récupérer un paquet Flatpak de cette dernière version sur le site officiel du projet qui propose également un canal nightly.

LibreOffice et Firefox

La version 5.2 de LibreOffice (sortie le 3 août 2016), la suite bureautique phare du monde libre, améliore son intégration graphique dans un environnement GTK+ (billets de blogue un et deux).

En passant à la version 46 (sortie le 26 avril 2016, voir notre dépêche), Firefox, notre navigateur préféré, embrasse GTK+ 3 (sous réserve des choix faits à la compilation par votre distribution).

Shotwell et Geary

Bonne nouvelle : deux logiciels orphelins depuis l’arrêt de la fondation Yorba en novembre 2015 ont successivement retrouvé un foyer.

Il s’agit tout d’abord du logiciel de gestion de photos personnelles Shotwell, pour lequel Jens Georg a proposé de reprendre les rênes du projet à compter de la version 0.22.1 parue le 15 avril 2016 ! Du coup, une version 0.23 est sortie quelques jours après.

Il s’agit ensuite du logiciel de messagerie Geary, pour lequel Michael Gratton s’est également manifesté et a publié la version 0.11.0 le 15 mai 2016, ainsi que deux versions mineures 0.11.1 et 0.11.2.

Systemd Manager

Systemd Manager est un tout jeune logiciel (son développement a débuté en novembre 2015) repéré par Okki qui en a fait un billet de présentation. Ce logiciel, qui permet, entre autres, de démarrer et arrêter graphiquement les différents services gérés par systemd, est développé principalement par Michael Murphy, alias mmstick, qui semble fan de Rust (il contribue également à Redox OS) et GTK+ 3 pour ses différents projets logiciels, dont celui‐ci :

GUADEC 2016 & 2017

Le GUADEC (GNOME Users And Developers European Conference), Conférence européenne annuelle des utilisateurs et développeurs GNOME, pour les francophones.

L’édition 2016 a eu lieu à Karlsruhe, en Allemagne, du 12 au 17 août 2016 :

L’édition 2017, devrait se dérouler en été à Manchester, en Angleterre.

Télécharger ce contenu au format Epub

Lire les commentaires

Sortie du noyau Linux 4.7

28 septembre, 2016 - 16:52

La sortie de la version stable 4.7 du noyau Linux a été annoncée le dimanche 24 juillet 2016 par Linus Torvalds. Le nouveau noyau est, comme d’habitude, téléchargeable sur les serveurs du site kernel.org. Le noyau a fêté ses 25 ans le 25 août 2016 \o/.

Le détail des évolutions, nouveautés et prévisions est dans la seconde partie de la dépêche (qui est sous licence CC BY-SA).

Sommaire TL;DR
  • gestion du processeur graphique Radeon RX 480 (nouvelle architecture d’AMD appelée Polaris) ;
  • Nouveau gestionnaire de fréquence dynamique du processeur (schedutil) ;
  • lecture en parallèle du contenu des répertoires, avec un gain de performance dans quelques rares situations ;
  • amélioration des outils de contrôle et surveillance (histogrammes d’événements dans ftrace, pile d’appels dans perf trace, tracepoints dans BPF) ;
  • intégration du mécanisme sync_file, issu d’Android, qui permet une synchronisation explicite avec l’espace utilisateur.
En bref

Les grandes nouveautés du noyau Linux 4.7 sont la gestion du processeur graphique Radeon RX 480 d’AMD, qui, bien sûr, a été directement implémentée dans le pilote AMDGPU, un nouveau module de sécurité appelé LoadPin, qui s’assure que les modules chargés par le noyau sont tous originaires du même système de fichiers, et la gestion des contrôleurs de périphériques USB virtuels USB/IP.

De plus, il s’agit de la première version du noyau à être prête pour le mécanisme de clôture sync_file utilisé dans les systèmes d’exploitation mobiles Android, qui permet au programme Berkeley Packet Filter (BPF) de s’attacher aux points de dépistage (trace points), aussi bien que le longuement anticipé gestionnaire de fréquence dynamique du processeur schedutil, qui promet d’être plus rapide et plus précis que les existants.

Les nouvelles fonctionnalités sont les suivantes : gestion de la consultation parallèle des répertoires, possibilité de créer un histogramme des évènements avec l’interface ftrace, gestion des appels en chaîne avec l’outil de traçage perf et gestion de la mise à jour du micrologiciel en utilisant le mécanisme EFI « Capsule ». Comme d’habitude, de nombreux pilotes ont été mis à jour et de nombreux bogues ont été résolus.

À noter l’ajout dans le noyau de la gestion des manettes de la Xbox One de Microsoft et du Thunderbolt d’Apple/Intel (Interface qui combine PCI Express et DisplayPort).

Annonces des versions candidates par Linus Torvalds RC-1

La version RC-1 est sortie le 29 mai 2016 :

Habituellement, je ferme la fenêtre d’intégration le dimanche après‐midi, mais je suis connu pour être embêté par les traînards et tout fermer un jour en avance. Cette fois‐ci, pour mettre un peu de piment, j’ai tout simplement décidé de publier un dimanche matin à la place.

[Et, oui, avant que vous ne me le demandiez, ma vie est vraiment ennuyeuse, si c’est ça « mettre un peu de piment ».]

Cette publication matinale est en partie due au fait que je n’ai rien en attente, que je sache (et s’il y avait quelqu’un qui avait prévu d’envoyer ses changements de dernière minute cinq minutes avant l’habituelle publication de l’après‐midi, ça m’est égal). Et en partie parce que je pense que cela a été une bonne fenêtre d’intégration et que nous avons beaucoup de nouveau code pour la fermer.

Et je ne dis pas ça parce que la fenêtre d’intégration de la 4.7 est particulièrement grosse — elle a l’air plutôt normale et résolument plus petite que ne le fut la 4.6. Nous avons toutes les habituelles mises à jour de pilotes, cependant cette fois‐ci nous avons un assez gros changement dans la couche VFS qui autorise les systèmes de fichiers (s’ils adoptent cette façon de faire) à utiliser readdir() et la recherche en parallèle des éléments du chemin d’accès dans le même répertoire.

C’est probablement le plus gros changement conceptuel de VFS que nous ayons eu depuis que nous avons commencé à faire la résolution de chemin d’accès en cache en utilisant RCU.

Cela dit, les changements de code pour tout ça sont plutôt petits et ils sont éclipsés par toutes les habituelles mises à jour de pilotes. En fait, aucune des mises à jour des systèmes de fichiers ne pointe dans les habituelles « statistiques de répertoires » (parce que les stats de répertoires de git coupent les trucs à 3 %). Donc, quand on arrive au gros du travail, nous avons l’habituelle distribution : environ deux tiers des pilotes (processeurs graphiques et réseau dominent, mais il y en a d'autres) et le reste est principalement des mises à jour d’architectures, de la documentation et du « divers » (où se cachent les changements de VFS).

Même si ce n’est pas une énorme publication, elle est certainement assez grosse pour que même le journal abrégé soit beaucoup trop gros pour le poster ou le lire afin d’avoir une vue d’ensemble, je joins donc mon habituel résumé des intégrations. Et, en tant que tel, souvenez‐vous que les gens crédités sont les gens pour qui je pousse les demandes de changements, ce qui n’est pas forcément le cas de tous les gens qui ont véritablement écrit le code.

Juste pour donner aux gens une idée de la disparité entre la liste de mainteneurs ci‐dessous et le nombre de gens soumettant des correctifs, il y a environ 1 400 auteurs en tout pour les trucs qui sont arrivés pendant la fenêtre d’intégration.

Bref, assez de bla‐bla. Allez‐y, testez. Et, en particulier, si vous êtes une personne du système de fichiers bas niveau ou impliquée d’une autre manière dans la recherche d’éléments de chemins d’accès (couche de sécurité, etc.), allez‐y, testez si tout a l’air OK. Et si votre système de fichiers n’est pas un de ceux qui font déjà des recherches ou des lectures de répertoires en parallèle (à cause de problème de blocage), jetez‐y un œil aussi.

Linus

RC-2

La version RC-2 est sortie le 5 juin 2016 :

C’est dimanche après‐midi, c’est donc le moment d’une version candidate !

Les choses semblent assez normales et il y a des corrections partout, avec du code pour les pilotes et les architectures qui mènent la charge comme d’habitude, mais il y a des trucs épars dans tous les coins, y compris les systèmes de fichiers, le réseau, MM, les bibliothèques de simplification [helper libraries], etc., etc.

Il y a quand même une régression NFS en cours, mais personne, en dehors de certains tests de résistance explicites, ne l’a remarquée, donc j’ai fait une RC-2 malgré la connaissance du problème. Je recevrai une demande d’intégration d’Al plus tard et on réparera ça pour la RC-3. En attendant, je compte sur les rares personnes qui auraient rencontré le problème pour faire du test de résistance sur les systèmes de fichiers et pour d’ores et déjà tester le correctif.

Il y a une non‐correction en retard que j’ai prise bien que la fenêtre d’intégration soit fermée, parce que je la voulais depuis un moment. Je doute que quiconque remarque le résultat effectif d’un nettoyage/changement de PTY, ce qui signifie que notre vieille et dégoûtante option de configuration du noyau DEVPTS_MULTIPLE_INSTANCES a disparu, parce que le nettoyage fait qu’elle n’est plus nécessaire. Nous étions dans une situation où certaines distributions voulaient cette option désactivée pour des raisons historiques et d’autres la voulaient activée pour un comportement moderne. Le comportement de notre /dev/ptmx a été nettoyé et corrigé de sorte que ça juste marche™ dans les deux cas, et cette vilaine verrue a simplement disparu. De plus, le code est de toute façon plus propre.

Je mentionne cette non‐correction probablement essentiellement parce que je me sens un peu coupable de l’avoir intégrée, puisque j’aurais probablement crié sur un des sous‐mainteneurs qui aurait tenté d’appeler ce nettoyage un correctif retardataire. Quod licet Iovi, et tout le toutim… Mais en réalité, pas d’excuses, à part « en définitive ».

Peu importe, il y a donc un peu de tout et c’est suffisamment petit pour que vous puissiez éplucher le journal résumé ci‐joint pour les détails.

Linus

RC-3

La version RC-3 est sortie le 12 juin 2016 :

Vous connaissez tous la rengaine, alors chantez maintenant : « nouvelle semaine, nouvelle RC ».

Rien de particulièrement notable cette semaine. Comme promis, la RC3 contient le correctif pour le problème NFS qui était en suspens dans la dernière RC, que personne ne semble avoir remarqué (comme prévu également).

Les statistiques de modifications semblent plutôt normales et inoffensives. Il y a plus de composants de systèmes de fichiers que d’habitude, mais ce sont majoritairement des ajouts de tests de btrfs et, si vous ignorez cette partie, ce sont tous les trucs habituels : les pilotes dominent (processeurs graphiques et réseau en constituent la majeure partie, mais il y a de l’I²C, du RDMA…) avec quelques mises à jour d’architectures et du code réseau général. Et les habituels trucs épars partout. Mais tout cela est assez petit. Le journal abrégé est joint pour les gens qui aiment avoir un rapide aperçu des détails.

Linus

RC-4

La version RC-4 est sortie le 19 juin 2016 :

Ça a été une semaine assez normale et la RC-4 est sortie. Allez la tester.

Les statistiques ont l’air très normales : environ deux tiers de pilotes et le reste est constitué pour moitié des mises à jour d’architectures et pour l’autre moitié de « divers » (petites mises à jour des systèmes de fichiers, un peu de documentation et une poignée de corrections par ailleurs).

Le gros des mises à jour de pilotes sont pour l’USB et les pilotes graphiques, mais il y a aussi l’IIO, les DEL, les pilotes de plates‐formes, le DMA, etc.

Les mises à jour d’architectures sont surtout destinées aux machines ARM, mais il y a aussi quelques petites corrections pour x86.

Mais tout ça est assez petit, rien de particulièrement inquiétant.

Le journal abrégé est joint pour les gens qui veulent avoir un aperçu du genre de choses qui se sont passées.

Linus

RC-5

La version RC-5 est sortie le 26 juin 2016 :

Nouvelle semaine, nouvelle RC.

Hum. Je pense que ça se calme, bien qu’avec deux tiers des modifications arrivés à partir de vendredi matin, cela ne semble pas le cas — mes vendredis finissent par être très occupés. Mais à bien regarder les chiffres, nous en sommes là où nous sommes habituellement à ce stade des RC.

Les statistiques sont tout à fait normales : une moitié de pilotes, un quart de mises à jour d’architectures et le reste de divers : systèmes de fichiers, ordonnanceur, gestion de la mémoire, etc.

Les mises à jour de pilotes concernent surtout les pilotes graphiques, mais aussi RDMA, hwmon, Xen, GPIO et son.

Du côté des architectures, PowerPC, x86, un peu d’ARM64, et un peu de bruit un peu partout dû au nettoyage de la gestion de la mémoire.

Allez‐y, testez. Avec la RC-5, nous devrions commencer à être pratiquement prêts.

Et, s’il vous plaît, si Thorsten Leemhuis suit une de vos régressions, pouvez‐vous vérifier et revérifier si elle demeure ? C’est plaisant de disposer à nouveau d’un suivi des régressions, mais il serait bien également de s’assurer que celles qui sont réglées soient fermées.

Linus

RC-6

La version RC-6 est sortie le dimanche 3 juillet 2016 :

Hum… Une autre semaine, une autre RC.

J’aimerais vraiment dire que ça se calme et que l’on se rapproche, mais ce serait un mensonge.

Ce n’est pas comme si c’était une énorme RC, mais elle est vraiment plus grosse que les RC précédentes. Je ne pense pas que ce soit réellement un gros problème, car il semblerait que ce soit plutôt dû au calendrier. Nous venons d’avoir des fusions en provenance de la plupart des sous-systèmes (par exemple, le réseau de Davem et tous les sous‐systèmes de pilotes de périphériques habituels de Greg, sans parler des mises à jour des pilotes graphiques et de tous les autres mainteneurs de sous‐systèmes). Mais le réseau (à la fois les pilotes et le code principal) est la partie la plus notable.

Les détails sont, comme d’habitude, dans le journal résumé ci‐joint.

Attendons de voir comment ça se passe la semaine prochaine. Un pur hasard ou l’émergence d’une mauvaise tendance ?

Linus

RC-7

La version RC-7 est sortie le dimanche 10 juillet 2016 :

Nous avons eu une semaine bien calme, ce que j’attendais — la dernière RC était plus grosse uniquement en raison de problèmes d’aléas de calendrier et non un changement inquiétant à ce moment du cycle de sortie. Ouf.

Quoi qu’il en soit, il y a quelques régressions encore en cours d’observation, mais à moins que quelque chose de bizarre ne survienne, ce sera la dernière RC. Cependant, en raison du calendrier de mes voyages, je ne ferai pas la version finale 4.7 la semaine prochaine et les gens auront deux semaines pour rapporter (et corriger) les bogues restants.

Oui, c’est votre chance. Mon calendrier de travail ne va pas mettre le bazar, voyez plutôt cela comme si vous aviez une SEMAINE DE BONUS ! Ouais !

Bon d’accord, mon calendrier de travail va probablement mettre le bazar pour quelqu’un et je m’en excuse d’avance. Mais, bon, même ce délai bien planifié peut évidemment changer, si quelqu’un trouve un vrai bogue tueur. Mais ça ne semble pas du tout le cas, vu que le cycle de sortie n’a pas été particulièrement gros ou effrayant.

Mais, allez donc le tester. Le journal abrégé donne les détails sur ce qui s’est passé durant cette calme semaine, mais globalement tout est très normal : deux tiers de pilotes (réseau, son, GPIO et divers), avec le reste partagé à peu près équitablement entre des corrections d’architectures et du « divers » (en l’occurrence, principalement le cœur du noyau, du réseau et eCryptfs). Mais tout cela est plutôt petit.

Linus

Version finale

La version finale est sortie le dimanche 24 juillet 2016 :

Donc, après un léger retard dû à mes voyages, je suis de retour et la version 4.7 est sortie.

Bien que la RC-7 soit sortie il y a deux semaines, les correctifs finals n’étaient pas si conséquents que ça et la majorité d’entre eux étaient triviaux — souvent d’une ou quelques lignes. Il y a eu quelques pilotes réseau qui ont reçu plus d’attention. En annexe, le journal des modifications depuis la RC-7, pour les personnes intéressées : c’est plutôt varié, avec du réseau, des correctifs sur le processeur graphique Intel Kabylake pour les plus notables. Il y a également eu de petites retouches un peu partout.

Et, bien entendu, ça signifie que la fenêtre d'intégration pour la version 4.8 est ouverte. D’après le contenu de linux-next, ça va être une plus grosse version que l’actuelle (la version 4.7 a été vraiment calme, la faute en revient au moins en partie à l’été dans l’hémisphère nord).

Linus

Les nouveautés Architecture CPUFreq et PState

Le noyau 4.7 ajoute une nouvelle option de gestion de fréquence (schedutil) plus « intelligente », qui utilise des informations plus précises et permet une latence plus faible en cas de modification de charge pour effectuer ses changements de fréquence. Malgré sa relative simplicité, ce mode propose déjà des résultats encourageants. Le travail effectué ici pose les bases pour des traitements futurs plus efficaces.

Gestion de la mémoire

Les tâches de compression async ont vu leurs latences réduites, ce qui est utile sur les systèmes n’ayant plus assez de mémoire et cherchant à optimiser la mémoire allouée.

Dans cet ordre d’idée, l’OOM (Out of Memory killer), a été amélioré pour être plus fiable (cf. explications en anglais sur LWN.net).

L’ordonnanceur SLAB dispose d’une nouvelle option CONFIG_SLAB_FREELIST_RANDOM pour améliorer la sécurité en ajoutant de l’aléatoire pour les allocations. Cela permet de rendre moins prédictibles ces dernières, et ainsi de compliquer la tâche d’exploitation des débordements de pile.

ARM Nouveaux systèmes monopuces gérés :
  • Oxford Semiconductor OX810SE (comme discuté ici) ;
  • Qualcomm IPQ4019.
Nouvelles cartes gérées :
  • Aspeed ast2500/ast2400 ;
  • TI dra72-evm rev C (SR2.0) ;
  • Western Digital My Book World Edition (basé sur OX810SE) ;
  • Amazon Kindle Fire (première génération) codename kc1 ;
  • Arrow Electronics DB600c (basé sur Qualcomm APQ8064) ;
  • Embest MarS, Ka-Ro MB7 + modules + TXUL, pico-hobbit (basés sur i.MX6) ;
  • Nitrogen6_MAX QP / Nitrogen6_SoloX (basés sur i.MX6) ;
  • Baltos IR2110/IR3220 ;
  • ICEv2 basé sur AM33X ;
  • MPS2 AN385/AN386/AN399/AN400 ;
  • Linksys EA4200v2/EA4500 ;
  • KuroBox-Pro (basé sur orion5x) ;
  • MiQi de mqmaker (basé sur Rockchip) ;
  • Samtec VIN|ING ;
  • tablettes Dserve DSRV9703C, Difrence DIT4350, Colorfly e708 q1, Polaroid MID2809PXE4 (basés sur systèmes monopuces Allwinner) ;
  • carte de développement ZII ;
  • IPQ4019 DK01 ;
  • Google Pixel C.
Allwinner Rockchip Amlogic Samsung
  • pilote générique Exynos de gestion de la fréquence du bus ;
  • prise en charge du ARTIK5 ;
  • ajout d’un régulateur pour la eMMC/SD des cartes ODOID XU3 et XU4 ;
  • corrections et nettoyages divers.
Qualcomm
  • ajout de la gestion du BQ27541 du Nexus 7 ;
  • meilleure prise en charge du 96Boards HiKey (Kirin 620) dans le DT ;
  • ajout du Qualcomm IPQ4019 (« Internet processor ») ;
  • gestion des cartes Arrow DragonBoard 600c de 96boards (Snapdragon 600).
Mediatek
  • pilotes graphiques pour Mediatek MT8173 (DRM).
MIPS
  • ajout de la gestion de la délocalisation du noyau, permettant ainsi de passer outre la limitation de 1 Mio ;
  • ajout du KASLR grâce à la gestion de la délocalisation ;
  • ajout des compteurs de performances (perf counters) ;
  • gestion de la ligne de commande étendue ;
  • ajout de la prise en charge de DPT-Module, Dragino MS14 (Dragino 2) et Onion Omega ;
  • ajout de la gestion de BCM6358, Whirlwind (BMIPS5200) et BCM63268 ;
  • ajout d’un essai préliminaire pour les Loongson 3A ;
  • ajout de la prise en charge des CN73xx, CN75xx et CN78xx ;
  • ajout de la prise en charge du D-Link DSR-1000N ;
  • ajout de la détection du DSP v3, et du MIPSr6 (processeur virtuel) ;
  • gestion de l’envoi de SIG_SYS à l’espace utilisateur 32 bits depuis un noyau 64 bits.
Développement USB/IP

Ce projet déjà mature, est enfin intégré comme système à part entière dans le noyau. Il permet de partager de manière générique des périphériques USB à travers le réseau. Techniquement, cela n’est qu’une encapsulation des trames d’entrées‐sorties dans des trames TCP. Il y a deux parties à ce projet, une côté serveur qui permet de mettre à disposition les périphériques USB connectés à l’hôte, et l’autre, côté client, qui permet de se connecter au serveur et de connecter des périphériques USB comme s’ils étaient en accès direct. Si le serveur est pour le moment réservé à Linux, le client est également disponible pour Windows, permettant ainsi à ce dernier l’accès à des périphériques présentés par le serveur.

Cette fonction vient avec deux outils : usbip et son daemon, usbipd :

  • usbip attach remote=host ;
  • usbip detach port=port ;
  • bind --busid=<busid> ;
  • unbind --busid=<busid> ;
  • list --remote=host ;
  • list --local ;
Hist Trigger

Cette nouvelle fonctionnalité de traçage permet d’ajouter la création d’histogrammes de manière efficiente et personnalisée. Le blog de Brendan Gregg explique bien cette fonctionnalité et son fonctionnement.

Le répertoire /sys/kernel/debug/tracing/events/ contient un ensemble d’éléments qu’il est possible de tracer :

  • probe_libc/malloc/ va par exemple permettre de tracer la fonction malloc() ;
  • raw_syscalls/sys_enter/ va, par exemple, permettre de tracer l’ensemble des appels système.

Pour activer les histogrammes sur ces exemples, positionner le déclancheur correctement, hist:key=common_pid.execname, par exemple. Cela permet pour la durée du traçage, de récupérer le nombre d’appels pour chaque numéro de processus et nom d’exécutable.

Cette fonction, qui a pour nom CONFIG_HIST_TRIGGERS n’est pas activée par défaut.

Pilotes graphique libres AMDGPU

Ajout de la prise en charge des processeurs graphiques Polaris dans amdgpu, notamment avec la prise en charge de sa première implémentation, la carte Radeon RX 480.
cf. http://www.phoronix.com/scan.php?page=news_item&px=AMDGPU-Linux-4.7-Is-Big.

Réseau Pilotes

Le pilote w5100 prend désormais en charge le mode série (SPI) pour les cartes réseau basées sur les contrôleurs Wiznet W5100 et W5500.

Bufferbloat

Le bufferbloat est défini comme l’excès de mise en tampon (buffering) des paquets, ce qui conduit à de fortes latences, une surconsommation processeur et un faible débit réseau.
La méthode fq_codel_drop() n’est pas optimale, elle effectue un balayage sur 4 Kio pour trouver un fat flow au lieu de supprimer un simple paquet. Sur une charge engorgée (flood) de 900 Mbits, nous passons d’une consommation processeur de 88 % à moins de 10 %.

Autre Partial segment offloading explications

L’idée est d’élargir la GSO à une gamme plus large de périphériques, d’avoir des en‐têtes fixes et de faire en sorte que le matériel gère seulement la segmentation de l’en‐tête interne.

TCP préemptible

La couche réseau TCP est maintenant préemptible, ce qui permet de la mettre en pause sur l’opération potentiellement bloquante et de récupérer du temps processeur, pour essayer de lutter contre les « pics de latence fous ».

RPS et RFS

Le protocole Stream Control Transmission Protocol (SCTP) prend en charge le RPS (Receive Packet Steering) et RFS (Receive Flow Steering) pour améliorer la montée en charge sur plusieurs processeurs.

Socket

Optimisation du bit ASYNC pour les sockets.

Sécurité LoadPin

Un nouveau module de sécurité a été introduit dans cette version. Ce dernier permet de restreindre la provenance des fichiers chargés par le noyau (micrologiciels, modules…). Il s’assure que tous les modules viennent d’un même et unique système de fichiers et que ce dernier est intègre et inaltérable.

Clefs de chiffrement
  • ajout de fonction en espace utilisateur pour l’accès aux calculs de Diffie‐Hellman via l’appel système KEYCTL_DH_COMPUTE ;
  • ajout d’aide pour une gestion simplifiée des clefs, avec une plus grande facilité de définition des règles de vérification ;
  • les grandes clefs sont désormais stockées avec chiffrement.
Divers
  • ajout d’un champ tty à l’événement d’ouverture de session (LOGIN). Cela permet ainsi de savoir depuis quel terminal la tentative d’ouverture de session est effectuée.
Systèmes de fichiers Recherche parallèle dans les dossiers

Cette optimisation permet d’accélérer la recherche de tâches concurrentes pour trouver plusieurs dossiers sur le disque ; les performances et la consommation processeur devraient être meilleures sous forte charge (passage de mutex à des sémaphores lecture‐écriture). La plupart des systèmes de fichiers sont concernés.

ext4

Pas mal de corrections dont un crash potentiel quand un fichier journalisé a une mauvaise allocation différée et qu’elle n’a pas encore été écrite.
Correction de problèmes lors du manque d’espace disque.

Correction pour DAX (direct access : supprime la copie supplémentaire en lisant et écrivant directement dans le périphérique de stockage).

La lecture de grands répertoires avec de nombreux blocs vides prenait du temps et agaçait avec les longs temps d’attente. Désormais, l’utilisateur ou l’ordonnanceur pourront interrompre le processus de lecture.

F2FS

Diverses corrections de sécurité, de bogues et améliorations des performances (surtout du côté des allocations).

XFS

Correction, nettoyage, améliorations mineures (cf. Système de blocs ci‐dessous).

Btrfs

Beaucoup de corrections, surtout pour les différents systèmes de synchronisation qui permettent aux applications d’être sûres que l’écriture a été faite sur le disque.

La compatibilité avec OverlayFS est enfin réalisée, grâce à la prise en charge des opérations de renommage RENAME_EXCHANGE et RENAME_WHITEOUT.

NFS

Depuis le noyau 4.5, la copie de fichiers par morceau (copy_file_range) était prise en charge.
Désormais, la copie d’un fichier en entier sera prise en charge directement par le noyau, mais de façon synchrone seulement, a priori.

Système de blocs

Dans le système de blocs, l’ajout de async discard permet de ne plus bloquer les autres couches et de travailler pendant ce temps‐là.
Après adaptation des systèmes de fichiers pour l’exploitation de cette fonctionnalité, les performances devraient être meilleures. Pour l’instant, seuls XFS et le pilote NVMe en profitent.

Des corrections, nettoyages d’interface et quelques optimisations ont été faits. Maintenant le blk-mq (Device Mapper multiple queue) se fait sans verrou, ce qui permet une meilleure exploitation en multiprocesseur, surtout dans le cas de processeurs sur des puces différentes (multi‐socket), le gain en cas de multiples cœurs sur une même puce étant moindre.

Virtualisation KVM

Création d’un répertoire debugfs et des fichiers stat pour chaque machine virtuelle, nommés d’après leur numéro de processus (PID). Ce répertoire contient la même chose que le répertoire KVM précédent, mais avec des stats spécifiques pour chaque machine virtuelle.

virtio

Ajout d’outils de mesures.

Le bilan en chiffres Le noyau

Pour le noyau, l’évolution moyenne du nombre de lignes de code par RC est globalement stable pour cette version 4.7, comme le montre le graphique suivant :

Si on regarde l’évolution du nombre de lignes de code par version, on constate que le noyau 4.7 est dans la moyenne de la série des 4.x :

Nombre de commits Git par utilisateur :

Nombre de lignes modifiées par utilisateur :

Origine des contributions :

Origine des contributeurs du noyau :

La dépêche

La rédaction de cette dépêche s’est étendue sur quatre mois (du 14 mai au 19 août), avec plus de 410 éditions et 25 contributeurs).
N. D. M. : en fait plus de 500 éditions, jusqu’au 28 septembre.

Appel à volontaires

Cette dépêche est rédigée par plusieurs contributeurs, dont voici la répartition :

Mainteneur Contributeur(s) La phase de test Aucun Arch Romain Perier Tiwaz Développeurs Romain Perier Tiwaz Pilotes graphiques libres Martin Peres Réseau Aucun BRULE Herman (alpha_one_x86) Systèmes de fichiers Aucun BRULE Herman (alpha_one_x86) Sécurité Aucun Virtualisation Xavier Claude Édition générale Aucun M5oul, jcr83, Davy Defaud

Un peu de vocabulaire :

  • le mainteneur d’une section de la dépêche est responsable de l’organisation et du contenu de sa partie, il s’engage également à l’être dans le temps jusqu’à ce qu’il accepte de se faire remplacer ;
  • un contributeur est une personne qui a participé à la rédaction d’une partie d’une section de la dépêche, sans aucune forme d’engagement pour le futur.

Malgré cette équipe importante, beaucoup de modifications n’ont pas pu être expliquées par manque de temps et de volontaires.

Nous sommes particulièrement à la recherche de mainteneurs pour les sections Systèmes de fichiers et Réseau, les précédents n’ayant pas donné de signes de vie pendant la rédaction des dernières dépêches.

Si vous aimez ces dépêches et suivez tout ou partie de l’évolution technique du noyau, veuillez contribuer dans votre domaine d’expertise. C’est un travail important et très gratifiant qui permet aussi de s’améliorer. Il n’est pas nécessaire d’écrire du texte pour aider, simplement lister les commits intéressants dans une section aide déjà les rédacteurs à ne pas passer à côté des nouveautés. Essayons d’augmenter la couverture sur les modifications du noyau !

Télécharger ce contenu au format Epub

Lire les commentaires

Odoo Experience: lancement de Odoo 10

28 septembre, 2016 - 15:11

Le mercredi 5 octobre 2016 débute l'événement Odoo Experience à Louvain-la-Neuve, Belgique. La nouvelle version 10 du logiciel de gestion Odoo y sera présentée.

Vous y trouverez 180 conférences, ateliers et formations gratuites pendant 3 jours à destination des développeurs (Python, Odoo, JavaScript), graphistes (pour le constructeur de site web Odoo) et chefs d'entreprises.

Les principales améliorations d'Odoo 10 comprennent : une refonte du créateur de sites web et de boutiques en ligne, une nouvelle application de gestion de la fabrication pour les industries, une nouvelle application helpdesk, une améliorations de la gestion des notes de frais et de la comptabilité francaise (dont un module FEC).

Il sera aussi présenté Odoo Studio, un outil permettant de créer des applications webs complètes en quelques clics.

Télécharger ce contenu au format Epub

Lire les commentaires

Sortie de Proxmox VE 4.3

28 septembre, 2016 - 09:54

Proxmox Server Solutions GmbH vient d’annoncer la sortie de Proxmox Virtual Environment 4.3. Proxmox VE est une solution de virtualisation libre complète qui permet de gérer des machines virtuelles KVM et des conteneurs LXC sur une même machine, via une interface Web et qui permet de créer facilement des grappes de serveurs (clusters) à haute disponibilité, tout en s’intégrant à de nombreux stockages externes.

Cette version s’accompagne d’un manuel de l’utilisateur entièrement nouveau, écrit par les développeurs de Proxmox. Le manuel de l’utilisateur est consultable en tant que document indépendant au format ePub, HTML ou PDF, et est également intégré dans l’interface graphique via une aide contextuelle présente dans les boîtes de dialogue de l’interface Web.

À côté du manuel de l’utilisateur, le wiki Proxmox VE est toujours disponible et ouvert aux contributeurs de la communauté Proxmox, qui y documentent leur installations et astuces diverses.

La réorganisation de l’interface graphique sous forme de menus verticaux est destinée à regrouper les éléments de l’interface graphique de façon plus logique, et continue les efforts précédents pour rendre toujours plus facile d’accès la gestion des machines virtuelles et des conteneurs.

Autres nouveautés de l’interface graphique :

  • nouveau tableau de bord pour la supervision des serveurs, conteneurs et machines virtuelles. Grâce à des seuils en couleur, l’administrateur système peut rapidement évaluer la charge système en temps réel ;
  • gestion des disques : l’état S.M.A.R.T. des disques du serveur est désormais directement accessible dans l’interface graphique ;
  • paramètres par défaut pour les machines virtuelles (VM) : lors de la création d’une machine virtuelle, l’assistant de création propose désormais des paramètres optimisés pour les VM GNU/Linux. Par exemple, toute nouvelle VM GNU/Linux dispose dorénavant automatiquement d’un contrôleur VirtIO SCSI ;
  • ouverture de la console système via double clic pour chaque machine virtuelle ou conteneur (autorisez d’abord les fenêtres surgissantes [popups] dans votre navigateur Web) ;
  • nouveau champ de recherche global dans l’interface graphique, accessible via le raccourci clavier Ctrl + Maj + F.

De nombreux bogues ont été par ailleurs corrigés dans la gestion des instantanés (snapshots) et des retours en arrière (rollbacks) pour le stockage lvm-thin introduit dans Proxmox VE 4.2. L’image ISO d’installation de Proxmox VE est basée sur Debian 8.6, combinée avec le noyau Linux 4.4 à support à long terme issu d’Ubuntu 16.04. Il est aussi possible d’installer Proxmox VE par dessus une installation Debian préexistante.

Télécharger ce contenu au format Epub

Lire les commentaires