Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
Hier — 17 septembre 2024Flux principal

Parcours libriste avec lareinedeselfes — « Libre à vous ! » du 3 septembre — Podcasts et références

13 septembre 2024 à 10:21

Deux cent dix-huitième émission « Libre à vous ! » de l’April. Podcast et programme :

  • sujet principal : Parcours libriste avec lareinedeselfes
  • chronique F/H/X de Florence Chabanois sur le thème « Formulations excluantes et invisibilisantes »
  • chronique À la rencontre du libre de Julie Chaumard sur le thème « Les-Tilleuls.coop - Une coopérative basée sur le logiciel libre »

Rendez‐vous en direct chaque mardi de 15 h 30 à 17 h sur 93,1 MHz en Île‐de‐France. L’émission est diffusée simultanément sur le site Web de la radio Cause Commune. Vous pouvez nous laisser un message sur le répondeur de la radio : pour réagir à l’un des sujets de l’émission, pour partager un témoignage, vos idées, vos suggestions, vos encouragements ou pour nous poser une question. Le numéro du répondeur : +33 9 72 51 55 46.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Recommandations de lecture: RE2020, CSTB, STD, ACV, FDES, INIES, HQE, coup de gueule et FOSS

En passant dernièrement dans l’espace de rédaction de LinuxFr.org, au sujet de FreeCad 1.0 (dépêche en cours de rédaction, mais la RC1 est pour dans quelques jours), un intervenant parle de Gestion du Cycle de Vie d'un Produit.

Dans le domaine du bâtiment / BTP, on est en plein dedans et depuis quelque temps déjà. Effectivement, un logiciel libre comme FreeCad pourrait, à priori, tout à fait trouver sa place dans ce domaine, mais les obstacles sont nombreux et pour certains, très difficiles à surmonter.

Je vous propose un petit tour parmi ces acronymes pour vous en convaincre.

Et en commençant par un petit rappel à la loi si vous ne suivez pas l’actualité :)

    Sommaire

    La RE2020 est en vigueur

    RE2020

    C’est l'arrêté du 4 août 2021 qui a définitivement activé la Réglementation Environnementale 2020.

    Depuis le 1ᵉʳ janvier 2022, tous les nouveaux projets de construction de bâtiment doivent être conformes à la RE2020. Elle reprend dans son volet « Énergie » l’esprit de la Réglementation Thermique RT2012 (et des Réglementations Thermiques précédentes, RT2008, RT2004) en vigueur jusqu’à cette date. Elle y ajoute à présent un volet « bilan Carbone » sur le cycle de vie de l’ouvrage (50 ans minimum).

    Je vous recommande ce guide plutôt complet de 93 pages (à ouvrir et à garder sous le coude pour la suite ;).

    Remarque: Ce document (2.2 page 26/93) contextualise la RE2020 par rapport à la précédente RT2012.
    L’objectif initial des RT était (et est toujours) de réduire les pertes d’énergie entre l’intérieur et l’extérieur. Une bonne idée, tout le monde en convient.
    Les RT2004 et RT2008 étaient plutôt « prescriptives » (« obligation de moyens » dans le jargon du BTP) tandis que la RT2012 impose une « obligation de résultats » suivant des critères qui lui sont propres.

    Sur le site du Ministère du Développement durable, on peut trouver énormément d’infos utiles et ces liens spécifiques à la suite du propos :

    Bien que le mot logiciel ait attisé votre curiosité, parlons de la référence en matière de bâtiment en France: le CSTB.

    Le Centre Scientifique et Technique du Bâtiment (CSTB)

    Présentation

    Le Centre Scientifique et Technique du Bâtiment a été créé en 1947 et fonctionne aujourd’hui sous le statut d’Établissement Public à caractère Industriel et Commercial (EPIC). Son existence est entérinée dans le Code de la Construction et de l’Habitat, (en particulier, ses missions dans l’article 121-1)

    I.
    - réaliser ou faire réaliser des recherches touchant à la technique, l’économie, l’environnement, la performance énergétique, la qualité sanitaire, la sociologie et, plus largement, au développement durable dans la construction et l’habitat ;
    - réaliser, pour le compte des services du ministre chargé de la construction et des autres ministères, des études contribuant à la définition, la mise en œuvre ou l’évaluation des politiques publiques dans le champ de la construction et de l’habitat. En particulier, il participe aux travaux d’une commission, constituée auprès du ministre chargé de la construction par arrêté de ce ministre, et chargée de formuler les avis techniques et les documents techniques d’application sur des procédés, matériaux, éléments, ou équipements utilisés dans la construction, lorsque leur nouveauté ou celle de l’emploi qui en est fait nécessite une expertise collective pour en apprécier l’aptitude à l’emploi.

    Il contribue à la diffusion et à la valorisation des connaissances scientifiques et techniques en matière d’habitation et de construction durable produites dans le cadre de ses recherches et études, par des publications et toutes autres mesures appropriées, dont la normalisation. Il participe également, en liaison avec les services intéressés et sous le contrôle du ministre chargé de la construction, aux activités de coopération technique internationale concernant l’habitation et la construction. Il peut se voir confier toutes missions ayant trait à ces mêmes matières dans le domaine international.

    II. - Parallèlement à ses missions d’intérêt général décrites à l’article L. 121-1, le Centre scientifique et technique du bâtiment apporte son concours aux organismes, groupements, collectivités et personnes physiques ou morales qui le sollicitent pour des missions se rattachant à l’objet de ses activités, notamment par la réalisation de prestations d’études et de conseil, d’essais, et la délivrance de certifications.

    C’est donc un acteur incontournable dans le domaine de la construction tant son champ d’intervention est vaste.

    En particulier, en ce qui nous intéresse, il lui revient la responsabilité d’évaluer la conformité d’une application destinée à faire une étude RE2020.
    Cet audit par le CSTB dure de 3 à 7 mois et se réalise suivant des règles.

    En voici un extrait (page 14/16):

    12 TARIFS
    Tarif pour l’évaluation d’un logiciel thermique : 5 700 € HT, dont 700 € HT de frais administratifs.
    Tarif pour l’évaluation d’un logiciel environnement : 4 000 € HT

    Ce n’est pas donné, mais supposons que je sois riche et venons-en enfin à nos logiciels.

    Calculs « Partie énergie »

    C’est peut-être la partie la plus simple à priori puisqu’il n’y a pas de moteur de calcul à programmer. Il n’y en a qu’un seul et il est fourni par le CSTB en version compilée appliquant les règles dites « Th-BCE 2020 ».

    Cela tombe bien car l’annexe III le pavé décrivant les modalités du calcul fait plus de 1800 pages.

    La figure 1 sur la page 5 du règlement d’évaluation (voir ci-dessus) présente l’architecture globale d’une application. Elle consiste à arranger des données synthétiques sur l’ouvrage, dans un format XML en entrée du moteur et à présenter convenablement les synthèses des résultats en sortie.

    Ainsi, toutes les applications « pro » ne différent que par leur interface utilisateur. FreeCad est tout à fait adapté à agréger les données pour générer le XML attendu en entrée par le moteur de calcul. Le module « Schedule » de l’atelier « BIM » pourrait être une bonne base de départ.

    Mais il n’y a ni accès direct à ce moteur de calcul (distribué en tant que *.dll semble-t-il !), ni a sa documentation.

    Toutefois, le CSTB met gratuitement à disposition l’application (sous Windows donc) COMETH. Il faut ouvrir cette plaquette PDF de 2 pages pour trouver l’adresse mél à qui écrire pour savoir comment accéder à l’application.

    Th-BCE != STD

    À noter que les règles Th-BCE utilisées par le moteur de calcul et présentées dans l’annexe III demandent la saisie d’un nombre assez conséquent d’informations. Pourtant, à quelques modifications près, rien de nouveau sous le soleil, car ce sont sensiblement les mêmes que pour la RT2012.

    Elles permettent de qualifier, après un passage à la moulinette logicielle, la performance de l’enveloppe du bâtiment (grosso modo: isolation+fenêtres/portes+étanchéité à l’air) avec un Bbio, une consommation en énergie avec un Cep, etc qui devront respecter certains seuils (voir 4.1 page 49/93 du guide RE2020) pour avoir le certificat.

    C’est une méthode approchée qui n’a rien d’une Simulation Thermique Dynamique.

    Ainsi, concernant les scénarios d’occupation, pour les règles Th-BCE (voir page 10/93 du guide RE2020)

    …, il s’agit toujours de scénarios conventionnels et de profils moyens, de sorte que les résultats ne peuvent être utilisés comme outil de prédiction des consommations.

    Une STD prendra en compte les « vrais cas d’usage » en fonction de scénarios bien plus précis (comme la variation journalière et saisonnière de la fréquentation, de l’utilisation des équipements, des apports naturels solaires etc).

    Pour cela, le CSTB vend le logiciel TRNSYS v18 en 1ʳᵉ installation à 4 500 € HT.

    Calculs « partie Carbone »

    C’est un grand changement réglementaire qu’introduit la RE2020. L’objectif affiché par le législateur est celui de la lutte contre le réchauffement climatique et pour cela considère que le « bilan carbone sur le cycle de vie » est un bon indicateur.
    En vérité, le seul terme « Carbone » est un peu réducteur. Si le « bilan Carbone » est bien l’unique critère environnemental qu’il faudra respecter selon les termes de la RE2020, l’étude porte en elle-même sur 36 données environnementales (voir page 39/93 du guide RE2020):

    Le calcul réglementaire réalise donc simultanément le calcul de 36 indicateurs
    correspondant aux 36 indicateurs inclus dans les données environnementales

    NDR: tout est en place pour une prise en compte ultérieure par le législateur d’autres critères environnementaux (eutrophisation des sols, impacts sur l’eau…)

    Le calcul est on ne peut plus simple: récupérer les quantités des différents types de produits et les multiplier par les données environnementales correspondantes (à peu de choses près, voir illustration 12 page 56/93 du guide RE2020).

    Avant de quitter brièvement le CSTB et de partir à la recherche de ces « données environnementales », je signale que son logiciel COMENV fait ces calculs d’impact « Carbone ». Il faut ouvrir cette plaquette PDF de 2 pages pour savoir qu’il vous en coûtera 100 € HT/an et pour trouver l'adresse du formulaire de contact (mais il y a une erreur de certificat) !

    L’Analyse du Cycle de Vie (ACV)

    Si vous avez lu Gestion du Cycle de Vie d’un Produit, vous n’apprendrez pas grand-chose de plus en lisant la page Wikipedia pour l'Analyse du Cycle de Vie.

    Il s’agit du même concept: évaluer suivant différents indicateurs l’impact environnemental d’un produit sur l’ensemble de sa durée de vie.

    Les grandes étapes du cycle de vie d’un produit

    Dans notre cas il faut distinguer deux types d’ACV.

    ACV Globale

    C’est ce que fait la RE2020 (voir 4.2 page 53/93 du guide) en ventilant l’impact « carbone » sur les différentes étapes du cycle de vie de l’ouvrage et sur des indicateurs Ic.. hybrides décrivant la part des composants, du chantier, de l’énergie en exploitation, de l’eau en exploitation (page 39/93).

    ACV Unitaire

    Comme on l’a vu, la RE2020 s’appuie sur des quantités (que FreeCad pourrait provisionner) et des données environnementales unitaires pour un produit donné (ou d’un type, d’une gamme). Par exemple 1 m³ de béton, 1 m² de placo BA13, 1 kg de colle à placo, etc. Dans le jargon de l’ACV, c’est une UF, Unité Fonctionnelle.

    Ces données environnementales, dans le cadre d’une étude RE2020 proviennent de plusieurs sources tel que précisé dans cette note explicative page 3/10.

    L’esprit est que si le fabricant n’a pas fourni de données environnementales pour son produit, des valeurs par défaut ou forfaitaires sont prises en compte dans le calcul. Ces valeurs sont volontairement défavorables pour inciter les acteurs de la fourniture de « composants » à publier des FDES.
    (voir également page 43/93 et l’organigramme page 44/93 du guide RE2020)

    Les FDES

    Les Fiches de Déclaration Environnementale et Sanitaire sont donc la base d’une étude RE2020 sur son aspect environnemental.

    Pour plus d’info sur les FDES

    Elles doivent répondre aux exigences de la Norme NF EN 15804+A2 (Contribution des ouvrages de construction au développement durable - Déclarations environnementales sur les produits - Règles régissant les catégories de produits de construction), à retrouver sur la boutique de l’AFNOR.
    Oui, ce n’est pas donné pour à peu près 25 pages franchement pertinentes sur un total de 51.

    La Loi n’impose pas aux fabricants des produits utilisés dans une opération de construction à publier une FDES mais, comme on l’a vu, cherche à les y inciter.

    Pour faire établir une FDES, il faut passer par un organisme agréé comme le CSTB: https://www.cstb.fr/nos-offres/toutes-nos-offres/declaration-environnementale-fdes

    Le ticket d’entrée est à partir de 6 500 € HT d’après cette plaquette PDF.

    Exemple de FDES pour un complexe plaque de plâtre 13 mm + isolant de 140 mm:
    https://www.base-inies.fr/iniesV4/dist/infos-produit/40016

    Les 36 données environnementales sont dans l’onglet « indicateurs » et sont ordonnées de la manière suivante:

    • en catégories: Impacts environnementaux, Consommation des ressources, Déchets, Flux sortants, Stockage du carbone
    • et chaque indicateur est détaillé pour chaque étape de son cycle de vie.

    Le lecteur perspicace aura relevé dans les adresses la chaîne de caractères inies, alors allons-y.

    L’INIES

    La base de données environnementales

    Appelée INIES, elle permet de consulter les FDES. Elle est déclarée en accès libre. https://www.base-inies.fr/ vous renvoie l’erreur 403 de l’Apache « Tomcat » pas content, il faut aller librement sur https://www.base-inies.fr/iniesV4/dist/consultation.html .

    Pas mal de changements depuis mes dernières visites il y a 10 ans au moins.

    • l’interface s’est modernisée (javascript) pour le meilleur. Ça marche très bien.
    • il y a beaucoup plus de produits référencés.
    • il y a maintenant des « configurateurs »
    • mais malgré tout, en connaissant la diversité de l’offre, il reste plein de trous dans la raquette: https://www.inies.fr/la-re2020-booster-de-la-production-des-fdes-et-des-pep/ (fin 2023: 3630 FDES et 961 PEP seulement)
    • et puis comment utiliser tout ça dans le cadre de l’ACV Globale pour pouvoir vérifier la conformité à la RE2020 ?

    Le webservice de l’INIES

    Par un service web bien entendu: https://www.inies.fr/programmes-et-services/le-webservice-des-donnees-numerisees/

    Il faut d’abord demander l’accès au service: https://www.inies.fr/ressource/formulaire-de-demande-dacces-au-webservice/

    Dans ce formulaire, le cas du logiciel libre est envisagé.
    Mais il faudra passer l’examen de la demande par le CSIB (d’après les CGV):

    Le Conseil de surveillance de la base INIES (CSIB) : désigne les membres constitutifs de ce comité qui définissent la politique générale en matière de contenu de la base INIES et approuvent les demandes d’accès au webservice.

    Plus d’informations sur la base INIES, son utilisation (stats et logiciels qui l’utilisent), les configurateurs de FDES, les PEP et l’ICV dans cette présentation synthétique de 35 pages.

    L’organisme INIES

    Organisation INIES

    Source: https://www.inies.fr/inies-et-ses-donnees/qui-sommes-nous/

    l’Alliance HQE-GBC a un rôle central aux côtés de l’AFNOR, du CSTB, de l’ADEME, de la FFB, de la CAPEB…

    HQE

    Logo marque HQE

    Source: https://www.hqegbc.org/qui-sommes-nous-alliance-hqe-gbc/usage-de-la-marque-hqe/

    Obtenir un label HQE est une démarche volontaire de la part du Maître d’Ouvrage (celui qui paye). Cela nécessite une certification délivrée par l’alliance HQE-GBC.

    J’en ai entendu parler (par la presse spécialisée) quand les premières certifications ont eu lieu vers 2005/2006

    https://www.hqegbc.org/qui-sommes-nous-alliance-hqe-gbc/notre-histoire-alliance-hqe-gbc/

    Quand soudain, patatras,

    Le coup de gueule de Rudy Riccioti

    Le bonhomme

    Résidence Argo

    Résidence Argo, Source: https://rudyricciotti.com/

    RR (son acronyme ;) est un architecte plutôt connu, qui aime le béton et a le verbe haut des gens du midi. Un sacré numéro.

    Comme d’autres qui ne sont pas du tout débordés dans leur vie de tous les jours (Ministre, moule de LinuxFr.org, etc), il aime aussi écrire: 14 bouquins pour sa part (!) dont

    La trilogie « HQE »

    Les liens sont vers le site Babelio

    1. HQE Transbordeurs (22/03/2007)
    2. HQE les renards du temple Al Dante (21/11/2009)
    3. HQE - La HQE brille comme ses initiales sur la chevalière au doigt Le Gac Press (25/04/2013) Le Gac Press (25/04/2013)

    Citations de Babelio aussi:

    « La HQE, véritable privilège des pays riches de niquer davantage la nature en paraissant vertueux. »
    R.R., conférence 12.07.27, Palembang

    « Le sigle le plus démagogue jamais inventé protège ses initiales, confirmant là ce désir de pouvoir sur un territoire d’intérêt public… »

    Ce que j’en pense

    C’est un pamphlet pas bien épais. Le numéro 2 est une version revue et légèrement augmentée du 1 (pour répondre à la polémique sans doute ;) et le troisième reprend les deux premiers en y ajoutant un épilogue.
    Comme conseil de lecture je dirais de prendre le trois.

    Le ton est incisif et rentre dedans jusqu’à parfois paraître outrancier. Mais sur le fond, l’essentiel du propos me semblait pertinent à l’époque: HQE, un lobby technico-scientifico-économique a mis la main sur une usine à gaz (qu’il va construire et imposer) qui demande à « numériser » l’acte de construire et à en décomposer le moindre élément constitutif (FDES, ACV).

    J’y ai vu « pff, encore plus d’informatique quoi ». La RT2012 (obligatoire contrairement à une labellisation HQE) étant dans les tuyaux à cette époque-là, il y avait déjà de quoi faire. RR y voit un appauvrissement des savoirs et de la créativité par des règles aux origines douteuses qui produiront des solutions technico-économiques toutes faites pour des résultats médiocres en tous points.

    RR a raison

    Source: https://qualiteconstruction.com/ressource/batiment/decollement-ite-renovation/

    Conseil de lecture: N’hésitez pas à visiter ce site, il regorge d’excellentes fiches techniques.

    Sur ce point, il est vrai que l’on voit pas mal d’immeubles de 10/15 ans d’âge dans un état assez pitoyable. C’est plutôt rageant.

    Ce qui est paradoxal dans le propos de RR, c’est que l’industrie du béton (qui pèse très lourd), son matériau de prédilection, a été en pointe sur ce sujet. Les premières FDES en étaient toutes issues (parpaing, bordure de trottoir, prédalle…) suivie par les plaques de plâtre et les isolants.
    Pour le premier concerné, le bilan carbone est au centre de ses préoccupations au vu des quantités astronomiques mises en œuvre et du mode de production du ciment, très énergivore. Être au plus près des faiseurs de lois était une décision naturelle. Avec ses gros moyens elle a pu s’adapter sans trop de mal à cette nouvelle donne.

    Aujourd’hui de quelques adhérents à HQE (c’est une association, rapport moral et activité 2023 en date de juin 2024) le panel s’est bien diversifié et on y trouve tous les aspects du métier.

    La base INIES s’est bien diversifiée et (cela m’intéresse) j’ai eu la bonne surprise de trouver cette FDES:

    https://www.base-inies.fr/iniesV4/dist/consultation.html?id=28898

    Mur en Adobe (Terre crue + paille + granulats éventuels)

    UF: Assurer la fonction de mur porteur sur 1 m² de paroi, pour une épaisseur comprise entre 14,5 et 35 cm, une conductivité thermique comprise entre 0,4 et 0,6, et une durée de vie de référence (DVR) de 100 ans.

    Cette FDES (que je vous recommande de lire si le(s) sujet(s) vous intéress(ent), elle est dans l’onglet « Documents ») est générique pour toute opération mettant en œuvre cette technique en France. Ce qui est remarquable.
    Elle est à l’initiative de la Confédération Nationale de Construction en Terre Crue.

    Une FDES doit être renouvelée et affinée, ils continuent donc de collecter des données relatives aux chantiers auprès des acteurs de la filière

    Lien vers le questionnaire

    Bravo les gars, avec peu de moyens ils ont fait rentrer une méthode de construction ancestrale et à l’impact carbone très faible dans l’ère de la numérisation à tout-va.

    Sur ces bonnes nouvelles, passons à

    La suite et la fin

    Formats ouverts IFC, BCF, le BIM, les BET, la MOE, et autres acronymes

    Dans une prochaine dépêche sans doute. On y retrouvera FreeCad. Il n’a pas dit son dernier mot.

    Et le logiciel pour faire l’étude et émettre des attestations RE2020 ?

    Aux problèmes d’accès aux ressources et services qui ont été abordés, il faut ajouter que les cahiers des charges sont bien entendu plus touffus que ce qui a été présenté et surtout, que la RE2020 évolue régulièrement. Par exemple ce qui y est intégré au fur et à mesure au nom du titre V (des systèmes: VMC, PAC… 66 à ce jour, chacun avec sa façon d’être pris en charge par la RE2020 pour calculer les différents Ic..)

    https://rt-re-batiment.developpement-durable.gouv.fr/titre-v-r322.html

    Question bonus

    https://mdegd.dimn-cstb.fr/tickets

    Il y a un lien avec le propos ci-dessus, lequel ?

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    À partir d’avant-hierFlux principal

    24 ans de libcurl

    Curl est un outil en ligne de commande destiné à récupérer le contenu d’une ressource accessible par un réseau informatique et gérant de nombreux protocoles.

    Curl est un outil essentiel pour de nombreux usages, pris en charge par une gamme très large de systèmes d’exploitation, d’architectures matérielles, de l’objet connecté à l’embarqué spatial en passant par l’informatique classique ou les consoles de jeux. Il évolue rapidement et fréquemment, voir par exemple l’arrivée prochaine de HTTP3 pour curl dans Debian unstable (avec le backend gnutls). Son domaine d’utilisation pourrait encore s’étendre avec l’apparition de wcurl dans Debian et bientôt dans le monde entier ?

    Il y a 24 ans, une division du code entre une interface ligne de commande et une bibliothèque a été faite.

    (Cette dépêche est principalement basée sur l’annonce anglophone par Daniel Stenberg, auteur principal de curl et libcurl ; dépêche rédigée sur un téléphone embarquant curl 7.80, pas vraiment la dernière version…).

    La première version de libcurl, baptisée 7.1, date du 7 août 2000. La version de curl précédente, la 6.5.2, pas encore séparée entre une interface ligne de commande et une bibliothèque. Il s’agit de l’écart le plus long entre deux versions de curl. La création de la bibliothèque a été très largement réalisée par Daniel Stenberg seul.

    Il décrit son choix de division ainsi : c'était juste une intuition et une conjecture. Je ne savais pas. Je n’avais pas fait de recherches sur cela ou autre chose. Je me suis juste lancé en me disant qu’on verrait plus tard si j’avais raison ou tort.

    Le nom de la bibliothèque a été choisi faute d’une meilleure idée. L’API a été définie comme étant bas niveau (on peut toujours ajouter une API de plus haut niveau par-dessus), en observant ioctl(), fcntl() et les fonctions du genre. Le code est en C, langage de prédilection de l’auteur principal.

    L’API a bien vieilli : 17 fonctions encore présentes proviennent de la 7.1 ; elle est passée de 17 000 lignes à 171 000 ; elle a survécu aux révolutions HTTP/2 (transferts multiples multiplexés) et HTTP/3 (passer de TCP à UDP).

    L’usage a aussi bien progressé depuis l’entrée dans PHP 4.0.2 comme premier binding (ici rendre utilisable en langage PHP), moins d’un mois après la publication de la bibliothèque.

    En 2002 a été ajoutée une API multi pour gérer des transferts parallèles concurrents de façon illimitée dans un même thread.

    Puis en 2006 vient en surplus le multi_action avec des mécanismes orientés événements, avec une boucle événementielle (comme epoll).

    Les premiers changements douloureux sur l’interface binaire (ABI) ont entraîné une volonté de stabilité, de ne jamais casser volontairement cette interface, et ce depuis 2006.

    libcurl possède des bindings vers au moins 65 langages de programmation, fonctionne sur au moins 103 systèmes d’exploitation et 28 architectures de processeur, est présent dans les bibliothèques standard de langages de programmation (Python, Java, Rust ou .Net). Son ancien concurrent principal libwww n’est plus développé. Bref 18 ans de stabilité d’API et d’ABI.

    L’utilisation de libcurl continue de croître (de plus en plus d’objets connectés notamment). Et curl de manière générale supporte rapidement les nouveaux protocoles et leurs évolutions. À noter que l’auteur principal ne mentionne pas dans ses projections ce qui me semble le plus gros risque pour Curl/libcurl, la difficulté d’avoir une personne prête à lui succéder si quand cela s’avérera nécessaire.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    S.M.A.R.T. badblocks badblocks2

    S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology) est un système de surveillance intégré aux disques durs modernes et aux disques SSD. Il évalue en continu le bien-être du périphérique tout en anticipant les éventuels dysfonctionnements. Il utilise une réserve de secteurs de rechange pour réparer quand il détecte un secteur en anomalie.
    Le programme Linux badblocks teste les blocs d’un média par écriture+relecture+comparaison. À l’origine il servait à mettre les blocs mauvais en liste noire dans le file-system.

    Est-il utile de nos jours de vérifier ses médias ?
    Comment se situe S.M.A.R.T. par rapport à l’outil badblocks ?
    Comment vérifier un média en tenant compte de sa surveillance par S.M.A.R.T. ?

    C'est ce que nous allons voir dans la suite de la dépêche.

    smart-drive

    Sommaire

    Préambule

    Quelle précaution prendre vis-à-vis du risque de mauvaise qualité du stockage, quand je viens d’acheter un média (disque SSD, disque rotatif, clé USB, carte SD) ou un appareil sous Linux équipé d’un espace de stockage dont j’ignore la technologie ?
    Sans être parano, je me dis qu’avant d’envoyer des données précieuses sur l’espace de stockage, c’est le moment de faire certaines vérifications. Mais quelles vérifications ? Qu’est-il possible de faire ?

    Sur un média connectable, tout est possible.
    Sur un appareil neuf sans système ni données, tout est possible en utilisant une distrib Live.
    Sur les autres, ça dépend, il y en a où on n’a même pas un accès root pour lancer une vérification « dure » ou « molle » (Android, routeur…).

    En écrivant cet article, je me suis rendu compte que je ne me suis jusqu’ici jamais posé de questions sur l’opportunité de vérifier les espaces de stockage de mes téléphones, PC portables, routeurs, box… bref tous les appareils vendus prêts à être utilisés. Pourtant, que sais-je de la vérification faite par celui qui a installé le système ? Rien, et j’utilise, sans penser que l’espace de stockage de l’appareil n’est ni plus ni moins robuste que celui du PC Linux que j’ai installé dernièrement, mais que j’ai vérifié consciencieusement.

    S.M.A.R.T.

    S.M.A.R.T. est un système de surveillance intégré aux disques durs modernes et aux disques SSD. Il évalue en continu le bien-être du périphérique tout en anticipant les éventuels dysfonctionnements. Il surveille un maximum de paramètres (température, temps de fonctionnement, vitesse de rotation pour les disques magnétiques, nombre de démarrages et d’arrêts…) et dépend de l’expérience du fabricant. La réparation de secteurs utilise une réserve de secteurs et le mapping entre secteurs logiques et secteurs physiques.

    On pourrait se dire que, de nos jours, les supports sont fiables et testés par les intégrateurs. D’autres considèrent que la technologie S.M.A.R.T. suffit… et c’est bien commode de ne plus se soucier de la fiabilité des supports de stockage. Mais à la première galère due à un média défaillant, tu évolueras dans ta confiance.

    Sais-tu seulement sur lesquels de tes médias S.M.A.R.T. est installé et actif ?
    Si tu utilises un RaspberryPi, ton média système est… une carte SD. Elle n’a pas S.M.A.R.T.. Idem pour l’extension de mémoire que tu as ajoutée à ton téléphone.

    Je t’invite à lire la page Wikipedia sur S.M.A.R.T. et son paragraphe « Standard, implémentation et limitations ». Que fait et que ne fait pas le S.M.A.R.T. qui fonctionne sur le disque du PC qui te permet de lire cet article ? Difficile de savoir. Comment est-il configuré ? Fais un sondage autour de toi à ce sujet et tu seras pris pour un parano.

    Sur ton PC, sais-tu qu’il y a une option S.M.A.R.T. dans le BIOS (ou UEFI) ? Sais-tu qu’il y a un service smartd dans ton Linux ? As-tu compris aussi qu’avec du RAID il n’est pas toujours opportun d’activer S.M.A.R.T. ? Les communications entre S.M.A.R.T. RAID et l’O.S. peuvent se passer plus ou moins bien selon la qualité de ces éléments. Il te faut bien comprendre ce qu’il est possible de paramétrer et deviner comment ça marche derrière.

    Si tu demandes une vérification à S.M.A.R.T. par smartctl, sais-tu ce qu’il fait ? Se contente-t-il de lire ou fait-il un test en écriture ?

    Enfin, quand S.M.A.R.T. détecte qu’un secteur est devenu défectueux, il ne peut pas deviner quels bits sont défaillants, aussi il renseigne le secteur de secours avec ce qu’il peut, qui est l’état du secteur après défaillance. S.M.A.R.T. a ses limites, il répare comme il peut. S’il est configuré pour, il alerte quand il prévoit de la défaillance, mais sais-tu reconnaître ses alertes ? As-tu compris ce que tu dois faire en réponse aux alertes ?

    Je t’invite à apercevoir la complexité de prise en main de S.M.A.R.T. en faisant quelques recherches sur ces listes de mots :

    smartctl howto
    smartctl configure self test
    smartd howto
    

    et tu verras que ce n’est pas simple à comprendre et à configurer.

    Tu peux te dire naïvement que tout est bien configuré par défaut et que tes médias seront toujours impeccables. Sinon, il va falloir investir en temps et faire quelques essais. À toi de choisir.

    S.M.A.R.T. est une belle avancée technologique, mais il est dangereux de lui attribuer des mérites indus.

    BADBLOCKS

    Le programme Linux badblocks a été créé en même temps que le paquetage e2fsprogs (mkfs.ext2, mkfs.ext3, mkfs.ext4, fsck.ext2…). À l’époque S.M.A.R.T. n’existait pas et il n’y avait pas de mapping entre les adresses logiques et physiques. C’est le file-system qui devait tout gérer quand il détectait un bloc défectueux, notamment la mise du bloc en liste noire. C’est pour cela que mke2fs et e2fsck lancent un badblocks « dur » quand on leur spécifie deux fois l’option -c. Cela dure trèèès longtemps car les paramètres par défaut ne sont plus bien optimisés.

    Depuis l’arrivée de S.M.A.R.T., certains considèrent badblocks comme obsolète. Mais qui peut affirmer que TOUS les médias utilisés par TOUS les usages de Linux sont équipés de S.M.A.R.T. ?
    Peut-être qu’au M.I.T. avec un réseau de classe A, on ne s’abaisse pas à utiliser une clé USB ou un RaspberryPi. Je me demande dans quel type de bulle vivent ceux qui pensent que S.M.A.R.T. est sur tous les médias de stockage.

    Quand j’achète une clé USB, je lui passe badblocks dessus et s’il y a des mauvais blocs, je la rends et je me fais rembourser.
    J’ai essayé d’interroger les fonctionnalités S.M.A.R.T. de diverses clés USB et je n’ai rien obtenu, comme si cette utilité n’y était pas installée :

    # smartctl --scan-open
    # smartctl -x /dev/sdc
    # smartctl -i -d scsi -T verypermissive /dev/sdc
    

    Mes recherches sur Internet n’ont abouti à rien qui me permette de voir une réponse de la part de clés USB. Peut-être que si j’achetais (cher) des clés USB de très haute qualité, j’y trouverais S.M.A.R.T. ?

    Comme l’intervenant du message #25 de ce rapport de bug (en), je pense que badblocks est loin d’être obsolète.
    J’ai envie d’imiter le message #20 juste au-dessus en disant : « Je dois demander --- ***pourquoi*** vous (et d’autres personnes) mettez de l’essence dans vos voitures en 2024 ? L’essence en tant que chose a commencé à devenir inutile pour les voitures vers 2011, lorsque la voiture électrique s’est répandue, et que les batteries sont devenues suffisamment énergétiques pour faire rouler des véhicules sur des centaines de km ».

    Je t’invite aussi à une recherche sur la liste de mots « courbe en baignoire composants électroniques ». Le programme badblocks peut servir au déverminage. On sait en détail ce qu’il fait. Son résultat est clair, contrairement aux implémentations propriétaires de S.M.A.R.T..
    Sans déverminage (rodage) on court le risque de subir trop tôt une réparation discrète incomplète : le secteur réparé sera physiquement bon mais son contenu sera corrompu. La conséquence peut être catastrophiquement discrète. Par exemple, un fichier LibreOffice est une archive zip (compressée), la corruption d’un seul bit y a des conséquences imprévisibles.

    De mon côté, j’utilise badblocks pour tester les médias nouvellement acquis et pour effacer ceux bons à réformer. Ce programme permet aussi la chasse aux médias « fake-size », du genre carte SD de 1To qui accepte de recevoir 1To de fichiers, mais qui ne stocke en réalité que 8Go. On trouve de nos jours (juin 2024) des clés USB de 16To vendues au prix de 5 € ! L’application h2testw sous windows et son équivalent f3 sous linux sont spécialement conçus pour cette chasse. Le microprogramme de ces clés USB ou de ces disques a été détourné pour déclarer un espace de stockage falsifié. C’est de l’escroquerie.

    BADBLOCKS2

    Mon usage du badblocks du paquetage e2fsprogs-1.47.0 m’a amené à y caractériser un bug reproductible en novembre 2023. J’ai eu l’intention de remonter le bug aux équipes ad hoc de ma distribution (Mageia) mais je me suis d’abord mis à regarder le source.

    J’y ai trouvé l’origine du bug, et j’ai trouvé d’autres bugs. En ajoutant des instructions de traçage et de simulation d’erreurs du média, j’ai mis en évidence encore d’autres bugs. De fil en aiguille, j’ai fini par retoucher profondément certains algorithmes, et j’ai appelé badblocks2 cette nouvelle version. J’y ai ajouté diverses options faciles à programmer et commodes à l’usage. J’ai copieusement testé.

    Si tu veux essayer badblocks2 et/ou prendre connaissance de ma démarche, je livre tout sur mon site. Tu verras pourquoi je me suis rabattu sur la création d’une nouvelle version, plutôt que de faire remplacer l’ancienne (ce qui aurait profité à tous).
    Tu peux te faire une idée des fonctionnalités ajoutées en consultant les *.8.txt .
    Tu peux t’inspirer des tests décrits dans le fichier Alire.txt, tester diverses valeurs pour -c -t et voir l’effet sur la vitesse de traitement. Tu peux même jouer à arracher la clé en cours de test (Ctrl-C pour arrêter) !

    J’espère que ce programme servira à d’autres que moi.

    En pratique

    Voici une suggestion d’actions à faire lors de l’acquisition d’un nouveau média (disque SSD, disque rotatif, clé USB, carte SD…). Les commandes doivent être lancées par l’opérateur root.
    Avec cela, quand dans quelques années tu satureras le média, tu seras sûr que le dernier secteur utilisé aura été déverminé avant la mise en production.

    ATTENTION : les usages de badblocks proposés sont destructifs pour les données présentes sur le média. Le mode non-destructif du badblocks actuel comporte des bugs (version e2fsprogs-1.47.0). Celui de badblocks2 a été corrigé.
    ATTENTION : la liste des mauvais blocs renvoyée par le badblocks actuel est fausse (version e2fsprogs-1.47.0). Le nombre de mauvais blocs est correct. La liste renvoyée par badblocks2 est correcte.
    ATTENTION : le paramètre device du média est supposé être /dev/sdc. Ne pas se tromper, au risque d’effacer un autre média en cours d’usage.

    D’abord déterminer le block-size du noyau, c’est une bonne valeur à prendre comme block-size du file-system :

    # blockdev --getbsz /dev/sdc
    

    Dans ce qui suit, je suppose que la valeur 4096 a été renvoyée.

    Ensuite déterminer si S.M.A.R.T. est sur le média :

    # smartctl --scan-open
    # smartctl -x /dev/sdc
    # smartctl -i -d scsi -T verypermissive /dev/sdc
    

    Si S.M.A.R.T. n’est pas sur le média

    Passer badblocks2 pour voir s’il y a 0 ou peu de mauvais blocs :

    # badblocks2 -b 4096 -c 32768 -wrrvvss -t r -t r -e 40 -o /tmp/sdc.bb /dev/sdc
    

    L’option -e peut être supprimée ou modifiée selon la limite du nombre de mauvais blocs considérée acceptable ; les options -t peuvent être différentes selon la sévérité souhaitée (voir le man).

    S’il y a trop de mauvais blocs, refuser d’utiliser le média (->garantie ?).

    S’il y a 0 mauvais bloc on peut formater en toute tranquillité (partitionner éventuellement avant) :

    # mkfs.ext? -b 4096 ... /dev/sdc
    

    S’il y a quelques mauvais blocs, sans que la limite -e soit atteinte, on pourra formater en utilisant la liste sauvée de mauvais blocs :

    # mkfs.ext? -b 4096 -l /tmp/sdc.bb ... /dev/sdc
    

    Si l’on veut partitionner, il faudra recalculer la liste des mauvais blocs de chaque partition avant de formater (remplacer sdc par sdc1 dans les commandes badblocks2 et mkfs.ext? ci-dessus).

    Si l’on veut formater en vfat exfat ou f2fs (clés USB en général), il n’est pas possible d’utiliser la liste des mauvais blocs détectés ; la seule solution est de refuser d’utiliser le média s’il y a des mauvais blocs (ou alors de restreindre l’usage à une zone saine… à localiser)

    Si S.M.A.R.T. est sur le média

    On peut vérifier son activation par smartctl :

    # smartctl -i /dev/sdc
    

    Ensuite, il faut interroger le média sur l’état et les capacités de son S.M.A.R.T. :

    # smartctl -a /dev/sdc
    

    Noter le nombre de réallocations faites et prévues :

    # smartctl -a /dev/sdc | grep -i _sector
    

    Puis faire une passe de déverminage, en écriture+lecture car on ne sait pas si l’écriture seule suffit ; ne pas utiliser l’option -p de badblocks ; les options -t peuvent être différentes selon la sévérité souhaitée (voir le man) :

    # badblocks2 -b 4096 -c 32768 -wrvvss -t r -o /tmp/sdc.bb1 /dev/sdc
    

    Faire une passe de vérification, il ne devrait plus y avoir de mauvais blocs :

    # badblocks2 -b 4096 -c 32768 -wrvvss -t r -o /tmp/sdc.bb2 /dev/sdc
    

    S’il y a encore des mauvais blocs, c’est soit que le déverminage n’est pas terminé, soit que le média et/ou son S.M.A.R.T. sont foireux (il ne détecte pas les mauvais secteurs vus par badblocks2 ou les secteurs de réserve sont mauvais ou… pire) ; relancer des passes une par une jusqu’à ce qu’il n’y ait plus de mauvais bloc détecté.

    Re-interroger S.M.A.R.T. pour voir l’évolution des réallocations :

    # smartctl -a /dev/sdc | grep -i _sector
    

    Ensuite on peut formater (partitionner éventuellement avant) en considérant que le média a remappé tous ses mauvais secteurs et est donc impeccable pour l’utilisation :

    # mkfs.ext? -b 4096 ... /dev/sdc
    

    Par la suite, on pourra de temps en temps consulter l’état de santé du média en service :

    # smartctl -H /dev/sda
    

    Si on est courageux, on peut lancer de temps en temps un contrôle du média par son S.M.A.R.T.
    Si on est encore plus courageux, on configurera smartd pour que ces vérifications soient automatiques et pour que les alertes soient envoyées par courriel.

    Attention à la communication entre l’O.S., S.M.A.R.T. et RAID (niveau carte mère / niveau OS / contrôleurs bas de gamme), voir la page Wikipedia sur S.M.A.R.T..

    Que l’esprit « aware » soit en toi, sur tes données et sur ton espace de stockage

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Proposition du ZenDis sur la souveraineté numérique et le droit des marchés publics en Allemagne

    Le ZenDis (de) vient de publier des propositions sur la souveraineté numérique et le droit des marchés publics en Allemagne.

    Le ZenDis (Zentrum Digitale Souveränität - Centre pour la Souveraineté Numérique) est une agence gouvernementale (SARL à capitaux publics) allemande, dont la création avait été annoncée dans une dépêche de 2021 et dont la mission est de « servir d’organe central et de coordination pour la promotion des logiciels libres (OSS) dans l’administration publique ».

    Le document « Positionspapier: Digitale Souveränität im Vergaberecht»  met en avant l’importance de renforcer la souveraineté numérique des administrations publiques allemandes face à une situation géopolitique incertaine. Il souligne la volonté politique exprimée dans diverses stratégies et documents officiels depuis 2020, qui prônent l’adoption systématique de standards ouverts et de logiciels open source pour les projets informatiques publics afin de réduire les dépendances aux fournisseurs de technologies propriétaires.

    L’utilisation de logiciels open source est présentée comme un levier essentiel pour atteindre cette souveraineté numérique. Les avantages comprennent la flexibilité de changer de fournisseur, la capacité d’adaptation des logiciels aux besoins spécifiques des administrations et une meilleure position de négociation avec les fournisseurs. Toutefois, malgré un cadre juridique favorable, l’open source reste peu utilisé dans la pratique des marchés publics.

    Enfin, le texte appelle à utiliser la réforme en cours du droit des marchés publics (Vergabetransformationspaket) pour intégrer de manière plus étendue cette préférence pour l’open source, en s’inspirant d’exemples de législation comme celle de la Thuringe. Le texte met en avant des propositions d’amendements spécifiques au code des marchés publics allemand pour favoriser l’adoption de l’open source, renforcer la souveraineté numérique et réduire les dépendances technologiques au sein des administrations publiques allemandes.

    Sommaire

    Le document « Positionspapier: Digitale Souveränität im Vergaberecht » élaboré par le Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) met en avant la nécessité de renforcer la souveraineté numérique au sein des administrations publiques allemandes, en particulier par le biais de la réforme du droit des marchés publics.

    Il comprend cinq parties.

    1. Contexte et volonté politique

    Le texte commence par souligner l’importance croissante de la souveraineté numérique face à une situation géopolitique incertaine, en particulier pour les administrations publiques. Depuis 2020, des initiatives ont été mises en place pour renforcer cette souveraineté, telles que les stratégies définies par l’IT-Planungsrat (pdf, de) et les engagements du gouvernement fédéral inscrits dans la stratégie numérique de 2022 (de). Ces documents insistent sur l’utilisation de standards ouverts et sur l’adoption systématique de logiciels open source dans les projets informatiques publics.

    2. Open-Source: catalyseur de la souveraineté numérique

    L’adoption de logiciels open source est considérée comme un levier crucial pour atteindre la souveraineté numérique. Les avantages de l’open source incluent la possibilité de changer de fournisseur sans contraintes, la capacité à adapter et à personnaliser les logiciels, ainsi qu’une meilleure position de négociation vis-à-vis des fournisseurs. Une étude de marché (de) réalisée en 2019 pour le ministère de l’Intérieur allemand souligne l’importance de réduire les dépendances aux fournisseurs de logiciels propriétaires.

    3. Spécificités du droit des marchés publics dans l’acquisition de logiciels

    Le document distingue deux types de prestations dans l’acquisition de logiciels : la fourniture du produit logiciel (licences) et les services associés. Les licences open source, étant exemptes de droits d’utilisation, échappent souvent aux obligations de mise en concurrence des marchés publics. Cependant, les services liés à ces logiciels doivent faire l’objet de procédures d’appel d’offres. La pratique actuelle, qui consiste à combiner la fourniture de logiciels et les services associés dans un même appel d’offres, doit évoluer pour favoriser l’open source.

    4. Nécessité et conformité juridique d’une préférence pour le libre

    Malgré un cadre juridique favorable, l’open source reste marginal dans les pratiques d’achat public. Le texte plaide pour une préférence explicite pour les logiciels open source dans le droit des marchés publics pour éviter les effets de verrouillage (lock-in) liés aux logiciels propriétaires. Il s’appuie sur l’article 97 du code des marchés publics allemand, qui permet des traitements différenciés justifiés par des objectifs légitimes, comme la souveraineté numérique.

    5. Opportunités de réforme du droit des marchés publics

    Le texte appelle à profiter de la réforme en cours du droit des marchés publics (Vergabetransformationspaket) pour inscrire de manière plus étendue la préférence pour les logiciels open source. Des exemples de la législation en Thuringe montrent comment cette approche peut être intégrée dans les textes de loi, en mettant l’accent sur l’interopérabilité et la durabilité.

    Citons à présent les propositions:

    C’est pourquoi la réforme actuelle du droit des marchés publics (doit absolument être mise à profit pour établir une priorité open source étendue et efficace. Ou plus encore : pour ancrer la priorité de la Souveraineté numérique.

    Concernant le logiciel libre, le document reprend les propositions (de) issues d’une étude réalisée en 2022 par le professeur Andreas Wiebe pour le compte de l’Open Source Business Alliance (OSBA):

    (1) Afin de garantir une large interopérabilité, les nouvelles applications et technologies doivent être dotées d’interfaces et de normes ouvertes et être utilisables par ce biais. Les nouvelles applications et technologies doivent, dans la mesure du possible, être compatibles en amont.

    (2) L’utilisation de logiciels open source doit être privilégiée par rapport aux logiciels dont le code source n’est pas accessible au public et dont la licence limite l’utilisation, la distribution et la modification, ainsi que l’utilisation d’applications et de technologies qui sont durables tout au long de leur cycle de vie.

    (3) Pour les nouveaux logiciels développés par l’administration publique ou spécialement pour elle, le code source doit être placé sous une licence de logiciel libre et open source appropriée et publié, pour autant qu’aucune tâche liée à la sécurité ne soit effectuée avec ces logiciels et que cela soit autorisé par le droit des licences.

    Commentaire: les points 1 et 2 font écho à l’article 16 de la loi République Numérique en France, mais dans celle-ci il n’est question que d’ « encouragement » alors qu’ici il s’agit d’une obligation (point 1) ou d’une préférence (point 2). Le point 3 est aussi proche de ce qui est prévu en France concernant les logiciels vus comme des documents administratifs communicables.

    Le document ajoute pour conclure:

    Nous nous rallions à ce point de vue et à la proposition de formulation, mais nous nous prononçons explicitement en faveur d’un ancrage dans le code des marchés publics. En effet, comme le fait remarquer Wiebe, la loi sur la cyberadministration ne se réfère pas directement à l’attribution des marchés. En revanche, le décret sur les marchés publics permet de donner la priorité à l’open source ou à la souveraineté numérique. […]

    Nous estimons qu’il est nécessaire, au regard des exigences de la description des prestations,

    1. de rendre obligatoire la mention, dans le cahier des charges, des exigences qui renforcent la Souveraineté Numérique.

    En ce qui concerne les conditions d’attribution, nous pensons qu’il est nécessaire,
    1. d’établir l’effet du logiciel sur la Souveraineté Numérique comme critère autonome d’évaluation des offres,

    2. de concrétiser l’évaluation de la rentabilité du logiciel,

    • de manière à inclure les éventuels coûts induits par un éventuel effet de verrouillage,

    • de sorte que l’impact économique sur d’autres acteurs de l’administration publique (réutilisation de logiciels) soit pris en compte.

    En résumé

    Le ZenDiS préconise des amendements spécifiques au code des marchés publics pour établir une préférence claire et opérationnelle en faveur des logiciels libres, afin de contribuer à la souveraineté numérique. Ce document présente des propositions concrètes pour adapter le cadre juridique afin de favoriser l’adoption de l’open source et de réduire les dépendances aux technologies propriétaires dans le secteur public.

    Il nous semble indispensable de mener une réflexion similaire en France.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Appel "Campus du libre 2024 (Lyon)" - Le numérique libre dans l'enseignement et la recherche

    La 7ème édition du Campus du Libre se déroulera le samedi du 23 novembre 2024 au campus de la Manufacture des Tabacs à l'Université Jean-Moulin Lyon3.

    Le Campus du Libre est un événement inter-établissements rassemblant plusieurs établissements lyonnais (INSA-Lyon, Université Lyon 1, Université Lyon 2, Université Lyon 3) en partenariat avec les entreprises du Ploss-RA (association d'entreprises du numérique libre en Auvergne Rhône-Alpes) avec l'objectif de promouvoir le numérique libre et éthique dans l'enseignement et la recherche. Lors de cette journée, les visiteurs se retrouvent pour échanger autour de leurs expériences et leurs projets.

    Le Campus Du Libre proposera

    • Un village des associations et entreprises
    • Des ateliers démonstratifs et pratiques
    • Des conférences
    • Des install-party et flash party
    • Des espaces de divertissements libristes (tournois de jeux vidéo libres, concerts, expo…)
    • Animation de réseautage

    Si vous souhaitez faire des propositions pour nourrir cet événement, l'appel à contribution est en ligne pour vous accompagner : https://www.campus-du-libre.org/cfp.php

    Merci d'envoyer vos propositions avant le 21 septembre à l'adresse de courriel : contact@campus-du-libre.org

    L’événement est gratuit et ouvert à tous et toutes.

    Comme les années précédentes en témoignent, ce sera aussi l’occasion pour les étudiants et étudiantes de se créer des relations dans le secteur et de trouver un stage ou une alternance.

    Le campus du Libre s’adresse à toutes personnes voulant en apprendre plus sur l'univers du Libre. Et découvrir des alternatives, aux logiciels propriétaires et privateurs, qui puissent répondre aux besoins du quotidien.

    L’équipe organisatrice vous prépare cette nouvelle édition avec impatience !

    L'équipe du Campus du Libre vous remercie pour votre participation,
    Au plaisir de vous lire,

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Créatures ou IA : consultez, manipulez & annotez les images des bibliothèques, musées… grâce à IIIF

    L’initiative IIIF, pour International Image Interoperability Framework, est née de la constatation que la diffusion d’images patrimoniales sur le web était « trop lente, trop coûteuse, trop décousue, trop complexe ». IIIF apporte une solution pérenne et élégante à ces difficultés en conciliant accessibilité, interopérabilité et sobriété. Il intéresse les GLAM (collections, bibliothèques, archives, musées, etc.) ainsi que les acteurs de l’enseignement et de la recherche.

    Concrètement, IIIF créé un cadre technique commun grâce auquel les fournisseurs peuvent délivrer leurs contenus sur le web de manière standardisée, afin de les rendre consultables, manipulables et annotables par n’importe quelle application compatible.

    International Image Interoperability Framework

    Sommaire

    Origine de IIIF

    En 2010, constitution d’un groupe de réflexion et d’expérimentation sur l’interopérabilité des manuscrits médiévaux numérisés à l’initiative de l’université de Stanford. Ses travaux ont conduit à l’élaboration d’un modèle de données Shared Canvas basé sur le modèle d’annotation du W3C.

    À la même époque, de grandes bibliothèques nationales et des universités ont travaillé à la définition d’un mécanisme d’échange des images pour aboutir en 2012 à la publication de la version 1 de l’API Image de l'International Image Interoperability Framework (IIIF).

    Le Consortium IIIF a été créé en 2015 par onze institutions : la British Library, Artstor, Die Bayerische Staatsbibliothek, la Bibliothèque nationale de France, Nasjonalbiblioteket (Norvège), Wellcome Trust, et les universités d’Oxford, Stanford, Cornell, Princeton et Yale. Il compte actuellement 69 membres.

    Qu’est-ce que IIIF ?

    Un aspect spectaculaire de IIIF réside dans la visualisation fluide des images et le zoom profond, cf. Sagami River, Kyoto (1660?-1670?). Princeton University, mais IIIF ne se résume pas à ça, loin de là.

    _Sagami River, Kyoto (1660?-1670?) affiché par le visualiseur libre UniversalViewer

    IIIF désigne à la fois le cadre technique partagé d’un ensemble de protocoles ouverts et une communauté humaine qui les implémente, développe des logiciels et in fine expose des contenus audiovisuels interopérables.

    Ce standard de fait est utilisé par de plus en plus d’institutions culturelles — collections, bibliothèques, musées, archives, etc. — et scientifiques — universités, labos, muséums, etc. Ses fonctionnalités s’étendent maintenant à l’audio et à la vidéo ; la prise en compte de la 3D est en cours.

    Pour l’heure, IIIF est surtout utilisé pour la diffusion d’images numériques. Ce sont ainsi des centaines de millions d’images qui deviennent véritablement découvrables, consultables, comparables, manipulables, citables, annotables et mixables par n’importe quelle application compatible capable de se « brancher » sur les entrepôts des uns et des autres.

    Sans téléchargement de fichiers images, ces ressources de « première main » sont immédiatement utilisables par les professionnels comme par les amateurs. Elles intéressent aussi les chercheurs, les enseignants et les élèves, et les médiateurs culturels, scientifiques et artistiques. IIIF facilite grandement la diffusion, la réutilisation et la valorisation de toutes ces ressources disséminées.

    Principe général d’interopérabilité de IIIF : trois applications différentes sont branchées à trois entrepôts IIIF (source : Biblissima+ — Licence Ouverte / Open License 2.0)
    Principe général d’interopérabilité de IIIF : trois applications différentes sont branchées à trois entrepôts IIIF (source : Biblissima+ — Licence Ouverte / Open License 2.0)

    Visualisation d’un document

    Photo de Bob Fitch, Martin Luther King Jr. & Joan Baez (1966), visualisée avec le logiciel libre Tify

    Copie d’écran du logiciel libre Tify présentant une photographie de Martin Luther King et de Joan Baez (Bob Fitch, 1966). Ce document est fourni par un serveur IIIF opéré par l’université de Stanford.

    Visualisation de plusieurs documents

    La magie IIIF c’est la capacité de jongler avec les références des ressources, par exemple, pour les réunir dans des bibliothèques virtuelles ou encore pour servir de points d’entrée aux robots et autres IA afin d’analyser les documents.

    Léonard Limosin est un peintre, émailleur, dessinateur et graveur français du XVIe siècle. Deux de ses œuvres sont présentées ci-après dans le visualiseur libre IIIF Mirador.

    Vues d’œuvres de Léonard Limosin avec le logiciel libre Mirador

    Sur cette page, vous pouvez explorer chaque image et zoomer, les comparer, lire leurs métadonnées, passer en plein écran ou agencer différemment les fenêtres. L’interface de Mirador vous permet aussi d’accéder à d’autres références en cliquant sur le bouton rond bleu puis en sélectionnant les documents préenregistrés.

    Vous avez aussi la possibilité d’en ajouter d’autres via le bouton bleu Ajouter une ressource en bas à droite, ensuite en insérant l’URL d’un manifeste IIIF. En faisant une recherche sur Léonard Limosin vous trouverez différentes collections comportant certaines de ses œuvres. Certaines les exposent au standard IIIF. Dans ce cas, pour chaque notice il s’agit de récupérer le lien d’un manifeste IIIF (explicite ou associé au logo IIIF). Exemple, avec cette Crucifixion au Fitzwilliam Museum (Cambridge).

    Le logiciel libre Omeka dispose de fonctionnalités IIIF et permet de créer des bibliothèques virtuelles de ressources IIIF.

    Apports de IIIF

    D’après IIIF en 5 minutes.

    Pour les usagers

    L’accès à des images de haute qualité ainsi qu’à leurs métadonnées, large choix de visualiseurs libres :

    Ces outils, et d’autres encore, offrent une large palette d’interfaces riches et universelles pour :

    Il existe de nombreux dispositifs pour utiliser ces ressources de « première main » et corpus dans un environnement éducatif et de recherche.

    Pour les diffuseurs

    • bénéficier d’une manière standardisée, cohérente et efficace, de présenter et de partager leurs collections,
    • améliorer leur visibilité, l’accessibilité à leurs données et développer des espaces de collaboration et de recherche,
    • faciliter la gestion des ressources numériques en garantissant un accès homogène et pérenne,
    • promouvoir la participation des usagers en mobilisant des outils avancés pour l’exploration et l’utilisation des ressources,
    • proposer des projets de transcription, de crowdsourcing ou de sciences participatives en fournissant des documents annotables,
    • réduire et mutualiser les coûts en utilisant un standard ouvert, des services et des logiciels éprouvés.

    Pour les développeurs

    Il existe de nombreux logiciels et composants compatibles avec les API de IIIF, beaucoup sont libres. La page officielle Awesome IIIF recense les principaux ainsi qu’un grand nombre de ressources documentaires et de services.

    IIIF est entièrement basé sur les standards et l’architecture du Web (principes REST et du Linked Data, Web Annotation Model du W3C, JSON-LD) ce qui facilite le partage et la réutilisation des données.

    Le découplage entre la couche serveur et la couche cliente, la modularité des composants logiciels, la ré-utilisabilité des ressources offrent une grande souplesse et réduit la dépendance à un logiciel ou un prestataire.

    La communauté des usagers et des développeurs est active.

    Comment ça marche ?

    Le manifeste est un élément essentiel de IIIF. C’est un document au format JSON-LD qui représente généralement un objet physique numérisé tel qu’un livre, une œuvre d’art, un numéro de journal, etc. Il peut également rassembler des éléments de provenances diverses. Il décrit l’ensemble du document, ses métadonnées, sa structure et référence les images et les médias qu’il embarque.

    Les liens des manifestes IIIF sont plus ou moins faciles à trouver dans les notices des catalogues. Une méthode simple consiste à rechercher le logo IIIF ou à explorer les informations fournies par les visualiseurs. Le site officiel de IIIF alimente un annuaire non exhaustif des sites et, site par site, fournit généralement un mode d’emploi pour récupérer les manifestes.

    Techniquement, IIIF comporte deux API principales, l’API Image et l’API Presentation qui fonctionnent de concert.

    API Image

    L’API Image fournit des informations basiques sur l’image ainsi que les pixels de l’image entière ou de zones à la demande.

    Elle se présente avec les éléments suivants :

    • une URL d’accès aux informations techniques d’une image, abcd1234 est un exemple d’identifiant :
      http://www.example.org/image-service/abcd1234/info.json
    • une URL à construire à la carte pour récupérer et manipuler tout ou partie de l’image en précisant la zone, la taille, l’orientation, la qualité et le format de l’image à produire.

    schéma de l’URL API Image

    Voilà ce que ça donne en pratique avec l’image de test. Attention ! LinuxFR met en cache les images, si vous souhaitez effectuer les manipulations, copiez et modifiez les paramètres des url ci-après.

    Le fichier info.jsonest le suivant :

    • https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/info.json

    • rendu homothétique de l’image entière avec une largeur de 300px

      https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/full/300,/0/default.jpg

      image entière rendue homothétique avec une largeur de 300px

    • détail de la même image

      https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/300,/0/default.jpg

      détail

    • rotation et transformations

      https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/150,/45/default.jpg

      détail

      https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/150,/0/bitonal.jpg

      détail
      https://stacks.stanford.edu/image/iiif/ff139pd0160/K90113-43/1680,1100,1300,1300/150,/0/gray.jpg

      le rendu en niveaux de gris ne fonctionne pas avec ce serveur IIIF.

    Pour en savoir plus consultez les spécifications de l’API Image (version 3.0 actuellement).

    L’API Presentation

    En complément à l’API Image, l’API Presentation fournit les propriétés d’un document IIIF : métadonnées, structures, annotations, etc.

    Principales composantes d’un Manifeste IIIF

    Principales composantes d’un Manifeste IIIF (source : Biblissima+ — Licence Ouverte / Open License 2.0)

    Il existe de nombreux visualiseurs pour afficher ces documents et les informations associées. On distingue alors dans différentes zones le rôle de chacune des deux API principales.

    API Image

    Source : Biblissima+ — Licence Ouverte / Open License 2.0.

    API Presentation

    Source : Biblissima+ — Licence Ouverte / Open License 2.0.

    À noter que le visualiseur optimise le trafic en ne demandant au serveur que la partie de l’image à afficher

    Pour en savoir plus consultez les spécifications de l’API Presentation (version 3.0 actuellement).

    Les autres API

    Voir la page des spécifications, extensions, traductions et travaux en cours.

    • Authorization Flow (version 2.0) - décrit un système de contrôle d’accès.
    • Change Discovery (version 1.0) - fournit les informations nécessaires pour découvrir et utiliser les ressources IIIF.
    • Content Search (version 2.0) - définit le mécanisme d’interopérabilité permettant d’effectuer des recherches dans les annotations textuelles associées à un objet.
    • Content State (version 1.0) - permet de référencer tout ou partie d’un manifeste IIIF et de décrire des modalités d’accès.

    Au-delà de l’image : l’audio, la vidéo et la 3D

    Les références à des ressources audio et vidéo sont prises en compte dans la version 3.0 de l’API de présentation IIIF. À noter qu’il n’existe pas pour l’audio et pour la vidéo d’équivalents de l’API Image, en effet, cet aspect est pris en charge par les navigateurs. Exemple : audio et vidéo d’un morceau musical associés à la partition.

    Il y a une forte demande pour la prise en compte de la 3D par IIIF. Un groupe de travail rassemble les institutions et les personnes intéressées. Il anime un dépôt Github qui rassemble les documents et expérimentations du groupe.

    IIIF et IA

    IIIF est de plus en plus utilisé par des dispositifs d’apprentissage et de reconnaissance automatique en raison de la facilité d’accès aux images entières ou à des zones, dans les définitions et qualités nécessaires. Il est aussi possible d’imaginer des IA qui génèrent automatiquement des manifestes annotés.

    La société française Teklia s’est spécialisé dans ce domaine. Elle vient d'annoncer le passage sous licence libre de sa plateforme Arkindex.

    Harvard Art Museums a créé AI Explorer qui mobilisent un certain nombre d’IA pour décortiquer des reproductions d’œuvres et des photographies.

    Le Consortium IIIF a mis en place un groupe de travail et il existe une formation en ligne sur le sujet.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Lettre d'information XMPP de février 2024

    NdT — Ceci est une traduction de la lettre d’information publiée régulièrement par l’équipe de communication de la XSF, essayant de conserver les tournures de phrase et l’esprit de l’original. Elle est réalisée et publiée conjointement sur les sites XMPP.org, LinuxFr.org et JabberFR.org selon une procédure définie.

    Bienvenue dans la lettre d’information XMPP, nous sommes ravis de vous retrouver ici ! Ce numéro couvre le mois de février 2024. Merci à tous nos lecteurs et aux contributeurs de cette lettre d'information !

    Comme la présente lettre d’information, de nombreux projets et leurs efforts au sein de la communauté XMPP sont le résultat du travail bénévole de personnes. Si vous êtes satisfait des services et des logiciels que vous utilisez, pensez à dire merci ou à aider ces projets ! Vous souhaitez soutenir l’équipe de la lettre d’information ? Lisez la suite en bas de page.

      Sommaire

      Annonces de la XSF

      Bienvenue aux personnes ayant renouvelé leur adhésion et aux nouvelles adhésions du 1er trimestre 2024 !

      Si vous souhaitez rejoindre la XMPP Standards Foundation, postulez maintenant.

      XMPP et le Google Summer of Code 2024

      La XSF a été acceptée à nouveau comme organisation hôte du GSoC en 2024 ! Si cela vous intéresse, n'hésitez pas à nous contacter !

      Les idées de projet GSoC émanant d'organisations liées à XMPP sont les suivantes :

      Projets hébergés fiscalement par la XSF

      La XSF peut offrir une domiciliation fiscale pour les projets XMPP. Les candidatures sont à réaliser via Open Collective. Pour plus d'information, voir le billet de blog. Projets actuels pouvant être supportés:

      Événements XMPP

      • XMPP happy hour italienne [IT]: rencontre XMPP mensuelle italienne, chaque 3e lundi du mois à 19h00 (heure locale) (évenèment en ligne, avec partage vidéo et web en direct).

      Articles

      Nous sommes heureux d'annoncer le lancement de l'instance PeerTube XMPP-IT, une plateforme dédiée au partage et à la découverte de vidéos autour du protocole XMPP et ses applications. Les membres de la communauté XMPP sont encouragés à contribuer en créant et partageant leurs propres vidéos. Qu'il s'agisse de tutoriels, illustration de projets ou discussions sur des sujets XMPP, vos contributions sont bienvenues !

      JMP a fêté son 7e anniversaire ! Félicitations ! Découvrez la passerelle mobile-friendly vers les fournisseurs SIP pour passer des appels de votre mobile vers un téléphone fixe.

      jmp-sip-gateway

      Nouvelles des logiciels

      Clients et applications

      monocles chat est disponible sur Google Play. Elle apporte de nombreuses mises à jour comme une vue des commandes fonctionnelle et un meilleur support des applications WebXDC, mais aussi une première intégration moderne des autocollants.

      Serveurs

      • La version ejabberd 24.02 a été publiée, et elle prend en charge les protocoles TLS 1.3 et SASL2 avancés. Cette version apporte des améliorations de performance avec Bind 2 pour des temps de connexion plus rapides, ce qui est particulièrement crucial pour les utilisateurs de réseaux mobiles. La prise en charge de XEP-0424 : Message Retraction permet aux utilisateurs de gérer l'historique de leurs messages et de supprimer ce qu'ils ont posté par erreur.

      Bibliothèques et outils

      • GitLab XMPP Bot, un bot XMPP qui envoie des messages basés sur les hooks de GitLab a eu sa version 1.0.0. Ce bot est basé sur python-nbxmpp et il est actif dans le chat de support de Gajim.

      • go-xmpp 0.1.0 a été publié.

      • python-nbxmpp 4.5.4 a été publié, ce qui corrige quelques problèmes concernant les changements de sujet et l'analyse de la date.

      • Slixfeed est un bot d'information proposé en tant que composant client et service ; il peut gérer plusieurs chats simultanément et afficher des médias en ligne, ce qui, en plus d'être destiné principalement aux chats privés, le rend exceptionnellement utile pour les groupchats où les contenus visuels sont essentiels.

      • StropheJS 2.0.0 a été publié.

      • xmpp-rs s'est enrichi d'un Code de conduite et d'un guide de contribution. N'hésitez pas à venir dire boujour !

      Extensions et spécifications

      La XMPP Standards Foundation développe des extensions XMPP dans sa série de XEPs en plus des RFCs XMPP.

      Les développeurs et développeuses, et autres experts ou expertes en normes du monde entier collaborent à ces extensions, en développant de nouvelles spécifications pour les pratiques émergentes et en affinant les façons de faire existantes. Proposées par n’importe qui, les plus réussies finissent finales ou actives – selon leur type – tandis que les autres sont soigneusement archivées en tant qu’ajournées. Ce cycle de vie est décrit dans la XEP-0001, qui contient les définitions formelles et canoniques des types, états et processus. Pour en savoir plus sur le processus de normalisation. La communication autour des normes et des extensions se fait sur la liste de diffusion des normes (archive en ligne).

      Extensions proposées

      Le processus de développement d'une XEP commence par la rédaction d'une idée et sa soumission à l'Éditeur XMPP. Dans les deux semaines qui suivent, le Conseil décide d'accepter ou non cette proposition en tant que XEP expérimentale.

      • Pas de XEP proposée ce mois-ci.

      Nouvelles extensions

      • Pas de nouvelle XEP ce mois-ci.

      Extensions ajournées

      Si une XEP expérimentale n'est pas mise à jour pendant plus de douze mois, elle sera déplacée d'expérimentale à ajournée. Si une nouvelle mise à jour est effectuée, la XEP redeviendra expérimentale.

      • Aucune XEP ajournée ce mois-ci.

      Extensions rejetées

      • XEP-0360: Nonzas (are not Stanzas)

      Extensions mises-à-jour

      • Aucune XEP mise-à-jour ce mois-ci.

      Dernier appel

      Les derniers appels sont lancés une fois que tout le monde semble satisfait de l'état actuel d'une XEP. Une fois que le Conseil a décidé que la XEP semblait prête, l'Éditeur XMPP lance un dernier appel pour recueillir des commentaires. Les commentaires recueillis lors du dernier appel peuvent permettre d'améliorer la XEP avant de la renvoyer au Conseil pour qu'il la passe à l'état stable.

      • Pas de dernier appel ce mois-ci.

      Extensions stables

      • Aucune XEP n’est passée à stable ce mois-ci.

      Extensions dépréciées

      • Aucune XEP déclarée dépréciée ce mois-ci.

      Diffuser la nouvelle

      N'hésitez pas à partager les nouvelles sur d'autres réseaux :

      Consultez également notre Flux RSS !

      Vous recherchez des offres d'emploi ou souhaitez engager une consultante ou un consultant pour votre projet XMPP ? Visitez notre tableau des offres d'emploi XMPP.

      Contributeurs & traducteurs

      Il s’agit d’un effort communautaire, et nous aimerions remercier les traducteurs et traductrices pour leurs contributions. Les volontaires sont les bienvenus ! Les traductions de la lettre d’information XMPP seront publiées ici (avec un certain retard) :

      • anglais (original) : xmpp.org

        • contributeurs généraux : Adrien Bourmault (neox), Alexander "PapaTutuWawa", Arne, cal0pteryx, emus, Federico, Jonas Stein, Kris "poVoq", Licaon_Kter, Ludovic Bocquet, Mario Sabatino, melvo, MSavoritias (fae,ve), nicola, Simone Canaletti, XSF iTeam
      • français : jabberfr.org et linuxfr.org

        • traduction : Adrien Bourmault (neox), alkino, anubis, Arkem, Benoît Sibaud, mathieui, nyco, Pierre Jarillon, Ppjet6, Ysabeau
      • italien : notes.nicfab.eu

        • traduction : nicola

      Aidez-nous à créer la lettre d’information

      Cette lettre d’information XMPP est produite collaborativement par la communauté XMPP. La lettre d’information de chaque mois est rédigé dans ce simple pad. À la fin de chaque mois, le contenu du pad est fusionné dans le dépôt Github de la XSF. Nous sommes toujours heureux d’accueillir des contributeurs et contributrices. N’hésitez pas à vous joindre à la discussion dans notre salon public Comm-Team (MUC) et ainsi nous aider à soutenir cet effort communautaire. Vous avez un projet et vous voulez en parler ? Pensez à partager vos nouvelles ou vos événements ici, et à les promouvoir auprès d’un large public.

      Tâches régulières :

      • rassembler les nouvelles dans l'univers XMPP
      • bref résumé des nouvelles et évènements
      • résumé de la communication mensuelle des extensions (XEPs)
      • relecture du brouillon de lettre d'information
      • préparation d'infographies
      • traductions
      • communication via les réseaux sociaux

      Licence

      Cette lettre d’information est publiée sous la licence CC BY-SA.

      Commentaires : voir le flux Atom ouvrir dans le navigateur

      RootDB - une application web de reporting, auto-hebergée

      Logo de RootDB
      Présentation rapide de RootDB, une application auto-hébergeable open-source (AGPLv3), permettant de générer des rapports à base de requêtes SQL.

      Dashboard

      Sommaire

      Genèse du projet

      Pour les besoins d'un client, il fallait que je génère rapidement des statistiques d'usage diverses et variées (à bases de tableaux et graphiques), à partir de plusieurs base de données relationnelles classiques et que j'intègre ces rapports dans un backoffice.

      Le premier réflexe fut de me tourner vers une solution que j'ai utilisée pendant une dizaine d'années auparavant et qui se nomme MyDBR. Cela répondait parfaitement à son besoin tout en étant abordable. MyDBR, bien maitrisé, permet de faire énormément de choses, mais l'interface est vraiment datée et l'accès aux fonctionnalités des bibliothèques graphiques se fait par l’intermédiaire de wrappers en SQL.

      J'ai cherché des alternatives, auto-hébergeables, simples à mettre en place, maintenues et avec la même logique pour la création de rapport mais je n'ai pas trouvé mon bonheur. Il y a, évidemment, pleins de solutions qui existent mais il y avait toujours quelque chose qui n'allait pas après essai, que ce soit dans la manière de générer des rapports ou bien les pré-requis, parfois compliqués, pour l'hébergement.

      D'ou l'idée de créer, avec un collègue, notre propre solution de reporting - parce que pourquoi pas, finalement.

      Open-source

      Ce projet n'était pas open-source à la base et nous pensions simplement vendre des licences d'utilisation.

      Sauf qu’aujourd’hui beaucoup de monde utilise le cloud, et ce dernier vient avec ses solutions intégrées de reporting, limitant de fait l'intérêt de ce genre de projet. Pour faire bref, je reste convaincu que tout le monde n'est pas sur le cloud et que ce genre de solution peut encore intéresser quelques personnes.
      À cause des doutes sur la pertinence même du projet, je n'ai jamais sérieusement cherché du financement, ce qui ne m'a jamais permis d'être à temps plein dessus. Nous avons donc mis du temps avant de produire quelque chose d'exploitable dans un environnement de production : un an et demi environ.
      À cela s'ajoute le fait que ce projet n'existerait pas sans toutes les briques open-source sur lesquelles il se base. Et comme c'est l'open-source qui me fait vivre depuis un certain nombre d'années, il me semblait finalement bien plus naturel de rendre ce projet open-source (licence AGPLv3) que d'essayer de le vendre en chiffrant le code source.

      RootDB ?

      Étant familier du SQL et du JavaScript, nous voulions avoir une solution qui ne mette pas de bâtons dans les roues du développeur, à savoir :

      • utiliser principalement le SQL pour la récupération et le traitement des données ;
      • avoir un accès intégral à la bibliothèque graphique choisie ;

      Ce choix de préférer un environnement de développement de rapport orienté développeur est assumé, d'où le nom du projet.

      Fonctionnalités

      Je ne vais pas vous présenter toutes les fonctionnalités car le site web principal et l'instance de démonstration les présentent déjà correctement. Je vais donc plutôt mettre en avant les spécificités du projet.

      Websocket

      Les requêtes SQL peuvent prendre du temps à tourner, surtout si les tables ne sont pas correctement optimisées. Par conséquent l'interface repose lourdement sur les websockets afin d'éviter les problèmes de timeout. Quand un rapport est exécuté, l'exécution des différentes requêtes est dispatchée de manière asynchrone et les vues affichent des résultats uniquement quand les données arrivent sur le websocket du rapport.
      D'une manière générale toute l'interface est rafraichie par websocket.

      Bibliothèques graphiques au choix

      Nous donnons accès à Chart.js ou D3.js, sans limitation, sans wrapper. Il est donc possible de se référer directement à la documentation officielle de ces deux bibliothèques.

      Onglets & Menu

      Nous aimons bien les menus. :)
      C'est simple, élégant et permet d'accéder à beaucoup d'options de manière claire.
      L'interface repose sur une barre de menu principale dynamique et une barre d'onglets dans lesquels s'affiche les différentes parties de l'application. Il est donc possible d'ouvrir plusieurs rapports (ou le même) dans le même onglet du navigateur web.

      Cache

      Il existe deux niveaux de cache :

      • un cache utilisateur, pratique pour cacher des résultats de manière temporaire afin de partager des résultats avec un autre utilisateur.
      • un cache système (jobs) ou il est possible de générer du cache de manière périodique. Nécessaire pour des rapports qui utilisent de très grosses tables qu'il n'est parfois pas possible d'optimiser.

      Paramètres en entrée

      Il est très facile de générer ses propres paramètres afin de filtrer les rapports, que ce soit sur une plage de date, une liste d'options sortie d'une base de données, des cases à cocher etc.

      Liens entre rapports

      Que ce soit avec Chart.js ou bien un tableau, vous pouvez créer des liens entre vos rapports ou bien sur le même rapport pour faire des rapports de type drill-down.

      Hébergement

      Côté API, RootDB est une application Laravel qui fonctionne sur du PHP en version 8.2.x (voir 8.3.x, mais pas encore bien testé) et utilise Memcached pour la gestion du cache.
      Le serveur de websocket est propulsé par Laravel Reverb.
      Côté Frontend, il s'agit d'une application React classique, en TypeScript, qui utilise PrimeReact pour la suite de composants prêt-à-l'emploi.

      Conclusion

      Concernant les fonctionnalités que nous aimerions mettre en place petit à petit :

      • une interface de configuration pour Chart.js - afin de, quand même, rendre plus simple la configuration des charts, tout en laissant la liberté au développeur de coder en javascript les fonctionnalités avancés ;
      • un nouveau type de connecteur pour supporter Microsoft SQL Server ;
      • une fonctionnalité d'auto-rafraichissement des rapports ;
      • l'import asynchrone de gros fichiers CSV ou Excel.

      Nous pouvons aider à l'utilisation, par l’intermédiaire :

      • d'un salon discord mais ce n'est pas forcément idéal pour ce genre de projet. Je suis donc entrain de regarder du côté de Matrix, éventuellement ;
      • un forum classique.

      Voilà, c'était une brève présentation de RootDB.
      C'est un projet qui n'a pas encore été testé par beaucoup de monde, d’où cette présentation pour le faire connaitre un peu plus.

      Commentaires : voir le flux Atom ouvrir dans le navigateur

      Codeberg, la forge en devenir pour les projets libres ?

      Face aux risques que fait peser GitHub sur le monde des logiciels libres suite à son rachat par Microsoft en 2018, une alternative semble avoir percé. Cette dépêche propose un tour d'horizon des problèmes posés par GitHub et expose comment Codeberg pourrait y répondre.
      Logo Codeberg

        Sommaire

        Les points forts de Codeberg

        L'association Codeberg e.V. 1 et son projet Codeberg.org ont été fondés en janvier 2019, suite au rachat par Microsoft de GitHub. En plus d'un statut associatif à but non lucratif, ce qui limite les risques de disparition du jour au lendemain, Codeberg est basé en Europe (à Berlin), ce qui est un plus pour nos données personnelles.

        Son logo représente un sommet enneigé sur fond de ciel bleu. En effet, en Allemand, der Berg veut dire la montagne et on pourrait donc traduire Codeberg par une « montagne de code ». Et effectivement, la communauté compte fin avril 2024 plus de 102 000 utilisateurs et plus de 129 000 projets y sont hébergés. L'association qui dirige le projet compte plus de 400 membres. Le financement s'effectue par les dons (déductible des impôts en Allemagne) et/ou contributions aux projets sous-jacents à la forge.

        La forge est basée sur Forgejo, logiciel libre sous licence MIT, dont le nom vient de l'Esperanto forĝejo, ce qui est cohérent avec l'attention portée à la langue de l'utilisateur et aux problèmes de traduction (service Weblate). Comme avec GitLab, la licence libre implique qu'un projet peut posséder sa propre instance s'il le souhaite. On notera que Forgejo est un fork de Gitea, lui-même fork de Gogs, et est donc écrit en langage Go, langage sous licence BSD avec un brevet. Le projet Forgejo, évidemment hébergé sur Codeberg, est très actif avec plus de 900 Pull Requests acceptées depuis un an.

        La problématique du tout GitHub

        GitHub, lancé en 2008, est devenu la plus grosse plateforme d'hébergement de codes sources, utilisée par un grand nombre de projets majeurs du monde du libre (Firefox, Matrix, Yunohost…). Ce qui par effet d'attraction — et de réseau centralisant, contraire au choix de git décentralisé par nature — conduit souvent à faire de Github un choix par défaut, facilitant les interactions avec les autres projets et permettant d'accéder à une large base de contributeurs potentiels. Quand on cite une URL GitHub dans un réseau social, on peut d'ailleurs voir apparaître ce genre de message :

        Contribute to Someone/my_project development by creating an account on GitHub.

        Cependant, si ce service fourni par Microsoft est actuellement encore gratuit, il est soumis à son bon-vouloir, avec le risque de voir se répéter l'épisode SourceForge (publicités trompeuses, installateurs modifiés, usurpation d'identité de projets partis ailleurs, etc.).

        Par ailleurs, derrière une communication favorable à l'open source, le code de la forge GitHub est volontairement fermé. Vous ne pouvez donc pas avoir votre propre instance de GitHub. En outre, cela laisse un flou sur l'exploitation de nos données (au sens large, le code lui-même et nos données personnelles, l'hébergement étant délégué). Avec l'arrivée du projet Copilot, il est cependant certain que nos codes servent à alimenter un outil d'IA, permettant à Microsoft de monétiser des suggestions de code en faisant fi des questions de licence. Une partie d'un code sous licence libre pourrait potentiellement se retrouver injectée dans un projet avec une licence incompatible et de surcroît sans citation de l'auteur.

        Des alternatives possibles

        On pense tout d'abord à GitLab, logiciel lancé en 2011, qui permet d'avoir sa propre instance serveur pour maîtriser l'ensemble (client et serveur sont libres). Parmi les grands projets libres, on trouve en particulier GNOME et Debian qui utilisent leur propre instance GitLab CE (Community Edition), logiciel sous licence MIT. Mais il faut nuancer : la forge GitLab.com utilise GitLab EE (Enterprise Edition) qui est propriétaire et propose des fonctionnalités supplémentaires. GitLab suit donc un modèle dit open core. GitLab compterait plus de 30 millions d'utilisateurs inscrits et l'entreprise GitLab Inc., lancée en 2014, génère plusieurs centaines de millions de dollars de revenus. On notera enfin qu'en 2018, le site migre de Microsoft Azure à Google Cloud Platform (USA), ce qui a posé des problèmes d'accès dans certains pays.

        Autres projets de forges libres plus modestes :

        • Codingteam.net (une initiative française, service clôturé en 2019).
        • SourceHut http://sr.ht (et https://sourcehut.org/), initié par Drew DeVault.
        • Disroot basé sur Forgejo comme Codeberg, mais il ne semble pas avoir attiré de projets d'envergure (le portail, sorte de Framasoft néerlandais, est néanmoins à recommander).
        • Chez un Chaton (GitLab ou Gitea pour la plupart).
        • L'auto-hébergement : chez-vous, dans un fablab, en datacenter sur serveur dédié…

        Pour vous faire venir sur Codeberg

        Premières impressions

        La page principale est accueillante et annonce que Codeberg.org ne vous piste pas et n'utilise pas de cookies tiers. Les statistiques actuelles sont affichées : nombre de projets, d'utilisateurs et de membres de l'association. Chose agréable, vous avez la possibilité de choisir le français parmi les nombreuses langues proposées pour l'interface. Petite icône qui attire l'attention : l'activité de chaque dépôt peut être suivie grâce à un flux RSS. Sinon, l'organisation générale est très semblable à celle de GitHub ou GitLab et la prise en main de Codeberg se fait donc sans effort.

        Fonctionnalités avancées

        • Codeberg pages : permet de disposer d'un site web statique pour le projet
        • Forgejo actions : pour dérouler automatiquement les actions nécessaires à l'intégration continue (CI/CD)
        • Weblate : pour gérer les traductions de votre projet. On peut d'ailleurs y constater que parmi les traductions de Forgejo, le Français est dans le peloton de tête.

        Projets ayant migré ou ayant un miroir sur Codeberg

        Un certain nombre de projets importants utilisent désormais Codeberg, ce qui est à la fois un gage de confiance et assure une base de contributeurs a minima :

        • libreboot : remplacement libre de BIOS/UEFI.
        • Conversations : le client majeur XMPP sur Android.
        • WideLands : jeu libre basé sur le concept de Settlers II.
        • LibreWolf : fork de Firefox axé sur la vie privée.
        • F-Droid : magasin d'applications libres pour Android.
        • FreeBSD : miroir de https://cgit.freebsd.org/
        • FreeCAD : miroir officiel.
        • Forgejo : fork communautaire de Gitea suite à la privatisation de celui-ci en 2022.
        • Fedilab : client Android pour le Fediverse.
        • irssi : client IRC.
        • Peppermint OS : une distribution Linux avec bureau minimaliste.
        • DivestOS : un fork de LineageOS orienté sur la protection de la vie privée.
        • VeggieKarte : un service pour trouver des restaurants végétariens/végétaliens.

        Comment migrer vers Codeberg ?

        Migrer le code source et l'éventuel Wiki associé ne devrait pas poser de problème particulier. Il suffit de configurer git pour pusher vers la nouvelle forge. Cette page décrit comment migrer l'ensemble de votre projet (incluant les issues, le wiki, les Pull Request, etc.) vers Codeberg : https://docs.codeberg.org/advanced/migrating-repos/

        Concernant les Workflows (CI), bien qu'il n'y ait pas de garantie de compatibilité avec les Actions Github, la syntaxe se veut similaire pour faciliter la transition : https://forgejo.org/2023-02-27-forgejo-actions/

        Au-delà de l'aspect technique, il reste aussi à faire migrer la communauté d'utilisateurs (la présence fortement suivie sur Mastodon peut être un avantage).

        Conclusion

        Codeberg est un outil prometteur. Il reste pour la communauté du logiciel libre à le faire grandir. Rappelons les statistiques : 100 millions de développeurs sur GitHub, 30 millions utilisant GitLab et 100 000 pour Codeberg. Le potentiel est grand, l'un des enjeux est de financer l'association pour accompagner la croissance de la communauté, tout en faisant monter en puissance l'infrastructure informatique.

        Sources / Liens

        Controverse GitHub

        Forges diverses

        Codeberg


        1. e.V. est l'abréviation de eingetragener Verein (association déclarée). 

        Commentaires : voir le flux Atom ouvrir dans le navigateur

        Sortie de passbolt v4.5 : Gestion de l'expiration des mots de passe et autres améliorations

        La version 4.5.0 de Passbolt, baptisée « Summer is Ending », vient de sortir. Elle introduit des fonctionnalités clés et des améliorations pour optimiser la gestion des mots de passe et de leurs cycles de vie de manière sécurisée et collaborative.

        Pour mémoire, Passbolt est un gestionnaire de mots de passe Opensource, sous licence AGPL, qui se veut orienté «équipe», avec notamment des possibilités de partage de mot de passe à des personnes ou des groupes.

        Nouvelles fonctionnalités

        Gestion de l’expiration des mots de passe

        Cette nouvelle fonctionnalité permet la gestion et le traçage des mots de passes expirés.
        Un mot de passe partagé, ayant été consommé par un utilisateur, expire automatiquement quand l’accès de cet utilisateur a été révoqué. Vous pouvez en savoir plus sur l’article de blog dédié à ce sujet (en).

        Animation montrant le fonctionnement de la fonctionnalité d’expiration des mots de passe

        Support du Russe

        Suite à une contribution communautaire, passbolt est maintenant disponible en langue Russe, ce qui amène le total des langues supportées à 14. Un énorme merci à notre communauté pour ses contributions de plus en plus fréquentes.

        Capture d’écran montrant la langue russe disponible dans passbolt

        Intégration de Microsoft 365 et Outlook dans les paramètres SMTP

        Enfin, les paramètres SMTP ont été améliorés afin de permettre un meilleur support de Microsoft 365 et de Outlook.

        En savoir plus sur la version 4.5.0

        Pour en savoir plus et mettre à jour vers passbolt 4.5.0, consultez les notes de version (en).

        Commentaires : voir le flux Atom ouvrir dans le navigateur

        ❌
        ❌