❌

Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraĂźchir la page.
À partir d’avant-hierFlux principal

Netlibre, un service libre et un nom de domaine gratuit

24 décembre 2024 à 19:13

Le service netlibre, revu et corrigé

Le service netlibre fournit gratuitement des noms de domaine et une interface simple pour les modifier. Récemment, ce service a été mis à jour.

Vous voulez en savoir plus sur le service ? Vous ĂȘtes dĂ©jĂ  bĂ©nĂ©ficiaire du service ou souhaitez le devenir ? Venez lire la suite !

Dans cet article, je vais me focaliser sur le service netlibre. L’histoire, l’ancienne version, la nouvelle et le futur du service. Et en bonus, les problĂšmes rencontrĂ©s. Les aspects purement techniques feront l’objet d’autres articles.

Sommaire

Trop Long ; Pas Lu (note aux utilisateurs actuels et pressĂ©s)

La nouvelle version de netlibre reprĂ©sente une rĂ©Ă©criture complĂšte du service. Points Ă  retenir : bien meilleure stabilitĂ©, les domaines peuvent ĂȘtre gĂ©rĂ©s Ă  plusieurs et mĂȘme transfĂ©rĂ©s entre utilisateurs, et bien davantage de vĂ©rifications sont faites sur les entrĂ©es des utilisateurs pour prĂ©venir un maximum d’erreurs.

Pour les utilisateurs actuels : votre compte a Ă©tĂ© migrĂ©. Vous pouvez voir vos domaines depuis la nouvelle interface. Le contenu des zones n’a cependant pas Ă©tĂ© repris (pour des contraintes techniques), il faudra les re-remplir mais je pourrai vous fournir vos zones sur demande.

Pas d’inquiĂ©tude : les zones actuelles sont toujours servies, il n’y a pas eu de coupure du service DNS. Tant que vous ne faites pas de modification de votre zone sur l’interface, l’ancienne zone reste servie.

Une adresse email vous est demandée lors de votre connexion, elle est désormais obligatoire. Elle permet la récupération de mot de passe, de vous tenir informé des interruptions (volontaires ou non) du service ainsi que des mises à jour.

Connectez-vous au moins une fois dans les 6 mois. Pour faire du ménage je supprimerai les comptes qui ne se connectent pas au moins une fois dans les 6 mois suivant la publication de cet article.

Présentation du service

Le service netlibre fournit des noms de domaines (ou noms de SOUS-domaines si vous prĂ©fĂ©rez) gratuitement. Ainsi, n’importe qui peut se rĂ©server un nom de domaine en « *.netlib.re Â» ou « *.codelib.re Â». L’administration du domaine se fait en quelques clics, sans compĂ©tences requises. Ce service est donc utile pour n’importe qui souhaitant un nom de domaine, Ă  titre individuel ou pour une association par exemple.

Il est Ă©galement possible de mettre Ă  jour dynamiquement une adresse IP d’un enregistrement. Avoir une adresse IP dynamique n’est donc pas un frein Ă  l’utilisation du service ; ce qui est courant pour les connexions Ă  Internet chez les particuliers.

Le code source du service est entiùrement libre, que ce soit l’interface, le service d’authentification ou le service dnsmanager qui lie l’interface web au serveur de noms. Tout est libre, sous licence ISC.

Histoire

Cela fait dĂ©sormais plus de 9 ans que le site netlibre permet de rĂ©server et de gĂ©rer des noms de domaines, gratuitement (le service est mĂȘme encore plus vieux que ça, mais c’était beaucoup plus confidentiel). Un article sur LinuxFr.org avait Ă©tĂ© postĂ©, puis 9 ans se sont Ă©coulĂ©s non sans peine.

L’objectif initial Ă©tait de me permettre de gĂ©rer des zones simplement et mettre Ă  jour des adresses IP de maniĂšre automatique. De mĂ©moire, selon mes recherches de l’époque, rien n’existait en libre pour faire cela ; les outils s’en approchant Ă©taient trop complexes pour la simple gestion d’une zone. J’ai donc dĂ©veloppĂ© un outil permettant de visualiser de maniĂšre claire une zone et de modifier les entrĂ©es comme on pouvait le voir sur des sites professionnels. C’était Ă  la fois directement utile pour moi, et un petit dĂ©fi technique qui m’intĂ©ressait. Comme cela semblait utile pour d’autres personnes, j’ai partagĂ© avec grand enthousiasme mon petit bricolage.

MalgrĂ© l’engouement du dĂ©but, le site a trĂšs peu Ă©voluĂ© par la suite, par manque de temps et d’énergie. Il remplissait son rĂŽle pour mon usage, donc pendant des annĂ©es je n’y ai pas touchĂ© du tout. Quand j’ai voulu m’y remettre, avec quelques annĂ©es d’expĂ©rience supplĂ©mentaires, le code me semblait trop bancal pour m’y investir davantage. Les problĂšmes rencontrĂ©s demandaient une rĂ©Ă©criture complĂšte. La derniĂšre section de l’article donne des dĂ©tails.

netlibre, c’est dĂ©sormais 9 ans, 7000+ utilisateurs et 32 000 zones. Qu’on s’entende bien, une bonne partie de ces comptes et de ces zones sont Ă  jeter car des robots sont passĂ©s par lĂ . D’ailleurs, le service, avec ses quelques dizaines de milliers de domaines, reste assez modeste. NĂ©anmoins, j’ai Ă©tĂ© contactĂ© par de nombreux utilisateurs au fil des annĂ©es. Le site est rĂ©ellement utilisĂ©, et ça, c’est Ă  la fois une victoire et une vraie surprise.

L’ancienne version

L’ancienne version du site a Ă©tĂ© modifiĂ©e jusqu’à trĂšs rĂ©cemment (quelques mois) pour corriger de gros problĂšmes, notamment d’infrastructure. Cette version permettait de s’inscrire, demander des zones et les gĂ©rer (ajout, suppression, modification) avec une interface simple, comme on peut voir sur OVH ou Gandi. Mais elle n’était pas finie : impossible de se dĂ©sinscrire ou rĂ©cupĂ©rer son mot de passe, de nombreux enregistrements DNS Ă©taient inaccessibles, etc.

Sauf que voilĂ , l’architecture logicielle rend la modification assez dĂ©sagrĂ©able. J’ai donc dĂ©cidĂ© de repartir de 0, avec un meilleur dĂ©coupage du service et des techno adaptĂ©es.

La nouvelle version

Depuis quelques semaines dĂ©jĂ , la nouvelle version est dĂ©sormais en ligne. Les dĂ©tails techniques derriĂšre le service (code, langages, infra, sĂ©curitĂ©, outils
) feront l’objet d’autres articles. Dans cette section, je vais parler des changements par rapport Ă  l’ancien service.

Le partage de domaines est dĂ©sormais possible, ce qui est utile pour des associations. Plusieurs personnes pourront donc possĂ©der le mĂȘme domaine et modifier la zone. Pas d’inquiĂ©tude si un membre de l’association n’est pas disponible, vous gardez le contrĂŽle.

Des enregistrements protégés. Certains enregistrements DNS sont désormais en lecture seule pour éviter de supprimer des informations nécessaires au bon fonctionnement des zones. Ainsi, les enregistrements SOA et NS sont maintenant protégés.

De nouveaux enregistrements sont disponibles : SPF, DKIM et DMARC. Comme vous le savez probablement, ce sont des enregistrements qui se traduisent par des entrĂ©es textes (« TXT Â»). Des interfaces dĂ©diĂ©es sont maintenant disponibles pour Ă©viter une longue lecture de RFC pour savoir comment formater certaines options. Ces enregistrements sont plutĂŽt complexes, donc aider les utilisateurs (mĂȘme expĂ©rimentĂ©s) me semblait nĂ©cessaire.

De mĂȘme, l’enregistrement CAA est dĂ©sormais disponible. N’hĂ©sitez pas Ă  me faire des suggestions pour de futurs enregistrements.

Une adresse email est dĂ©sormais nĂ©cessaire. Les utilisateurs peuvent donc enfin rĂ©cupĂ©rer leur mot de passe perdu. Ils seront Ă©galement prĂ©venus d’une panne, d’une mise Ă  jour, d’un changement sur le site, etc.

Suppression de compte. Les utilisateurs peuvent dĂ©sormais supprimer leur compte. Cela supprimera l’ensemble de leurs domaines (et zones) par la mĂȘme occasion.

Un jeton de mise Ă  jour. Afin de mettre Ă  jour une adresse IP (enregistrement A ou AAAA) pour un serveur avec une IP dynamique, un mĂ©canisme Ă  base de jetons a Ă©tĂ© implĂ©mentĂ©. Ainsi, accĂ©der Ă  une URL telle que https://www.netlib.re/token-update/<jeton> permet au service netlibre d’associer l’adresse IP du client Ă  un enregistrement A ou AAAA (pour lequel on a gĂ©nĂ©rĂ© ce jeton).

Par exemple, la zone toto.netlib.re possĂšde un enregistrement A serveur.toto.netlib.re. L’utilisateur gĂ©nĂšre un jeton (ressemblant Ă  65b609fc-4a53-4a58-aae3-9824551a0fa5) pour cet enregistrement. Enfin, l’utilisateur lance (depuis son serveur) curl https://www.netlib.re/token-update/65b609fc-4a53-4a58-aae3-9824551a0fa5 pour que l’enregistrement serveur.toto.netlib.re pointe vers son adresse IP.

Je ne pense pas qu’il soit possible de faire plus simple. Un simple wget ou curl dans un crontab suffit pour maintenir Ă  jour l’adresse de son serveur. Ce mĂ©canisme permet probablement beaucoup moins de choses qu’un vrai service DynDNS, mais le cƓur du service est lĂ  et sans aucune configuration !

Fin du mode « expert Â» qui permettait d’écrire soi-mĂȘme le fichier de zone bind9. Entrer soi-mĂȘme le fichier de zone semblait ĂȘtre une bonne idĂ©e, mais cela mĂšne surtout Ă  des problĂšmes d’infrastructure. Pour bien faire, il aurait fallu que les utilisateurs aient accĂšs aux logs pour apprendre de leurs erreurs et corriger leurs zones, sauf que c’est inutilement complexe. Le mode « expert Â» devait pallier quelques lacunes de l’interface qui ne gĂ©rait qu’une petite partie des enregistrements possibles. Maintenant que l’interface permet de configurer les enregistrements DNS les plus courants, le mode expert perd une grande partie de son intĂ©rĂȘt.

Plein de vérifications supplémentaires pour éviter des erreurs (simples et moins simples). Ces vérifications portent sur les adresses IPv4 et IPv6, les adresses email (grammaire décrite dans la RFC 5322), les noms de domaine et les labels (grammaires décrites dans les RFC), ou encore les options SPF, DKIM et DMARC. Cela est utile à tout le monde, y compris à des administrateurs expérimentés mais inattentifs.

Une interface didactique. L’interface se veut agrĂ©able Ă  utiliser et rappelle rĂ©guliĂšrement les bases aux novices. Par exemple, pas besoin d’aller chercher des informations complĂ©mentaires dans des RFC pour manipuler du SPF, DKIM ou DMARC. J’espĂšre apporter Ă  l’avenir ce niveau d’aide Ă  la configuration pour d’autres enregistrements.

Inclusion de netlibre dans la PSL. Le domaine netlibre est désormais dans la Public Suffix List, le domaine codelib.re devrait suivre.

Migration : pourquoi une migration partielle

Comme dĂ©crit en dĂ©but d’article, les comptes sont repris dans la nouvelle version du site. Votre identifiant et votre mot de passe sont toujours valides. De mĂȘme, les zones sont toujours servies, il n’y a pas eu de coupure de service. En revanche, les zones n’ont pas Ă©tĂ© traduites dans la nouvelle interface, vous les verrez donc vierges. La raison est simple : le temps et l’énergie. Traduire des zones Bind9 (dans un format non trivial et parfois pleines d’erreurs) est assez long et peu engageant.

Maintenant que le service a Ă©tĂ© migrĂ©, vos domaines sont toujours prĂ©sents et vous sont toujours rĂ©servĂ©s. L’ancien contenu des zones peut vous ĂȘtre envoyĂ© pour vous aider Ă  les reconfigurer sur la nouvelle interface, si c’est rĂ©ellement nĂ©cessaire pour vous.

Le futur

Dans cette section je parlerai de propositions d’évolution pour le service, mais rien n’est gravĂ© dans le marbre. J’ai par ailleurs encore du travail Ă  faire sur cette nouvelle version. Tout ce qui est prĂ©sentĂ© ici viendra aprĂšs ce qu’il me reste Ă  faire, c’est-Ă -dire de nombreuses vĂ©rifications cĂŽtĂ© serveur (y compris de la surveillance de l’infra et autres joyeusetĂ©s inhĂ©rentes au dĂ©veloppement de services en ligne) et une bonne pause bien mĂ©ritĂ©e !

Traduire l’application. Contrairement Ă  l’ancienne version, le site est dĂ©sormais en anglais, pour diverses raisons. J’aimerais donc y apporter une traduction en Français, puis d’autres langues si des gens veulent bien s’y atteler.

GĂ©rer vos zones. netlibre pourrait permettre de gĂ©rer des zones venant d’ailleurs. Par exemple, vous possĂ©dez « toto.fr Â» et vous souhaitez utiliser l’interface de gestion de netlibre. L’interface a Ă©tĂ© pensĂ©e pour ĂȘtre agrĂ©able Ă  utiliser, ce serait dommage de ne pas en profiter pour d’autres domaines.

DĂ©lĂ©guer des zones. À l’inverse, il serait Ă©galement intĂ©ressant de permettre la dĂ©lĂ©gation des zones netlibre. Cela reviendrait Ă  prendre un nom de domaine de chez netlib.re sans utiliser l’interface de gestion.

Ouverture d’une API. La crĂ©ation de comptes, la rĂ©servation de noms de domaines et la modification de zones pourraient ĂȘtre automatisĂ©es. Cela pourrait ĂȘtre utile par exemple Ă  une association qui souhaiterait automatiser la procĂ©dure pour ses membres. Cela Ă©tait dĂ©jĂ  prĂ©vu il y a 9 ans, et maintenant que le code est un peu plus sĂ©rieux, il est dĂ©sormais pertinent de se re-poser la question.

De nouveaux enregistrements DNS. Divers enregistrements pourraient ĂȘtre implĂ©mentĂ©s pour offrir une interface toujours plus complĂšte, y compris pour des utilisateurs avancĂ©s. Ainsi, des enregistrements tels que LOC, RP ou HINFO pourraient voir le jour. DNSSec pourrait ĂȘtre de la partie Ă©galement. Je n’utilise pas personnellement ces fonctionnalitĂ©s donc je ne me sens pas non plus pressĂ© de les implĂ©menter. Si cela vous tient Ă  cƓur, merci de m’en informer, ça pourrait me motiver.

De nouveaux domaines ? Le service propose actuellement des noms de domaines en « .netlib.re Â» ou « .codelib.re Â». Je suis ouvert Ă  la discussion si des gens veulent financer d’autres noms de domaines ou cĂ©der les leurs.

Le retour du mode « expert Â» ? Pour des personnes expĂ©rimentĂ©es, cela a du sens. En lieu et place de l’écriture d’un rĂ©el fichier de zone Bind9, une entrĂ©e libre avec un format proche d’un fichier de zone Bind9 serait envisageable. Les enregistrements seraient compris et vĂ©rifiĂ©s par l’interface puis traduits dans la reprĂ©sentation intermĂ©diaire utilisĂ©e par netlibre. Le meilleur des deux mondes. Pas de fausse joie cependant, comme cela nĂ©cessiterait pas mal de code, ce n’est pas au programme pour tout de suite.

Alternatives Ă  netlib.re

J’ai vu de nombreux sites proposant des services autour du DNS. Pour citer quelques exemples :

  • eu.org n’est pas pour des novices, et visiblement tout est gĂ©rĂ© Ă  la main sans interface pour s’inscrire
 difficile de faire plus Ă©loignĂ© des objectifs de netlib.re ;
  • freedns.afraid.org ne fournit pas le code source et n’est pas trĂšs ouvert aux novices, mais Ă  part ça le service semble assez complet ;
  • ydns.io ne fournit pas le code source et ne propose pas une gestion d’un domaine qu’ils offrent, seulement un enregistrement A ou AAAA ;
  • nsupdate.info les inscriptions sont fermĂ©es ;

Ces services sont sans doute trĂšs bien. J’envie mĂȘme certaines de leurs fonctionnalitĂ©s, que j’implĂ©menterai peut-ĂȘtre plus tard pour netlibre. Mais il manque systĂ©matiquement le code source, ou l’interface n’est pas faite pour un novice, ou le service ne propose pas tout Ă  fait les mĂȘmes fonctionnalitĂ©s.

Je pense donc sincĂšrement que netlibre a sa place au milieu de tous les autres. Il se dĂ©marque ne serait-ce que par son code libre et son interface simple. À l’avenir, j’espĂšre qu’il se dĂ©marquera par sa complĂ©tude.

Bonus : les problÚmes survenus ces 9 derniÚres années (pour les curieux)

De nombreux problÚmes sont survenus au fil du temps. Le site a été instable pendant longtemps, pour de multiples raisons :

  • une des bibliothĂšques utilisĂ©es gĂšre mal les enregistrements sur plusieurs lignes, menant Ă  des boucles infinies. Cela a Ă©tĂ© corrigĂ© il y a quelques mois Ă  peine (!) et seulement en local car je n’ai pas pris le temps d’envoyer mes corrections (!!). Pour cette raison, il n’était mĂȘme pas possible d’avoir un enregistrement DKIM via l’interface de netlibre ;
  • une maintenance quasi-absente pendant longtemps, par manque de temps et d’énergie ;
  • des plantages Ă  rĂ©pĂ©tition Ă  cause de l’infrastructure (bind9 qui redĂ©marre en boucle Ă  cause d’une erreur de configuration en crachant des tonnes de logs qui saturent le disque) ;
  • des mises Ă  jour qui cassent tout (Ă  cause d’un dĂ©ploiement un peu bancal) ;
  • une architecture logicielle en mode bricolage avec des lancements de commandes lorsque l’utilisateur appuie sur certains boutons ;
  • des lancements de commandes qui ne libĂšrent pas correctement leur descripteur de fichier (je n’ai pas trouvĂ© pourquoi ni comment corriger) ;
  • un manque de vĂ©rifications (notamment Ă  cause du mode expert), menant Ă  des erreurs cĂŽtĂ© Bind9 sans que l’utilisateur en soit informĂ©.

Le plus gros problĂšme a surtout Ă©tĂ© un manque de vĂ©rifications. Les bĂ©nĂ©ficiaires du service ont rĂ©guliĂšrement innovĂ© pour dĂ©truire leurs zones. Entre la suppression des entrĂ©es NS et SOA (merci le mode expert) et les nombreuses valeurs invalides (auxquelles il fallait s’attendre, bien entendu), beaucoup de zones sont invalides sans mĂȘme que les utilisateurs ne le sachent (autrement qu’en faisant des requĂȘtes DNS).

Et j’en oublie sans doute bien d’autres. Tout ça parce que
 netlibre Ă  la base, c’est un projet perso, vite-fait, pour moi. J’avais espoir qu’il serve Ă  quelques dizaines d’autres personnes, max. Le service netlibre s’est beaucoup plus dĂ©veloppĂ© que prĂ©vu et j’ai bon espoir que le service soit dĂ©sormais un peu plus Ă  la hauteur.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Campus du Libre 2024 (Lyon) : Demandez le programme

La programmation du Campus du libre qui aura lieu le 23 novembre 2024 sur le Campus de la Manufacture des Tabacs de l'Université Jean Moulin Lyon 3 est disponible.

Campus Du Libre 2024(BanniĂšre)

Sur la journée, ce sont une quinzaine de conférences, une dizaine d'ateliers, un village associatif qui seront proposés aux publics. Il y aura aussi des animations singuliÚres : découverte de jeux vidéos libres et de outils libres pour en concevoir d'autres, une flash party (libération de téléphone mobile), install party (libération d'ordinateur) ainsi que des expositions.

Cet événement annuel se déplace à chaque édition sur un campus lyonnais avec pour objectif de sensibiliser au numérique libre.

Des publics divers sont attendus, allant de la communauté universitaire aux entreprises du numérique, des usagers avertis comme des novices souhaitant découvrir un numérique de confiance.

Attention : pour les libérations de téléphones et d'ordinateurs, il convient de s'inscrire en amont pour permettre aux équipes de bénévoles d'identifier les méthodologies d'installation les mieux adaptées à vos appareils.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Nouveautés de novembre 2024 de la communauté Scenari

7 novembre 2024 Ă  13:48

Scenari est un ensemble de logiciels open source dĂ©diĂ©s Ă  la production collaborative, publication et diffusion de documents multi-support. Vous rĂ©digez une seule fois votre contenu et vous pouvez les gĂ©nĂ©rer sous plusieurs formes : site web, PDF, OpenDocument, diaporama, paquet SCORM (Sharable Content Object Reference Model)
 Vous ne vous concentrez que sur le contenu et l’outil se charge de crĂ©er un rendu professionnel accessible et responsive.

À chaque mĂ©tier/contexte son modĂšle Scenari :

  • Opale pour la formation ;
  • Dokiel pour la documentation ;
  • Optim pour les prĂ©sentations gĂ©nĂ©riques ;
  • Topaze pour les Ă©tudes de cas ;
  • et bien d'autres


đŸ–„ïž Prochain mini-webinaire : « crĂ©er un conducteur de formation avec le modĂšle Parcours » 15 novembre<br/>

đŸ–„ïž Prochain mini-webinaire : « crĂ©er un conducteur de formation avec le modĂšle Parcours Â» 15 novembre

La session aura lieu le vendredi 15 novembre de 17h à 18h heure de Paris, à l’adresse https://scenari.org/visio/miniwebinaire.

Pour que la session colle au mieux aux besoins de la communauté, tu peux participer à ce fil de discussion sur le forum.

Pour faire connaissance avec Parcours, tu peux voir la mini-vidéo de présentation.

Les sessions précédentes sont sur la page dédiée de scenari.org et dans notre canal peertube.

Pour proposer des sujets, rends-toi sur ce fil de discussion.

📣 Rencontres Scenari 2025 - Strasbourg 11-12-13 juin

📣 Rencontres Scenari 2025 - Strasbourg 11-12-13 juin

Scoop !

Les Rencontres Scenari 2025 se dĂ©rouleront Ă  l'UniversitĂ© de Strasbourg les 11, 12 et 13 juin !

Grand merci aux membres strasbourgeois de la communautĂ© Scenari 💜

Bloque ces dates dĂšs maintenant !

Et si tu fais des choses intĂ©ressantes avec Scenari, penses-y car dans quelques semaines nous lancerons l'appel Ă  contributions 😃

📣 Stagiaire Ă  l'asso, mission : prise en main de Scenari par les dĂ©butant⋅e⋅s (dans le secondaire)

📣 Stagiaire Ă  l'asso, mission : prise en main de Scenari par les dĂ©butant⋅e⋅s (dans le secondaire)

Nous accueillons pendant 6 mois Éric en stage dans l'association, dans le cadre de son master 2 en ingĂ©nierie pĂ©dagogique numĂ©rique Ă  l'universitĂ© de Clermont - Auvergne (UCA).

Éric connaĂźt le systĂšme Ă©ducatif national et ses enjeux puisqu'il est Conseiller Principal d'Éducation, et a Ă©tĂ© directeur-adjoint de lycĂ©es agricoles.

Sa mission principale dans l'association sera de travailler sur la prise en main et développement des outils Scenari, notamment dans le secondaire (analyse des besoins, des blocages, création d'un contenu d'auto-formation pour les grands débutants, promotion, 
).

ParallÚlement il se rapprochera des membres de la communauté pour nourrir la réflexion de son mémoire de recherche.

Tu recevras bientĂŽt une communication sur le sujet.

📣 Un bel exemple de documentation faite avec Dokiel

📣 Un bel exemple de documentation faite avec Dokiel

L'université de Sherbrooke (Québec - Canada), adhérente de l'association, a réalisé une documentation de ses outils numériques avec Dokiel.

Il⋅elle⋅s utilisent le questionnaire au dĂ©but pour profiler leur contenu en fonction du type d'usager (membre du personnel ou personne Ă©tudiante), et ont fait aussi un habillage personnalisĂ©. Bravo ! 👏

Retrouve cette ressources et d'autres dans la section « fait avec Scenari Â» sur le forum.

📣 Nouvelles vidĂ©os de prĂ©sentation des principaux outils Scenari

📣 Nouvelles vidĂ©os de prĂ©sentation des principaux outils Scenari

Les vidéos de présentation des outils Scenari sont sur le canal peertube de l'association.

Il y a Canoprof, Dokiel, IDKey, Lexico, Opale, Parcours, Process, SCENARIbuilder, SCENARIstyler, SCENARIsuite-starter, Topaze, Webmedia.

À utiliser et diffuser sans modĂ©ration :)

📣 Appel Ă  interventions #BlueHats le 4 dĂ©cembre 2024 au salon Open Source Experience

📣 Appel Ă  interventions #BlueHats le 4 dĂ©cembre 2024 au salon Open Source Experience

Le réseaux #BlueHats, que nous appuyons réguliÚrement lors des Rencontres Scenari, bénéficiera d'un espace au salon Open Source Experience pour parler de logiciel libre dans l'Administration.

Si tu fais partie du secteur public, tu peux t'inscrire pour parler de tes usages de Scenari (ou tout autre logiciel libre).

Ça peut ĂȘtre un excellent moyen de diffuser notre outil favori ! đŸ„

Envoie ta proposition d'intervention de 5 à 20 minutes d'ici le 15 novembre 23h59 à bluehats@code.gouv.fr 📅

Plus d'info sur le bulletin #BlueHats.

✹ Le savais-tu ?

✹ Le savais-tu ?

L'Ă©diteur Scenari embarque un correcteur d'orthographe et de grammaire.

Pour l'activer il suffit de cliquer sur l'icone « conseils Â» en forme d'ampoule et de cocher l'option « orthographe et grammaire Â» (assure-toi qu'un serveur Language Tool est bien spĂ©cifiĂ© dans la configuration - roue crantĂ©e).

Les mots ou expressions à vérifier seront surlignés dans le contenu et par simple clic droit (ou touche f4) tu auras accÚs aux suggestions de correction.

correcteur d’orthographe et de grammaire dans l'Ă©diteur Scenari

Consulte la documentation pour en savoir plus.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Fedora Linux 41 est dans la place

En ce mardi 29 octobre 2024, les utilisateurs du Projet Fedora seront ravis d’apprendre la disponibilitĂ© de la version Fedora Linux 41.

Fedora Linux est une distribution communautaire dĂ©veloppĂ©e par le projet Fedora et sponsorisĂ©e par Red Hat, qui lui fournit des dĂ©veloppeurs ainsi que des moyens financiers et logistiques. Fedora Linux peut ĂȘtre vue comme une sorte de vitrine technologique pour le monde du logiciel libre, c’est pourquoi elle est prompte Ă  inclure des nouveautĂ©s.

Bureau GNOME

Sommaire

Expérience utilisateur

Passage Ă  GNOME 47. Cette nouvelle version de l’environnement phare de Fedora propose de nombreuses amĂ©liorations. Tout d’abord, il est maintenant possible de personnaliser une couleur "accentuĂ©e" (accent color) qui influencera la couleur de nombreux Ă©lĂ©ments graphiques comme des boutons. Cela intĂšgre donc un changement en place chez Ubuntu depuis quelques annĂ©es. Pour ceux disposant de petits Ă©crans, certains boutons et autres icĂŽnes sont agrandies pour rendre leur interaction plus aisĂ©e dans ce contexte.

L’interface a Ă©tĂ© en partie remaniĂ©e au niveau des boĂźtes de dialogue pour rendre leur interaction plus simple notamment avec des petits Ă©crans avec des boutons plus gros et plus espacĂ©s entre eux. Et bien sĂ»r ces boutons tiennent compte maintenant de la couleur accentuĂ©e explicitĂ©e prĂ©cĂ©demment. L’interface pour ouvrir ou sauvegarder un fichier repose maintenant sur le code du navigateur de fichiers nommĂ© Fichiers plutĂŽt que d’utiliser un code indĂ©pendant jusqu’ici. Cela simplifie la maintenance mais permet surtout de fournir l’ensemble des fonctionnalitĂ©s du navigateur de fichiers pour cette tĂąche. Par exemple il est possible de renommer des fichiers depuis cette interface, de changer l’ordre d’affichage en vue icĂŽnes, prĂ©visualiser les fichiers sans les ouvrir, etc. Par ailleurs, le navigateur de fichiers s’amĂ©liore aussi. Les pĂ©riphĂ©riques rĂ©seaux sont maintenant classifiĂ©s permettant d’identifier les ressources oĂč on est dĂ©jĂ  connectĂ©, qu’on a prĂ©cĂ©demment utilisĂ© et les autres. L’ensemble des disques durs internes sont Ă©galement affichĂ©s dans la barre latĂ©rale et groupĂ©s ensemble pour rendre cela plus accessible et facile d’utilisation. Il est possible Ă©galement de supprimer les dossiers par dĂ©faut dans la barre latĂ©rale pour faire de la place si on le souhaite. Et quelques autres changements plus mineurs.

Dans la configuration de l’interface, il est possible via le menu AccessibilitĂ© de configurer le changement automatique de focus d’une fenĂȘtre Ă  une autre par le simple survol de la souris. Option dĂ©sactivĂ©e par dĂ©faut. De mĂȘme lors de l’ajout de nouvelles dispositions clavier, la prĂ©visualisation de cette disposition peut ĂȘtre effectuĂ©e avant de la sĂ©lectionner pour s’assurer que c’est bien celle souhaitĂ©e. De maniĂšre gĂ©nĂ©rale, l’affichage des prĂ©fĂ©rences est plus cohĂ©rente dans le choix des Ă©lĂ©ments graphiques pour les reprĂ©senter Ă  travers l’interface.

Les comptes en ligne progressent Ă©galement, les informations IMAP ou SMTP sont prĂ©remplies en se basant sur l’adresse Ă©lectronique. La synchronisation du calendrier, des courriels et des contacts a Ă©tĂ© ajoutĂ©e pour les comptes Microsoft 365 pendant que la configuration d’un nouveau compte WebDAV permet de dĂ©couvrir les services accessibles depuis ce compte pour faciliter l’expĂ©rience utilisateur.

Le navigateur web maison n’est pas en reste et propose quelques amĂ©liorations dont le prĂ© remplissage des formulaires en se basant sur les entrĂ©es prĂ©cĂ©dentes ce qui est disponible dans de nombreux navigateur. L’option peut ĂȘtre dĂ©sactivĂ©e dans les prĂ©fĂ©rences si nĂ©cessaire. Les marques pages ont Ă©tĂ© aussi remaniĂ©s en Ă©tant affichĂ©s dans un volet latĂ©ral et en proposant une barre de recherche intĂ©grĂ©e pour retrouver celui qu’on souhaite. Le navigateur peut afficher le nombre de trackers publicitaires qui ont Ă©tĂ© bloquĂ©s. Malheureusement la synchronisation des Ă©lĂ©ments via Firefox Sync n’est plus possible en ce moment Ă  cause d’un changement dans la procĂ©dure d’authentification par Mozilla.

L’application calendrier a Ă©tĂ© Ă©galement amĂ©liorĂ©e avec par exemple une icĂŽne de cadenas qui s’affiche pour les Ă©vĂ©nements qui sont en lecture seule. La mise en page est plus cohĂ©rente notamment dans l’espacement entre les Ă©lĂ©ments visuels. L’importation ou l’édition d’évĂ©nements gĂšrent mieux les calendriers cachĂ©s ou en lecture seule. L’application de cartographie a Ă©tĂ© aussi lĂ©gĂšrement amĂ©liorĂ©e en utilisant les cartes vectorisĂ©es par dĂ©faut et en proposant les trajets en transport en commun en exploitant le service Transitous plutĂŽt qu’une solution commerciale.

Pour les amateurs d’enregistrement de leur Ă©cran en vidĂ©o, cette tĂąche peut ĂȘtre effectuĂ©e dans la mesure du possible avec de l’accĂ©lĂ©ration matĂ©rielle ce qui diminue la consommation d’énergie et amĂ©liore les performances du systĂšme dans ce cadre. Dans la mĂȘme veine, le rendu effectuĂ© par la bibliothĂšque graphique GTK se fait via Vulkan dorĂ©navant ce qui amĂ©liore les performances en particulier pour les machines plus anciennes et avec moins d’effets visuels indĂ©sirables due Ă  la lenteur de certaines opĂ©rations. Dans la mĂȘme veine, il y a une amĂ©lioration des performances des applications vidĂ©os, photos et du navigateur web maison par la rĂ©duction quand c’est possible du nombre de copies en mĂ©moire des donnĂ©es d’une vidĂ©o ou d’une image.

Pour ceux qui ont accĂšs Ă  leur session Ă  distance, il est dorĂ©navant possible de rendre cette session persistante. En cas de dĂ©connexion il est possible de revenir plus tard et de retrouver la session dans l’état oĂč elle Ă©tait.

Pour les utilisateurs avancĂ©s, il y a des changements expĂ©rimentaux qui sont proposĂ©s. Si vous souhaitez utiliser la mise Ă  Ă©chelle fractionnaire de l’interface pour les applications utilisant X11 via XWayland, vous pouvez l’activer via la commande suivante :

$ gsettings set org.gnome.mutter experimental-features '["scale-monitor-framebuffer", "xwayland-native-scaling"]'

Couleur d’accentuation dans GNOME

L’environnement de bureau lĂ©ger LXQt passe Ă  la version 2.0. Cette mise Ă  jour importante est essentiellement technique avec un port complet vers la bibliothĂšque graphique Qt 6 au lieu de Qt 5 qui n’est bientĂŽt plus maintenue. La prise en charge de Wayland est disponible Ă  titre expĂ©rimental, cela devrait ĂȘtre stabilisĂ© pour la version 2.1 Ă  venir.

L’éditeur d’image GIMP utilise la branche de dĂ©veloppement qui deviendra la version 3. Cette dĂ©cision a Ă©tĂ© prise car GIMP devenait la raison principale pour maintenir le langage Python 2.7 dans la distribution qui n’est plus maintenue depuis quelques annĂ©es. Alors que GIMP 3 devrait sortir sous peu, il a Ă©tĂ© dĂ©cidĂ© de prendre potentiellement un peu d’avance pour permettre de supprimer cette dĂ©pendance assez lourde et complexe de Fedora.

Outre cette dĂ©cision, cette version de l’application propose entre autres une meilleure gestion des couleurs avec notamment la visualisation, l’import ou l’export d’images avec la colorimĂ©trie CMJN. Les tablettes graphiques ont une expĂ©rience utilisateur amĂ©liorĂ©e avec notamment la possibilitĂ© de personnaliser l’action des boutons de ce matĂ©riel sous Wayland, et la prise en charge des Ă©crans avec une dĂ©finition HiDPI est aussi amĂ©liorĂ©e. L’édition non destructive est Ă©galement possible pour sĂ©parer l’application des effets des calques de l’image pour permettre de revenir dessus plus tard. Si on le souhaite, un calque peut se redimensionner automatiquement lors de son Ă©dition lors d’un dessin par exemple. Et bien d’autres changements.

Le gestionnaire de listes de tĂąches Taskwarrior Ă©volue Ă  la version 3. Cette version a surtout changĂ© la maniĂšre de stocker les donnĂ©es sauvegardĂ©es et n’est pas rĂ©trocompatible avec l’ancienne mĂ©thode. Il est donc nĂ©cessaire d’exporter les tĂąches avec l’ancienne version par l’usage de la commande task export et de les importer avec la nouvelle version avec la commande task import rc.hooks=0. La tĂąche de sauvegarde est aussi confiĂ©e Ă  un nouveau module TaskChampion Ă©crit en Rust.

La mise Ă  jour du cƓur des systĂšmes atomiques de bureau peut se faire sans droits administrateurs, mais pas les mises Ă  niveau de celui-ci Ă  savoir par exemple passer d’une version Fedora Linux Silverblue 40 Ă  Fedora Linux Silverblue 41. Cela Ă©tait dĂ©jĂ  le cas pour Fedora Silverblue avec l’usage de GNOME Logiciels mais a Ă©tĂ© de fait gĂ©nĂ©ralisĂ©. L’objectif est de simplifier la procĂ©dure de mise Ă  jour du systĂšme, qui dans le cadre d’un systĂšme atomique est considĂ©rĂ© comme plus sĂ»re que dans un systĂšme traditionnel de par sa conception qui permet facilement de revenir Ă  l’état prĂ©cĂ©dent et par la faible quantitĂ© de logiciels installĂ©s dans le cƓur du systĂšme.

Les autres opĂ©rations ne sont pas considĂ©rĂ©es Ă  ce stade car trop risquĂ©es pour ĂȘtre confiĂ©es Ă  un simple utilisateur. Pour certaines opĂ©rations le mot de passe administrateur sera systĂ©matiquement demandĂ© telles que l’installation d’un nouveau paquet local, la mise Ă  niveau complet du systĂšme (qui consiste en une opĂ©ration de rebase avec une autre branche de travail), ou changer les paramĂštres du noyau. Pour d’autres comme l’installation d’un paquet provenant d’un dĂ©pĂŽt, la mise Ă  jour, le retour dans un Ă©tat prĂ©cĂ©dent ou l’annulation d’une commande peut se faire sans demander systĂ©matiquement le mot de passe, comme lors de l’usage de commandes via sudo si les opĂ©rations ne sont pas trop espacĂ©es.

Mise Ă  disposition des images Spin KDE Plasma Mobile et Fedora Kinoite Mobile. L’objectif est de fournir une image native avec cet environnement qui fonctionne aussi bien pour tĂ©lĂ©phone que pour les tablettes ou petits ordinateurs portables 2-1 avec possibilitĂ© de dĂ©tacher l’écran tactile du clavier.

De mĂȘme le gestionnaire de fenĂȘtres en mode pavant Miracle exploitant Wayland est proposĂ© dans Fedora et bĂ©nĂ©ficie de son propre Spin. Cette interface moderne prend en charge aussi les fenĂȘtres flottantes, prend en charge les derniĂšres montures de Wayland tout en permettant l’usage des pilotes propriĂ©taires de Nvidia. Il consomme Ă©galement peu de ressources ce qui le rend intĂ©ressant dans l’usage de machines peu performantes ou anciennes tout en exploitant une pile graphique trĂšs moderne et flexible.

L’installation de Fedora Workstation se fera avec le protocole d’affichage Wayland uniquement, les sessions GNOME X11 restent disponibles et installables aprĂšs. Cela suit l’effort entrepris depuis longtemps de faire de Wayland le protocole d’affichage par dĂ©faut de Fedora et par l’abandon progressif de X11 par GNOME Ă©galement. L’état actuel du systĂšme permet de franchir ce cap par dĂ©faut ce qui allĂšge Ă©galement un peu le mĂ©dia d’installation. Cependant pour ceux qui veulent toujours utiliser GNOME avec X11 aprĂšs l’installation pour diffĂ©rentes raisons, il reste possible d’installer les paquets gnome-session-xsession et gnome-classic-session-xsession depuis les dĂ©pĂŽts officiels.

Prévisualisation du clavier dans GNOME

Gestion du matériel

L’installation du pilote propriĂ©taire de Nvidia via GNOME Logiciels est compatible avec les systĂšmes utilisant l’option Secure Boot. Ce mode de sĂ©curitĂ© s’assure que tous les Ă©lĂ©ments de la chaine de dĂ©marrage de la machine sont signĂ©s avec une des clĂ©s cryptographiques autorisĂ©es. L’objectif est d’éviter qu’une tierce personne puisse modifier un de ces composants dans le dos d’un utilisateur afin de rĂ©aliser une attaque plus tard. Le chargeur de dĂ©marrage GRUB, le noyau Linux et ses pilotes sont Ă©videmment concernĂ©s, et installer le pilote propriĂ©taire de Nvidia qui n’est pas signĂ© pouvait rendre la machine impossible Ă  dĂ©marrer.

MĂȘme si Fedora ne fournit pas ce pilote, car il est non libre, l’objectif reste d’avoir un systĂšme fonctionnel et simple Ă  utiliser. Dans ce contexte, GNOME logiciels permet d’outre passer cette limitation en utilisant l’outil mokutil pour auto signer le pilote Nvidia. L’utilisateur devra saisir un mot de passe Ă  l’installation du paquet, et au redĂ©marrage suivant cet outil sera affichĂ© pour confirmer la clĂ© de sĂ©curitĂ© et ainsi autoriser le chargement du dit pilote sans encombre.

Prise en charge des camĂ©ras MIPI pour les systĂšmes utilisant Intel IPU6 qui concerne de nombreux ordinateurs portables actuels. En effet, de nombreux modĂšles utilisent le bus MIPI CSI2 au lieu du traditionnel USB UVC qui Ă©tait la norme jusqu’à prĂ©sent. En effet ce protocole permet des bandes passantes plus Ă©levĂ©es, en consommant moins d’énergie et plus facile Ă  intĂ©grer. Sauf que la prise en charge de ce bus n’était pas pleinement gĂ©rĂ©e, car les images envoyĂ©es sont un peu brutes et nĂ©cessitent des traitements notamment concernant la balance des blancs ou le dĂ©matriçage de l’image ou le contrĂŽle pour l’exposition et le gain. Cela est complexe, car chaque camĂ©ra a ses propres caractĂ©ristiques qui nĂ©cessitent une approche au cas par cas en espace utilisateur. Un travail d’intĂ©gration a Ă©tĂ© fait entre le noyau Linux, libcamera, pipewire et Firefox pour rendre cela possible. Le noyau Linux fourni l’API de base et un pilote pour chaque type de modĂšles, avec un pilote commun pour la prise en charge du protocole en lui-mĂȘme. Le flux vidĂ©o est rĂ©cupĂ©rĂ© par libcamera qui applique des traitements tels que le dĂ©matriçage en prenant en compte le modĂšle considĂ©rĂ©, qui envoie le flux vidĂ©o obtenu par pipewire vers le navigateur Firefox.

L’installateur Anaconda prend en charge le chiffrement matĂ©riel des disques via le standard TCG OPAL2 disponible sur certains pĂ©ripĂ©riques SATA ou NVMe, mais cela nĂ©cessite de passer via un fichier kickstart pour personnaliser l’installation. L’outil cryptsetup n’a pris en charge ce standard que trĂšs rĂ©cemment, l’objectif est de fournir les arguments --hw-opal-only ou --hw-opal Ă  cet utilitaire dans le fichier kickstart. Le premier argument n’active que le chiffrement matĂ©riel, ce qui est recommandĂ© uniquement pour des pĂ©riphĂ©riques oĂč l’usage du CPU pour cette tĂąche nuirait grandement aux performances, alors que le second utilise un chiffrement matĂ©riel et logiciel. Il n’est pas prĂ©vu de fournir cette fonctionnalitĂ© par dĂ©faut et restera pendant un moment une option pour les utilisateurs avancĂ©s, car la sĂ©curitĂ© de l’ensemble dĂ©pend de la qualitĂ© des firmwares de ces pĂ©riphĂ©riques de stockage et qui doivent ĂȘtre maintenus Ă  jour dans le temps ce qui n’est pas garanti.

Utilisation par dĂ©faut de l’outil tuned au lieu de power-profiles-daemon pour la gestion de l’énergie de la machine. C’est l’outil qui permet notamment de passer du mode Ă©conomie d’énergie Ă  performance pour moduler la puissance du CPU en fonction de la consommation d’énergie souhaitĂ©e, ce qui est trĂšs apprĂ©ciable sur les ordinateurs portables en particulier. Cependant power-profiles-daemon est trĂšs simple, en dehors de ces modes trĂšs gĂ©nĂ©riques et d’appliquer cela sur les CPU ou les plateformes matĂ©rielles supportĂ©es, il ne permettait une configuration plus fine ou l’ajout de modes personnalisĂ©es. Les utilisateurs avancĂ©s Ă©taient contraints d’installer un utilitaire additionnel comme tuned pour cela. Il a Ă©tĂ© ajoutĂ© un paquet tuned-ppd qui fourni une API DBus compatible avec l’interface de power-profiles-daemon, ainsi les applications telles que le centre de configuration de GNOME, Plasma ou Budgie peuvent s’en servir directement Ă  la place sans rĂ©gression, tout en permettant aux utilisateurs avancĂ©s d’aller plus loin s’ils le souhaitent en modifiant le contenu de /etc/tuned/ppd.conf comme en changeant les rĂ©glages pĂ©riphĂ©rique par pĂ©riphĂ©rique.

Mise Ă  jour de ROCm 6.2 pour amĂ©liorer la prise en charge de l’IA et le calcul haute performance pour les cartes graphiques ou accĂ©lĂ©rateurs d’AMD. Il fournit entre autres des nouveaux composants tels que Omniperf pour l’étude et l’analyse de performance, Omnitrace pour tracer l’exĂ©cution des fonctions sur le CPU ou le GPU, rocPyDecode comme implĂ©mentation de l’API rocDecode en Python pour l’analyse des donnĂ©es de profilage faits avec cet outil en C ou C++ ou ROCprofiler-SDK pour identifier les points bloquants de performance. Il prend en charge Ă©galement les derniĂšres versions des outils PyTorch et TensorFlow.

L’outil de dĂ©veloppement et de dĂ©bogage des tables ACPI nommĂ© acpica-tools ne prend plus en charge les architectures gros boutistes tels que s390x. En effet, ce standard qui est conçu pour les machines petits boutistes n’a pas beaucoup de sens pour cette architecture, les paquets qui en avaient besoin pour s390x ont de moins en moins cette dĂ©pendance et comme l’usage de cette architecture reste faible surtout pour cet usage, il a Ă©tĂ© dĂ©cidĂ© de retirer la prise en charge de cette spĂ©cificitĂ©. 49 correctifs sur 69 concernant ce paquet sont liĂ©s Ă  cette prise en charge, car le projet n’a jamais voulu les adopter par manque d’intĂ©rĂȘt, ce qui impliquait beaucoup de test et de dĂ©veloppement ralentissant la frĂ©quence des mises Ă  jour du paquet. Ces correctifs sont maintenant supprimĂ©s.

PHP ne prend plus en charge les processeurs x86 32 bits. Il n’y avait dĂ©jĂ  plus de paquets PHP 32 bits dans les dĂ©pĂŽts, mais PHP Ă©tait toujours compilĂ© pour permettre Ă  d’autres dĂ©pendances de l’ĂȘtre pour cette architecture. Des restrictions ont Ă©tĂ© ajoutĂ©es Ă  ces dĂ©pendances pour que cela ne soit plus bloquant. PHP Ă©tait souvent utilisĂ© dans le cadre de tests ou pour gĂ©rer des plugins ou extensions qui pouvaient ĂȘtre dĂ©sactivĂ©es. L’architecture x86 32 bits n’est pour rappel plus pris en charge par Fedora depuis quelques annĂ©es maintenant, ces paquets ne sont utilisables que sur des machines x86 64 bits pour des raisons de compatibilitĂ©. Ce nettoyage permet en contrepartie un gain de temps machine et de dĂ©veloppeurs, car il n’y a plus Ă  gĂ©rer ce cas de figure.

Internationalisation

Le gestionnaire d’entrĂ©es IBus par dĂ©faut pour la langue traditionnelle chinoise de Taiwan passe de ibus-libzhuyin Ă  ibus-chewing. En effet la bibliothĂšque chewing sous-jacent semble avoir une communautĂ© dynamique qui fournit une bonne maintenance contrairement Ă  libzhuyin qui n’est d’ailleurs pas maintenu en ce moment par un locuteur de cette langue ce qui pose quelques difficultĂ©s. Le code semble Ă©galement mieux organisĂ© et plus maintenable.

Nouvelles options de focus dans GNOME

Administration systĂšme

Le gestionnaire de paquet dnf est mis Ă  jour vers sa 5ᔉ version. Cette version Ă©crite en C++ au lieu de Python est bien plus rapide Ă  l’usage et consomme moins d’espace disque et requiert moins de dĂ©pendances pour tourner, l’ensemble est 60% plus lĂ©ger sur le disque. Par ailleurs dnf5daemon remplace PackageKit comme couche de compatibilitĂ© pour dnf dans GNOME Logiciels, ce qui permet notamment le partage des caches entre l’interface console et l’interface graphique Ă©vitant un gaspillage d’espace disque et de bande passante. Niveau performance, certaines opĂ©rations sont maintenant parallĂ©lisĂ©es comme le tĂ©lĂ©chargement et le traitement des donnĂ©es des dĂ©pĂŽts qui doit ĂȘtre jusqu’à deux fois plus rapide. Les plugins sont Ă©galement mieux intĂ©grĂ©s ce qui en simplifie leur installation et leur maintenance. Cependant certains plugins n’ont pas Ă©tĂ© encore portĂ©s, vous pouvez suivre l’avancement pour ceux qui manquent Ă  l’appel. Mais cela ne devrait concerner que peu d’utilisateurs. Certaines options de la ligne de commande n’existent plus par ailleurs, cela vous sera rappelĂ© si vous les invoquiez. L’historique des prĂ©cĂ©dentes transactions de paquets comme les mises Ă  jour ou installations ne sont pas compatibles entre l’ancienne et la nouvelle version, vous ne pourrez donc pas voir vos anciennes transactions pour les annuler par exemple.

Tandis que la commande rpm utilise la version 4.20. Cette version permet de lister ou de supprimer les clĂ©s pour signer les paquets via la commande rpmkeys alors que l’outil rpmsign permet de signer les paquets avec l’algorithme ECDSA. La commande rpm elle-mĂȘme permet d’afficher une sortie en format JSON, en plus du format XML dĂ©jĂ  pris en charge depuis longtemps. Un nouveau plugin rpm-plugin-unshare apparaĂźt pour empĂȘcher Ă  des scripts d’installation de faire certaines opĂ©rations sur le systĂšme de fichiers ou via le rĂ©seau pour des raisons de sĂ©curitĂ©. CĂŽtĂ© crĂ©ation de paquet, l’introduction de la directive BuildSystem est sans doute la plus importante pour permettre de dĂ©finir de maniĂšre unique et gĂ©nĂ©rique la crĂ©ation de paquets basĂ©s sur des outils communs tels que autotools ou cmake. L’empaqueteur n’aurait pas besoin de rappeler pour ces outils courants chaque Ă©tape pour la crĂ©ation du paquet, sauf en cas de particularitĂ©, ce qui permet une meilleure maintenance et cohĂ©rence au sein de la distribution par exemple.

Les systĂšmes Fedora atomiques de bureau et Fedora IoT disposent de bootupd pour la mise Ă  jour du chargeur de dĂ©marrage. La mise Ă  jour du chargeur de dĂ©marrage au sein d’un systĂšme atomique n’est pas trivial, car ce n’est pas une opĂ©ration facile Ă  fiabiliser. Par consĂ©quent rpm-ostree ne prenait pas cela en charge, et c’est pourquoi bootupd a Ă©tĂ© crĂ©Ă© et est maintenant intĂ©grĂ© dans ces versions. Il Ă©tait dĂ©jĂ  prĂ©sent depuis quelque temps sur la version CoreOS ce qui a dĂ©jĂ  donnĂ© un retour d’expĂ©rience en conditions rĂ©elles. Il peut prendre en charge les systĂšmes UEFI et BIOS, mais la mise Ă  jour reste une Ă©tape manuelle pour ĂȘtre automatisĂ©e dans le futur, notamment quand le composant shim sera Ă  jour pour rendre la mise Ă  jour moins risquĂ©e sur les systĂšmes UEFI si la mise Ă  jour est coupĂ©e au milieu de l’opĂ©ration comme lors d’une coupure de courant ou lors d’un plantage. Il permet Ă©galement de pouvoir bloquer l’usage de versions du chargeur de dĂ©marrage plus anciens ayant des failles connues, par l’usage de Secure Boot dbx et le paquet ostree-grub2 pourra ĂȘtre progressivement retirĂ©, ce qui notamment mettra un terme au bogue oĂč chaque dĂ©ploiement est affichĂ© deux fois dans l’interface de sĂ©lection de GRUB et devrait rĂ©duire le risque d’avoir certains problĂšmes lors de la mise Ă  jour du systĂšme.

Les images atomiques de Fedora proposent les outils dnf et bootc, ce premier est utilisable dans un contexte de dĂ©veloppement pour l’instant mais le second peut commencer Ă  servir Ă  dĂ©ployer des images du systĂšme qui sont bootables. Plus tard il est prĂ©vu que dnf puisse remplacer rpm-ostree pour certaines actions. En attendant, en cas d’usage de dnf sur de tels systĂšmes, le message d’erreur sera plus explicite concernant les outils Ă  employer pour rĂ©aliser ces actions. L’objectif est de fournir aux administrateurs systĂšmes des outils plus familiers pour ces diffĂ©rentes actions tout en ayant un outil clairement identifiĂ© pour chaque type de tĂąches.

Introduction de l’outil fedora-repoquery pour faire des requĂȘtes sur les dĂ©pĂŽts comme savoir la version exacte d’un paquet spĂ©cifique dans une autre version de Fedora, la date de mise Ă  jour d’un dĂ©pĂŽt, ou connaĂźtre les paquets qui dĂ©pendent d’un paquet spĂ©cifique (dĂ©pendance inverse donc), etc. Il fonctionne par-dessus dnf concernant cette fonction mais permet de facilement obtenir des informations depuis les dĂ©pĂŽts Fedora, CentOS ou EPEL.

La bibliothĂšque de sĂ©curitĂ© OpenSSL n’accepte plus les signatures cryptographiques avec l’algorithme SHA-1. Cet algorithme n’est plus considĂ©rĂ© comme sĂ»r, car il devient de plus en plus facile de gĂ©nĂ©rer des collisions Ă  la demande. Si vous souhaitez les autoriser Ă  nouveau pour des raisons lĂ©gitimes, malgrĂ© le risque de sĂ©curitĂ©, cela reste possible de le faire via la commande

# update-crypto-policies --set FEDORA40

Commande qui devrait ĂȘtre prise en charge pendant quelques versions encore.

Le gestionnaire de rĂ©seaux NetworkManager ne prend plus en charge la configuration dans le format ifcfg qui Ă©tait dĂ©jĂ  dĂ©suet depuis des annĂ©es. Cela fait suite aux tentatives progressives d’utiliser massivement le format keyfile. Fedora Linux 33 en l’utilisant comme format par dĂ©faut pour les nouveaux profils de connexions, tandis que Fedora Linux 36 a poussĂ© la prise en charge de l’ancien format dans un paquet dĂ©diĂ© non installĂ© par dĂ©faut nommĂ© NetworkManager-initscripts-ifcfg-rh et enfin Fedora Linux 39 a entamĂ© la conversion automatique vers le nouveau format. Et depuis longtemps NetworkManager ne fait que maintenir ce format, de nombreuses options ou types de connexions n’étant de fait pas possibles avec l’ancien format. Cela permet de prĂ©parer la suppression future de la prise en charge de ce format de fichier de NetworkManager lui-mĂȘme.

Dans la mĂȘme veine, le paquet network-scripts a Ă©tĂ© retirĂ©, mettant fin Ă  la gestion du rĂ©seau via les scripts ifup et ifdown. Depuis 2018 ces outils sont considĂ©rĂ©s comme obsolĂšte et soumis Ă  une suppression planifiĂ©e future. D’ailleurs le projet officiel ne fait plus une maintenance trĂšs active de ces outils.

Les interfaces rĂ©seaux pour les Ă©ditions Cloud vont utiliser les nouveaux noms par dĂ©faut (par exemple enp2s0f0) comme adoptĂ©s par les autres Ă©ditions il y a des annĂ©es au lieu de conserver les noms traditionnels (tels que eth0). Cela signifie que le noyau ne recevra plus pour ces systĂšmes le paramĂštre net.ifnames=0 pour maintenir cet ancien comportement. Le reste de l’écosystĂšme avait adoptĂ© la nouvelle nomenclature avec Fedora
 15 en 2011 ! Ce retard est attribuable Ă  certains problĂšmes avec certains outils tels que cloud-init avec cette convention de nommage qui ont Ă©tĂ© rĂ©solus Ă  la fin des annĂ©es 2010 seulement. Ainsi les pĂ©riphĂ©riques auront maintenant une correspondance physique, leur rĂŽle devrait ĂȘtre plus facilement identifiable et limiter le risque de problĂšmes suite Ă  des changements dynamiques des interfaces.

Le gestionnaire de virtualisation libvirt utilise maintenant par dĂ©faut le pare-feu nftables au lieu de iptables pour son interface rĂ©seau vibr0. En effet Fedora utilise par dĂ©faut nftables maintenant et par ailleurs utiliser iptables signifiait crĂ©er des rĂšgles nftables sous le capot. Cette transition est faite pour amĂ©liorer les performances et rĂ©duire le risque d’une suppression accidentelle de rĂšgles par une application tierce, car tout sera mis dans les rĂšgles associĂ©es Ă  la table libvirt_network. iptables sera cependant utilisĂ© si nftables n’est pas prĂ©sent dans le systĂšme et le comportement peut ĂȘtre changĂ© dans le fichier de configuration /etc/libvirt/network.conf.

L’outil Netavark pour gĂ©rer la pile rĂ©seau des conteneurs, notamment avec podman, utilise Ă©galement par dĂ©faut le pare-feu nftables au lieu de iptables. Les avantages du changement sont assez similaires Ă  ce qui est expliquĂ© au point prĂ©cĂ©dent, les rĂšgles associĂ©es Ă  l’outil seront mises dans la table dĂ©diĂ©e netavark. La possibilitĂ© d’envoyer les rĂšgles par lot peut amĂ©liorer de maniĂšre lĂ©gĂšre le temps de dĂ©marrage des conteneurs par ailleurs.

Le gestionnaire de conteneurs Kubernetes a des nouveaux paquets versionnĂ©s, permettant d’avoir plusieurs versions en parallĂšle. Ici les versions 1.29, 1.30 et 1.31 sont proposĂ©es avec des noms comme kubernetes1.31. Cela devenait nĂ©cessaire car Kubernetes maintient 3 versions sur une pĂ©riode de 4 mois par version seulement ce qui rend nĂ©cessaire un tel montage. Cela permet aussi de dĂ©coupler la version de Kubernetes avec la version de Fedora Linux ce qui facilite la gestion pour les administrateurs.

L’implĂ©mentation des interfaces de Kubernetes fait par l’OCI a ses propres paquets cri-o et cri-tools qui sont Ă©galement versionnĂ©s pour pouvoir suivre les versions de Kubernetes.

GIMP 3

DĂ©veloppement

Mise Ă  jour de la suite de compilation GNU : binutils 2.42, glibc 2.40 et gdb 15.

Pour la suite d’outils binutils, cela se concentre surtout sur la prise en charge plus Ă©tendue des instructions des architectures Aarch64, RISC-V et x86_64. Il gĂšre notamment les registres supplĂ©mentaires et les instructions associĂ©es proposĂ©s par l’évolution de l’architecture x86 avec Intel APX. L’assembleur BPF amĂ©liore son interopĂ©rabilitĂ© avec les outils de LLVM en suivant les mĂȘmes conventions.

La bibliothĂšque standard C commence une prise en charge expĂ©rimentale de la norme C23. La capacitĂ© de renforcer la sĂ»retĂ© des programmes compilĂ©s avec le compilateur Clang a Ă©tĂ© aussi amĂ©liorĂ©e pour se rapprocher de ce qui est possible de faire avec le compilateur GCC. De nombreuses fonctions mathĂ©matiques ont une version vectorisĂ©e pour l’architecture Aarch64 ce qui peut amĂ©liorer les performances pour cette architecture.

Pour finir le dĂ©bogueur amĂ©liore significativement son API Python pour faciliter sa manipulation Ă  travers un programme ou script Ă©crit dans ce langage. La prise en charge du protocole Debugger Adapter Protocol s’amĂ©liore encore pour faciliter sa manipulation par divers IDE qui s’en servent pour l’intĂ©grer. Les informations de dĂ©bogage du programme cible au format DWARF sont lues dans un fil d’exĂ©cution dĂ©diĂ© pour amĂ©liorer le temps de chargement.

Mise Ă  niveau de la suite de compilateurs LLVM vers la version 19. Les paquets versionnĂ©s des versions prĂ©cĂ©dentes sont toujours disponibles pour ceux qui ont besoin de la compatibilitĂ© avec les anciennes bibliothĂšques. Les paquets clang, compiler-rt, lld et libomp sont maintenant gĂ©nĂ©rĂ©s Ă  partir du fichier de spĂ©cification du paquet llvm ce qui n’était pas le cas avant. Cela permet entre autres de simplifier leur maintenance mais aussi d’appliquer une optimisation Profile-Guided Optimizations sur ces binaires pour amĂ©liorer les performances. Les paquets Fedora compilĂ©s avec Clang bĂ©nĂ©ficient aussi de la compilation avec l’option -ffat-lto pour avoir des bibliothĂšques ayant le bitcode LTO en plus du binaire au format ELF, ce qui permet de rĂ©duire le temps de l’édition de lien quand ces bibliothĂšques sont impliquĂ©es. Le tout sans recourir Ă  des macros pour obtenir le rĂ©sultat aprĂšs la compilation des paquets et sans renoncer Ă  la compatibilitĂ© pour les logiciels non compilĂ©s avec ce mode activĂ©.

Retrait de Python 2.7 dans les dĂ©pĂŽts, seule la branche 3 est maintenue dorĂ©navant. Enfin, cela est vrai pour l’implĂ©mentation de rĂ©fĂ©rence, il reste possible de le faire via PyPy qui fourni toujours un support de la version 2.7 via le paquet pypy. Pour rappel, Python 2.7 n’est plus maintenu depuis dĂ©but 2020, mais ce maintien Ă©tait nĂ©cessaire pour certains paquets qui n’avaient toujours pas terminĂ© leur portage, en particulier le logiciel GIMP, cas abordĂ© plus haut. Les autres paquets concernĂ©s n’étaient plus vraiment maintenus de fait et ont Ă©tĂ© retirĂ©s. Cela devenait nĂ©cessaire car avec la fin de support de RHEL 7 prochainement, plus aucun correctif pour Python 2 ne sera dĂ©veloppĂ© Ă  l’avenir rendant la situation plus critique encore.

D’ailleurs Python bĂ©nĂ©ficie de la version 3.13. Cette version fournit un nouvel interprĂ©teur interactif avec la coloration activĂ©e par dĂ©faut pour le prompt ou les erreurs. Il donne la possibilitĂ© d’avoir de l’édition multi-lignes qui est prĂ©servĂ©e dans l’historique. Les touches F1, F2 et F3 donnent respectivement l’accĂšs Ă  une aide interactive, Ă  la navigation de l’historique de l’édition et Ă  un mode de copie plus simple pour copier-coller de gros blocs de code. Les messages d’erreur sont Ă©galement plus clairs.

En dehors de cela, Python dispose du tant attendu mode sans verrou global nommĂ© GIL ce qui permet d’amĂ©liorer les performances et de faire de rĂ©els fils d’exĂ©cution parallĂšle dans un programme. Mais ce mode Ă©tant expĂ©rimental, il faut installer le paquet python3.13-freethreading et exĂ©cuter Python avec la commande python3.13t pour en profiter.

Le compilateur juste Ă  temps n’est quant Ă  lui pas fourni d’une façon ou d’une autre, cette fonctionnalitĂ© Ă©tant aussi expĂ©rimentale.

Python est aussi compilĂ© avec l’optimisation -O3 activĂ©e, en ligne avec la maniĂšre de faire par le projet officiel et amĂ©liorant les performances. Selon le test pyperformance le gain de performance est en moyenne 1,04 fois plus rapide rien qu’avec cette option. Auparavant Python Ă©tait compilĂ© avec l’optimisation -O2 qui est moins agressive, cependant la nouvelle option augmente la taille des binaires concernĂ©s d’environ 1.2% (soit 489 kio).

Le framework d’écriture de tests en Python, Pytest se teste avec sa version 8. Cette version n’est pas compatible avec la version prĂ©cĂ©dente, de nombreux Ă©lĂ©ments obsolĂštes sont maintenant traitĂ©s comme des erreurs, et de mĂȘme la façon dont les tests sont rĂ©cupĂ©rĂ©s dans l’arborescence d’un code source a Ă©tĂ© modifiĂ©e ce qui peut poser diffĂ©rents problĂšmes.

En termes d’amĂ©lioration, il propose un meilleur affichage des diff en cas d’erreur lors de l’exĂ©cution d’un test, le rendant plus lisible et plus proche du visuel d’un diffĂ©rentiel gĂ©nĂ©rĂ© Ă  partir de la commande diff.

Mise Ă  jour du langage Go vers la version 1.23. Cette version apporte la tĂ©lĂ©mĂ©trie pour collecter des donnĂ©es sur l’usage de la chaine de compilation Go aux dĂ©veloppeurs du projet, par dĂ©faut dans Fedora la tĂ©lĂ©mĂ©trie est activĂ©e mais reste uniquement sur votre machine, rien n’est envoyĂ© aux serveurs du projet. Ce comportement peut ĂȘtre changĂ© dans les options.

Autrement, quand le temps de compilation est amĂ©liorĂ© lorsqu’un profil d’optimisation est utilisĂ©, passant d’un dĂ©lai supplĂ©mentaire pouvant aller jusqu’au double du temps de compilation normal Ă  maximum 10% supplĂ©mentaire maintenant. Les applications Go ont un usage de la pile qui est lĂ©gĂšrement rĂ©duit tandis que pour l’architecture x86_64, au dĂ©triment d’une lĂ©gĂšre augmentation de la taille du binaire, les boucles peuvent avoir une amĂ©lioration de performances d’environ 1-1,5%.

Mise Ă  jour dans l’écosystĂšme Haskell GHC 9.6 et Stackage LTS 22. Le compilateur en lui-mĂȘme propose de compiler le code pour ĂȘtre exĂ©cutĂ© en tant que programme WebAssembly ou JavaScript. Les deux sont cependant considĂ©rĂ©s comme en dĂ©veloppement et peuvent ĂȘtre sujets Ă  des bogues. L’ensemble des messages d’erreur ont maintenant un code unique, permettant de simplifier la recherche d’une explication et d’une solution concernant celui-ci.

Le langage Perl passe Ă  la version 5.40. Un nouveau mot clĂ© __CLASS__ donne la classe d’exĂ©cution rĂ©elle dont l’instance d’objet est membre, ce qui est utile pour les constructeurs de classes enfants, car l’accĂšs Ă  $self n’étant pas autorisĂ© dans ce contexte. Un autre mot clĂ© :reader est proposĂ©, ajoutĂ© Ă  un membre de classe il permet de dĂ©finir automatiquement une fonction du mĂȘme nom que le membre, qui renvoie cette valeur. Un nouvel opĂ©rateur ^^ est disponible, Ă©tant l’équivalent de && et || mais pour la fonction logique ou exclusif.

Node.js 22 devient la version de rĂ©fĂ©rence, tandis que la version 20 et 18 restent disponibles en parallĂšle. Cette version propose entre autres un client Websocket natif sans dĂ©pendances additionnelles, une mise Ă  jour habituelle du moteur JavaScript V8 vers la version 12.4 qui propose notamment un ramasse-miette WebAssembly. Les flux de donnĂ©es passent par dĂ©faut d’un buffer de 16 kib Ă  64 kib ce qui augmente les performances au dĂ©triment de la consommation de mĂ©moire vive. Enfin le compilateur JIT Maglev fourni par le moteur V8 est activĂ© par dĂ©faut, qui amĂ©liore les performances en particulier pour les petits programmes exĂ©cutĂ©s en ligne de commande.

Pour des raisons de changement de licence, le gestionnaire de bases de donnĂ©es clĂ©-valeur Redis est remplacĂ© par Valkey. En effet Redis a adoptĂ© la licence RASLv2/SSPL en remplacement de la licence BSD qui n’est pas une licence libre ce qui est en conflit avec les rĂšgles de Fedora concernant les licences des logiciels proposĂ©s dans ses dĂ©pĂŽts. Valkey est un fork de Redis qui rĂ©utilise la mĂȘme licence originelle. À ce jour pas d’incompatibilitĂ© est Ă  prĂ©voir pour les utilisateurs de ce logiciel, mais un paquet valkey-compat est proposĂ© pour migrer la configuration et les donnĂ©es depuis Redis. Le changement est effectuĂ© automatiquement lors de la mise Ă  niveau de Fedora pour ces utilisateurs.

La bibliothĂšque Python d’apprentissage profond Pytorch est Ă©clairĂ©e avec sa version 2.4. Le changement majeur de cette version est la prise en charge de ROCm pour tirer parti de l’accĂ©lĂ©ration matĂ©rielle de l’intelligence artificielle proposĂ©e par AMD. Il y a Ă©galement une amĂ©lioration de performances pour ceux utilisant GenAI sur un CPU ou encore exĂ©cutant sur des processeurs AWS Graviton3 Ă  base d’architecture Aarch64.

L’API engine de la bibliothĂšque OpenSSL est dĂ©prĂ©ciĂ©e car non maintenue tout en gardant une ABI stable. En effet cette API n’est pas conforme aux standards FIPS et n’est plus maintenue depuis la version 3.0 d’OpenSSL. Aucun nouveau paquet ne peut dĂ©pendre de celui-ci jusqu’à sa suppression dĂ©finitive pour simplifier la transition. Le code liĂ© Ă  cette API est fourni par le paquet indĂ©pendant openssl-engine-devel pour ceux qui en ont besoin. L’objectif Ă  terme est de simplifier la maintenance tout en rĂ©duisant la surface d’attaque.

Projet Fedora

L’édition de Fedora KDE pour l’architecture AArch64 est maintenant bloquante pour les sorties d’une nouvelle version. L’édition doit ĂȘtre suffisamment stable pour qu’une nouvelle version de Fedora Linux voit le jour. Cela Ă©tait dĂ©jĂ  le cas pour Fedora Workstation de cette architecture et pour Fedora KDE pour l’architecture x86_64. L’objectif est de garantir une certaine fiabilitĂ© pour ses utilisateurs.

Phase 4 de l’usage gĂ©nĂ©ralisĂ© des noms abrĂ©gĂ©s de licence provenant du projet SPDX pour la licence des paquets plutĂŽt que des noms du projet Fedora. Cela devait ĂȘtre l’ultime phase mais quelques contretemps repoussent Ă  nouveau l’échĂ©ance. Cette Ă©tape et la suivante sont en fait la conversion massive des paquets vers le nouveau format, comme rapportĂ© par ce document, la progression reste rapide et prĂšs de 98,5% des licences mentionnĂ©es dans les paquets sont dĂ©jĂ  converties.

Les bibliothĂšques Java n’ont plus une dĂ©pendance explicite envers le runtime de Java pour simplifier la maintenance, rien ne change concernant les applications. L’objectif est d’éviter de spĂ©cifier une version spĂ©cifique de la version de Java pour du code qui finalement n’est pas exĂ©cutĂ© directement, la dĂ©pendance revenant plutĂŽt aux applications Ă  ce sujet. Cela peut faciliter les utilisateurs ou mainteneurs d’utiliser diffĂ©rents JDK pour ces bibliothĂšques. Cela simplifie considĂ©rablement aussi la maintenance des paquets Java dans Fedora, car il n’est plus nĂ©cessaire de mettre Ă  jour la valeur de la version du JRE requis.

Le paquet systemtap-sdt-devel n’a plus l’outil dtrace qui a Ă©tĂ© mis dans le paquet systemtap-sdt-dtrace. L’objectif est de supprimer la dĂ©pendance Python dans ce paquet qui est utilisĂ© pour l’image de compilation des paquets de Fedora. Plusieurs centaines de paquets peuvent ainsi ĂȘtre gĂ©nĂ©rĂ©s plus rapidement par cette dĂ©pendance en moins.

Ajout d’une tĂąche de nettoyage lors de la gĂ©nĂ©ration des paquets RPM pour amĂ©liorer la reproductibilitĂ© des paquets. Depuis quelques annĂ©es Fedora fait un effort pour rendre la conception de ses paquets reproductibles. L’objectif est qu’un utilisateur devrait ĂȘtre en mesure de recompiler un paquet de son cĂŽtĂ© avec le fichier spec RPM + sources additionnelles de Fedora et obtenir exactement le mĂȘme paquet, au bit prĂšs, garantissant que le paquet a Ă©tĂ© gĂ©nĂ©rĂ© avec ces Ă©lĂ©ments sans altĂ©rations malveillantes. Cela peut Ă©galement faciliter le dĂ©veloppement, car il rend la comparaison entre versions d’un paquet plus facile Ă  analyser car seuls les changements dans le code sont diffĂ©rents et non des Ă©lĂ©ments annexes.

Un effort a Ă©tĂ© fait rĂ©cemment qui repose notamment sur l’usage du programme add-determinism pour retirer du code source des Ă©lĂ©ments non dĂ©terministes comme la date de compilation. Ce programme est appelĂ© Ă  la fin de la gĂ©nĂ©ration du paquet. Fedora n’a pas rĂ©utilisĂ© le travail de Debian Ă  base du script strip-nondeterminism qui est un script Perl qui ajouterait une dĂ©pendance relativement lourde pour gĂ©nĂ©rer tous les paquets de Fedora.

Mise Ă  jour de createrepo_c Ă  la version 1.0 qui gĂšre la gĂ©nĂ©ration des mĂ©tadonnĂ©es des dĂ©pĂŽts de Fedora. Les versions stables et Rawhide de Fedora vont partager maintenant la mĂȘme configuration des mĂ©tadonnĂ©es, ce qui rendra la maintenance cĂŽtĂ© infrastructure plus simple et cohĂ©rente. Toutes les mĂ©tadonnĂ©es sont compressĂ©es, avant seulement les mĂ©tadonnĂ©es primaires l’étaient pour les versions stables de Fedora par exemple. Certaines donnĂ©es ou mĂ©tadonnĂ©es Ă©taient compressĂ©es suivant diffĂ©rents algorithmes :

  • gzip pour les mĂ©tadonnĂ©es des dĂ©pĂŽts ;
  • XZ pour les donnĂ©es XML concernant les mises Ă  jour dans les dĂ©pĂŽts concernĂ©s.

Maintenant tout cela utilise l’algorithme zstd ce qui devrait amĂ©liorer un peu la bande passante et la consommation d’espace de stockage. Il n’est pas exclu de basculer Ă  l’avenir sur zlib-ng dans ce but.

Les fichiers sqlite renseignant la composition des dĂ©pĂŽts n’étaient utiles que pour le gestionnaire de paquets YUM, avec son remplacement par DNF depuis quelques annĂ©es il est inutile de les gĂ©nĂ©rer ce qui avait un coĂ»t en espace de stockage.

La communauté francophone

L’association

Logo de Boorsalinux-fr

Borsalinux-fr est l’association qui gĂšre la promotion de Fedora dans l’espace francophone. Nous constatons depuis quelques annĂ©es une baisse progressive des membres Ă  jour de cotisation et de volontaires pour prendre en main les activitĂ©s dĂ©volues Ă  l’association.

Nous lançons donc un appel à nous rejoindre afin de nous aider.

L’association est en effet propriĂ©taire du site officiel de la communautĂ© francophone de Fedora, organise des Ă©vĂšnements promotionnels comme les Rencontres Fedora rĂ©guliĂšrement et participe Ă  l’ensemble des Ă©vĂšnements majeurs concernant le libre Ă  travers la France principalement.

Si vous aimez Fedora, et que vous souhaitez que notre action perdure, vous pouvez :

  • adhĂ©rer Ă  l’association : les cotisations nous aident Ă  produire des goodies, Ă  nous dĂ©placer pour les Ă©vĂšnements, Ă  payer le matĂ©riel ;
  • participer sur le forum, les listes de diffusion, Ă  la rĂ©fection de la documentation, reprĂ©senter l’association sur diffĂ©rents Ă©vĂšnements francophones ;
  • concevoir des goodies ;
  • organiser des Ă©vĂšnements type Rencontres Fedora dans votre ville.

Nous serions ravis de vous accueillir et de vous aider dans vos dĂ©marches. Toute contribution, mĂȘme minime, est apprĂ©ciĂ©e.

Si vous souhaitez avoir un aperçu de notre activitĂ©, vous pouvez participer Ă  nos rĂ©unions mensuelles chaque premier lundi soir du mois Ă  20h30 (heure de Paris). Pour plus de convivialitĂ©, nous l’avons mis en place en visioconfĂ©rence sur Jitsi.

La documentation

Depuis juin 2017, un grand travail de nettoyage a été entrepris sur la documentation francophone de Fedora, pour rattraper les 5 années de retard accumulées sur le sujet.

Le moins que l’on puisse dire, c’est que le travail abattu est important : prĂšs de 90 articles corrigĂ©s et remis au goĂ»t du jour.
Un grand merci à Charles-Antoine Couret, Nicolas Berrehouc, Édouard Duliùge et les autres contributeurs et relecteurs pour leurs contributions.

La synchronisation du travail se passe sur le forum.

Si vous avez des idĂ©es d’articles ou de corrections Ă  effectuer, que vous avez une compĂ©tence technique Ă  retransmettre, n’hĂ©sitez pas Ă  participer.

Comment se procurer Fedora Linux 41 ?

Logo de Fedora Media Writer

Si vous avez déjà Fedora Linux 40 ou 39 sur votre machine, vous pouvez faire une mise à niveau vers Fedora Linux 41. Cela consiste en une grosse mise à jour, vos applications et données sont préservées.

Autrement, pas de panique, vous pouvez télécharger Fedora Linux avant de procéder à son installation. La procédure ne prend que quelques minutes.

Nous vous recommandons dans les deux cas de procéder à une sauvegarde de vos données au préalable.

De plus, pour éviter les mauvaises surprises, nous vous recommandons aussi de lire au préalable les bogues importants connus à ce jour pour Fedora Linux 41.

Commentaires : voir le flux Atom ouvrir dans le navigateur

img, le cache d’images sur LinuxFr.org

Le site LinuxFr.org utilise divers logiciels libres pour son fonctionnement et ses services : une large majoritĂ© provient de projets tiers (Debian, MariaDB, Redis - version d’avant le changement de licence, nginx, Postfix, conteneurs LXC et Docker, Ruby On Rails, Sympa, etc.) et d’autres composants sont dĂ©veloppĂ©s pour nos propres besoins. Cette derniĂšre catĂ©gorie comprend le code principal du site web en Ruby On Rails, et principalement 5 services autour : le cache d’images img, la tribune board, le convertisseur EPUB 3 epub, le partageur sur les rĂ©seaux sociaux share et le convertisseur LaTeX vers SVG svg. Cette dĂ©pĂȘche va s’intĂ©resser Ă  img, un code sous AGPLv3.

Elle est nĂ©e d’une envie personnelle d’expliquer, documenter et montrer ce qui a Ă©tĂ© fait sur le cache d’images de LinuxFr.org, complĂ©tĂ©e d’une demande d’un « article technique sur le fonctionnement de ce cache, les choix techniques qui ont Ă©tĂ© faits, les erreurs commises donc Ă  Ă©viter
 Â».

    Sommaire

    Des images sur le site

    LinuxFr.org vous permet d’utiliser des images externes dans les contenus et commentaires du site. Ces images sont incluses en syntaxe markdown avec ![description textuelle](adresse "titre optionnel") (soit en saisissant directement du Markdown, soit en cliquant sur l’icĂŽne d’ajout d’image dans l’éditeur). Profitons-en pour rappeler que pour utiliser une image sur LinuxFr.org, vous devez vous assurer de respecter sa licence.

    Nous vous encourageons donc Ă  utiliser des images sous licence libre et Ă  citer les auteurs (c’est mĂȘme obligatoire pour les licences CC-by et CC-by-sa). Cette citation est tirĂ©e de la dĂ©pĂȘche d’annonce Un nouveau reverse-proxy cache pour les images externes sur LinuxFr.org de 2012.

    Il est aussi recommandĂ© de mettre une vraie description textuelle, qui finira dans l’attribut alt de la balise img utilisĂ©e pour l’accessibilitĂ© ou si l’image ne peut ĂȘtre chargĂ©e. Il peut ĂȘtre utile de lui donner un titre qui apparaĂźtra l’autre du survol de l’image Ă  la souris par exemple.

    Exemple :

    ![Logo LinuxFr.org](https://linuxfr.org/images/logos/linuxfr2_classic_back.png "L’actualitĂ© du logiciel libre et des sujets voisins (DIY, Open Hardware, Open Data, les Communs, etc.), sur un site francophone contributif gĂ©rĂ© par une Ă©quipe bĂ©nĂ©vole par et pour des libristes enthousiastes.")

    Logo LinuxFr.org

    Buts du cache d’images

    Les raisons évoquées à la mise en place de img (sans ordre particulier) :

    • la sĂ©curitĂ© : si une image externe n’est servie qu’en HTTP (en clair donc) et est appelĂ©e au milieu d’une page LinuxFr.org elle-mĂȘme servie en HTTPS, alors le navigateur va rĂąler sur le mĂ©lange des genres. img permet de servir toutes les images identiquement (par exemple en HTTPS, et avec le certificat de LinuxFr.org, via le serveur frontal devant img). À noter que ces images ne sont pas servies directement depuis le domaine principal linuxfr.org mais depuis un sous-domaine img.linuxfr.org pour Ă©viter que le JavaScript embarquĂ© dans les images en SVG puisse servir de vecteur d’attaque contre le site.
    • la protection de la vie privĂ©e des personnes visitant LinuxFr.org : seul LinuxFr.org voit les informations en provenance de leur navigateur (dont l’adresse IP). Les Ă©quipes d’administration des diffĂ©rents sites ne les voient plus (elles voient l’adresse IP du serveur LinuxFr.org).
    • une meilleure gestion du trafic : au lieu d’envoyer tout notre public chercher individuellement chaque image, LinuxFr.org la rĂ©cupĂšre une fois et la rend disponible. Si le site externe fournissant l’image est un serveur Ă  faibles ressources (liaison ADSL avec faible dĂ©bit montant par exemple), la mise en cache permet de garantir qu’il ne recevra qu’un faible volume de requĂȘtes (la rĂ©cupĂ©ration se faisant initialement toutes les 10 min tant que des demandes arrivent, le cache expirant aprĂšs 10 min).
    • la conservation des images : les images incluses depuis des sites externes peuvent ne plus ĂȘtre disponibles (l’entitĂ© a disparu, le serveur a Ă©tĂ© arrĂȘtĂ©, le domaine a Ă©tĂ© perdu, l’adresse a changĂ©, etc.). Nous avons donc un mĂ©canisme de cache pour que nous puissions continuer Ă  servir une image mĂȘme si elle devient indisponible.

    Parmi les conséquences de cette implémentation initiale, on peut citer :

    • si le fichier est changĂ© sur le serveur distant (modifiĂ©, converti dans un autre format), l’ancien fichier est servi jusqu’à la prochaine rĂ©cupĂ©ration et le nouveau fichier ne sera servi qu’à la prochaine rĂ©cupĂ©ration ;
    • si le fichier est supprimĂ© sur le serveur distant, l’image ne sera plus servie aprĂšs la prochaine rĂ©cupĂ©ration (car le serveur a rĂ©pondu que l’image n’existe plus) ;
    • il est possible de modifier l’image au passage : les images d’avatar sont retaillĂ©es pour une hauteur de 64 pixels par exemple ;
    • il est possible de bloquer des images : les images problĂ©matiques (pub/spam, contenus pour adultes, images injurieuses, etc.) peuvent ĂȘtre bloquĂ©es et ne plus ĂȘtre servies ;
    • par ailleurs img n’accepte de servir que les images connues de LinuxFr.org dont le poids fait moins de 5 MiB.

    À l’utilisation

    Lors de l’écriture d’un commentaire ou d’un contenu sur LinuxFr.org, une personne va ajouter une image externe via la syntaxe Markdown, par exemple ![Logo LinuxFr.org](https://linuxfr.org/images/logos/linuxfr2_classic_back.png)

    Ce qui donne à l’affichage :

    Logo LinuxFr.org

    Et cÎté code HTML :

    <img src="https://linuxfr.org/images/logos/linuxfr2_classic_back.png" alt="Logo LinuxFr.org">

    OK, mauvais exemple ce n’est pas une image externe, puisqu’elle est hĂ©bergĂ©e sur LinuxFr.org justement. Prenons un autre exemple ![April - Campagne d’adhĂ©sion](https://april.org/campagne-2024/relais/banniereCampagneApril.svg).

    Ce qui donne à l’affichage :

    April - Campagne d’adhĂ©sion

    Et cÎté code :

    <img src="//img.linuxfr.org/img/68747470733a2f2f617072696c2e6f72672f63616d7061676e652d323032342f72656c6169732f62616e6e6965726543616d7061676e65417072696c2e737667/banniereCampagneApril.svg" alt="April - Campagne d’adhĂ©sion" title="Source : https://april.org/campagne-2024/relais/banniereCampagneApril.svg">

    Donc on sert l’image via le sous-domaine img.linuxfr.org. On peut aussi noter le titre rempli automatiquement avec la source. Expliquons la nouvelle adresse :

    • // on sert en https si la page est en https et en http si la page est en http (c’est plutĂŽt un oubli qu’autre chose, vu que le site est uniquement en https)
    • img.linuxfr.org on sert depuis un sous-domaine du site
    • 68747470733a2f2f617072696c2e6f72672f63616d7061676e652d323032342f72656c6169732f62616e6e6965726543616d7061676e65417072696c2e737667 est la version en texte-vers-hexadĂ©cimal de l’adresse d’origine (68 pour h, 74 pour t (deux fois), 70 pour p, etc.). Il existe des sites et des outils en local pour faire cette conversion, mais cela ne concerne pas la simple utilisation du site.
    • banniereCampagneApril.svg on met Ă  la fin le nom du fichier pour ĂȘtre sympa si vous voulez sauver l’image en local avec un nom plus explicite

    Ceci Ă©tait le cas oĂč tout se passe bien, comme prĂ©vu, comme le voulait la personne qui voulait utiliser une image externe.

    Voyons maintenant ce qui se passe dans le cas pas si rare oĂč la personne a donnĂ© une adresse d’image invalide, une adresse ne pointant pas vers une image vers autre chose (cas extrĂȘmement frĂ©quent), une image trop grosse (plus de 5 MiB), etc. Il se passe la mĂȘme chose cĂŽtĂ© code, mais cĂŽtĂ© affichage, pas d’image, et on voit seulement le texte alternatif dans son navigateur. Dans les coulisses, img a rĂ©pondu 404, cette adresse n’est pas disponible.

    On note donc qu’une mĂȘme image servie en http:// ou en https:// aura une adresse convertie en hexadĂ©cimal diffĂ©rente, donc sera vue comme une autre image par img. MĂȘme chose si le serveur externe accepte des adresses sans tenir compte de la casse, ou si on rajoute des paramĂštres dans l’adresse comme « ?mot_magique=merci Â».

    CÎté code Ruby on Rails

    Un contenu ou commentaire est en cours de crĂ©ation et une image externe a Ă©tĂ© mentionnĂ©e. Le code de gestion des images va vĂ©rifier que l’image est dĂ©clarĂ©e dans redis (crĂ©er l’entrĂ©e img/<adresse> avec adresse l’adresse de l’image en clair, ajouter un champ created_at avec l’horodatage, ajouter l’adresse dans la liste des derniĂšres images img/latest) et renvoyer l’adresse via img.

    Le code peut aussi modifier le champ status d’une image dans redis pour mettre ou enlever un blocage (valeur Blocked) par l’équipe du site, et l’ajouter/enlever de la liste des images bloquĂ©es img/blocked.

    CÎté img

    Les schémas dans la documentation du service img explicitent les possibilités et les comportements.

    Il est possible de faire un GET /status et on obtient une rĂ©ponse HTTP 200 avec un contenu OK. C’est utile pour tester que le service est lancĂ© (depuis l’intĂ©rieur de la plateforme).

    Sinon, on peut envoyer des requĂȘtes GET /img/<adresse_en_hexa> or GET /img/<adresse_en_hexa>/<nom_de_fichier> pour les images, et GET /avatars/<adresse_en_hexa> ou GET /avatars/<adresse_en_hexa>/<nom_de_fichier> pour les avatars.

    En se limitant aux requĂȘtes lĂ©gitimes, le comportement de img est le suivant :

    • l’adresse demandĂ©e a Ă©tĂ© prĂ©cĂ©demment dĂ©clarĂ©e (dans redis par la partie code Ruby On Rails) sinon il rĂ©pond 404 ;
    • l’adresse demandĂ©e n’est pas bloquĂ©e par l’équipe du site sinon il rĂ©pond 404 ;
    • l’adresse est dĂ©jĂ  dans le cache disque, alors il renvoie l’image ;
    • l’adresse n’est pas dans le cache disque et la rĂ©cupĂ©ration Ă©choue, il renvoie 404 (et va noter temporairement l’échec dans img/err/<uri>) ;
    • l’adresse n’est pas dans le cache disque et la rĂ©cupĂ©ration a lieu (notĂ© temporairement dans img/update/<uri>): si le serveur rĂ©pond positivement Ă  la demande, avec une image comme attendue, pas trop volumineuse, alors on la met en cache disque. Si c’est un avatar, on peut retailler l’image. On aura des champs supplĂ©mentaires stockĂ©s type avec la nature de l’image (en-tĂȘte Content-Type), checksum avec un hachage SHA1 et etag avec la valeur ETag (entĂȘte ETag).

    Le cache est rafraßchi réguliÚrement.

    img est un binaire statique en Go. Il offre des options pour dĂ©finir le couple adresse:port d’écoute, pour dĂ©finir oĂč envoyer les logs, pour se connecter Ă  une base redis, pour dĂ©finir le rĂ©pertoire du cache disque, pour choisir le User-Agent qui sera utilisĂ© pour les requĂȘtes externes, pour dĂ©finir l’avatar qui sera renvoyĂ© par dĂ©faut, et la possibilitĂ© de le lancer uniquement en mode audit interne pour vĂ©rifier la cohĂ©rence et l’état des donnĂ©es et des fichiers.

    Dans les logs on va trouver des infos comme :

    2024/10/20 20:39:24 Status code of http://example.invalid/exemple1.png is: 404
    2024/10/20 20:39:24 Fail to fetch http://example.invalid/exemple1.png (serve from disk cache anyway)
    2024/10/20 20:44:12 Fetch http://example.invalid/exemple2.png (image/png) (ETag: "be5e-4dba836030980")
    2024/10/20 20:44:12 http://example.invalid/exemple3.png has an invalid content-type: text/html;charset=UTF-8
    2024/10/20 20:44:12 Fail to fetch http://example.invalid/exemple3.png (serve from disk cache anyway)
    

    Ici l’exemple 1 est dĂ©jĂ  en cache et peut ĂȘtre servi mĂȘme si on Ă©choue Ă  le rĂ©cupĂ©rer Ă  ce moment-lĂ . L’exemple 2 vient d’ĂȘtre rĂ©cupĂ©rĂ©. L’exemple 3 a dĂ©sormais une adresse invalide (qui renvoie une page HTML au lieu d’une image) mais il existe en cache une image prĂ©cĂ©demment rĂ©cupĂ©rĂ©e.

    Historique

    img a Ă©tĂ© crĂ©Ă© par Bruno Michel en 2012. Adrien Kunysz amĂšne 5 commits en novembre 2013, mais globalement Bruno est le seul Ă  travailler dessus (43 commits) jusqu’en 2018. img fait le job et il n’est pas besoin d’y retoucher trop souvent.

    En 2022, Bruno quitte l’équipe du site, et par ailleurs il y a des montĂ©es de versions et des migrations Ă  faire sur les serveurs de LinuxFr.org, et img fait partie des services Ă  reprendre en main. Ce qui veut dire le comprendre, le documenter et au besoin l’amĂ©liorer.

    Bref je dĂ©cide de me plonger dans img (2022-2024), car a priori ce n’est pas le composant le plus compliquĂ© du site (il vit dans son coin, il offre une interface, c’est du Go, donc on a un binaire seulement Ă  gĂ©rer).

    Étape 1 : je vais commencer par ajouter un Dockerfile permettant de recompiler img dans un conteneur, en contrĂŽlant la version de Go utilisĂ©e, en effectuant une dĂ©tection d’éventuelles vulnĂ©rabilitĂ©s au passage avec govulncheck. Cela me permet de valider que l’on sait produire le binaire d’une part, et que l’on offre Ă  tout le monde la possibilitĂ© de contribuer facilement sur ce composant.

    Étape 2 : je vais tester le composant pour vĂ©rifier qu’il fonctionne comme je le pense et qu’il fait ce qu’on attend de lui. Je vais ajouter une suite des tests qui couvrent les diffĂ©rentes fonctionnalitĂ©s et les vĂ©rifient en IPv4 et en IPv6, en HTTP 1.1 et en HTTP 2.0. Les tests utilisent Hurl et docker-compose (avec des images redis et nginx), et encore une fois l’idĂ©e de donner la possibilitĂ© de contribuer facilement. Ils comprennent des tests de types de contenus non pris en charge, le test de la limite Ă  5 MiB, diffĂ©rents types d’images, le test de vie, des appels erronĂ©s (mauvais chemin, mauvaise mĂ©thode, etc). Le choix des cas de tests est basĂ© sur le trafic rĂ©ellement constatĂ© sur le serveur de production, sur les diffĂ©rents cas dans le code et un peu sur l’expĂ©rience du testeur.

    Étape 2,5 : l’avatar par dĂ©faut renvoie sur le site de production, y compris sur les tests en dĂ©veloppement en local et sur le serveur de test du site. J’en profite pour ajouter un paramĂštre pour cela (et cela permettra de passer du PNG au SVG par dĂ©faut).

    Étape 3 : encore une fois essayons de simplifier la vie d’hypothĂ©tiques personnes contributrices. Une petite modification pour que hurl et redis soient fournis via docker-compose et ne soient plus nĂ©cessaires sur le poste de dĂ©veloppement.

    Étape 4 : il est temps de documenter plus le fonctionnement. J’avais dĂ©jĂ  dĂ©crit les infos stockĂ©es dans redis, mais pour comprendre le systĂšme de cache, autant fournir des diagrammes pour illustrer ce qui se passe lors d’une requĂȘte et comment on passe d’un Ă©tat Ă  un autre. C’est aussi l’occasion de complĂ©ter la suite de tests en ajoutant des tests avant et aprĂšs expiration du cache, histoire de pouvoir documenter ces cas prĂ©cis.

    Étape 5 : en cas d’échec de rĂ©cupĂ©ration, une image Ă©tait indisponible jusqu’à la prochaine rĂ©cupĂ©ration (donc potentiellement pendant 10 min). Autant servir l’ancienne version en cache lorsque cela se produit : je modifie le code et les tests en consĂ©quence.

    Étape 6 : je sais que certaines images ont Ă©tĂ© perdues, que des adresses d’images ont toujours Ă©tĂ© erronĂ©es, que des contenus et commentaires ont Ă©tĂ© supprimĂ©s et qu’il n’y a donc plus lieu de garder les images associĂ©es. Je dĂ©cide d’implĂ©menter dans img un audit interne qui indiquera si des anomalies sont prĂ©sentes dans redis, si des images sont indisponibles ou si des entrĂ©es dans le cache disque ne correspondent plus Ă  aucune image. Et j’ajoute cet audit dans la suite de tests.

    Étape 7 : j’écris une dĂ©pĂȘche pour parler de tout cela.

    Évolutions rĂ©centes

    Dockerfile

    Le fichier Dockerfile du projet permet :

    • de partir d’une image officielle Go d’une version donnĂ©e, basĂ©e sur une distribution minimale Alpine
    • de l’utiliser pendant la construction en prenant la liste des dĂ©pendances, en les tĂ©lĂ©chargeant, en prenant l’unique fichier source img.go et en le compilant statiquement avec l’option pour retirer les chemins de compilation
    • de rechercher les Ă©ventuelles vulnĂ©rabilitĂ©s avec govulncheck
    • d’ajouter le paquet tzdata pour avoir les dĂ©finitions fuseaux horaires (nĂ©cessaire pour les conversions de/vers GMT pour les entĂȘtes type Last-Modified).
    • de repartir d’une base Alpine en y mettant les dĂ©finitions de fuseaux horaires et le binaire issus de la partie construction, de dĂ©clarer le port d’écoute et de lancer le binaire avec des variables disposant de valeurs par dĂ©faut.

    La suite de tests

    Pour l’utiliser, c’est assez simple, il faut aller dans le rĂ©pertoire tests et lancer un docker-compose up --build, qui va produire le conteneur contenant img, et dĂ©marrer le redis et le nginx prĂ©configurĂ©s pour les tests. Si tout va bien, on attend, et au bout d’un moment il s’affiche :

    linuxfr.org-img-test_1  | All tests look good!
    tests_linuxfr.org-img-test_1 exited with code 0
    

    Rentrons un peu dans les détails.

    D’abord un fichier docker-compose.yaml qui dĂ©crit le rĂ©seau IPv4/IPv6 utilisĂ© pour les tests, l’image redis qui sera utilisĂ©e (stockage gĂ©rĂ© par docker), l’image nginx qui sera utilisĂ©e avec sa configuration et ses fichiers Ă  servir pour les tests, l’image img et son paramĂ©trage (dont l’accĂšs au redis et au nginx) ainsi que le rĂ©pertoire du cache et enfin l’image de la suite de tests qui est construit avec son Dockerfile, prĂ©vue pour faire du Docker-in-Docker et avoir accĂšs au cache img et aux fichiers nginx.

    Le Dockerfile de tests est basĂ© sur une image Hurl (un outil pour faire des tests HTTP). On ajoute les fichiers de tests en .hurl, le script shell qui pilote le tout, on prĂ©voit d’avoir les paquets dont on aura besoin : bash (pas par dĂ©faut dans les Alpine), coreutils, docker et xxd (pour les conversions texte vers hexadĂ©cimal). Et on lance les tests par dĂ©faut.

    La configuration nginx de test Ă©coute en HTTP sur le port 80 en IPV4 et IPv6 et permet de dĂ©finir des chemins avec des rĂ©ponses en HTTP 301, 302, 308, 400, 401, 403, etc. jusqu’à 530 et mĂȘme 666 pour les codes invalides, ainsi qu’une redirection infinie.

    Dans les donnĂ©es de tests servies par nginx, on trouve des contenus du mauvais type, une image destinĂ©e Ă  ĂȘtre bloquĂ©e, des images dans divers formats, une image trĂšs grande en pixels mais pas trop en octets, une image trop grande en octets, et un avatar Ă  servir par dĂ©faut.

    Sont aussi présents cinq fichiers de tests avec une extension en .hurl :

    • le test de vie et les chemins hors img/ et avatars/
    • les tests sur les avatars : adresse valide ou invalide, image inexistante, bon et mauvais types, comportements sur les diffĂ©rents codes HTTP et sur une boucle de redirection infinie
    • les tests sur les images (dĂ©coupĂ©s en trois parties, la partie initiale, la partie entre la rĂ©cupĂ©ration initiale et l’expiration du cache et enfin la partie aprĂšs la rĂ©cupĂ©ration et l’expiration du cache.

    Vient enfin le script shell qui pilote le tout :

    • on dĂ©finit les variables pour les cibles IPv4/IPv6 et les binaires redis et img que l’on veut utiliser dans les autres conteneurs Docker
    • on liste les images dans diffĂ©rentes catĂ©gories :
      • celles qui vont Ă©chouer et ne comporteront donc qu’une entrĂ©e dans redis sans rien dans le cache disque (avec sous-catĂ©gories possibles bloquĂ©es/non-bloquĂ©es)
      • les images devant ĂȘtre en erreur
      • les images qui iront normalement dans le cache
    • on prĂ©pare des images qui seront altĂ©rĂ©es plus tard
    • on purge le cache sur disque, on nettoie redis et on dĂ©clare toutes nos images comme le faire le code Ruby on Rails. Certaines sont dĂ©clarĂ©es bloquĂ©es pour les tests.
    • on lance les premiers tests (en IPv4 et IPv6, en HTTP 1.1 et en HTTP 2.0)
    • on modifie certaines images pour simuler un changement sur le serveur externe, une suppression sur le serveur externe ou un blocage par l’équipe de site
    • on lance les tests post-rĂ©cupĂ©ration initiale mais avant l’expiration du cache (toujours avec toutes les variantes)
    • on force l’expiration du cache
    • on lance les tests post-expiration du cache (toujours avec toutes les variantes)
    • si on est arrivĂ© jusqu’ici, c’est qu’on a passĂ© tous les tests Hurl, alors maintenant on recompte ce que l’on a dans redis et sur disque et on vĂ©rifie si ça correspond Ă  nos attentes
    • on nettoie les images mises volontairement en Ă©chec
    • on lance le test d’audit interne qui doit nous dire que tout va bien
    • si on est arrivĂ© jusque-lĂ  on Ă©crit que tout va bien et on dĂ©clenche un sourire de satisfaction.

    L’audit interne

    L’objectif est de vĂ©rifier la cohĂ©rence des donnĂ©es dans redis, si des images sont indisponibles ou si des entrĂ©es dans le cache disque ne correspondent plus Ă  aucune image.

    Le binaire d’img peut donc ĂȘtre appelĂ© en mode audit et lancer des contrĂŽles internes.

    D’abord il collecte la liste des fichiers dans le cache disque.

    Ensuite il vérifie que toutes les images listées dans les derniÚres images (img/latest) existent comme entrées individuelles.

    Puis il vĂ©rifie s’il existe des images bloquĂ©es (il rĂąlera s’il y en a) et si chacune existe comme entrĂ©e individuelle le cas Ă©chĂ©ant.

    Ensuite on parcourt tous les entrĂ©es individuelles d’images :

    • on rĂąle si on tombe sur une entrĂ©e img/updated/ ou img/err/ sans date d’expiration
    • on rĂąle si on tombe sur une entrĂ©e img/ sans champ created_at, sans type ou d’un type inconnu, sans checksum, avec un statut inconnu, une image bloquĂ©e non prĂ©sente dans les images bloquĂ©es, un champ inconnu, une prĂ©sence inattendue dans le cache disque, etc. Et on marque les images que l’on a vu passer comme attendu dans le cache.
    • on rĂąle sur tous les fichiers du cache restants (ne correspondant Ă  aucune image)
    • si on a rĂąlĂ©, on renvoie 1, sinon 0

    Le grand nettoyage

    img a fonctionnĂ© pendant 12 ans en production : il a rencontrĂ© des bugs, des comportements inattendus, des contenus et commentaires ont Ă©tĂ© supprimĂ©s ou rĂ©Ă©ditĂ©s, etc. Il est donc probable qu’il y ait besoin d’aller dĂ©poussiĂ©rer un peu tout cela et de retirer ce qui est inutile.

    Les traces du grand nettoyage sont d’abord visibles dans la rĂ©trospective de la premiĂšre quinzaine de septembre 2024 :

    • une « image Â» sur sept prĂ©sente un souci (n’est pas une image, adresse invalide, trop grosse, etc.) et n’est donc pas dans le cache sur disque (ce qui a conduit Ă  pas mal de taf sur la partie gestion des images)
    • les types de contenu (Content-Type) en provenance de sites variĂ©s et divers, c’est quelque chose
 entre les « image/JPEG » ou « image/PNG » en majuscules parce que, les charset=utf-8 ou UTF-8 ou
 sur du binaire, les name= qui ne sont pas dans la norme
 Wikimedia renvoie aussi du profile="https://www.mediawiki.org/wiki/Specs/SVG/1.0.0" (pareil ça semble en dehors de tout standard).

    D’abord j’attaque le sujet la fleur au fusil en me disant que ça va passer crĂšme, je fais un joli tableau qui rĂ©sume l’état initial :

                                  img/<uri>   img/updated/<uri>   img/err/<uri>   blocked
    total                           25565 -21       634               160            5
    
    no created_at                      23 -23         0                 0            0
    created_at                       2857 -3          0                 5            1
    created_at+type                   222             0                 0            0
    total not in cache               3104 -26         0                 0            0
    
    created_at+type+checksum(+etag) 22463 +5        634               155            4
    
    files in cache                  22778 +5
    

    Donc on a officiellement 25 565 images, mais 23 sont mal crĂ©Ă©es (Ă©tat thĂ©oriquement impossible hors race condition), 222 sont incomplĂštes (Ă©tat thĂ©oriquement impossible race condition), 22 463 sont attendues en cache et on a 22 778 fichiers dans le cache. Ça part mal. Je nettoie en premier le plus facile (on voit le delta +/- de mes corrections). Et on arrive Ă  une situation oĂč une image sur sept prĂ©sente alors un souci et il faut gĂ©rer un grand volume de corrections Ă  faire.

    Parmi les soucis on trouve des types de contenus inattendus (image/PNG ou image/JPEG avec majuscules, image, des images binaires annoncĂ©es avec un charset, des types invalides comme image/jpg au lieu de image/jpeg, etc), des erreurs de notre lectorat (mauvais lien, mauvais copier-coller, lien vers une page web au lieu d’une image), mais aussi des espaces insĂ©cables et autres blancs inopportuns, des guillemets convertis, des doubles scheme (http://https:// ou http://file://).

    AprĂšs cela se cache une autre catĂ©gorie encore plus pĂ©nible : les images que l’on a en cache, mais qui ne sont plus utiles au site : par exemple celles qui Ă©taient dans des contenus ou commentaires supprimĂ©s (notamment le spam), celles qui Ă©taient dans des commentaires ou contenus rĂ©Ă©ditĂ©s depuis, etc.

    Un problĂšme connu est devenu vite pĂ©nible : on n’a pas d’association entre les images externes et les contenus/commentaires concernĂ©s. Donc il faut d’abord extraire la liste de toutes les dĂ©clarations d’images externes des 12 tables SQL oĂč l’on peut trouver des images et des avatars, sous forme HTML ou Markdown.

    Ensuite il faut sortir toutes les entrĂ©es dans redis et regarder si on les retrouve en clair ou converties en hexadĂ©cimal dans l’extraction SQL.

    Et par sécurité on fera une double vérification pour celles détectées en erreur, en relançant une recherche en base (attention à la casse dans la recherche texte).

    Au final, on peut supprimer des milliers d’entrĂ©es redis et de fichiers dans le cache.

    Et un jour l’audit dit :

    Connection 127.0.0.1:6379 0
    2024/10/19 12:11:21 Sanity check mode only
    2024/10/19 12:11:37 Files in cache: 17926
    2024/10/19 12:11:39 Total img keys in redis: 18374
    OK
    

    Ça aura pris un mois et demi (l’audit a Ă©tĂ© fusionnĂ© le 8 septembre 2024), certes pas en continu, mais ça a Ă©tĂ© long et guĂšre palpitant de faire ce grand mĂ©nage. Et j’ai refait une seconde passe du traitement complet la semaine d’aprĂšs pour vĂ©rifier que tout se passait correctement et que les soucis rĂ©siduels aprĂšs tout ça Ă©taient minimes ou nuls.

    Parmi les anecdotes, Web Archive / archive.org a eu sa fuite de comptes utilisateurs et a Ă©tĂ© indisponible sur la fin (ce qui rendait compliquĂ© la rĂ©cupĂ©ration d’images perdues ou leur remplacement par un lien valide par exemple). Et, mentionnĂ© dans la rĂ©trospective de la seconde quinzaine de septembre 2024, un compte de spammeur de 2015 supprimé  mieux vaut tard que jamais : dĂ©tectĂ© parce que comme beaucoup de visiteurs, le spammeur ne fait pas la diffĂ©rence entre un lien vers un document et l’ajout d’une image.

    Les problématiques restantes

    Il y a la question habituelle de la montĂ©e de versions des dĂ©pendances (pour nous actuellement contraintes celles du code Ruby on Rails) et du remplacement des composants devenus non-libres (migrer vers valkey plutĂŽt que redis ? Questions Ă  se poser sur l’avenir de nginx ?).

    On pourrait aussi ajouter la prise en charge du TLS et d’un certificat X.509 directement dans img plutĂŽt que dans un frontal. Mais ce n’est utile que si on les sĂ©pare sur deux serveurs distants, ce qui n’est pas le cas actuellement. Donc mĂȘme si ça ne paraĂźt pas compliquĂ© Ă  faire, ce n’est pas urgent.

    Ensuite une entrĂ©e de suivi existe pour sĂ©parer le cache des avatars du cache des autres images : les contraintes pour le cache des avatars Ă©tant diffĂ©rentes de celui des autres images, le stockage en cache devrait ĂȘtre diffĂ©rent. Cela reste un problĂšme mineur. Le changement doit d’abord ĂȘtre fait cĂŽtĂ© Ruby on Rails pour dĂ©finir les avatars avec des clĂ©s redis diffĂ©rentes (genre avatars/ au lieu de img/). Ensuite on peut modifier img pour sĂ©parer le traitement des requĂȘtes HTTP /img/<adresse_hexa> vers les clĂ©s redis img/<adresse> et le cache disque des images par rapport aux requĂȘtes /avatars/<adresse_hexa> vers les clĂ©s avatars/<adresse> et le cache des avatars. Il faudra aussi dĂ©placer les avatars stockĂ©s dans l’actuel cache des images dans leur propre cache. Et lĂ  on devrait pouvoir avoir la mĂȘme adresse dans les deux caches mais avec un rendu Ă©ventuellement diffĂ©rent.

    Un autre problĂšme concerne la non-association des contenus ou commentaires avec les images externes qu’ils contiennent, ce qui rend l’administration des anciennes images un peu pĂ©nible. Le fait que les contenus et commentaires peuvent ĂȘtre rĂ©Ă©ditĂ©s ou simplement prĂ©visualisĂ©s (donc que des images peuvent ĂȘtre supprimĂ©es et d’autres ajoutĂ©es) vient compliquer un peu la tĂąche. Actuellement un ensemble de scripts permettent d’obtenir ces infos et fournissent un contournement, mais ça reste un peu laborieux.

    Un cache rafraĂźchi pĂ©riodiquement conserve les images pour Ă©viter de surcharger le site d’origine, pas si le site a changĂ©, dĂ©placĂ© ou perdu l’image. La modification pour servir depuis le cache disque en cas d’échec de rĂ©cupĂ©ration couvre le cas de la disparition d’une image avec une erreur sur l’adresse, pas celui oĂč le serveur rĂ©pond une mauvaise image. Il y a donc une autre entrĂ©e de suivi images et disparition du web Ă©voquant l’augmentation des soucis sur les images externes avec un cache rafraĂźchi, en raison des domaines rĂ©cupĂ©rĂ©s par des spammeurs et autres pĂ©nibles, ou perdus ou utilisĂ©s pour du phishing (imageshack.us, aprĂšs framapic, pix.toilelibre, etc.). Diverses problĂ©matiques sont mentionnĂ©es comme la perte d’information et donc la diminution de l’intĂ©rĂȘt des contenus anciens, la prime aux pĂ©nibles du rĂ©fĂ©rencement SEO qui pourrissent le net en rĂ©cupĂ©rant les vieux domaines, la modification possible des images publiĂ©es. Pour rĂ©soudre cela techniquement, ça nĂ©cessite de suivre les images et les domaines perdus, et d’intervenir de façon rĂ©guliĂšre. Ou bien de ne plus rafraĂźchir le cache (que cela soit jamais, aprĂšs la publication ou au bout d’un certain temps aprĂšs la publication). Pour juste Ă©viter la perte d’info, il est possible de remplacer par une image locale rĂ©cupĂ©rĂ©e d’une archive du net type archive.org, avec le cĂŽtĂ© « pĂ©nible Ă  faire Â» et sans garantie que ça soit toujours possible (merci waybackpy).

    Enfin une troisiĂšme entrĂ©e de suivi suggĂšre l'hĂ©bergement des images des dĂ©pĂȘches (et Ă©ventuellement des journaux), idĂ©alement en permettant d’avoir une version modifiĂ©e d’une image en changeant sa taille. On peut citer en vrac comme problĂ©matiques la responsabilitĂ© lĂ©gale, l’éventuelle volumĂ©trie, l’impossibilitĂ© de corriger une image publiĂ©e facilement par la personne qui l’a soumise, la centralisation et la perte de rĂ©fĂ©rencement pour des tiers, l’éventuelle rĂ©troactivitĂ© et le traitement de l’historique, le fait qu’il faut traiter tous les autres contenus/commentaires pouvant accueillir des images, etc. Autre question, faut-il diffĂ©rencier les images passĂ©es en modĂ©ration a priori de celles en modĂ©ration a posteriori ?

    Conclusion ?

    Bref sans surprise, il reste des problĂ©matiques et du code Ă  faire pour les gĂ©rer (c’est rare un composant sans demandes d’évolution ou de correction). Yapuka (mais probablement plus tard, il faut aussi partager le temps avec les autres composants, ou avoir plus de contributions).

    img apporte les fonctionnalitĂ©s que l’on attendait de lui mĂȘme si on pourrait faire mieux. Plonger dans ce composant s’est avĂ©rĂ© assez intĂ©ressant et formateur (et nĂ©cessaire) : techniquement cela a Ă©tĂ© l’occasion de faire du Go, du docker et du docker-compose, du redis et du nginx, du hurl et de l’HTTP. Et de comprendre ce que faisait un code Ă©crit par une autre personne, de se poser des questions pour choisir les tests et le contenu de la documentation, de se demander pour quelles raisons tel ou tel choix a Ă©tĂ© fait, de rendre ce composant plus « contribuable Â», et de complĂ©ter le tout de façon dĂ©taillĂ©e avec une dĂ©pĂȘche. Reste Ă  savoir si j’ai rĂ©pondu Ă  l’attente d’un article technique sur le fonctionnement de ce cache, les choix techniques qui ont Ă©tĂ© faits, les erreurs commises donc Ă  Ă©viter
 et la rĂ©ponse est Ă  trouver dans les commentaires.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Projets Libres! Saison 3 épisode 2 : stratégies pour startups Open Source

    Pour ce second enregistrement de la saison 3, Projets Libres! reçoit Emily Omier.

    Emily est consultante en stratégie Open Source, et podcasteuse.

    Avec elle nous abordons des thÚmes intéressants, comme :

    • les raisons de monter une startup Open Source ;
    • la relation entre produit et projet ;
    • les changements de licences ;
    • le rĂŽle de la communautĂ© ;
    • les aspirations des fondateurs ;
    • qu'est-ce qu'on entend par avoir du succĂšs ?

    Nous mettons aussi en lumiÚre sa casquette de créatrice de contenu, avec le podcast The Business of Open Source , et de co-fondatrice de la conférence Open Source Founders Summit.

    Bonne Ă©coute!

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Vie privĂ©e sur Internet et appareils connectĂ©s - « Libre Ă  vous ! Â» du 1er octobre 2024 - Podcast

    10 octobre 2024 Ă  12:23

    220Ăšme «  Libre Ă  vous !  Â» de l’April. Podcast et programme :

    • sujet principal : enjeux de la vie privĂ©e sur Internet et sur les appareils connectĂ©s, avec Audric Gueidan, formateur numĂ©rique et auteur de la BD Datamania et Lovis IX de l'association Exodus Privacy ;
    • la chronique PĂ©pite libres de Jean-Christophe Becquet, sur Éducajou : des applications libres pour l'Ă©cole ;
    • la chronique Les transcriptions qui redonnent le goĂ»t de la lecture de Marie-Odile Morandi sur le thĂšme « Elles s'engagent en faveur du logiciel libre au sein de leurs communautĂ©s Â».

    Rendez‑vous en direct chaque mardi de 15 h 30 Ă  17 h sur 93,1 FM en Île‑de‑France. L’émission est diffusĂ©e simultanĂ©ment sur le site Web de la radio Cause Commune.

    Vous pouvez laisser un message sur le rĂ©pondeur de la radio, pour rĂ©agir Ă  l’un des sujets de l’émission ou poser une question. Le numĂ©ro du rĂ©pondeur : +33 9 72 51 55 46.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Le MMORPG Ryzom fĂȘte ses 20 ans !

    17 septembre 2024 Ă  04:56

    En 2004 naquit un jeu au potentiel extraordinaire, sous le regard enthousiaste de ses créateurs.

    AprÚs une enfance jalonnée d'embûches qui ont forgé son caractÚre et uni sa communauté, ce jeu convivial, à l'esprit libre, a su évoluer et toujours aller de l'avant grùce à l'implication de ses joueurs.

    Et aujourd'hui, c'est avec Ă©motion qu'il s'apprĂȘte Ă  passer un nouveau cap.
    Car oui, le temps passe si vite : Ryzom va fĂȘter ses 20 ans !

    Ryzom fĂȘte ses 20 ans en jeu, du 16 septembre au 5 octobre.

    Pour l'occasion, 20 jours de festivités sont prévues en jeu sur l'ßle des 20 ans, du 16 septembre au 5 octobre 2024.
    De nombreuses surprises sont au programme, ainsi que la venue d'anciens membres de Nevrax, le studio qui a développé le jeu.

    Qu'est-ce que Ryzom ?

    Ryzom est un MMORPG de science-fantasy basĂ© sur un monde vivant unique : une planĂšte-plante aux paysages envoĂ»tants, sauvage, peuplĂ©e de mille dangers. Vous pouvez y incarner une des quatre races humanoĂŻdes du jeu, contribuer Ă  la reconquĂȘte de leur civilisation perdue et influer sur l'Ă©volution du monde.

    Jeu sandbox au PvP consensuel, au roleplay trÚs présent et à la communauté mature, Ryzom a la spécificité de ne pas limiter ses personnages en classes et dispose d'un systÚme évolué de récolte et d'artisanat. L'alignement des personnages sur une des nations et factions proposées peut évoluer pour mieux suivre le roleplay de chacun.

    Timaris

    Données techniques

    Ryzom est jouable sous Windows, Linux et macOS. Son interface est disponible en allemand, anglais, espagnol, français et russe. Les chats en jeu sont traduits automatiquement dans la langue du client.

    Tarifs

    Ryzom est jouable en version gratuite jusqu'au niveau 125, sans limitation de temps.

    Plusieurs tarifs d'abonnement sont proposés pour accéder à la version complÚte qui offre la possibilité d'atteindre le niveau 250, davantage de moyens de stockage et double la vitesse d'acquisition des points d'expérience.

    Kami

    Particularité

    Ryzom est l'un des rares MMORPG commerciaux Ă  ĂȘtre entiĂšrement open source, sous licence AGPLv3 : client, serveur, outils et mĂ©dia, ce qui offre aux joueurs une opportunitĂ© unique de s'impliquer dans le dĂ©veloppement du jeu, notamment Ă  travers des projets libres Ryzom Core et Ryzom Forge.

    Logo de Ryzom Core

    Logo de Ryzom Forge

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Sortie de passbolt 4.9.0 : recherche par dossiers et amélioration des performances

    Passbolt est un gestionnaire de mots de passe libre, sous licence AGPLv3, conçu pour l’utilisation en Ă©quipe et la collaboration. La version 4.9.0 de passbolt, baptisĂ©e B.Y.O.B, vient de sortir. Elle introduit une fonctionnalitĂ© trĂšs attendue par la communautĂ© : la recherche par dossiers, ainsi que des amĂ©liorations majeures de performances.

    Nouveautés de la version 4.9.0

    Localisation des dossiers dans la grille

    Affichage de l’emplacement des ressources : la grille affiche dĂ©sormais l’emplacement des ressources dans les dossiers, facilitant leur identification et gestion.

    Recherche par nom de dossier : les ressources peuvent ĂȘtre trouvĂ©es plus facilement grĂące Ă  une recherche utilisant maintenant les noms des dossiers.

    Recherche par dossier dans passbolt 4.9

    Améliorations des performances

    Gains de performances jusqu’à 50% : la navigation est dĂ©sormais plus rapide, mĂȘme pour les instances avec des grands nombres de mots de passe stockĂ©s.

    Suspension des utilisateurs ldap dans passbolt 4.9

    Suspension des utilisateurs LDAP

    Nouvelle option de suspension : les administrateurs peuvent dĂ©sormais suspendre des utilisateurs sans supprimer leurs donnĂ©es, ajoutant une couche de sĂ©curitĂ© et de contrĂŽle supplĂ©mentaire.

    Suspension des utilisateurs ldap dans passbolt 4.9

    En savoir plus sur la version 4.9.0

    Pour plus de dĂ©tails, consultez-les notes de version (en) et n’hĂ©sitez pas Ă  nous faire part de vos retours.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Open Source Experience : Appel à conférence et à stand pour le village associatif #OSXP2024

    Rebelote pour 2024. MĂȘme nom, mĂȘme lieu mais nouvel attelage pour cette quatriĂšme Ă©dition du salon Open Source Experience (#OSXP pour les intimes) qui divorce du SIDO Paris pour se remarier avec DevOpsRex qui renaĂźt de ses cendres. Cette derniĂšre est une confĂ©rence francophone autour du DevOps, 100% retour d’expĂ©rience. Elle se tenait au Rex, puis Ă  la Villette avant que la Covid ne passe par lĂ . Les deux Ă©vĂ©nements sont combinĂ©s et c’est toujours au Palais des CongrĂšs, porte Maillot Ă  Paris. CĂŽtĂ© dates, rĂ©servez cette fois vos 4 et 5 dĂ©cembre 2024.

    BanniĂšre du salon OSXP24

    Notez que deux appels sont en cours :

    • l’appel Ă  confĂ©rences (ou CFP, Call For Paper, pour les anglophones), ouvert jusqu’au 19 juillet 2024 Ă  23h59. Cette annĂ©e, le programme sera davantage axĂ© sur les cas d’utilisation et retours d’expĂ©rience (influence de DevOps Rex ?), et recentrĂ© sur les usages professionnels et la mise en Ɠuvre de solutions industrialisĂ©es.
    • l’appel Ă  stands pour les associations du Libre afin de reformer notre sympathique, tout autant qu’éphĂ©mĂšre, village du Libre. L’appel est ouvert jusqu’au 25 aoĂ»t Ă  23h59 ; si vous ĂȘtes une entreprise ou que vous avez des sous, des stands sont aussi commercialisĂ©s đŸ€‘.

    Plus de dĂ©tails dans la suite de la dĂ©pĂȘche.

    PrĂ©sentation de l’évĂ©nement

    Pour les anciennes et les anciens, Open Source Experience (aka OSXP) est l’évĂ©nement qui a remplacĂ© le Paris Open Source Summit, qui lui-mĂȘme Ă©tait la fusion de l’Open World Forum et Solutions Linux (qui Ă©tait l’ancien Linux Expo) !

    Dans la continuitĂ© de ses prĂ©dĂ©cesseurs, OSXP se veut un Ă©vĂ©nement europĂ©en professionnel sur l’Open Source, le Libre et le NumĂ©rique ouvert, combinant une grande partie exposition, dans laquelle nous retrouverons toutes les entreprises du secteur ainsi que le village des associations, mais aussi un cycle d’une centaine de confĂ©rences, tables rondes et ateliers sur les deux jours.

    Et il sera de nouveau accolé au retour du DevOps Rex, série de conférences et talks sur les applications concrÚtes de la méthodologie devops en entreprise, ses bénéfices, mais aussi ses contraintes et ses limites. Il y a aussi une partie exposition dédiée.

    L’inscription gratuite ouvre l’accĂšs Ă  la partie exposition conjointe et aux confĂ©rences d’Open Source Experience. L’accĂšs au cycle de confĂ©rences de DevOps REX est quant Ă  lui payant.

    📱 Appel à stands pour le village associatif

    Le village associatif rempile de nouveau cette année. Mais au vu de la réorganisation cette année, il y a un peu moins de place pour la partie exposition et donc seulement six à huit stands sont disponibles pour le village cette année. Pour obtenir un stand, il faut répondre aux critÚres ci-dessous et postuler sur le formulaire dédié avant le 25 août 2024 à 23h59 :

    • ĂȘtre une fondation ou une association Ă  but non lucratif et non adossĂ© Ă  une entreprise (pour les entreprises, c’est sur cette page) ;
    • Ɠuvrer pour l’Open Source et le Logiciel Libre (🩉 O RLY?) ;
    • Ă  vocation nationale đŸ‡«đŸ‡· ou internationale đŸ‡ș🇳 (vers l’infini et au-delĂ ) ;
    • disposer d’un important rĂ©seau de contacts permettant de relayer l’évĂ©nement en amont (📊 sortez vos stats) ;
    • s’engageant Ă  se mobiliser sur le stand sur une ou deux journĂ©es (fini les stands vides 😉). En effet, au vu du nombre limitĂ© de places, il sera possible de partager temporellement le stand si vous n’ĂȘtes disponible qu’une seule journĂ©e.

    Les organisateurs prĂ©sĂ©lectionneront huits associations rĂ©pondant le mieux aux critĂšres de sĂ©lection. Seront privilĂ©giĂ©es les associations indĂ©pendantes de toute organisation privĂ©e, disposant de moyens financiers limitĂ©s. Soyez rassurĂ©s, Bookynette est encore et toujours impliquĂ©e dans l’organisation de ce village. Un grand merci Ă  elle !

    LinuxFr cochant toutes les cases, nous avons postulĂ©â€ŻđŸ€ž. Nous verrons si nous pouvons encore vous faire gagner des Raspberry Pi, livres, abonnements, biĂšres, Fairphone, Legos, etc. comme les annĂ©es passĂ©es lors de notre animation façon Burger Quizz.

    Le stand Linuxfr tirage au sort sur le stand
    Grand quiz à l’OSXP 2021, la scùne Grand quizz à l’OSXP 2021, le public

    Appel à conférences

    Comme indiquĂ© prĂ©cĂ©demment, pour cette quatriĂšme Ă©dition, le programme privilĂ©giĂ©ra les retours d’expĂ©rience centrĂ©s sur les problĂ©matiques rencontrĂ©es par l’utilisateur et comment il y a rĂ©pondu. Bref, un recentrage sur les usages professionnels et la mise en Ɠuvre de solutions industrialisĂ©es.

    L’open source est abordĂ© sous 3 angles :

    • la mise en Ɠuvre des outils et solutions ;
    • le business et la gestion de l’open source ;
    • les enjeux de la filiĂšre et des technologies.

    Ces angles se matérialisent dans les 5 thématiques du programme :

    • IA, Machine Learning, Data ;
    • Cloud, infra, IoT ;
    • Cyber & sĂ©curitĂ© ;
    • Solutions d’entreprise ;
    • Business & Enjeux.

    L’appel Ă  confĂ©rences est ouvert jusqu’au 19 juillet 2024 Ă  23h59.

    Informations pratiques

    • đŸ’¶ EntrĂ©e gratuite sur prĂ©-inscription ;
    • 📍 Lieu : Palais des CongrĂšs – 2 Place de la Porte Maillot – 75017 Paris ;
    • 📅 Dates et heures :
      • mercredi 4 dĂ©cembre de 9h00 Ă  18h00 ;
      • jeudi 5 dĂ©cembre de 9h00 Ă  18h00 ;
    • Transports en commun :
      • 🚇 mĂ©tro : Ligne 1, Station Porte Maillot – sortie 3 ;
      • 🚋 RER Ligne C, Station Neuilly – Porte Maillot ;
      • 🚙 Voiture (Ă©vitez si vous pouvez, c’est blindĂ© de travaux) : 2 Place de la Porte Maillot, 75017 Paris. Parking Indigo Porte Maillot ;
      • 🚌 Bus : Lignes 43 73 82 244 PC ;
      • đŸšČ Station VĂ©lib’ Ă  proximitĂ©.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    ❌
    ❌