Agrégateur de nouvelles

Acteurs du Libre : l'édition 2025 du concours est ouverte !

Linuxfr.org - 28 juillet, 2025 - 22:30

Professionnels de l’open source ou responsables d’entreprises utilisatrices de solutions ouvertes : candidatez au concours des Acteurs du Libre et tentez votre chance de mettre votre projet sous les projecteurs à Open Source Experience 2025 !

Le concours vise à récompenser les actions qui contribuent au développement du Logiciel Libre et de l’Open Source. Il s’adresse aux éditeurs, intégrateurs, entreprises ou administrations intégrant des solutions ouvertes, start-ups proposant de l’open source, associations ou projets centrés sur le Libre. Les prix des Acteurs du Libre permettent de mettre en lumière les réussites entrepreneuriales de la filière libre française et européenne. Le concours est organisé par le CNLL dans le cadre d'Open Source Experience, qui change de lieu cette année et se déroulera à la Cité des Sciences de Paris les 10 et 11 décembre 2025.

Les candidats peuvent soumettre dans l’une des six catégories :

La date limite pour postuler et envoyer le dossier de participation complété est le 10 octobre 2025. La cérémonie de remise de prix aura lieu à l'occasion d’Open Source Experience, les 10 et 11 décembre à Paris.

Quelques règles à noter:

  • Le concours est ouvert, les organisations non membres du CNLL peuvent candidater.
  • La thématique du concours porte sur le logiciel, le matériel n’est pas concerné.
  • Les organisations domiciliées hors France et en Europe sont autorisées à candidater dans la catégorie “Europe/APELL”.
  • La catégorie “Service Public” concerne les administrations centrales et déconcentrées uniquement, les collectivités territoriales ne sont pas concernées et doivent candidater au concours des Territoires Numériques du Libre.
  • Un seul dossier par candidat, dans une seule catégorie.
  • Les gagnants de la session précédente ne sont pas autorisés à candidater à nouveau.
Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Ce que la tech fait à la planète

Transcriptions - 28 juillet, 2025 - 13:01

Quel est le rôle du numérique dans les bouleversements environnementaux en cours ?
Voix off : Next, Next, Next, Next.
Mathilde Saliou : Nous faisons face à de multiples crises environnementales. Celle que nous connaissons le mieux concerne le réchauffement de l'atmosphère et toutes les évolutions que cela entraîne en termes climatiques. C'est cette crise-là qui nous fait si régulièrement évoquer le problème de nos émissions carbone. Cette crise-là, toujours, qui a suscité, en 2015, la (…)

- Transcriptions / , , , , , , ,

Agenda du Libre pour la semaine 31 de l'année 2025

Linuxfr.org - 26 juillet, 2025 - 17:18

Calendrier Web, regroupant des événements liés au Libre (logiciel, salon, atelier, install party, conférence), annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 8 événements (France: 8) est en seconde partie de dépêche.

Sommaire [FR Chaumont] Permanence associative – Le mardi 29 juillet 2025 de 18h00 à 20h00.

Permanence associative du Schmilblik Numérique.

L’occasion de s’entraider dans nos usages des solutions libres au sein du Schmilblik, tiers-lieu dédié à la culture et la création artistique, à Chaumont.

Des boissons chaudes, de la bienveillance et beaucoup de convivialité.

Tous les niveaux techniques sont les bienvenus, de parfait·e débutant·e à expert·e chevronné·e.

[FR Le Mans] Permanence du mercredi – Le mercredi 30 juillet 2025 de 12h30 à 17h00.

Assistance technique et démonstration concernant les logiciels libres.

Il est préférable de réserver votre place à contact (at) linuxmaine (point) org

Planning des réservations consultableici.

[FR Le Blanc] Ateliers “Libres” de Linux – Le mercredi 30 juillet 2025 de 14h00 à 17h00.

Installer ou configurer Linux, diagnostiquer mon ordinateur,
installer ou configurer un logiciel libre,
échanger sur GNU/Linux et les Logiciels Libres,
trouver des réponses à mes questions

[FR Agen] Permanence d’aGeNUx – Le mercredi 30 juillet 2025 de 17h30 à 19h30.

Pour l’année 2025 notre association aGeNUx tiendra ses permanences tous les mercredis après-midi de 17h30 à 19h30 sauf les jours fériés et pendant les vacances d’été.

Elles ont lieu au Campus Numérique 47 à la salle Barjavel.

Ces permanences sont ouvertes à tous et à toutes, membres de l’association ou non. On peut s’y informer sur les logiciels libres, en tester, poser des questions ou tout simplement venir rencontrer d’autres utilisateurs de logiciels libres.

[FR Quimper] Redistribution gratuite d’ordinateurs de bureau sous Debian – Le jeudi 31 juillet 2025 de 09h30 à 10h30.

La distribution gratuite d’ordinateurs de bureau sous Debian au Centre social des Abeilles de Quimper continue tout l’été 2025 et même après…:-)

Le Centre des Abeilles, avec l’aide technique de Linux Quimper, récupère depuis 2009 des ordinateurs déclassés par des administrations et des entreprises. Ces ordinateurs sont reconditionnés avec des logiciels libres autour de Linux qui est un système équivalent à Windows et MacOs mais libre et gratuit. Ils sont utilisables immédiatement, gratuitement et en toute légalité dans tous les domaines de l’informatique comme la bureautique, internet, le graphisme, l’audio-vidéo, etc. Plus de 5500 ont été donnés depuis 2009 à des personnes et associations. Si cette action de solidarité vise à réduire la fracture numérique en permettant l’accès à l’informatique aux personnes et associations qui en sont écartées pour des raisons financières, elle a aussi pour but de diffuser largement les logiciels libres et en particulier Linux. Elle a aussi pour objectif de limiter le gaspillage du matériel informatique, réduire les déchets et ainsi de participer à la limitation du changement climatique à notre petite échelle…

Ces dons sont ouverts aux adhérent·e·s du Centre des Abeilles. L’adhésion (13€) peut se faire au moment du don.

La distribution a lieu en général tous les jeudis matin mais les bénévoles du Centre des Abeilles peuvent s’adapter aux disponibilités des personnes désirant bénéficier de ce don.

ATTENTION: Cette proposition ne s’adresse qu’aux personnes habitant le Sud-Finistère.

Inscription préalable au 07 44 61 10 61.

[FR Lyon] Meetup Python de l’été – Le jeudi 31 juillet 2025 de 18h00 à 22h00.

L’été, pas de présentation !

C’est le moment de se retrouver autour d’un verre pour papoter Python ou autre et toujours dans le respect de la charte de l’AFPy !

[FR Paris] Premier Samedi du Libre – Le samedi 2 août 2025 de 14h00 à 18h00.

Lieu: La Générale – 39 rue Gassendi, 75014 Paris

Venez aider ou vous faire aider à installer et paramétrer des logiciels libres et toute distribution GNU/Linux ou Android avec les associations d’utilisateurs de Fedora, Mageia, Ubuntu, Debian pour GNU/Linux ; et Replicant, LineageOS, f-droid pour Android, sur netbook, portable, tour, PC/Mac, ou smartphone, éventuellement à côté de votre système actuel. Idem si vous avez des difficultés avec GNU/Linux, un périphérique, un logiciel libre, ou avec des logiciels libres sous Android.

Ce sera aussi l’occasion de présenter et/ou de découvrir le mouvement du logiciel libre (qui touche pas mal de domaines comme les encyclopédies, les livres, la musique, etc.).

Il y aura la possibilité d’utiliser les tables qui sont à l’extérieur si le temps le permet. Du gel hydroalcoolique sera mis à disposition.

  • Déjeuner pour celles et ceux qui en ont envie à partir de 12h30 dans un lieu encore à déterminer
  • 14h-18h: install party et discussions informelles pour présenter les logiciels libres
  • After-apéro dans un lieu à déterminer le moment venu !

Avec un gros merci à La Générale pour l’accueil \o/

[FR Quimper] Permanence Linux Quimper – Le samedi 2 août 2025 de 16h00 à 18h00.

Tous les samedis de 16h à 18h, Linux Quimper vous donne rendez-vous au centre social des Abeilles, 4 rue Sergent Le Flao (quartier de la Terre Noire) Quimper.

Nous vous proposons lors de ces rencontres d’échanger autour du Libre et de Linux en particulier

Vous pouvez venir pour vous faire aider, ou aider, à installer et paramétrer une distribution GNU/Linux de votre choix ou des logiciels libres sur votre ordinateur.

Recommandations:

  • Sauvegardez vos données avant de venir.
  • Pour une installation de Linux si vous voulez conserver Windows, libérez de la place sur le disque dur (20 Go minimum) et défragmentez Windows.
  • Nous prévenir, éventuellement, de votre passage via le forum.

Vous pouvez aussi venir pour une première prise d’informations et de contacts.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Faut-il changer d'ère numérique pour préserver la démocratie ?

Transcriptions - 24 juillet, 2025 - 14:33

Internet dans les années 1990, puis les réseaux sociaux dans les années 2000, ont fait miroité la promesse d'un rapport renouvelé au débat public et à la liberté d'expression. Qu'en est-il aujourd'hui ? À l'heure où certains alertent sur les dangers de la désinformation en ligne et en appellent à une meilleure modération tandis que d'autres dénoncent les modérations excessives et sont prêts à acheter des réseaux sociaux comme Twitter au nom de la « liberté d'expression » , l'heure est venue (…)

- Transcriptions / , , , , ,

S'informer sur la licence pro CoLibre (Communication et Logiciels Libres) - visio et plus

Linuxfr.org - 24 juillet, 2025 - 07:59

La licence professionnelle « CoLibre » (Métiers de la communication, conduite de projets et logiciels libres) ouvre sa seconde session de candidature jusqu’au 25 août 2025.

Pour mieux connaître ce parcours de formation, pour y candidater, pour proposer des alternances ou des projets tuteurés, des visios sont organisées pendant l’été.

Elles auront lieu le 24 juillet et le 18 août à 18h.

La licence pro forme en un an au métier de chef·f de projets en communication à l’ICOM (Université Lyon2) pour des personnes ayant acquis un bac+2 quelque qu’il soit.

Pendant une année, la formation organise un parcours varié pour acquérir et affirmer des compétences professionnelles dans les domaines de la communication, de la conduite de projet et les pratiques numériques.

Au fil du parcours, les étudiants et étudiantes vont aussi approfondir au choix une spécialisation : création numérique (PAO, infographie, audio-visuel, multimédia…), organisation (ressources humaines, pratique du changement, didactique, comptabilité…), développement (programmation, développement web, administration système…), événementiel (mercatique, planification, réseaux sociaux, gestion événement…).

Chaque fois que l’on utilise des logiciels ou des applications, elles sont systématiquement libres pour ajouter une connaissance approfondie et choisie du numérique en plus d’une approche éthique et inclusive.

Ce parcours est ouvert à toute personne ayant un bac+2 et elle peut être suivi en alternance, en formation continue ou en parcours classique.

À l’issue de la formation, les étudiantes et étudiants sont diplômés à Bac+3.

Attention la formation est réalisée en présentiel à l’Université Lyon2.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Lyon: Meetup Python de l’été, Le jeudi 31 juillet 2025 de 18h00 à 22h00.

l'Agenda du Libre - 22 juillet, 2025 - 06:12

L’été, pas de présentation !

C’est le moment de se retrouver autour d’un verre pour papoter Python ou autre et toujours dans le respect de la charte de l’AFPy !

Bannalec: Point Info Linux, Le vendredi 25 juillet 2025 de 14h00 à 17h30.

l'Agenda du Libre - 21 juillet, 2025 - 17:33

Point Info Linux.

Venez découvrir Linux , le système d'exploitation libre et gratuit. Vous pourrez facilement remplacer Windows 10 par Linux et utiliser des programmes libres (bureautique, musique, image...). 
Eviter de racheter un nouvel ordinateur pour supporter la nouvelle version de  MS Windows, il va fonctionner encore longtemps avec les logiciels libres. 
Nous pouvons vous aider à découvrir et installer Linux et les programmes libres, venez nous rencontrez. 
A bientôt.
L'équipe du Club L@ssourie

 

Le numérique, c'est politique ! - Numérikoff

Transcriptions - 21 juillet, 2025 - 16:39

Médias, réseaux sociaux et (dés)informations, quelles menaces sur le débat démocratique ? Quels outils pour se libérer ?
Grégory Gutierez : Messieurs, Mesdames, bonsoir et bienvenue à cette réunion dans le cadre du Numérikoff de Malakoff. Avant toute chose, je vais passer la parole à Jeanine qui va vous présenter en quoi consiste ce centre dans lequel nous nous retrouvons ce soir. Merci beaucoup d'être parmi nous.
Jeannine Deketelaere : Merci. Bonsoir à tous. Je ne vais pas rester très (…)

- Transcriptions / , , , , , , , , , ,

Pocket est mort, vive wallabag

Linuxfr.org - 19 juillet, 2025 - 19:37

Pocket était une application permettant de gérer une liste d'articles lus sur Internet. Elle a été créée en août 2007 par Nathan Weiner, puis est devenue gratuite avec option Premium en 2012. Acquis en 2017 par Mozilla, le service a annoncé le 22 mai 2025 sa fermeture prochaine. (source Wikipedia).

Ainsi, depuis le 8 juillet 2025, il n'est plus possible d'archiver ses contenus via Pocket, seul l'export de ses données est réalisable. Courant octobre, l'export sera également coupé.

Une alternative à Pocket

Depuis maintenant plus de 12 ans, une alternative à ce service privateur existe : il s'agit de wallabag. Nous avons déjà régulièrement parlé de notre projet sur LinuxFR.org.

Suite à l'annonce de la fermeture de Pocket, l'équipe de développement s'est organisée afin de proposer un import possible depuis le CSV fourni.

C'est pourquoi une version 2.6.13 est disponible depuis le 4 juin.

Mettre à jour votre instance

Depuis quelques versions, c’est relativement simple de mettre à jour votre wallabag : vous n’avez qu’à exécuter la commande make update. Si vous le souhaitez, vous trouverez plus d’informations sur le billet de blog du projet.

La suite

Dans quelques semaines, l'équipe aimerait sortir une nouvelle version importante. Outre de nouvelles fonctionnalités (comme par exemple un sélecteur de police de caractères), c'est surtout une montée de version technique nécessaire afin d'assurer la pérennité du projet.

Pour rappel, si vous ne souhaitez pas héberger votre instance de wallabag, il est possible d’utiliser le service en ligne wallabag.it.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Agenda du Libre pour la semaine 30 de l'année 2025

Linuxfr.org - 19 juillet, 2025 - 19:35

Calendrier Web, regroupant des événements liés au Libre (logiciel, salon, atelier, install party, conférence), annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 13 événements (France: 12, Internet : 1) est en seconde partie de dépêche.

Sommaire [FR Grenoble] TupperVim - Le lundi 21 juillet 2025 de 19h00 à 23h00.

TupperVim à Grenoble ⛰️

Les TupperVim sont des réunions informelles d’utilisateurs et utilisatrices des éditeurs de texte libres Vim et neovim (débutant·es ou avancé·es) durant lesquelles chacun des participant·es échange des trucs et astuces.

La famille des éditeurs Vim étant très riche et hautement paramétrable, ces sessions sont l’occasion de s’initier à leurs utilisations, d’approfondir ses connaissances, d’échanger ses vimrc respectifs, ou encore de découvrir des greffons pour aller plus loin.

Toute personne, quel que soit son niveau, est la bienvenue.

Pour profiter au mieux de l’atelier, il est vivement conseillé aux débutant·es complets de faire le tutoriel Vim avant de venir (vimtutor).

On encourage les utilisateur·ices avancé·es qui le souhaitent à proposer une petite présentation rapide (~ 10 min) d’une fonctionnalité ou d’un plugin. Un support n’est pas obligatoire, une présentation en direct depuis Vim est tout aussi efficace.

Aussi, vous pouvez venir dès dix-neuf heures (19 h) pour avoir une séance d’initiation à Vim (prévoir une heure).

Vous pouvez annoncer une présentation sur l’Etherpad (lien en bas de message).

Traditionnellement, ces ateliers sont aussi l’occasion de découvrir des outils qui ne sont pas directement liés à Vim, mais qui s’inscrivent dans la même philosophie : ergonomie, minimalisme, efficacité.

Programme

La recette reste immuable depuis des temps immémoriaux :

  • 19 h à 22 h, grignotte : chacun·e amène quelque chose ;
  • 19 h à 20 h, initiation pour les débutant·es & apéro pour les initié·es, grâce à une technologie de parallélisation des tâches que le monde entier nous envie depuis toujours ;
  • 20 h à 22 h, enlarge your productivity : atelier participatif, chacun·e propose des sujets ou pose des questions techniques ;
  • 22 h à 23 h, on finit au bar

Paris: Rencontre Libre en Communs, Le vendredi 18 juillet 2025 de 19h00 à 22h00.

l'Agenda du Libre - 18 juillet, 2025 - 18:31

Venez découvrir l'association, ses membres et ses activités lors d'un moment de convivialité à La French Guinguette, 58 Rue Rambuteau, 75003 Paris, Métro Chatelet ou Rambuteau.

Attention, nous avons récemment changé de bar et nous ne savons pas encore si l'endroit choisi pour cette rencontre sera aussi le même pour les rencontres suivantes.

Coût des licences de logiciels propriétaires depuis 2022 à Voiron

Transcriptions - 18 juillet, 2025 - 07:10

Benjamin Huet, conseiller municipal : Ma question va concerner les licences de logiciels. En 2022, vous avez décidé de passer les ordinateurs de la mairie du logiciel libre au logiciel privateur en passant notamment à la suite bureautique de Microsoft, question, à l'époque, d'ergonomie, de compatibilité, je crois, avec les partenaires. Mais bon, on sacrifie toujours un peu quelque chose à la facilité. On disait déjà, à l'époque, que ce choix impliquerait : « de confier des données à (…)

- Transcriptions / , , , , , ,

Grenoble: TupperVim, Le lundi 21 juillet 2025 de 19h00 à 23h00.

l'Agenda du Libre - 18 juillet, 2025 - 03:07
TupperVim à Grenoble ⛰️

Les TupperVim sont des réunions informelles d’utilisateurs et utilisatrices des éditeurs de texte libres Vim et neovim (débutant·es ou avancé·es) durant lesquelles chacun des participant·es échange des trucs et astuces.

La famille des éditeurs Vim étant très riche et hautement paramétrable, ces sessions sont l’occasion de s’initier à leurs utilisations, d’approfondir ses connaissances, d’échanger ses vimrc respectifs, ou encore de découvrir des greffons pour aller plus loin.

Toute personne, quel que soit son niveau, est la bienvenue.

Pour profiter au mieux de l’atelier, il est vivement conseillé aux débutant·es complets de faire le tutoriel Vim avant de venir (vimtutor).

On encourage les utilisateur·ices avancé·es qui le souhaitent à proposer une petite présentation rapide (~ 10 min) d’une fonctionnalité ou d’un plugin. Un support n’est pas obligatoire, une présentation en direct depuis Vim est tout aussi efficace.

Aussi, vous pouvez venir dès dix-neuf heures (19 h) pour avoir une séance d’initiation à Vim (prévoir une heure).

Vous pouvez annoncer une présentation sur l’Etherpad (lien en bas de message).

Traditionnellement, ces ateliers sont aussi l’occasion de découvrir des outils qui ne sont pas directement liés à Vim, mais qui s’inscrivent dans la même philosophie : ergonomie, minimalisme, efficacité.

Programme

La recette reste immuable depuis des temps immémoriaux :

  • 19 h à 22 h, grignotte : chacun·e amène quelque chose ;
  • 19 h à 20 h, initiation pour les débutant·es & apéro pour les initié·es, grâce à une technologie de parallélisation des tâches que le monde entier nous envie depuis toujours ;
  • 20 h à 22 h, enlarge your productivity : atelier participatif, chacun·e propose des sujets ou pose des questions techniques ;
  • 22 h à 23 h, on finit au bar

Des nouvelles de Fortran n°7 - juillet 2025

Linuxfr.org - 17 juillet, 2025 - 06:42

Dans les actualités Fortran, on abordera en particulier la troisième édition de la conférence internationale Fortran, la sortie officielle du nouveau compilateur Flang dans LLVM et les actualités du gestionnaire de paquets fpm. Et comme c'est bientôt les vacances, on terminera par une section consacrée à Fortran dans la culture populaire, où l'on apprendra entre autres que le Nostromo avait un neuvième passager…

Sommaire Appel à contributions pour FortranCon 2025

FortranCon 2025 est la troisième édition de la conférence internationale sur le développement et l'utilisation du langage de programmation Fortran, et aura lieu les 4 et 5 novembre 2025. Avec cette conférence, nous avons l'intention de rassembler les développeurs actifs du projet Fortran dans tous les domaines : les développeurs de bibliothèques et d'outils ainsi que les personnes utilisant Fortran pour développer des applications scientifiques, afin de partager leur expérience et d'échanger des idées. L'événement est organisé sur Zoom grâce aux contributions de la communauté pour la communauté.

Le discours d'ouverture sera prononcé par John Reid, membre actif du comité Fortran de l'ISO/IEC JTC1/SC22/WG5 (et animateur du comité de 1999 à 2017). C'est également l'un des auteurs du livre de référence Modern Fortran explained, dont la sixième édition (couverture orange) inclut Fortran 2023.

Les vidéos des présentations des éditions 2020 et 2021 sont toujours en ligne sur la chaîne YouTube FortranCon.

Dates limites
  • Inscription (gratuite) : 15 octobre 2025.
  • Premier appel à résumés : 1er août 2025 (décisions envoyées avant le 30 août 2025).
  • Deuxième appel à résumés : 1er septembre 2025 (décisions envoyées avant le 30 septembre 2025).
Sur le front des compilateurs Compilateurs opérationnels Flang (LLVM)

Dans LLVM 20.1, sorti en mars 2025, flang-new a été rebaptisé flang et remplace son prédécesseur du même nom. Il s'agit donc du lancement officiel de ce nouveau compilateur soutenu par NVIDIA et le Département de l’Énergie américain, après sept ans de développement. Un article très complet du blog LLVM relate cette longue aventure :

La doc de Flang présente même une pierre de Rosette pour les gens connaissant le C ou le C++ et souhaitant débuter en Fortran.

Intel ifx

Intel ifx (basé sur LLVM) est actuellement en version 2025.2.0, avec en particulier quelques améliorations du côté Fortran 2023 et OpenMP 6.0, par rapport à la 2025.1.0 qui améliorait également ces deux points.

GFortran (GCC)

GFortran est en version 15.1. Attention, les fichiers .mod générés par GFortran 15 ne sont pas compatibles avec les versions antérieures. Si vous ne savez pas de quoi je parle, les .mod c'est un peu l'équivalent des fichiers headers .h en C, mais en pire puisque ce sont des fichiers binaires pas normalisés, donc pas interopérables entre les différents compilateurs Fortran, voire comme ici entre différentes versions. Bref, pas glop !

Parmi les six projets GCC du GSoC 2025, on en trouve un pour améliorer la prise en charge par GFortran de certaines fonctionnalités des normes Fortran 2018 et 2023. Le compilateur libre a également reçu 360 k€ de la Sovereign Tech Agency allemande, en particulier pour offrir un support direct des coarrays (co-tableaux) pour le calcul parallèle sur systèmes à mémoire partagée (pour l'instant il est nécessaire d'installer la bibliothèque OpenCoarrays pour les utiliser avec GFortran).

En gestation

Le développement du compilateur LFortran continue. Il s'approche tranquillement de la version beta, compilant déjà huit bibliothèques Fortran matures sur les dix définies pour ce jalon. On notera d'ailleurs que parmi les cinq projets de la communauté Fortran-lang du GSoC 2025, un projet a pour objectif de réussir à compiler le gestionnaire de paquets fpm avec LFortran. Une bonne façon de faire progresser le compilateur !

Fedora ou F comme Fortran ?

Une des meilleures distributions Linux pour faire du Fortran est peut-être Fedora. On trouve en effet directement dans ses dépôts pas moins de trois compilateurs Fortran libres en versions récentes : GFortran (GPL), Flang (licence Apache) et LFortran (licence BSD). Quand à Intel ifx, on pourra facilement l'installer par exemple dans un environnement Conda (paquet ifx_linux-64). Et avec la Fedora Rawhide, c'est bien sûr encore plus saignant (bleeding edge) au niveau des versions !

Communauté Fortran-lang Projets Fortran-lang fpm

Le gestionnaire de paquets Fortran fpm est disponible en version 0.12 depuis le 18 mai 2025. Parmi les nouveautés, on notera :

  • un fichier compile_commands.json exporté par défaut à chaque fois que l'on construit un projet avec fpm, ce qui facilitera son intégration avec d'autres outils, en particulier les IDE.
  • Deux nouveaux métapackages disponibles : BLAS/LAPACK et NetCDF.
  • La possibilité de générer des bibliothèques partagées, et non plus uniquement statiques.

Du côté des greffons, on citera fpm-modules et fpm-deps qui permettent de visualiser les dépendances d'un projet fpm à l'aide d'outils tels que Mermaid ou Graphviz.

Quelques projets divers
  • Fortitude 0.7.3 : un linter Fortran sous licence MIT, écrit en Rust et installable via Python.

  • Seer : une interface graphique pour gdb pour Linux, qui prend en charge de nombreux langages, dont Fortran. Licence GPL 3.0.

  • Codee commercialise un analyseur de code Fortran / C / C++ et un formateur de code Fortran. Ce dernier peut néanmoins être utilisé gratuitement pour un usage personnel. « Codee se distingue en tant que plateforme de développement Fortran, C et C++, en favorisant la correction du code, la modernisation, la sécurité, la portabilité et l'optimisation afin d'aider les développeurs à fournir des logiciels rapides, faciles à maintenir et fiables, conformes aux normes de l'industrie. » Codee vient de sortir en version 2025.3.

Fortran et culture populaire Alien

Comme vous le savez peut-être, le Nostromo est le vaisseau spatial du film Alien (1979). Lors de l'atterrissage sur la lune Acheron LV-426, l'ordinateur de bord affiche un modèle 3D de son relief. Sur cet extrait sur YouTube, vous pouvez le voir plusieurs fois à partir de l'instant 2:28. Ce modèle est présenté par son auteur dans l'article suivant :

Le code ne faisait que 14 pages de code FORTRAN et son auteur explique :

Le matériel utilisé était un Prime 300 connecté à un FR 80 de III (Information International, Inc.) qui peut tracer directement sur pellicule. Le logiciel d'animation Frolic, développé par C. Emmett, tournait sur ce système dans les laboratoires du SRC à Oxfordshire.

Mon programme était écrit en FORTRAN avec des appels aux sous-routines Frolic.

Années 70 obligent, le graphisme n'est pas sans rappeler le signal du pulsar CP1919 tracé informatiquement par Harold D. Craft Jr dans sa thèse soutenue en 1970 et popularisé par Peter Saville sur la pochette de l'album Unknown Pleasures, dont je vous avais déjà parlé. Quarante-six ans après la sortie du film Alien, on pourra s'amuser de constater que n'importe quelle voiture actuelle a un écran couleur bien plus high-tech que celui du Nostromo ! Mais dix ans avant, le premier alunissage avait eu lieu avec une informatique et une électronique qui semblent aujourd'hui rudimentaires. C'est que se déplacer est avant tout un problème de mécanique (éventuellement céleste). Côté déplacement, le Nostromo reste quand même très largement en avance sur les starships actuels.

Fortran dans les dessins animés américains

Le langage semble avoir laissé des traces, plutôt bienveillantes, chez les (vieux) étudiants américains :

  • Dans la série d'animation Futurama, Olde Fortran est une marque de liqueur de malt (bière forte) consommée par le robot Bender, une sorte de boisson énergisante pour lui. On y voit aussi des jackpots Wheel of Fortran (roue de la fortune… Algorithme Monte Carlo ?).
  • Dans Les Simpson, épisode « L'homme qui vint pour être le dîner » (2015), un extraterrestre dit à 1:23 :

« En tant que jeunes choses insignifiantes, nous sommes éduqués dans la sagesse de l'univers. Physique, mathématiques, FORTRAN - le plus grand des langages de programmation ! »
(“As young thinglings, we are schooled in the wisdom of the universe. Physics, mathematics, FORTRAN - the greatest of the programming languages!”)

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Cryptographie embarquée : briques de base et communication avec serialguard

Linuxfr.org - 16 juillet, 2025 - 12:25

Il était une fois un petit ESP32, installé dans une cave, qui voulait communiquer avec son copain sur le toit pour envoyer des données par 4G. Il parlait peu, donc il pouvait utiliser la norme radio LoRa. Elle est à bas débit, mais permet une portée bien plus grande qu’une modulation classique. Le problème, c’est qu’il parlait en clair, et que n’importe qui pouvait écouter ou pire : injecter de fausses données, voire corrompre le serveur distant.

Le protocole de communication à la mode est celui de Signal, utilisé aussi par WhatsApp et Messenger. Un autre protocole en vogue est WireGuard, dont l’objectif est d’offrir un VPN léger pour Linux, en s’appuyant sur un ensemble restreint de briques cryptographiques modernes et fortement recommandées, qui ne sont plus laissées au choix de l’utilisateur.

L’idée était donc de trouver une implémentation de ce type pour l’embarqué. Eh bien, je n’ai presque rien trouvé.

Sommaire Briques de base

TLS est la référence absolue pour tous les algos, mais c’est à vous de faire votre choix. Libsodium est une implémentation des derniers algos recommandés et fait le choix pour vous. Ces deux bibliothèques sont énormes et sont optimisées pour PC. Un professeur de cryptographie a écrit une série de tweets qui contient une petite lib qui reprend les algorithmes de libsodium en version auditable (https://tweetnacl.cr.yp.to/). Mais elle est lente.

Une autre personne écrit ce que je cherche : Monocypher. C’est un fichier .c avec les algo principaux de libsodium et qui compile en pur C sans dépendance ! C’est parfait pour mon besoin.

Cette bibliothèque fournit uniquement les briques de base, on est très loin d’un protocole Signal. Quand on parle de cryptographie, on pense à AES pour le chiffrement symétrique, à RSA pour le chiffrement à clef publique et la signature, aux hashs SHA1 ou SHA512 pour un hash de qualité cryptographique. Les propriétés nécessaires sont fascinantes mais cela ne dit pas comment bien les utiliser ensuite.

Le chiffrement symétrique

Il s’agit de chiffrer un bloc avec une clé de taille fixe. Le représentant le plus connu est AES, avec des clés de 128 ou 256 bits. On a un bloc, on a une clé, et on obtient un bloc plus ou moins aléatoire. AES utilise des modes (GCM, XTS, …) pour renforcer le mélange et garantir la sécurité selon différents contextes.

Ici, l’algorithme recommandé est ChaCha20. Pas besoin de mode externe : tout est prévu dans l’algorithme de base.

Au déchiffrement, la brique ne se pose pas de question : si la donnée a été altérée, le résultat le sera aussi.Il faut donc ajouter un protocole d’authentification, qui utilise la même clé et un hash pour vérifier l’intégrité. Les algorithmes classiques sont MAC, HMAC, mais il est facile de faire une erreur dans leur utilisation.

Monocypher utilise Poly1305 pour authentifier le message (AEAD – Authenticated Encryption with Associated Data). Son API combine XChaCha20 et Poly1305, ce qui évite de se poser des questions : en cas de modification du message chiffré, la fonction de déchiffrement renvoie une erreur explicite.

Cette fonction nécessite un NONCE ("Number used once"), qui doit être différent à chaque appel.

Le hash

Un hash prend un bloc de données, fait une grosse salade et rend un chiffre de taille fixe avec de bonnes propriétés crypto. Le but est d’avoir une empreinte de taille fixe pour un bloc de données, et qu’il soit impossible de forger un hash identique en modifiant un peu les données d’origine. En gros.

Le hash recommandé est BLAKE2b : “as secure as SHA-3 and as fast as MD5”. Il fait 256 ou 512 bits.

“Password hashing” ou la création de clef à partir de mot de passe

Lorsqu’un mot de passe est saisi, il n’est jamais utilisé tel quel : il est d’abord transformé en une valeur de taille fixe via une fonction de hachage. Pour contrer les attaques par force brute, on a commencé par appliquer des centaines d’itérations de SHA1, avant d’adopter des fonctions de hachage volontairement lentes, comme bcrypt ou scrypt. Le but étant justement d’éviter qu’elles soient rapides, contrairement aux fonctions de hachage classiques.

Aujourd’hui, Argon2 est recommandé.

Chiffrement à clef publique

L’image est souvent celle d’un cadenas ouvert : n’importe qui peut fermer le cadenas, mais seul le possesseur de la clef peut l’ouvrir. RSA a été le premier algorithme inventé avec cette propriété. Aujourd’hui, la mode est aux courbes elliptiques avec X25519.

La fonction principale est basée sur l’échange Diffie-Hellman (DH). C’est le truc magique de la crypto asymétrique.

DH(Clef publique de A, Clé privée de B) = DH(Clef publique de B, Clé privée de A) = N

Sans une clef privée, il est cryptographiquement impossible de retrouver N.

Comment créer une clef privée ? C’est simplement 32 octets très aléatoires. Toute la sécurité dépend de cela. On se rappelle de la faille Debian utilisant un générateur prévisible en 2008.

Générateur d’aléatoire

Pour faire de la cryptographie sérieusement, il faut un vrai générateur aléatoire de qualité cryptographique. Monocypher, par exemple, n’en fournit pas, car cela dépend trop du matériel utilisé. C’est donc à vous d'en fournir un correct.

Ne surtout pas utiliser random() ou rand() : ces fonctions ne sont pas prévues pour la sécurité. Elles offrent souvent à peine 32 bits d’entropie, ce qui signifie qu’elles peuvent générer des valeurs qui tournent en boucle après seulement 4 milliards de cas, ce qui est trivial à explorer pour un attaquant moderne.

Un bon générateur s’appuie sur des sources d’entropie, autrement dit, des phénomènes imprévisibles : le bruit du système, les délais entre événements, la température, etc. Ensuite, ces sources sont mélangées (souvent via un gros hash) pour produire des nombres avec des propriétés statistiques solides.

Par exemple, Linux collecte plein de métriques internes (activité réseau, mouvements de la souris, etc.) pour alimenter son générateur aléatoire /dev/urandom.

Côté matériel, certaines plateformes proposent un vrai générateur physique : il peut mesurer le bruit électrique à travers une diode via un convertisseur analogique-numérique (ADC), ou encore exploiter les légères variations de vitesse d’oscillateurs internes (anneaux d’inverseurs), qui sont ensuite mélangées avec des circuits comme des LFSR combinés via XOR.

Utilisez le générateur cryptographique fourni par votre plateforme (par exemple getrandom(), arc4random(), ou un TRNG matériel si vous êtes en embarqué).

Il ne faut pas se créer son propre générateur sans savoir exactement ce que l’on fait. Le pire étant de réutiliser des données (des clefs par exemple) pour générer d’autres nombres. On crée ainsi une énorme dépendance entre eux, qui n’ont plus rien d’aléatoire.

Les dernières failles des imprimantes Brother proviennent du fait que les mots de passe d’administration sont dérivés de leur numéro de série (!).

Signature

On a un bloc de données, on signe avec une clef privée, on vérifie la signature avec la clef publique.

Monocypher propose EdDSA.

Serial Guard, le protocole de communication

Il ne faut pas créer sa propre cryptographie, c’est trop facile de se tromper. C’est pourtant exactement ce que j’ai fait. La suite peut donc contenir des erreurs. L’idée est de créer un protocole léger de communication. Si des experts passent par là et voient une horreur, qu’ils n’hésitent pas à crier.

On a maintenant les blocs de base. Et il faut maintenant les agencer comme il faut. On veut que A communique avec B (Alice et Bob), sans que E puisse comprendre les messages, insérer des messages, modifier des messages, rejouer des messages, récupérer les messages dans le futur s’il a tout enregistré et récupérer les clefs privées.

Dans le monde de l’embarqué « simple », on communique avec des read et des write sur lien série. L’idéal est d’avoir à peu près la même API.

Il faut réduire au minimum l’échange d’informations préalable pour être le plus léger possible.

Je laisse de coté le "framing", c'est à dire la mise en paquet pour être envoyé sur un lien physique. Un lien série envoie des octets, serialguard fonctionne par paquets d'octet. Il faut reconstituer un paquet avant de l'envoyer dans la bibliothèque.

La base est d’avoir une clef privée chacun, à longue durée de vie. Cela permet de s’authentifier selon le principe : si c’est toujours la même clef depuis l’installation, c’est toujours le même pair : TOFU.

Si on a besoin de faire mieux, il faudrait qu’une « clef de confiance » signe cette clef. Mais on entre dans les méandres complexes d’une public key infrastructure, des certificats ou des web of trust type GPG.

Pour pouvoir tout de même changer une clef privée à long terme, tout en ayant de la sécurité pour éviter les man-in-the-middle, il faut garder un secret partagé dans tous les pairs. Cela peut être très compliqué sur un réseau de serveurs, mais ici, chaque boîtier est programmé au même endroit.

Il s’agit simplement d’un nombre de 32 octets aléatoire partagé par tous. C’est nommé pompeusement pre-shared key (PSK).

Il faudra éviter de la laisser traîner dans le code source.

Une clef de session est une clef temporaire, renouvelable. L’idée est d’utiliser la cryptographie asymétrique pour se mettre d’accord sur une clef symétrique.

Si on utilise le nombre généré par Diffie-Hellman (DH) directement, il est unique par pair de clefs privées : ce n’est pas top. On pourrait échanger des nombres aléatoires pour se mettre d’accord sur une clef symétrique, mais je veux limiter les échanges au minimum.

Pour cela, je vais utiliser une clef de session asymétrique, qui est l’invention du protocole Signal. Une fois la clef symétrique générée, la clef privée éphémère est jetée. Il sera impossible ensuite de déchiffrer la session, même dans le futur.

On commence donc par un échange de 2 clefs publiques : l’une à durée de vie longue et l’autre éphémère.
On croise les 8 clefs (2 publiques et 2 privées de chaque côté) dans 3 échanges DH, on trie les nombres pour avoir le même ordre des 2 côtés, et le résultat est donné à la fonction de hachage avec la PSK.

On a ainsi notre clef de session symétrique.

Le rejeu

Tant que la session est active, l’envoi d’un message précédent reste valide. Pour éviter cela, un NONCE est utilisé dans le chiffrement symétrique. C’est un nombre fourni quelconque mais qui ne doit jamais être identique d’un paquet à l’autre. Il peut être transmis avec le paquet, mais cela prend de la place.

J’ai choisi d’utiliser un simple compteur, cela évite de devoir se rappeler les NONCE passés pour éviter le rejeu.

Les liaisons n’étant pas fiables, un paquet peut être corrompu : il faut pouvoir décoder le paquet suivant. J’ai simplement choisi de tester les 10 nombres successifs en cas d’erreurs, avant d’échouer.

Durée de session

Une session doit être limitée en temps ou en quantité d’informations transmises. Il faut trouver un événement symétrique des 2 côtés pour redéclencher un handshake. J’ai laissé ce point à l’application. Cela pourrait être inclus dans le protocole réseau de plus haut niveau.

Envoi d’un seul message

Ce schéma ne couvre pas le cas d’envoi d’un seul message.

Dans l’Internet des objets, on pousse un message dans MQTT et on ne s’attend pas à une réponse. Cela serait bien plus pratique de pouvoir le faire. Il faut pouvoir faire l’envoi sans handshake préalable. Mais il faut tout de même envoyer les clefs publiques, ce qui prend de la place.

Le système a besoin de la clef publique du serveur et du PSK, et tout le reste est fourni en plus du chiffré (NONCE, clef publique, et clef publique éphémère) dans le message envoyé.

La différence est qu’il n’y a que 2 DH, et pas de clef éphémère du côté serveur.

Travail en cours

C’est encore un travail en cours. Il manque des tests sur le terrain et l’évaluation des performances sur plusieurs plateformes.

Télécharger ce contenu au format EPUB

Commentaires : voir le flux Atom ouvrir dans le navigateur

Aeryth : Intégrer une AppImage dans un paquet et le bureau

Linuxfr.org - 15 juillet, 2025 - 16:35

Convertir proprement une AppImage en paquet ? Aeryth le fait en une commande : ce script Bash GPL v3 emballe votre AppImage en .deb ou .tar.zst, ajoute icône et lanceur, et s’installe/désinstalle via apt ou pacman.

Pourquoi Aeryth ?

Le format AppImage simplifie la distribution d’applications Linux, mais pose deux soucis :

  1. Intégration bureau (menus, icônes) absente au sein de l'environnement.
  2. Mises à jour invisibles pour le gestionnaire de paquets.

Aeryth règle ces points : il transforme toute AppImage en véritable paquet Debian (.deb) ou Arch (.tar.zst) prêt à être executé, et offre des options d'intégration d'un AppImage complet ou extrait au sein du paquet.

20 ans de Fedora-fr : dernier entretien avec Aurélien membre de l'équipe infrastructure de Fedora

Linuxfr.org - 15 juillet, 2025 - 15:12

Dans le cadre des 20 ans de Fedora-fr (et du Projet Fedora en lui-même), Charles-Antoine Couret (Renault) et Nicolas Berrehouc (Nicosss) avons souhaité poser des questions à des contributeurs francophones du projet Fedora et de Fedora-fr.

Grâce à la diversité des profils, cela permet de voir le fonctionnement du projet Fedora sous différents angles pour voir le projet au-delà de la distribution mais aussi comment il est organisé et conçu. Notons que sur certains points, certaines remarques restent d’application pour d’autres distributions.

N’oublions pas que le projet Fedora reste un projet mondial et un travail d’équipe, ce que ces entretiens ne permettent pas forcément de refléter. Mais la communauté francophone a de la chance d’avoir suffisamment de contributeurs et de contributrices de qualité pour permettre d’avoir un aperçu de beaucoup de sous projets de la distribution.

Chaque semaine un nouvel entretien sera publié sur le forum Fedora-fr.org, LinuxFr.org et le blog de Renault.

L’entretien du jour concerne Aurélien Bompard (pseudo abompard), développeur au sein du projet Fedora et employé Red Hat affecté au projet Fedora en particulier dans l’équipe infrastructure.

    Sommaire

    Bonjour Aurélien, peux-tu présenter brièvement ton parcours ?

    Je m’appelle Aurélien, je suis informaticien, et c’est pendant mon école d’ingé que j’ai découvert le logiciel libre, par le biais d’une association étudiante. J’ai vite accroché et j’ai décidé de travailler autant que possible là-dedans quand j’en suis sorti (en 2003).
    J’ai commencé avec Mandrake Linux à l’époque, alors que KDE venait de sortir en version 2.0 (et le kernel en 2.4). Malgré tous les efforts de Mandrakesoft, ce n’était quand même pas évident de tourner sous Linux à l’époque. J’ai mis 2 semaines à faire fonctionner ma carte son (une SoundBlaster pourtant !), il fallait régler les fréquences de rafraîchissement de l’écran soi-même dans le fichier de conf de XFree86, et je n’avais qu’un seul ordinateur ! (et pas de smartphone, lol). Le dual boot et son partitionnement m’a donné quelques sueurs froides, et tout le temps passé sous Linux était du temps coupé du réseau des élèves. Fallait quand même être un peu motivé :-)
    Mais j’ai tenu bon, et j’ai installé des applications libres sous Windows aussi : Phoenix (maintenant Firefox), StarOffice (maintenant LibreOffice), etc. Parce que ce qui m’a attiré c’est la philosophie du logiciel libre, et pas seulement la technicité de Linux.

    En 2003, j’ai fait mon stage de fin d’études chez Mandrakesoft, mais la société était en redressement judiciaire à l’époque, et ça n’offrait pas des perspectives d’embauche intéressantes.
    Après quelques candidatures j’ai été pris à la fin de l’été 2003 dans une SSII en logiciel libre en tant qu’administrateur système pour installer des serveurs Linux chez des PME.
    Le contrat qui avait donné lieu à mon embauche s’est arrêté prématurément, et la société ayant aussi une activité de développement autour de Zope/CPS, on m’a proposé de me former à Python (version 2.2 à l’époque si je me souviens bien). J’ai accepté et suis devenu développeur. C’est à cette époque que j’ai quitté Mandrake Linux pour passer sur Red Hat 9, en me disant que c’était plus pertinent de monter en compétences dessus pour le travail. À l’époque il y avait une petite communauté de packageurs qui publiait des RPM supplémentaires pour Red Hat 9, autour du domaine fedora.us.
    Début 2004, Red Hat a décidé qu’il y avait trop de confusion entre leurs offres commerciales à destination des entreprises et leur distribution Linux gratuite, et ont décidé de scinder leur distribution en Red Hat Enterprise Linux d’un côté, et une distribution Linux communautaire de l’autre. Ils ont embauché le fondateur de fedora.us, rassemblé les contributeurs et lancé la distribution Fedora Linux.

    La communauté a mis pas mal de temps à se former, et c’était passionnant de voir ça en direct. On avait :

    • les contributeurs qui disaient « regarde on n’a jamais été aussi libres de faire ce qu’on veut, c’est bien mieux qu’avant avec RH9 qui était poussée hors des murs de Red Hat sans qu’on puisse rien y faire » ;
    • les utilisateurs des « autres distribs » (kof kof Debian kof kof) qui disaient « vous êtes exploités par une société, ce sera jamais vraiment communautaire, Red Hat se transforme en Microsoft » ;
    • les commerciaux de Red Hat qui disaient « Fedora c’est une version bêta, c’est pas stable, faut surtout pas l’utiliser en entreprise, achetez plutôt RHEL » ;
    • la communication Red Hat qui disait "Si si c'est communautaire j'vous assure" Si vous ne l'avez pas lue et que vous lisez l'anglais, cette fausse conversation IRC a fait rire jaune beaucoup de monde à l'époque.

    Enfin bref, la communauté a fini par grossir significativement, Fedora Core et Fedora Extras on fusionné, etc. Ma dispo pour contribuer au projet a été assez variable au fil des années, mais j'ai toujours utilisé Fedora.
    En 2012, un poste s'est ouvert chez Red Hat dans l'équipe qui s'occupe de l'infrastructure Fedora, j'ai postulé, et j'ai été pris.

    Peux-tu présenter brièvement tes contributions au projet Fedora ?

    Au début j'empaquetais les logiciels que j'avais à dispo dans Mandrake Linux mais qui n'existaient pas dans Fedora Extras, et tous les logiciels sympas que je voyais passer. J'ai aussi fait beaucoup de revues de fichiers .spec pour leur inclusion dans la distrib.
    Après avoir été embauché par Red Hat, j'ai travaillé sur HyperKitty, le logiciel d'archivage / visualisation de Mailman 3. Puis j'ai travaillé sur plein d'autres trucs au sein de l'équipe Fedora Infra, les dernières étant Fedora Messaging, Noggin/FASJSON et FMN. Je suis aujourd'hui responsable technique côté Fedora dans l'équipe (par opposition au côté CentOS) et je travaille surtout sur les applications en tant que dev, beaucoup moins sur la partie sysadmin.

    Qu'est-ce qui fait que tu es venu sur Fedora et que tu y es resté ?

    J'y suis venu parce que monter en compétences sur une distribution Red Hat me semblait pertinent pour mon métier, en tant que sysadmin Linux.
    J'y suis resté parce que Fedora est pour moi le parfait équilibre entre nouveauté et stabilité, tout en étant très ancré dans la défense du logiciel libre, même au prix de quelques complications (le MP3, les pilotes Nvidia, etc.).

    Pourquoi contribuer à Fedora en particulier ?

    Parce que je l'utilise. Je crois que c'est une constante dans ma vie, c'est rare que je reste uniquement utilisateur/consommateur, je suis souvent amené à contribuer à ce que j'utilise ou aux associations dont je fais partie.

    Contribues-tu à d'autres Logiciels Libres ? Si oui, lesquels et comment ?

    J'ai été amené à développer sur mon temps libre quelques logiciels pour des associations auxquelles je participe, et c'est toujours en logiciel libre. Le dernier en date c'est Speaking List (licence AGPL).

    Est-ce que tes contributions dans Fedora se font entièrement dans le cadre de ton travail ? Si non, pourquoi ?

    Avant non, parce que je packageais des outils que j'utilisais personnellement (Grisbi, Amarok, etc.). Maintenant oui :-)

    Est-ce que être employé Red Hat te donne d'autres droits ou opportunités au sein du projet Fedora ?

    Oui, j'aimerais que ce ne soit pas le cas mais c'est sûr que je suis plus près des prises de décisions, j'ai des accès plus directs aux personnes influentes et aux évolutions. Ce n'est pas un "droit" au sens strict, qui me serait attribué non pas sur la base de mes contributions mais sur celle de mon employeur, heureusement. Mais disons que je baigne toute la journée dedans, je pense que ça ouvre plus d'opportunités que quand j'étais contributeur "externe".

    Tu as été membre de Fedora Infrastructure, peux-tu nous expliquer sur l'importance de cette équipe pour la distribution ? Quels services maintenais-tu ?

    Cette équipe est totalement indispensable. Il y a en permanence des problèmes qui apparaissent dans la distrib, des choses qui tombent en panne, de nouveaux services à intégrer, d'anciennes applis qui ne marchent plus sur les nouvelles distributions ou les nouveaux services et qu'il faut porter, etc.
    J'ai commencé sur Mailman / HyperKitty mais je me suis diversifié depuis, je dirais qu'aujourd'hui je me concentre sur l'aspect applicatif : maintenance de nos applis, portages, adaptations, évolutions, etc. Les dernières applis sur lesquelles j'ai travaillé sont Fedora Messaging, Noggin/IPA (authentification), Datanommer/Datagrepper, FMN (notifications), MirrorManager, et plus récemment Badges.

    Tu as notamment beaucoup contribué à mailman et hypperkitty pour les listes de diffusion du projet. Qu'est-ce que tu as fait ? La migration a-t-elle été difficile ? Quelle importance ont encore les listes de diffusion aujourd'hui au sein du projet Fedora ?

    C'était mon premier travail lorsque j'ai été embauché par Red Hat, oui. J'ai fait le développement de HyperKitty, en suivant les travaux de conception d'interface réalisés par Mo Duffy. J'ai travaillé aussi sur Mailman 3 lui-même quand c'était son développement qui me bloquait pour HyperKitty ou pour le déploiement du tout. J'ai écrit un script de migration qui a pas trop mal marché je pense, quand on prend en compte la longue historique des listes de diffusion du projet. Il fait partie de HyperKitty et va maintenant être utilisé pour la migration des listes de CentOS.

    Le sujet des listes de diffusion a presque toujours été assez conflictuel chez Fedora. Il y a une quinzaine d'années, avant que je sois embauché pour travailler sur HyperKitty, notre communauté était déjà fractionnée entre les contributeurs plutôt réguliers qui utilisaient les listes, et les utilisateurs et contributeurs occasionnels qui étaient plutôt sur des forums web. En effet, utiliser une liste de diffusion est plus engageant qu'un forum, il faut s'y abonner, mettre en place des filtres dans sa messagerie, gérer l'espace de son compte mail en conséquence, c'est impossible de répondre à un message envoyé avant qu'on s'y abonne, on ne peut pas éditer ses messages, etc. Quand on veut juste poser une question rapidement ou répondre rapidement à quelque chose, les forums peuvent être plus pratiques et plus intuitifs. L'utilisation des listes de diffusion peut être intimidant et contre-intuitif : combien de personnes ont envoyé "unsubscribe" à une liste en voulant se désinscrire ?

    La promesse d'HyperKitty était d'offrir une interface de type forum aux listes de diffusion, pour faire le pont entre les deux communautés, et permettre plus facilement la conversion d'utilisateurs en contributeurs tout en permettant aux contributeurs d'être plus facilement confrontés aux problèmes rencontrés par les utilisateurs. Ça n'a pas bien fonctionné, mais c'est un sujet qui reste d'actualité aujourd'hui avec l'intégration de Discourse dans le projet. Je crois que le projet essaie de migrer de plus en plus de processus depuis les listes de diffusion vers Discourse, pour que ça atteigne le maximum d'utilisateurs et de contributeurs.

    Puis également sur le compte unique au sein du projet Fedora (nommé FAS), quelle est l'importance de ce projet et ce que tu y as fait ?

    C'est un projet qu'on a gardé longtemps dans les cartons, peut-être trop longtemps même. L'idée était de remplacer FAS (Fedora Account System), une base de donnée des utilisateurs avec une API maison, par FreeIPA, une intégration de LDAP et Kerberos pour gérer les comptes utilisateurs en entreprise. On utilisait en fait déjà IPA pour la partie Kerberos dans l'infra, mais la base de référence des comptes était FAS. Or, FAS n'était plus maintenu, et sa ré-écriture par un membre de la communauté (un français ! petit clin d'œil à Xavier au passage) prenait un peu trop de temps. FAS tournait sur EL6 et la fin de vie approchait.
    Migrer la base de comptes sur IPA a été assez complexe parce que beaucoup d'applications s'intégraient avec, il a donc fallu tout convertir vers le nouveau système. IPA étant prévu pour des entreprises à la base, il n'y a pas de système d'auto-enregistrement et de gestion avancée de son propre compte. Nous avons donc dû développer cette interface, qui s'appelle Noggin. Nous avons aussi écrit une API REST pour IPA, appelée FASJSON. Enfin, il a fallu personnaliser IPA pour qu'il stocke les données dont nous avions besoin dans l'annuaire LDAP.
    J'ai été développeur et responsable technique sur ce projet, donc je me suis surtout concentré sur la conception et les points d'implémentation délicats.

    Tu fais parti des gros contributeurs du composant Bodhi et même l'infrastructure de la compilation des paquets en général, là encore quel a été ton rôle là dedans et en quoi ces composants sont importants pour le projet ?

    Bodhi est vraiment au cœur du cycle de vie d'un paquet RPM dans Fedora. C'est aussi une des seules applications de l'infra qui soit significativement maintenue par un membre de la communauté qui n'est pas un employé de Red Hat (Mattia). Elle permet de proposer une mise à jour des paquets, s'intègre avec les composants de tests de paquets, et permet de commenter une mise à jour.
    J'ai travaillé dessus de manière sommaire seulement, depuis le départ de Randy (bowlofeggs) qui la maintenait auparavant. J'ai converti le système d'authentification version OIDC, j'ai écrit les tests d'intégration, j'ai travaillé un peu sur l'intégration continue, mais c'est tout.

    Peux-tu expliquer rapidement l'architecture derrière cette mécanique ?

    Et bien, disons qu'en résumé quand un packageur veut proposer une mise à jour, il met à jour son fichier spec dans son dépôt, lance une construction du paquet avec fedpkg dans Koji, et doit ensuite déclarer et donner les détails de sa mise à jour dans Bodhi. C'est là que les tests d'intégration des paquets se déclenchent, et au bout d'un certain temps (ou d'un certain nombre de commentaires positifs) la mise à jour arrive sur les miroirs.

    Tu as aussi beaucoup travaillé sur Fedora-Hubs, peux-tu revenir sur les ambitions de ce projet ? Pourquoi il n'a finalement pas été adopté et concrétisé comme prévu ?

    L'objectif de Fedora Hubs était de centraliser l'information venant de différentes applications Fedora sur une même page, avec une interface qui explique clairement ce que ça veut dire et quelles sont les étapes suivantes. Une sorte de tableau de bord pour contributeur, et pas seulement pour packageur, un peu dans l'esprit de ce que fait aujourd'hui https://packager-dashboard.fedoraproject.org/.
    Malheureusement la proposition a été faite à un moment où il y avait d'autres priorités plus urgentes, et vu que c'était quand même pas mal de boulot on a laissé tomber pour s'occuper du reste.

    Est-ce qu'il y a des collaborations concernant l'infrastructure entre les projets RHEL, CentOS et Fedora ou même d'autres entités externes ?

    Oui, on essaye de partager le maximum ! Le système d'authentification est commun entre CentOS et Fedora, par exemple. On essaie d'échanger sur nos rôles Ansible, sur la surveillance de l'infra, etc.

    Si tu avais la possibilité de changer quelque chose dans la distribution Fedora ou dans sa manière de fonctionner, qu'est-ce que ce serait ?

    J'adorerais qu'il y ait plus de contributeurs qui participent aussi à l'infrastructure, et notamment à nos applications. À vrai dire je cherche en ce moment des moyens de motiver les gens à venir y mettre les mains. C'est super intéressant, et vous pouvez directement affecter la vie des milliers de contributeurs au projet ! Je suis même prêt à mettre de l'énergie là-dedans si besoin, sous forme de présentations, ateliers, questions/réponses, etc. Et je pose donc la question à tout le monde : si Fedora vous intéresse, si le développement vous intéresse, qu'est-ce qui vous freine pour contribuer aux applis de l'infra ?

    À l'inverse, est-ce qu'il y a quelque chose que tu souhaiterais conserver à tout prix dans la distribution ou le projet en lui même ?

    Je crois que c'est notre capacité à innover, à proposer les dernières nouveautés du logiciel libre :-)

    Que penses-tu de la communauté Fedora-fr que ce soit son évolution et sa situation actuelle ? Qu'est-ce que tu améliorerais si tu en avais la possibilité ?

    À vrai dire je n'ai pas suivi de près les évolutions de la communauté française. Mon boulot m'amène à communiquer quasi-exclusivement en anglais, donc j'interagis plus avec la communauté anglophone.

    Quelque chose à ajouter ?

    Non, rien de spécial, à part revenir sur ma question : si vous avez eu envie d'améliorer l'infra et/ou les applis de l'infra de Fedora, qu'est-ce qui vous a freiné ? Qu'est-ce qui vous freine aujourd'hui ? N'hésitez pas à me contacter sur Matrix (abompard@fedora.im) et sur Discourse.

    Merci pour ta contribution !

    Merci à vous, et joyeux anniversaire à Fedora-Fr !

    Conclusion

    Nous espérons que cet entretien vous a permis d'en découvrir un peu plus sur l'infrastructure du projet Fedora.

    Si vous avez des questions ou que vous souhaitez participer au projet Fedora ou Fedora-fr, ou simplement l'utiliser et l'installer sur votre machine, n'hésitez pas à en discuter avec nous en commentaire ou sur le forum Fedora-fr.

    Et ainsi s'achève notre série d'entretiens. On espère que cela vous aura plus et peut être à dans quelques années pour savoir ce qui a changé. :)

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    muttum, un nouveau jeu de devinette de mots pour Linux

    Linuxfr.org - 15 juillet, 2025 - 14:32

    muttum est un jeu libre dont le but est de retrouver un mot en quelques essais. La première lettre est fixe pour avoir des plateaux différents à chaque fois. Une première version de muttum est publiée sur Flathub depuis le début de l’été.

    Sommaire Histoire

    Le projet muttum est né suite à la découverte des jeux Wordle et Sutom qui proposent également de deviner un mot une fois par jour dans le dictionnaire anglais pour le premier et français pour le second.

    J’ai décidé de me lancer dans l’aventure de développer muttum sur mon temps libre pour proposer le jeu de devinette sans avoir besoin d’Internet et pour pouvoir essayer plusieurs mots dans la même journée sans limitation artificielle.

    Une autre de mes motivations était d’apprendre à créer une application avec les bibliothèques GTK et GObject. J’avais déjà joué avec GTK quelques fois, mais je n’avais pas utilisé le concept des objets proposé par GObject et il me semblait que GObject pouvait simplifier l’utilisation des composant GTK complexes. Par exemple, après avoir implémenté la vue en table des budgets HomeBank, j’ai eu l’impression que ça aurait été plus facile de créer la table GTK si les données à afficher avait déjà été mises en forme avec GObject.

    Je voulais également essayer également d’utiliser le langage C directement, le langage utilisé par GTK, pour ne pas avoir besoin de dépendre des introspections (interfaces de GTK avec les autres langages de programmation, comme Python, C++…).

    C’est ainsi que le développement a commencé en février 2022 sous le nom temporaire LeBonMot avec une structure assez simple qui mélangeait le moteur logique du jeu et l’interface graphique dans un seul et même code source.

    Après quelques semaines de développement, j’ai trouvé le nom muttum et j’ai débuté la location du nom de domaine muttum.org en avril 2022 :

    $ rdap muttum.org
    Domain:
    Domain Name: muttum.org
    Domain Name (Unicode): > muttum.org
    […]
    Event:
    Action: registration
    Date: 2022-04-12T08:46:16.285Z

    muttum serait, d’après le Wiktionnaire, un nom commun latin qui signifie bruit, grognement et dont la dérivation en français a formé le nom commun mot. Cette information m’a bien plu puisque justement le but du jeu est de retrouver le bon mot et que, en plus, c’est un palindrome.

    Durant la même période, j’ai commencé une réorganisation du code pour séparer la partie moteur de calcul de la partie graphique, ce qui permettra dans le futur de développer plusieurs styles d’interface graphique. Pour l’instant muttum ne propose qu’une interface développée pour la plateforme GNOME, car elle dépend de la bibliothèque libadwaita.

    Quand je décide de faire cette séparation, j’ai deux idées d’interfaces  : une qui serait multi-plateforme en n’utilisant que GTK (sans libadwaita) et une interface web en utilisant WebAssembly pour utiliser le moteur de muttum. Pour l’instant, aucune de ces 2 interfaces n’a été développée. La version multiplateforme sera assez rapide à implémenter (il faut enlever libadwaita des dépendances) et la version web ne sera peut-être jamais utile finalement : depuis 2025 GTK propose un portage expérimental pour la plateforme Android.

    Vers septembre 2022, je décide de séparer le code source dans deux répertoires différents: muttum ne contiendra que l’interface graphique et libmuttum ne contiendra que le moteur du jeu. Le travail est donc continué sur libmuttum jusqu’à fin janvier 2023 (séparation du moteur, ajout de tests pour le moteur…).

    Le projet est en pause complète jusqu’en novembre 2024, je ne sais plus pourquoi, mais certainement parce que les rénovations de ma maison ont débuté en 2023 et que je n’avais plus la tête à coder sur mon temps libre.

    En novembre 2024, le premier commit de la reprise indique que je reprends le code du moteur avec le langage Rust et ce pour plusieurs raisons :

    1. je souhaitais apprendre Rust et le code de ce moteur était un bon bac à sable pour apprendre un nouveau langage. Il m’avait d’ailleurs déjà permis d’apprendre à utiliser C et GObject ;
    2. je ne retrouve plus la référence exacte, mais un des développeurs principaux de GTK conseillait d’utiliser Rust pour débuter de nouvelles applications (c’était probablement l’article On Vala d’Emmanuele Bassi) ;
    3. les éditions ENI m’ont offert le livre Rust, Développez des programmes robustes et sécurisés pour une de mes contributions à LinuxFr.

    Enfin, en juin 2025, la première version publique a été publiée sur Flathub.

    Fonctionnalités

    muttum fonctionne avec des dictionnaires : ce sont des fichiers textes qui contiennent un mot connu par ligne et qui sont encodés en UTF-8. Les dictionnaires distribués avec la version Flathub proviennent des projets:

    • wfrench pour le français
    • scowl pour les dictionnaires anglais
    • igerman98 pour les dictionnaires allemands

    muttum permet aux distributeurs de définir n’importe quel dictionnaire avec un fichier de configuration. Ceci permet aux empaqueteurs d’utiliser les paquets déjà existant pour les dictionnaires et de donner le chemin à charger pour chaque langue. Ce fichier de configuration est également utilisé dans le dialogue À propos des dictionnaires pour créditer les projets qui ont créé les dictionnaires.

    muttum sait gérer l’alphabet latin, mais il est architecturé pour définir d’autres alphabets. Pour ce faire, il faut définir les caractères de base. muttum utilise cette liste pour filtrer les caractères entrés par l’utilisateur et pour filtrer les mots valides.

    À mesure que l’utilisateur essaie des mots différents, muttum met à jour l’alphabet affiché en dessous du plateau pour indiquer si toutes les occurrences d’une lettre ont été trouvées (couleur verte), si des occurrences ont été trouvées et qu’il pourrait en exister plus (couleur orange) ou si une lettre n’existe pas dans le mot (couleur grise).

    Limitations

    muttum nécessite un clavier pour saisir les caractères, il n’y a pour l’instant pas de possibilité de saisir les caractères avec un écran tactile. L’écran doit aussi être assez grand pour pouvoir afficher le plateau complètement, donc pour l’instant il n’est pas utilisable sur les smartphones.

    muttum n’applique pas de filtres sur les mots des dictionnaires, il contrôle uniquement qu’un mot est valide selon l’alphabet défini. Par exemple, il est conseillé qu’un dictionnaire contienne les conjugaisons complètes des verbes et donc un mot à deviner peut être n’importe quelle forme du verbe.

    Développements futurs

    Pour l’instant, je vais faire une pause dans le développement de ce jeu, parce que je souhaite travailler sur d’autres projets.

    Néanmoins, j’ai déjà quelques idées pour la suite de ce projet :

    1. ajouter un dialogue pour expliquer comment jouer (utilisation du clavier), la signification des couleurs et la mise à jour de l’alphabet sous le plateau
    2. ajouter un chronomètre en sous-titre de la fenêtre et afficher le temps pour terminer le plateau dans le dialogue de fin de jeu
    3. dans le dialogue de fin, j’aimerai ajouter un bouton de partage comme le fait Sutom. Pour que ce soit intéressant, il faudra que j’ajoute un lien pour que les amis puissent essayer le même plateau. Donc il faut que muttum gère le schéma d’application muttum:// et il faudrait mettre le mot à trouver encodé en base64 et les paramètres du plateau dans le lien
    4. vers la fin du projet, j’ai appris l’existence de l’option pedantic pour le linter clippy et je voudrais corriger les points qu’il remonte pour avoir un meilleur style de code.
    5. la bibliothèque icu a sorti une nouvelle version majeur, il faudrait mettre à jour le code de muttum pour celle-ci.
    6. rendre l’application compatible avec les smartphones. Ça passera sûrement par l’utilisation d’entrées textes à la place des labels dans le plateau, cacher l’alphabet par défaut et rendre le plateau défilable.
    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Syndicate content