L'Agenda du Libre

Logiciels, Arts, Données, Matériels, Contenus, Communs, Internet...

À proximité

Actualités des organisations

April

L'April présente avec un stand à la Fête de l'Huma - 12, 13 et 14 septembre 2025 à la Base 217 (Essonne)


Île-de-France
Publié le
vendredi 29 août 2025 15h12
Importé le
vendredi 29 août 2025 21h03
Start: 12 Septembre 2025 - 12:00End: 14 Septembre 2025 - 18:00 Illustration de Gee disponible sous licence libre Creative Commons CC BY-SA 2.0

À l'occasion de la Fête de l'Humanité, les 12, 13 et 14 septembre 2025 à La Base 217 (Essonne), de nombreuses associations libristes seront présentes dans l'espace Science et Numérique : en plus de l'April, vous pourrez rencontrer Les Ordis Libres, Framasoft, Parinux, FDN, Libres en Communs…

Stand April

L'accueil sur notre stand sera assuré par notre présidente Bookynette, venez la rencontrer !

Les débats-conférences proposées dans l'espace numérique

  • Quel modèle économique pour le logiciel libre ?, vendredi 12 septembre à 14 h 00
  • Un service public du numérique ? Oui c'est possible !, vendredi 12 septembre à 16 h 00
  • Ce n'est pas l'IA que vous détestez, c'est le capitalisme, samedi 13 septembre, horaire à confirmer
April

Soirée « radio ouverte » au studio de Cause Commune vendredi 5 septembre 2025 à 19 h 30


Île-de-France
Publié le
vendredi 29 août 2025 13h52
Importé le
vendredi 29 août 2025 21h03
Start: 5 Septembre 2025 - 19:30End: 5 Septembre 2025 - 22:00

Libre à vous !, notre émission de radio sur les libertés informatiques. est diffusée sur la radio associative Cause Commune, la voix des possibles.

La radio ouvre ses portes chaque premier vendredi du mois à partir de 19h30 pour une soirée « radio ouverte » avec un apéro participatif. Occasion de découvrir le studio et de rencontrer les personnes qui animent les émissions.

La prochaine soirée-rencontre « radio ouverte » aura lieu vendredi 5 septembre 2025 au studio de la radio : 22 rue Bernard Dimey 75018 Paris. Julie Chaumard, membre du conseil d'administration de l'April et chroniqueuse dans l'émission, et Frédéric Couchet, délégué général de l'April, participeront à la soirée.

Inscription (non obligatoire, mais cela facilite l'organisation) sur le bloc-notes.

À partir de 20 h il y aura en direct une émission intitulée « Comm'un vendredi » consacrée aux coulisses de la radio. le principe général est de réunir des animatrices et animateurs d’émissions de la radio pour parler de leurs émissions, de la radio, de leurs expériences. Mais aussi donner la parole aux auditrices et aux auditeurs.

À l'occasion de cette émission des initiatives de la Fête des Possibles seront mises en valeur. Pour en savoir plus vous pouvez consulter cette page.

Projet Internet et Citoyenneté

Réunion de CA du 26 Août 2025


Occitanie
Publié le
vendredi 29 août 2025 11h59
Importé le
vendredi 29 août 2025 13h05

Compte-rendu du conseil d'administration du 26 août

- Année 2025
Le BIB

Fin de Windows 10


Occitanie
Publié le
vendredi 29 août 2025 01h53
Importé le
vendredi 29 août 2025 05h03

La prise en charge de Windows 10 se termine le 14 octobre 2025, et Windows 11 refuse de s'installer sur un bon nombre d'ordinateurs. Microsoft veut que vous en achetiez un nouveau. C'est un choix arbitraire qui risque d'envoyer 240 millions d'ordinateurs parfaitement fonctionnels à la benne. C'est de l’obsolescence logicielle fabriquée de toute pièce.

On vous propose, courant début de l'automne, de parler des impacts écologiques de nos usages numériques, des mines jusqu'aux décharges, et de les lier aux problématiques de surveillance et de logiciel libre. On tentera de trouver des pistes collectives pour un numérique plus sobre.

Il s'agira d'une présentation puis d'une discussion autour de ces enjeux, puis pour celleux qui le souhaitent une démonstration du système d'exploitation Linux. Pour les personnes qui veulent passer le pas, ou commencer à s'initier, une « install party » sera organisée le dimanche au hackerspace Le Bib (80 impasse flouch) pour vous aider à installer Linux sur votre ordinateur ou répondre à toutes vos questions.

Restez connecté pour avoir les dates !

CLX

Cysoing : Mercredis Linux, Le mercredi 24 septembre 2025 de 18h30 à 23h30.


Hauts-de-France
Publié le
jeudi 28 août 2025 23h16
Importé le
vendredi 29 août 2025 05h03

L'Association Club Linux Nord Pas de Calais organise chaque mois une permanence Logiciels Libres ouverte à tous, membre de l'association ou non, débutant ou expert, curieux ou passionné.
Durant cette permanence, vous pourrez trouver des réponses aux questions que vous vous posez au sujet du Logiciel Libre, ainsi que de l'aide pour résoudre vos problèmes d'installation, de configuration et d'utilisation de Logiciels Libres.
N'hésitez pas à apporter votre ordinateur, afin que les (…)

- Cysoing / CLX, Install-Party, Mercredi-Linux (Mardi-Linux), Cysoing
CLX

Cysoing : Mercredis Linux, Le mercredi 24 septembre 2025 de 18h30 à 23h30.


Hauts-de-France
Publié le
jeudi 28 août 2025 23h16
Importé le
vendredi 29 août 2025 05h03
- Agenda / Install-Party, Mercredi-Linux (Mardi-Linux), Démonstration, Cysoing
LinuxFr

L’architecture d’entreprise dans l’anthropocène : Le logiciel libre pour améliorer sa résilience


Internet
Publié le
jeudi 28 août 2025 23h00
Importé le
vendredi 29 août 2025 05h03

Cet article fait suite à : “L’architecture d’entreprise dans l’anthropocène : une stratégie numérique soutenable”. Le but de cette suite d’articles est d’essayer d’éclairer l’évolution du domaine métier de l’architecture d’entreprise sous le prisme de l’anthropocène.
En effet, au delà de la question de la soutenabilité, l’un des enjeux importants dans l’anthropocène, et peut-être le plus important, est la résilience de l’organisation.
Certaines entreprises ont déjà lancé des changements profonds avec le support du CEC (Convention des Entreprises pour le Climat) tandis que d’autres se lancent dans un exercice de propective pour définir la direction à suivre. A ce propos, le cabinet “Sinon Virgule” a d’ailleurs produit une excellente étude à la demande de la MACIF, La MAIF et la Caisse des dépôts sur le devenir de leur métier : “Peut-on assurer un monde qui s’effondre ?”.

    Sommaire

    Pourquoi le logiciel libre afin d’améliorer sa résilience numérique ?

    La résilience d’un système numérique va bien au delà de la redondance matérielle et logicielle de ses systèmes.
    En effet, dans le contexte géo-politique instable actuel, comme nous avons pu le voir pour la guerre en Ukraine avec l’explosion des coûts de l’énergie ou aujourd’hui avec l’augmentation du protectionnisme aux USA entraînant l’augmentation des taxes douanières, cette résilience implique un meilleur contrôle de ses infrastructures, ses technologies et ses données afin de s’assurer une certaine autonomie et indépendance vis à vis de ces évolutions géo-politiques.
    Sur ce sujet de l’impact géo-politique, le CIGREF a d’ailleurs écrit une note intéressante très récemment : Géopolitique et stratégie numérique.

    Au-delà des contraintes géopolitiques, l’usage du logiciel libre permet de lutter contre l’infobésité des géants de la tech pour soutenir votre stratégie de soutenabilité numérique mais aussi des impacts financiers de l’ajout de technologie comme l’IA générative qui ne vous apporteront peu ou pas de valeur métier mais juste à supporter la croissance des gafam dans le développement d’une technologie qui n’est pas encore mature (voir Gartner hype cycle).

    Les raisons de passer aux logiciels libres sont vastes : géopolitique, souveraineté, autonomie numérique, … Et les exemples aussi :

    C'est Quoi le logiciel libre ?

    Le logiciel libre ne se présente plus après plus de 40 ans d’existence. C’est devenu, en entreprise, un commun. Tout le monde s’y est mis même Microsoft qui luttait contre lui au début de son existence.
    Regardons néanmoins, quelques grandes dates de l’écosystème du libre depuis les années 1970. Attention ce chronogramme n’est pas exhaustif. Pour avoir une vue complète, je vous invite à vous connecter au portail du logiciel libre sur Wikipédia :

    Le logiciel libre s’est développé non grâce à une organisation type entreprise (cathédrale) mais par la coopération entre individus sans contre-partie financière hormis la reconnaissance de ses pairs : La cathédrale et le bazar.
    En 40 ans, ce modèle d’intelligence collective a fournit des logiciels d’une telle qualité que ceux-ci sont devenus un standards dans un bon nombre de domaines.

    Définition du logiciel libre :

    Selon la Free Software Foundation, un logiciel est considéré comme « libre » s’il donne à l’utilisateur quatre libertés fondamentales :

    • La liberté d’utiliser le logiciel à n’importe quelle fin
    • De l’étudier et de modifier le code source
    • De redistribuer des copies du logiciel
    • D’améliorer le logiciel et de partager ces améliorations avec la communauté.

    L’essence du logiciel libre est donc une question d’éthique et de liberté des utilisateurs. Le logiciel libre tend à renforcer les droits de l’utilisateur.

    L’Open Source Initiative (OSI) définit un logiciel open source comme un logiciel dont la licence respecte certains critères, principalement la libre redistribution du logiciel, l’accès au code source, la possibilité de créer des travaux dérivés et l’intégrité du code de l’auteur.

    Quelques chiffres aujourd’hui :

    Comment développer son usage dans une organisation ?

    Fondé en 2014, le groupement TODO propose un cadre pour construire un département dédier à l’open source dans une organisation, nommé OSPO : Open Source Programmme Office. TODO est une communauté de practiciens qui visent à créer les meilleures pratiques et outils pour opérer des OSPO dans les organisations.

    Pour les moyennes et grandes organisations, une approche OSPO est intéressante. Un OSPO agit comme le point centralisé des activités open source d'une organisation, coordonnant les politiques d'utilisation, les stratégies de contribution, les procédures de conformité et les initiatives d'engagement communautaire.

    Le mindmap proposé par TODO synthétise bien les capacités que l’OSPO peut porter :

    Un programme d'opérations peut aider de nombreuses organisations à obtenir de meilleurs résultats grâce à l'open source comme le font déjà :

    Avec quoi ?

    La liste des logiciels libre est longue, voici quelques bibliothèques répertoriant ceux-ci :

    Pour donner une exemple concret, prenons 2 building blocks qui se retrouvent généralement dans les organisations : le poste de travail et l’ERP ou plutôt le PGI (progiciel de gestion intégré) en français.

    Le poste de travail type bureautique avec des logiciels libres :
    Les solutions sont nombreuses. On peut s’appuyer sur une solution pré-packagée comme openDesk mais qui nécessite une infrastructure kubernetes pour être exploitée. Une approche plus simple sera privilégiée pour les petites et moyennes organisations.
    La suite openDesk, à ne pas confondre avec les meubles de bureau opendesk, a été financé par le Ministére fédéral Allemand de l’intérieur et du territoire afin de réduire la dépendance de l’administration publique des fournisseurs de logiciels propriétaires.
    Cette suite comprend le socle de logiciels libres suivants :

    Une solution plus légère pourrait se limiter à Cryptpad pour la partie Office et Nextcloud pour la partie workplace. Avec bien sûr un poste de travail tournant sur une distribution gnu-Linux comme Ubuntu avec Mozilla Firefox et Thunderbird en client lourd :

    L'ERP avec les logiciels libres :
    L’Enterprise Ressource Planning ou PGI, la solution est plus simple et plus complexe à la fois. Plus simple en terme de définition de la solution car une seule application embarquera l’ensemble des fonctionnalités et plus complexe à la fois car ces applications type ERP embarquent beaucoup de fonctionnalités et donc sont complexes à gérer.

    L’organisation de grande taille préférera un ERP de type SAP ou Oracle E-busines suite, tandis que pour une petite ou moyenne structure le logiciel libre apporte de nombreuses solutions comme : ERPNext, Triton, Dolibarr, OpenConcerto, ….

    Si nous prenons l’exemple de Dolibarr, les fonctionnalités couvertes sont les suivantes :

    En conclusion

    Dans l’anthropocène le logiciel libre est une excellente voie pour asseoir ou améliorer la résilience de son système d’information dans ce contexte géopolitique incertain et qui ne devrait pas s’améliorer (cf Tellus institute).

    Les logiciels libres ne pourront certes pas supplanter toutes les applications de votre patrimoine applicatif mais pour ce qui existe pourquoi ne pas en profiter ? Regardez, même Microsoft est passé de “linux est un cancer” en 2001 à “Nous aimons linux” en 2014.

    Les logiciels sont des logiciels d’excellente qualité comme ils l’ont déjà démontré. Le problème est peut être que les logiciels libres souffrent d’une image trop “tech”.

    Au delà de cela, il existe aussi des applications métiers qui permettront de libérer une partie de votre SI :

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    MJC Chenôve

    Tout Le Monde Dehors 2025 : Un été de convivialité et de découvertes à Chenôve


    Bourgogne-Franche-Comté
    Publié le
    jeudi 28 août 2025 13h13
    Importé le
    jeudi 28 août 2025 21h03

    Cet été, les Maisons Pop de Chenôve ont transformé les mardis en moments de partage avec le programme « Tout Le Monde Dehors ». De juillet à août, petits et grands ont pu profiter d’activités variées en plein air : circuits de karts à pédales et vélos atypiques avec La Rustine et La Boîte à […]

    L’article Tout Le Monde Dehors 2025 : Un été de convivialité et de découvertes à Chenôve est apparu en premier sur Les Maisons Pop de Chenôve.

    MJC Chenôve

    En direct du stage des Ailes de Bronze !


    Bourgogne-Franche-Comté
    Publié le
    jeudi 28 août 2025 13h05
    Importé le
    jeudi 28 août 2025 13h06

    Le stage des Ailes de Bronze de la section Aéromodélisme des Maisons Pop prend son envol ! C’est un moment privilégié pour les passionnés et les curieux de l’aéromodélisme pour découvrir cette discipline au plateau de Chenôve et passer le diplôme des Ailes de Bronze, encadré par les membres de cette section !

    L’article En direct du stage des Ailes de Bronze ! est apparu en premier sur Les Maisons Pop de Chenôve.

    MJC Chenôve

    La Maison Pop Jaune fait sa rentrée !


    Bourgogne-Franche-Comté
    Publié le
    jeudi 28 août 2025 11h45
    Importé le
    jeudi 28 août 2025 13h06

    Retrouvez-nous dès le 10 septembre chaque mercredi après-midi de 14h à 17h à l’esplanade du Mail (devant la bibliothèque) pour profiter des derniers beaux jours en extérieur. C’est l’occasion de découvrir en famille tous les projets concoctés pour cette rentrée.

    L’article La Maison Pop Jaune fait sa rentrée ! est apparu en premier sur Les Maisons Pop de Chenôve.

    April

    Migrer de Windows vers un système libre, rendez-vous dans Libre à vous ! mardi 9 septembre 2025


    Île-de-France
    Publié le
    jeudi 28 août 2025 10h50
    Importé le
    jeudi 28 août 2025 13h04

    Depuis 2018, chaque mardi de 15 heures 30 à 17 heures, l’April, l’association de promotion et de défense du logiciel libre, propose l’émission Libre à vous ! sur radio Cause Commune pour faire découvrir les enjeux et l’actualité du logiciel libre, et permettre de prendre le contrôle de ses libertés informatiques.

    Rentrée et programme de septembre

    L’émission fait sa rentrée mardi 9 septembre 2025 à 15 heures 30.

    Le sujet principal portera sur la migration vers un système libre sur le poste de travail.

    Ce sujet a été choisi pour mettre en avant l’alternative logiciels libres à l’obsolescence logicielle induite par Microsoft, suite à l’annonce de la fin des mises à jour de sécurité gratuite pour Windows 10 dès le 14 octobre 2025. Cette décision pourrait entraîner l’obsolescence anticipée de millions d’équipements, encore fonctionnels, du fait de l’incompatibilité de nombreux appareils avec Windows 11.

    Interviendront lors de cette émission :

    • Isabelle Carrère de l’association Antanak. Basée dans le 18e arrondissement de Paris, Antanak propose le don d’ordinateurs reconditionnés avec installation de systèmes et logiciels libres et permet l’appropriation du numérique par des accompagnements individualisés et des ateliers numériques.
    • Julien Négros, responsable technique de l’administration système chez Enercoop, fournisseur coopératif français d’électricité d’origine renouvelable. Enercoop a environ 250 postes de travail sous un système libre (Debian GNU/Linux), répartis parmi toutes les coopératives.
    • une personne d'une collectivité (en attente)

    Au programme ensuite en septembre :

    • mardi 16 septembre : rencontre avec InterHop qui promeut et développe l’utilisation du logiciel libre pour la recherche en santé
    • mardi 23 septembre : le langage de programmation Python
    • mardi 30 septembre : parcours libriste avec Elena Rossini. Elena Rossini est cinéaste, photographe et militante italienne. Son travail porte sur les questions de justice sociale, de représentation médiatique et sur l’exploitation du pouvoir d’Internet pour le changement. Un parcours libriste est l’interview d’une seule personne pour parler de son parcours personnel et professionnel. Un parcours individuel mais qui va bien sûr être l’occasion de partager messages, suggestions et autres.

    Libre à vous ! désormais rediffusée sur Radio Quetsch

    Depuis quelques années Libre à vous ! est rediffusée sur d’autres radios

    Nous avons le plaisir d’annoncer que Libre à vous ! sera désormais également diffusée sur Radio Quetsch les mardis de 18 heures à 19 heures 30. Radio Quetsch est une radio qui émet sur le territoire du Sundgau qui va du pied des Vosges au début du Jura Suisse. C'est une web radio qui a aussi une autorisation temporaire de diffusion en FM sur 89,1 Mhz du 21 juin au 21 décembre 2025.

    Abonnez-vous au podcast et à la lettre d’actus

    Pour ne rien rater concernant Libre à vous !

    Soirée de rentrée vendredi 5 septembre 2025 à partir de 19 heures 30

    Libre à vous ! est diffusée en direct sur la radio Cause Commune (93.1 FM et en DAB+ en Île-de-France et sur son site web. Les podcasts et transcriptions sont ensuite disponibles.

    Radio à vocation généraliste, Cause Commune traite, à travers sa grille, une grande diversité de thématiques, dont les principales sont : éducation populaire, sciences sociales, culture, société, culture numérique, musiques, actualité. Découvrez les émissions sur le site de la radio.

    Dans un objectif notamment de créer du lien avec l’auditorat, la radio ouvre les portes du studio (22 rue Bernard Dimey, 75018 Paris) chaque premier vendredi du mois à partir de 19 heures 30 pour une soirée radio ouverte.

    La soirée de rentrée aura lieu vendredi 5 septembre. Frédéric Couchet, membre de l’équipe Libre à vous !, participera à la soirée. Si vous le souhaitez (cela facilite l’organisation) vous pouvez indiquer votre présence sur le bloc-notes.

    Zoomacom

    Formations pour l’Accès aux Droits et à l’Équipement Informatique (ADEI) en septembre 2025


    Auvergne-Rhône-Alpes
    Publié le
    jeudi 28 août 2025 10h30
    Importé le
    jeudi 28 août 2025 13h06

    Présentation Le programme ADEI (Accès aux Droits et à l’Équipement Informatique) permet : d’équiper gratuitement en ordinateur personnel fixe reconditionné...

    L’article Formations pour l’Accès aux Droits et à l’Équipement Informatique (ADEI) en septembre 2025 est apparu en premier sur Zoomacom.

    CERCLL

    L’application Linux que j’utilise pour un anonymat instantané en ligne (oui, en un clic).


    Provence-Alpes-Côte d'Azur
    Publié le
    jeudi 28 août 2025 07h34
    Importé le
    jeudi 28 août 2025 13h04
    Si vous recherchez l’anonymat et la sécurité sous Linux, vous devriez envisager d’utiliser le réseau Tor. Et cette application tout simple vous le permet facilement. A retenir sur Carburetor Le réseau Tor est l’un des moyens les plus sûrs et les plus fiables d’ajouter une couche de confidentialité et de protection renforcée à votre ordinateur […]
    GRAOULUG

    samedi 30 août 2025: permanence du Graoulug


    Grand Est
    Publié le
    mercredi 27 août 2025 20h23
    Importé le
    mercredi 27 août 2025 21h03
    Notre prochaine permanence mensuelle aura lieu samedi prochain, 30 août2025, au local, 60 rue des Allemands à METZ, de 09H00 à 13H00. Venez poser vos questions et partager vos idées en rapport avec le libre !
    LinuxFr

    G'MIC 3.6 : L’art de soigner ses images !


    Internet
    Publié le
    mercredi 27 août 2025 15h20
    Importé le
    mercredi 27 août 2025 21h03

    G’MIC, cadriciel libre pour le traitement des images numériques, vient de proposer une mise à jour significative, avec la sortie de sa nouvelle version 3.6.

    Une bonne occasion pour nous de vous résumer les activités récentes autour de ce projet, et plus précisément, ce qu’il s’est passé depuis notre précédente dépêche, publiée il y a un peu plus d’un an (juin 2024).

    N. D. A. : Cliquez sur les images pour en obtenir une version en pleine résolution, ou une vidéo correspondante lorsque les images contiennent l’icône 

    Sommaire

    1. G’MIC : Un cadriciel pour le traitement des images numériques

    G’MIC (GREYC's Magic for Image Computing) est un projet libre dédié au traitement, la manipulation et la création d'images numériques. Il est développé principalement au sein de l’équipe IMAGE du laboratoire de recherche GREYC de Caen (laboratoire UMR, sous triple tutelle du CNRS, de l'ENSICAEN et de l'Université de Caen).

    La base du projet repose sur un interpréteur de langage de script spécifique, le « langage G’MIC », pensé pour faciliter le prototypage rapide et l’implémentation d’algorithmes de traitement d’images. Autour de ce noyau viennent se greffer plusieurs interfaces utilisateur, qui donnent accès à des centaines d’opérateurs de traitement d’images, mais qui permettent également d’intégrer des pipelines de traitement personnalisés. G’MIC est donc conçu comme un cadriciel ouvert et extensible.

    Parmi ses déclinaisons les plus utilisées, on retrouve : gmic, un outil en ligne de commande comparable et complémentaire à ImageMagick ou GraphicsMagick ; le service Web G’MIC Online ; et surtout le greffon G’MIC-Qt, intégrable dans de nombreux logiciels de création et d’édition d’images tels que GIMP, Krita, DigiKam, Paint.net, Adobe Photoshop ou Affinity Photo. Ce greffon est l’interface de G’MIC la plus populaire. Il donne aujourd’hui un accès rapide à plus de 640 filtres différents, élargissant considérablement les possibilités de filtres et d’effets offertes par ces logiciels de retouche d’images.

    Fig. 1.1. Le greffon G’MIC-Qt en version 3.6, ici utilisé au sein de GIMP 2.10, avec le filtre « Paint With Brush » activé.

    2. Les nouveautés du greffon G’MIC-Qt

    2.1. Hommage à Sébastien Fourey, développeur de G’MIC-Qt

    Avant de décrire la liste des nouveautés de cette version 3.6, nous souhaitons avant tout rendre hommage à notre collègue et ami, Sébastien Fourey, qui était maître de conférence à l’ENSICAEN et qui était le développeur principal du greffon G’MIC-Qt. Le 6 octobre 2024, Sébastien nous a quittés. Tous ceux qui le connaissaient vous le diront : Sébastien était avant tout une personne profondément humaine, généreuse et particulièrement attentive à tous ceux qui l’entouraient. Il était aussi discret et modeste qu’il était doué avec un clavier entre les mains (et c’était quelqu’un de très discret !).

    Et même s’il n’a jamais voulu être mis au-devant de la scène, nous voulons ici faire une exception pour mettre en lumière son travail et le rôle majeur qu’il a eu dans le développement du projet G’MIC : c’est grâce à lui que G’MIC-Qt est aujourd’hui un greffon utilisé et apprécié par des milliers de personnes à travers le monde.

    Il s’avère qu’il était un lecteur assidu de LinuxFr.org, et nous nous devions donc de lui rendre un hommage sur ce site. Sébastien nous manque profondément. Nous ferons notre possible pour que son œuvre perdure. Repose en paix, Sébastien ! Nous pensons à toi et à ta famille.

    Fig. 2.1. Texte hommage à Sébastien Fourey, auteur de G’MIC-Qt, visible dans la section « About » du greffon.

    2.2. Améliorations générales du greffon

    Comme vous vous en doutez, le développement spécifique du greffon G’MIC-Qt a été à l’arrêt depuis octobre dernier. Néanmoins, les derniers ajouts de code réalisés sur le greffon ont rendu possible les choses suivantes :

    • Son code source est désormais compatible avec l’API de plug-in de la nouvelle version majeure de GIMP (la 3.0). Cela a permis d’offrir aux utilisateurs de GIMP un greffon G’MIC-Qt fonctionnel dès la sortie de GIMP 3. Notons qu’assez peu de greffons ont proposé une mise à jour à temps (Resynthesizer, greffon populaire, étant une autre exception). On remercie donc chaleureusement Nils Philippsen et Daniel Berrangé qui ont soumis les patchs activant cette compatibilité avec GIMP 3. Nous continuons en parallèle à maintenir notre greffon pour l’ancienne version (2.10) de GIMP, qui est encore beaucoup utilisée.

    • Le code de G’MIC-Qt devient également compatible avec l’API de la bibliothèque Qt6, la dernière version majeure en date de ce toolkit graphique.

    • L’interface du greffon propose maintenant un outil de prévisualisation des filtres avec séparateur intégré, de manière native. Cette fonctionnalité, accessible via le raccourci clavier CTRL + SHIFT + P, permet de comparer directement l’image avant et après l’application d’un filtre, en affichant les deux versions côte à côte dans la fenêtre de prévisualisation. Cette fonctionnalité existait déjà, mais elle est dorénavant utilisable de manière plus fluide, puisqu’auparavant elle était implémentée indépendamment par chaque filtre (le séparateur de prévisualisation était en fait vu comme un paramètre du filtre, ce qui impliquait un recalcul complet du résultat du filtre même lorsque l’on souhaitait seulement déplacer le séparateur).

    Fig. 2.2.1. Prévisualisation native de filtres avec séparateur intégré dans G’MIC-Qt.

    La vidéo suivante montre comment cette fonctionnalité améliorée se présente dans le greffon :

    Fig. 2.2.2. Prévisualisation native de filtres avec séparateur intégré dans G’MIC-Qt (vidéo).

    2.3. Nouveaux filtres d’images

    Les nouveautés principales du greffon G’MIC-Qt se matérialisent donc plutôt sous la forme de nouveaux filtres et effets accessibles pour les utilisateurs. À la sortie de cette version 3.6, c’est 640 filtres/effets différents qui sont proposés dans l’interface du greffon. En ce qui concerne le filtrage d’images, les dernières entrées ajoutées sont les suivantes :

    • Le filtre « Déformations / Warp [RBF] » propose de déformer localement une image en définissant dans un premier temps des points d’ancrage dans la fenêtre de prévisualisation. Puis, en repositionnant ces points de contrôle, on déforme l’image de manière intuitive et interactive, directement dans la fenêtre de prévisualisation. Idéal pour réaliser des retouches rapides ou créer des caricatures amusantes !

    Fig. 2.3.1. Le filtre « Deformations / Warp [RBF] » en action dans G’MIC-Qt.

    La vidéo suivante montre son utilisation en pratique au sein du greffon G’MIC-Qt pour la déformation d’un visage :

    Fig. 2.3.2. Le filtre « Deformations / Warp [RBF] » en action dans G’MIC-Qt (vidéo).

    • Le filtre « Repair / Upscale [CNN2x] » a pour but de doubler la résolution d’une image à l’aide d’un réseau de neurones convolutifs léger (CNN), qui a été entrainé pour préserver les détails et les textures des images lors de l’agrandissement. Ce module offre une alternative simple et relativement efficace aux méthodes d’agrandissement plus classiques (en particulier celles qui sont implémentées nativement dans GIMP).

    Fig. 2.3.3. Le filtre « Repair / Upscale [CNN2X] » en action dans G’MIC-Qt.

    La figure suivante montre justement une comparaison des méthodes classiques d’agrandissement d’images, avec ce nouvel algorithme disponible dans G’MIC-Qt (résultat obtenu en bas à droite) :

    Fig. 2.3.4. Comparaisons des méthodes d’agrandissement d’images avec notre nouvelle méthode « Upscale [CNN2X] ».

    Notons que ce filtre illustre à lui seul quelques avancées récentes réalisées pour la nn_lib, qui est la petite bibliothèque interne d’apprentissage machine intégrée à G’MIC : Clipping des gradients, régularisation L2 des poids des réseaux, planificateur Cosine Annealing LR pour le taux d’apprentissage, module de Pixel Shuffling, sont quelques-unes des nouvelles fonctionnalités qui y ont été ajoutées. Cette bibliothèque de gestion de réseaux de neurones n’est pas très puissante (elle n’utilise que le calcul CPU, pas GPU), mais elle offre néanmoins la possibilité de créer des filtres intéressants basés sur des techniques d’apprentissage statistique.

    • Le filtre « Degradations / VHS Filter », est un filtre créé par Hazel Stagner. Comme son nom l’indique, il cherche à recréer l’esthétique caractéristique des vieilles cassettes vidéo VHS : légères distorsions, bruit coloré, lignes parasites et saturation altérée. Ce filtre est idéal pour donner aux images un aspect rétro, évoquant le rendu des vidéos analogiques des années 80–90.

    Fig. 2.3.5. Le filtre « Degradations / VHS Filter » en action.

    Ce filtre génère un bruit aléatoire, donc l’appliquer plusieurs fois sur une même image donne à chaque fois un rendu différent. On peut donc ainsi synthétiser de petites animations avec un look « analogique - années 90 » du plus bel effet. Les amateurs de Glitch Art apprécieront ! (voyez l’image originale à titre de comparaison).

    Fig. 2.3.6. Le filtre « Degradations / VHS Filter » appliqué plusieurs fois sur une même image, pour en faire une séquence vidéo de type VHS.

    2.4. Nouveaux effets de rendu

    De nouveaux effets font également leur apparition dans le greffon, non pas dans le but de modifier une image existante, mais pour créer une nouvelle image ou un motif à partir de zéro :

    • Le filtre « Patterns / Organic Fibers » synthétise des textures évoquant des entrelacements de fibres organiques, en s’appuyant sur l’algorithme de simulation du Physarum polycephalum proposé par Jeff Jones en 2010, et décrit de manière remarquable sur cette page d’Etienne Jacob (allez voir, ça vaut vraiment le détour !). Nous reparlerons de cet algorithme un peu plus loin dans la dépêche (en section 4.2).


    Fig. 2.4.1. Le filtre « Patterns / Organic Fibers » en action, avec deux jeux de paramètres différents.

    • Le filtre « Rendering / Speech Bubble » insère une bulle de bande dessinée sur un calque d’image additionnel, avec une personnalisation possible de la forme de la bulle (rondeur, forme du pied de bulle, etc.), grâce à la présence de différents points de contrôle. Ce filtre offre un moyen rapide d’intégrer des éléments graphiques typiques de la BD dans une image quelconque, comme illustré ci-dessous avec, dans un premier temps, la vue du filtre tel qu’il se présente dans le greffon, suivi d’une vue du résultat dans GIMP où un texte a été inséré dans la dite bulle.


    Fig. 2.4.2. Le filtre « Rendering / Speech Bubble » permet d’ajouter des bulles de dialogue dans vos images.

    La vidéo ci-dessous présente ce filtre en action dans le greffon G’MIC-Qt sur une photographie :

    Fig. 2.4.3. Le filtre « Rendering / Speech Bubble » en action dans le greffon (vidéo).

    • Le filtre « Rendering / 2.5D Extrusion » simule, à partir d’une forme binaire en entrée, un effet d’extrusion 3D. Il transforme donc rapidement des silhouettes ou des masques en objets visuellement plus consistants, avec un rendu qui évoque du relief, sans devoir passer par un véritable logiciel de modélisation 3D. Les figures suivantes illustrent son utilisation : On crée tout d’abord une forme opaque sur un fond transparent (ici un texte), puis on lui applique le filtre « Rendering / 2.5D Extrusion » de G’MIC-Qt pour créer un rendu façon 3D extrudée. L’angle de rotation, la profondeur de l’extrusion, l’amplitude de l’effet perspective, ainsi que les couleurs des différentes faces sont réglables dans ce filtre.


    Fig. 2.4.4. Le filtre « Rendering / 2.5D Extrusion » en action.

    • Le filtre « Rendering / Fluffy Cloud » génére automatiquement de jolis nuages cotonneux dans vos images. Idéal pour créer des ciels synthétiques, du brouillard, des effets de vapeur éthérée, etc. Ce filtre a été créé par Prawnsushi, contributeur régulier de filtres G’MIC, dont certains filtres avaient été déjà présentés dans notre dépêche précédente. Voici comment ce nouveau filtre se présente lors son ouverture dans le greffon :

    Fig. 2.4.5. Le filtre « Rendering / Fluffy Cloud » dans le greffon _G’MIC-Qt._

    En jouant avec les différents paramètres du filtre, on peut obtenir des rendus variés et intéressants :


    Fig. 2.4.6. Différents rendus de « Rendering / Fluffy Cloud » en faisant varier les paramètres du filtre.

    • Le filtre « Patterns / Stripes » facilite la création de motifs à rayures simples ou complexes. Ce filtre offre de nombreux paramètres pour régler la géométrie des motifs synthétisés, en faisant varier le type de rayures (linéaires, radiales, concentriques), la taille, la couleur ainsi que l’opacité de chaque rayure indépendamment.



    Fig. 2.4.7. Trois exemples de motifs à rayures générés par le filtre « Patterns / Stripes ».

    • Le filtre « Patterns / Gradient [from Curve] » n’est pas à proprement parler un nouveau filtre, mais une évolution d’un filtre précédent « Patterns / Gradient [from Line] ». Cette version étendue extrait un dégradé de couleur en parcourant les pixels de l’image, non plus seulement le long d’un segment, mais le long d’une courbe spline cubique par morceau, définie avec jusqu’à 6 points de contrôle, ce qui autorise le suivi de structures très incurvées dans les images, comme l’illustre la figure suivante :

    Fig. 2.4.8. Le filtre « Patterns / Gradient [from Curve] » extrait les couleurs d’une image localisées le long d’une courbe spline.

    • Et pour en finir avec les nouveautés du greffon, mentionnons le filtre « Rendering / Neon Carpet », un filtre original réalisé par Claude (alias Cli345), contributeur régulier de G’MIC qui avait été interviewé en septembre dernier sur Linuxfr. Ce filtre un peu psychédélique synthétise des motifs lumineux et colorés faisant penser à des tapis fluorescents, comme illustré sur la figure ci-dessous :

    Fig. 2.4.9. Le filtre « Rendering / Neon Carpet », une contribution de Cli435.

    Voilà pour ce qui concerne les nouveautés spécifiques au greffon G’MIC-Qt.

    3. Améliorations du cœur du logiciel et de sa bibliothèque standard

    Passons maintenant à la description du travail réalisé cette année pour l’amélioration du cœur du projet, à savoir l’interpréteur G’MIC et sa bibliothèque standard d’opérateurs. Ce sont forcément des améliorations un peu moins visibles pour l’utilisateur final, mais elles sont toutes aussi importantes, car elles consolident ou améliorent des fonctionnalités qui peuvent ouvrir plus tard la porte au développement de nouveaux filtres originaux.

    3.1. Optimisation de l’interpréteur

    Le moteur interne de G’MIC a bénéficié d’une série d’optimisations notables. Plusieurs améliorations internes, concernant l’analyse, la détection et la concaténation de chaînes de caractères ou encore la recherche de valeurs min/max dans de grandes images (désormais parallélisée avec OpenMP), ont permis d’augmenter légèrement les performances (gain moyen d’environ 2,5% sur le temps d’exécution de scripts G’MIC). Ce n’est pas un gain spectaculaire, mais ça se prend (et après 17 ans à écrire du code pour cet interpréteur, il aurait été presque inquiétant d’obtenir un gain beaucoup plus important ! 😊).

    Sous Windows, la compilation de l’interpréteur utilise désormais Clang et sa libc associée, ce qui produit des exécutables légèrement plus optimisés.

    3.2. Améliorations du moteur de rendu 3D

    Le moteur de rendu 3D intégré de G’MIC a également été amélioré, avec l’ajout du z-clipping pour les primitives hors champ, un calcul d’éclairage affiné, la correction du rendu de normales 3D avec le mode d’éclairage Phong, et l’ajustement des paramètres de réflexion spéculaire.

    Une nouvelle commande multithreaded3d (raccourcie en mt3d) permet désormais d’activer ou désactiver le rendu 3D multi-threadé (là encore par OpenMP). Cela permet d’accélérer considérablement l’affichage de gros maillages.

    Mentionnons au passage l’apparition de la commande normals3d dans la bibliothèque standard, dont le rôle est d’estimer les vecteurs normaux unitaires d’un maillage 3D, que ce soit au niveau des sommets ou des primitives. La figure suivante illustre par exemple l’utilisation de cette commande pour la visualisation de vecteurs normaux à la surface d’un tore 3D :

    Fig. 3.2.1. La commande normals3d permet d’estimer les vecteurs normaux 3D aux sommets ou aux faces d’un maillage 3D.

    3.3. Améliorations de l’évaluateur d’expressions mathématiques

    L’évaluateur d’expressions mathématiques intégré à G’MIC est l’une des pièces maîtresses du projet (en traitement d’images, on doit souvent réaliser beaucoup de calculs…). Il continue lui aussi de s’enrichir et de gagner en efficacité.

    Sans rentrer dans trop de détails techniques, notons que l’analyse syntaxique des expressions a été optimisée grâce à une première passe dédiée à la détection de certains opérateurs, afin d’accélérer leur traitement ultérieur. De nombreuses fonctions font leur apparition, parmi elles, epoch() pour convertir une date en temps Unix, frac() pour extraire la partie fractionnaire d’un nombre, ou encore wave() qui permet de générer différentes fonctions ou images périodiques (sinusoïdales, triangulaires, etc.), comme illustré sur la figure ci-dessous :


    Fig. 3.3.1. La nouvelle fonction waves() permet de générer facilement des fonctions d’ondes, fonctions dont la fréquence d’apparition (hoho ! calembour de traiteur de signal !) est assez élevée dans les opérateurs de traitement d’images.

    3.4. Amélioration des entrées-sorties

    Quelques améliorations sont également à signaler au niveau de la gestion des entrées-sorties :

    • Le format TIFF bénéficie désormais d’une sauvegarde plus rapide pour les grosses images (par exemple, les images médicales volumiques). Un choix élargi de modes de compression de sortie est également disponible pour ce format d’images.
    • G’MIC prend désormais en charge de manière native la lecture et l’écriture des fichiers au format WebP (cette fonctionnalité étant activée par défaut sur les paquets binaires que l’on propose pour Linux).
    • Notons enfin qu’un travail de portage du code pour l’affichage des fenêtres de G’MIC, vers la bibliothèque SDL3, a été amorcé. Cela devrait permettre à terme une meilleure compatibilité de G’MIC avec le système d’affichage natif de chaque distribution Linux (en particulier celles tournant sous Wayland).

    3.5. Sprite Packing

    En ce qui concerne l’évolution de la bibliothèque standard de G'MIC, la nouveauté la plus significative concerne la réécriture de la commande pack_sprites, qui implémente un algorithme d’«empaquetage» d’objets. Pour rappel, ce type d’algorithmes permet de générer des visuels composés d’ensemble d’imagettes disjointes placées de telle façon à reproduire une forme binaire (un masque) de géométrie quelconque.

    Cette ré-implémentation est à la fois plus rapide et plus efficace (utilisant de meilleures heuristiques de placement), et permet d’optimiser l’agencement des imagettes à différentes échelles et orientations tout en réduisant le temps de génération. Une illustration valant mieux qu’un long discours, voici le genre d’images amusantes que cet algorithme est capable de produire facilement :


    Fig. 3.5.1. Deux exemples de génération possibles utilisant la commande « pack_sprites ».

    Les sprites à empaqueter peuvent être de formes quelconques, comme des lettres (image du haut de la figure précédente), des mots entiers (image du bas), etc.

    Et quoi de mieux qu’un exemple concret pour montrer la facilité déconcertante 😉 d’utilisation de cette commande pack_sprites ? Le but ici est d’écrire le texte « ♥LinuxFR♥ » de telle sorte que chaque lettre soit générée comme un empaquetage d’elle-même ! (idée suffisamment saugrenue pour qu’un filtre « clé en main » réalisant ceci n’existe pas déjà !).
    Le script G’MIC suivant (fichier test_pack_sprites.gmic), une fois rendu exécutable, réalise cette tâche :

    #!/usr/bin/env gmic str="0LinuxFR0" repeat size(['$str']) { l:=['$str'][$>] 0 text. {`$l`},0,0,${"font titanone,480"},1,1 ==. 0 channels. -3,0 0 text. {`$l`},0,0,${"font titanone,64"},1,${"-RGB"},255 pack_sprites.. .,5,25,3,1 remove. } append x to_rgb output out.png display

    La génération prend quelques secondes, et aboutit à une image de ce type :

    Fig. 3.5.2. Résultat du lancement du script test_pack_sprites.gmic.

    Amusant, n’est-ce pas ? Comment feriez-vous pour réaliser la même chose dans un autre langage (et combien de lignes de code cela prendrait-il ? 😉).

    4. Utilisation de G’MIC pour le « Creative Coding »

    L’exemple précédent est réellement représentatif des possibilités d’écriture de scripts personnalisés permis par G'MIC. Saviez-vous, par exemple, que l’ensemble des 640 filtres disponibles dans le greffon G’MIC-Qt sont justement écrits dans ce langage ?

    G’MIC peut ainsi être considéré comme une boite à outils étoffée pour les personnes souhaitant se frotter au code créatif et à l'art génératif. Nous vous proposons ci-dessous quelques autres exemples simples de génération d’images par scripts G’MIC, afin de donner un aperçu rapide des possibilités et de la concision de ce langage.

    4.1. Exemples de génération d’images

    • Inversion d’un damier coloré : On s’inspire ici de cette excellente vidéo récente, réalisée par le vulgarisateur mathématicien Mickaël Launay (Micmaths). En G’MIC, la fonction suivante permet de synthétiser une image équivalente à celle montrée dans la vidéo (mais en quatre couleurs au lieu de deux).
    invert_checkerboard : 4096,4096,1,1," L = clog(20*([x,y]/w - 0.5)); P = cexp([log(40/exp(L[0])),L[1]]); 85*xor(P[0]%4,P[1]%4)" map 6 rescale2d 50%

    Fig. 4.1.1. Génération d’un damier inversé, avec la commande personnalisée invert_checkerboard.

    • Cercles d’Apollonius : Dans cet exemple, il s’agit d’empaqueter des cercles de plus en plus petits dans un cercle de base, pour générer des images fractales. La fonction G’MIC réalisant cette tâche est la suivante :
    apollonian_gasket : # Init. siz=1280 rad:=$siz/2.2 $siz,$siz,1,2 circle {[$siz,$siz]/2},$rad,1,1 repeat 5 { circle {[$siz,$siz]/2+0.537*$rad*cexp([0,90°+$>*72°])},{0.316*$rad},1,0,{2+$>} } # Iterate. ind=4 e " > Computing" do { sh 0 +distance. 0 x,y,r:="x = xM; y = yM; [ x,y,i(x,y) - 1 ]" rm[-2,-1] circle $x,$y,$r,1,0,$ind ind+=1 e "\r > Computing "{`c=arg0(int($>/10)%4,124,47,45,92);[c,c==92?92:0]`} } while $r>3 # Decorate. k. channels 100% +n. 0,255 map. hot l[0] { g xy,1 a c norm != 0 * 255 to_rgb } max rs 80%

    Et voici le résultat :

    Fig. 4.1.2. Génération de cercles d’Apollonius, avec la commande personnalisée apollonian_gasket.

    • Gaussiennes 3D : On cherche ici à dessiner de petites fonctions gaussiennes anisotropes 3D de différentes tailles, orientations et couleurs dans un volume 3D discret, en s’arrangeant pour garantir une périodicité de l’image suivant l’axe z (l’axe de la profondeur). Puis, on transforme les coupes de ce volume en frames d’une vidéo, pour obtenir l’animation qui suit.
    gaussians3d : 180,180,160,3 2000,1,1,1,": draw_gauss3d(ind,xc,yc,zc,u,v,w,siz,anisotropy,R,G,B,A) = ( unref(dg3d_mask,dg3d_one,dg3d_rgb,dg3d_isiz2); dg3d_vU = unitnorm([ u,v,w ]); dg3d_vUvUt = mul(dg3d_vU,dg3d_vU,3); dg3d_T = invert(dg3d_vUvUt + max(0.025,1 - sqrt(anisotropy))*(eye(3) - dg3d_vUvUt)); dg3d_expr = string('T = [',v2s(dg3d_T),']; X = ([ x,y,z ] - siz/2)/siz; exp(-12*dot(X,T*X))'); dg3d_mask = expr(dg3d_expr,siz,siz,siz); dg3d_rgb = [ vector(##siz^3,R),vector(##siz^3,G),vector(##siz^3,B) ]; const dg3d_isiz2 = int(siz/2); draw(#ind,dg3d_rgb,xc - dg3d_isiz2,yc - dg3d_isiz2,zc - dg3d_isiz2,0,siz,siz,siz,3,A/255,dg3d_mask); # Trick: These two lines allow to generate a perfectly looping animation. draw(#ind,dg3d_rgb,xc - dg3d_isiz2,yc - dg3d_isiz2,zc - dg3d_isiz2 + d#0/2,0,siz,siz,siz,3,A/255,dg3d_mask); draw(#ind,dg3d_rgb,xc - dg3d_isiz2,yc - dg3d_isiz2,zc - dg3d_isiz2 - d#0/2,0,siz,siz,siz,3,A/255,dg3d_mask); ); X = [ u([w#0,h#0] - 1),u(d#0/4,3*d#0/4) ]; U = unitnorm([g,g,g]); siz = v(5); anisotropy = u(0.6,1); R = u(20,255); G = u(20,255); B = u(20,255); A = u(20,255)/(1 + siz)^0.75; siz==0?draw_gauss3d(#0,X[0],X[1],X[2],U[0],U[1],U[2],11,anisotropy,R,G,B,A): siz==1?draw_gauss3d(#0,X[0],X[1],X[2],U[0],U[1],U[2],21,anisotropy,R,G,B,A): siz==2?draw_gauss3d(#0,X[0],X[1],X[2],U[0],U[1],U[2],31,anisotropy,R,G,B,A): siz==3?draw_gauss3d(#0,X[0],X[1],X[2],U[0],U[1],U[2],41,anisotropy,R,G,B,A): siz==4?draw_gauss3d(#0,X[0],X[1],X[2],U[0],U[1],U[2],51,anisotropy,R,G,B,A): draw_gauss3d(#0,X[0],X[1],X[2],U[0],U[1],U[2],61,anisotropy,R,G,B,A)" rm. rs 250%,250%,6 c 0,255 normalize_local , n 0,255 slices {[d/4,3*d/4-1]}

    Fig. 4.1.3. Volume de gaussiennes 3D anisotropes, vues comme une séquence vidéo.

    Regardez ça en plein écran pendant 20 minutes avant d’aller vous coucher, en écoutant du Pink Floyd, et je vous garantis une bonne nuit de sommeil !

    • Cube roulant : Comme mentionné en section 3.2, G’MIC possède son propre moteur de rendu 3D, que nous utilisons donc ici pour générer cette animation simple et qui boucle parfaitement :

    Fig. 4.1.3. Animation d’un cube 3D roulant.

    Le code source de cet effet est un peu plus long que pour les exemples précédents, et nous ne l’intégrons donc pas directement dans cette dépêche. Mais en 47 lignes seulement, cela reste tout à fait raisonnable 😊 !

    Et si comme moi, vous prenez plaisir à regarder ou réaliser des images ou animations amusantes/étranges qui sont générées en quelques lignes de code seulement, alors n’hésitez pas à aller jeter un œil au fil de discussion dédié, sur le forum officiel de G’MIC : Creative Coding with G’MIC.

    4.2. La série « G’MIC Adventures ».

    Les possibilités offertes par G’MIC pour le code créatif nous ont récemment décidé à initier une petite série de dépêches, intitulées « G’MIC Adventures ». L’idée de cette série est d’expliquer et d’illustrer les différentes étapes qui vont du concept à l’implémentation d’un effet de code créatif sous forme d’un script G’MIC. Aujourd’hui, cette série comporte seulement 4 épisodes, mais nous espérons l’enrichir dans le futur. Ces épisodes sont les suivants :

    Fig. 4.2.1. Génération d’un arbre fractal 3D par G’MIC, réimporté ensuite sous Blender.

    Fig. 4.2.2. Exemple d’arbre fractal 3D généré par G’MIC (vidéo).

    Fig. 4.2.3. Espèce de mousse de forêt synthétique, générée par agrégation de particules en 3D. L’inhalation volontaire de vapeurs provenant de cette mousse est fortement déconseillée !

    • G’MIC Adventures #4: Physarum Transport Networks : Cet épisode explore la réalisation d’un autre système particulaire, l’algorithme Physarum imaginé dans ce papier de Jeff Jones, en 2010. Ici, on lance des millions de particules qui s’auto-organisent pour suivre un chemin qui devient commun à toutes les particules au bout d’un certain nombre d’itérations, ce qui permet de générer des animations 2D tout à fait étonnantes, comme celles-ci par exemple :


    Fig. 4.2.4. Danses de filaments enflammés, générées par l’algorithme Physarum en 2D.

    Dans cet épisode, nous proposons également une extension 3D de cet algorithme, ce qui permet de générer ce type d’animation :


    Fig. 4.2.4. Évolution de l’algorithme Physarum étendu en 3D.

    Tous ces épisodes cherchent à montrer que G’MIC est une boite à outils générique, plutôt sympa à utiliser, pour le prototypage créatif destiné à la génération d’images et d’animations !

    5. Ressources additionnelles

    Nous voilà déjà arrivés à la cinquième section de cette dépêche, signe qu’il est probablement temps de la terminer au plus vite 😉. Pour finir, voici donc quelques informations et liens supplémentaires pour approfondir la découverte du projet G’MIC :

    • Mentionnons tout d’abord la parution de la publication « G’MIC: An Open-Source Self-Extending Framework », de D. Tschumperlé, S. Fourey et G. Osgood, en janvier 2025 dans le journal JOSS (The Journal of Open Source Software). Dans cet article sont décrites les motivations générales du projet et une vue d’ensemble de son architecture globale et de quelques-unes de ses possibilités. Cela permet aussi au projet G'MIC d’avoir son article « de référence » dans une revue scientifique (donc pouvoir être cité plus facilement).

    6. Conclusions et perspectives

    La sortie de cette version 3.6 (et plus généralement l’année 2025) représente une étape importante dans la vie du projet G'MIC.

    Tout d’abord parce qu’on se rend bien compte qu’après 17 ans de développement, G’MIC est maintenant stable, et qu’il est peut-être plus temps d’en valoriser les facettes existantes, plutôt que de chercher à implémenter à tout prix de nouvelles fonctionnalités. D’autre part, car la disparition de l’ami Sébastien, en plus d’avoir été un choc émotionnel majeur, risque de rendre difficile la maintenance et l’évolution future du greffon G’MIC-Qt. Et enfin, car avec la démocratisation de l’IA générative, les domaines de l’analyse, du traitement et de la génération d’images (notamment à des fins créatives) sont en profonde mutation, et que les fonctionnalités de G’MIC pourraient très bien être considérées comme obsolètes d’ici quelques années (ou pas 😊).

    Au final, que d’incertitudes et de questionnements ! Cela rend floues les directions à prendre pour l’évolution de G’MIC, d’autant que s’occuper d’un tel projet requiert beaucoup d’investissements en temps, et qu’en même temps, sa valorisation financière est aujourd’hui inexistante.

    Actuellement, G’MIC est téléchargé un peu plus de 1000 fois par jour depuis la page web principale du projet (donc sans compter les installations tierces : via l’installation de Krita, via les paquets officiels des distributions, etc.). C’est un chiffre très honorable pour un logiciel libre de ce type, développé au sein d’un laboratoire public de recherche tel que le GREYC, et qui plus est, qui n’est plus maintenu que par une seule personne.

    À court terme, on se focalisera probablement sur la promotion et la visibilité du cadriciel, la maintenance du code et l’animation de la communauté, par exemple en écrivant quelques tutoriels illustrant ses nombreuses applications potentielles dans les domaines variés liés à l’imagerie numérique : retouche photographique, illustration, peinture numérique, imagerie scientifique (médical, astronomie, biologie, matériaux), création graphique, art génératif, etc.

    À long terme, peut-on raisonnablement espérer faire plus de G’MIC avec ce peu de ressources ?
    L’avenir nous le dira !

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    LinuxFr

    Incident du 26 août 2025 ayant touché les serveurs de production et de développement


    Internet
    Publié le
    mercredi 27 août 2025 14h59
    Importé le
    mercredi 27 août 2025 21h03

    Il y a exactement deux mois, un incident était survenu suite à un redémarrage brutal du serveur hébergeant les conteneurs de production et de développement ayant entraîné une attribution inattendue d’adresses IP. Et des réponses techniques 502 Bad Gateway pour notre lectorat.

    Ce 26 août, vers 15:22, un message peu engageant est arrivé par pneumatique sur nos téléscripteurs (via Signal pour être précis) : « Tiens c’est bizarre j’ai perdu accès au site. Et au serveur oups. » L’après-midi et la soirée furent longues.

    Sommaire

    Premier diagnostic

    Le serveur répond au ping et permet les connexions TCP port 22, mais pas le SSH. Et les services web ne répondent plus. Souci matériel ? Noyau en vrac ? Attaque en cours ? Les spéculations vont bon train.

    La connexion au serveur revient par intermittence, permettant à un moment d’exécuter quelques commandes, à d’autres d’attendre longuement pour l’affichage d’un caractère ou l’exécution de la commande tapée.

    Le premier contact réétabli avec le serveur est assez clair (une forte charge) :

    $ uptime 15:06:59 up 2 days, 2:54, 1 user, load average: 50,00, 205,21, 260,83

    (dernier redémarrage le week-end précédent, mais surtout une charge système moyenne respectivement de 50, 205 et 261 sur les 1, 5 et 15 dernières minutes)

    Initialement on suppose qu’il s’agit d’un trop grand nombre de requêtes ou de certaines requêtes tentant des injections de code sur le site (bref le trafic de fond plutôt habituel et permanent), et on ajoute des règles de filtrage péniblement et lentement pour bloquer les IP qui ressortent le plus dans nos logs.

    Le site est alors inaccessible pendant plusieurs périodes. On arrête et relance ensuite plusieurs fois les services en pensant avoir ajouté suffisamment de filtrage, mais rapidement le serveur se retrouve englué. Les services sont alors arrêtés plus longuement le temps d’analyser les logs au calme. Au calme inclut notamment ne pas juste disposer d’une connexion ssh depuis un smartphone, mais plutôt d’un clavier et d’un grand écran par exemple, de l’accès à tous les secrets et toute la documentation aussi.

    Finalement le trafic n’est pas énorme (en volume total) et si les requêtes hostiles sont bien présentes, rien ne semble inhabituel. Par contre les processus de coloration syntaxique partent en vrille, consommant chacun un processeur et aspirant allègrement la mémoire disponible. Avant d’être éliminés par le noyau Linux.

    La console est remplie d’élimination de processus de ce type :

    Mais si rien n’a changé niveau logiciel sur le conteneur LXC de production et si les requêtes ne sont pas inhabituelles, qu’est-ce qui peut bien écrouler le serveur et créer ces processus gourmands ?

    Eh bien des requêtes habituelles…

    Pendant les phases d’attente lorsque le serveur ne répondait plus vraiment, nous avons noté qu'une nouvelle entrée de suivi a été créée (merci BAud et merci RSS/Atom pour nous avoir permis de la voir alors que le serveur ne répondait déjà plus). Elle indique que la coloration syntaxique ne marche plus sur le site. Notamment l’exemple donné dans la documentation.

    Pourtant le rendu fonctionne en testant en ligne de commande avec pygmentize.

    Mais oui en testant l’exemple donné via le site, il est créé un processus Python2 pygment qui commence à se gaver de ressources.

    Et en regardant les différents contenus et commentaires créés sur le site autour de l’incident, en filtrant sur ceux contenant des blocs avec de la coloration syntaxique, la dépêche (alors en préparation) sur G'MIC 3.6 apparaît. Et en testant cette dépêche, il est bien créé quatre processus Python2 pygment qui se gavent de ressources et ne semblent jamais vouloir se terminer. À rapprocher par exemple d’une page qui a été servie en 6785.9978s.

    OK, le souci vient de requêtes tout à fait habituelles de coloration syntaxique, reste à comprendre pourquoi ces processus tournent mal.

    La boucle sans fin

    Un petit strace pour suivre les appels système en cours sur un des processus infernaux relève une boucle assez violente :

    (...) close(623199355) = -1 EBADF (Bad file descriptor) close(623199356) = -1 EBADF (Bad file descriptor) close(623199357) = -1 EBADF (Bad file descriptor) (...)

    Il semble y avoir une immense itération sur des descripteurs de fichiers, en vue de les fermer, mais à l’aveugle, sans savoir s’ils existent réellement.

    En regardant le code du composant utilisé (pygments), il semble n'y avoir qu'un seul appel à close() :

    # close fd's inherited from the ruby parent import resource maxfd = resource.getrlimit(resource.RLIMIT_NOFILE)[1] if maxfd == resource.RLIM_INFINITY: maxfd = 65536 for fd in range(3, maxfd): try: os.close(fd) except: pass

    Donc on itère sur tous les descripteurs entre 3 et le maximum déterminé…

    >>> import resource >>> print(resource.getrlimit(resource.RLIMIT_NOFILE)[1]) 524288 >>> print(resource.RLIM_INFINITY) -1

    Un demi-million de fois ici donc. L’objectif initial de la boucle est de fermer les descripteurs de fichiers provenant du processus Ruby père, issue du fork via Open3.popen3. La version suivante du composant la remplace d’ailleurs par un ajout de l'option :close_others, qui précisément « modifie l’héritage [des descripteurs de fichiers du processus parent] en fermant les non-standards (numéros 3 et plus grands) ».

    Sur une Debian 12, la limite du nombre de fichiers par défaut, c’est 1 048 576. C’est déjà probablement bien plus que la valeur qui prévalait à l’époque où a été écrit la boucle Python (on avait des limitations à 4096 à une époque reculée). Mais il s’avère que durant le week-end l’hôte du conteneur de production a été migré en Debian 13. Sans modification du conteneur de production pensions-nous. Sans modification directe du conteneur de production. Mais quid d’une modification indirecte ? Par exemple si la limite par défaut des « Max open files » était passée à 1 073 741 816 sur l’hôte, soit 1024 fois plus que quelques jours auparavant. Et donc des boucles nettement plus longues voire sans fin, sans libération de mémoire.

    On ne peut mettre à jour le composant pygments dans l’immédiat, mais on peut limiter les dégâts en abaissant la limite du nombre de descripteurs de fichiers à quelque chose de raisonnable (i.e. on va gaspiller raisonnablement des cycles CPU dans une boucle un peu inutile mais brève…). Une édition de /etc/security/limits.conf, un redémarrage du conteneur de production et on peut vérifier que cela va nettement mieux avec cette réparation de fortune.

    Une dernière page d’epub ?

    Le conteneur LXC portant le service epub de production a assez mal pris la surcharge du serveur, et vers 20h08, systemd-networkd sifflera la fin de la récré avec un eth0: The interface entered the failed state frequently, refusing to reconfigure it automatically (quelque chose comme « ça n’arrête pas d’échouer, débrouillez-vous sans moi »). Le service epub est resté en carafe jusqu’au 27 août vers 13h31 (merci pour l’entrée de suivi).

    Voir ce commentaire sur la dépêche de l’incident précédent expliquant la séparation du service epub et du conteneur principal de production (en bref : dette technique et migration en cours).

    Retour en graphiques sur la journée

    Le serveur était très occupé. Au point de n’avoir pas le temps de mettre à jour les graphiques de temps en temps.

    Rétrospectivement les processeurs du serveur ont travaillé dur : 140 de charge sur le graphique (mais avec des pics jusque 260 d’après la commande uptime), contre moins de 5 en temps normal (un petit facteur de 28 à 52   ô_Ô)

    Et l’utilisation de la mémoire montre aussi de brutaux changements de comportement : libération intempestive de mémoire (Free, en vert), utilisation mémoire plus importante que d’habitude (Used, en jaune), là où le comportement normal est d’avoir le maximum en cache (Cached, en orange) et des processus tellement peu consommateurs en RAM que cela n’apparaît normalement pas.

    Mesures préventives et correctives

    Dans les actions en cours ou à prévoir :

    • mettre à jour la documentation pour disposer facilement et rapidement des informations pour les connexions aux cartes d’administration ou les procédures de blocages d’IP
    • faire la montée des versions des composants (yapuka, épineux sujet de la dette technique à éponger)
    • vérifier l’efficacité des limitations CPU/mémoire mises sur certains conteneurs LXC et les étendre aux autres
    • mettre des limites sur des processus particuliers (comme ceux de pygments)
    • ajouter le déploiement des limites par utilisateur dans le code Ansible
    • corriger la collecte rrd des métriques concernant les interfaces réseau
    • remonter les alertes OOM qui ne sont pas normales
    • comprendre la surconsommation mémoire ? (les boucles actives expliquent la consommation processeur, mais pour la mémoire ?)

    Bonus inattendu pour l’incident précédent du 26 juin 2025

    De façon cocasse, ce nouvel incident et le temps passé à parcourir les différents logs ont permis de retrouver les infos de la carte d’administration distante et d’expliciter l’origine du redémarrage serveur intempestif. À quelque chose malheur est bon, si on peut dire. Ceci n’est pas une invitation pour un prochain incident.

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    LinuxFr

    Haiku a 24 ans - nouvelles de l'été 2025


    Internet
    Publié le
    mercredi 27 août 2025 07h58
    Importé le
    mercredi 27 août 2025 13h03

    Haiku est un système d’exploitation pensé pour les ordinateurs de bureau. Il est basé sur BeOS mais propose aujourd’hui une implémentation modernisée, performante, et qui conserve les idées qui rendaient BeOS intéressant: une interface intuitive mais permettant une utilisation avancée, une API unifiée et cohérente, et une priorisation de l’interface graphique par rapport à la ligne de commande pour l’administration du système.

    Le projet est actuellement (depuis 2021) en phase de beta test. La plupart des fonctionnalités sont implémentées et l’attention des développeurs se porte sur la correction de bugs, l’amélioration de la stabilité et des performances, et plus généralement, les finitions et petits détails. Une autre part du travail est le suivi de l’évolution de l’environnement technologique: nouveaux pilotes de périphériques, suivi des derniers standards du web, etc.

    Les trois derniers mois ont été un peu plus calmes que d’habitude pour Haiku, mais cela est largement compensé par une très forte activité du côté de Haikuports. Cela révèle que le système lui-même devient plus mature et qu’il devient de plus en plus facile de développer ou de porter une application sans tomber sur des problèmes du système qui doivent être corrigés au préalable.

    Sommaire

    Applications

    Tracker

    Tracker est le navigateur de fichiers de Haiku. Le code est hérité directement de BeOS (cette partie avait été publiée sous licence libre lors de l’abandon de BeOS par Be) et fait l’objet depuis de nombreuses années d’un gros travail de nettoyage et de modernisation.

    Pas de grosses nouveautés ces derniers mois, mais des corrections pour plusieurs régressions suites à du nettoyage effectué précédemment. Par exemple, les icônes des disques montés sont à nouveaux affichés sur le bureau dans les dialogues d’ouverture et d’enregistrement de fichiers. L’annulation du filtrage du contenu d’un dossier en tapant un nom de fichier partiel est correctement annulé si on appuie sur échap.

    Enfin, des problèmes de synchronisation de l’icône de la poubelle, qui apparaissait pleine alors qu’elle était vide, ont été corrigés. Ces problèmes étaient déjà présents dans BeOS.

    Terminal

    Le terminal permet de lancer des applications en ligne de commande.

    Un chantier en cours consiste à rendre le terminal utilisable comme un “replicant”, c’est-à-dire de pouvoir l’intégrer dans d’autres applications telles que l’IDE Genio. Cette approche demande de restructurer beaucoup de choses, et pour l’instant, il est plus simple pour les développeurs de Genio de recopier une partie des sources du Terminal dans leur projet et de les intégrer de façon plus statique. Les problèmes sont corrigés petit à petit.

    Une autre correction mérite d’être mentionnée: le terminal se plaçait lui-même dans le dossier de travail du shell lancé lors de l’ouverture d’un nouvel onglet. Si ce dossier se trouve dans un disque qu’on essaie par la suite de démonter, le démontage échoue (même si l’application lancée dans le terminal a elle-même changé de dossier entretemps). Désormais le terminal ne modifie pas son dossier actif et ne bloque plus le démontage des disques.

    Mail

    L’application Mail permet de lire et d’envoyer du courrier électronique. Elle est composée d’un serveur de synchronisation et d’une interface graphique indépendante. Entre les deux, les mails sont stockés sous forme de fichiers augmentés d’attributs étendus, ce qui permet d’utiliser Tracker et les requêtes BFS comme outil principal pour traiter les messages.

    Les changements listés ici concernent l’application de lecture et rédaction de messages:

    • Correction du comportement du menu « Fermer et marquer comme… » lorsqu’il est appliqué à plusieurs messages.

      • Modifications pour éviter de montrer des informations vides, en double, ou absentes dans les détails des adresses mail (nom d’expéditeur, de destinataire, etc).

    HaikuDepot

    HaikuDepot est à la fois le gestionnaire de paquets et le magasin d’applications de Haiku. Ce double rôle conduit pour l’instant à une interface qui prête un peu à confusion, et l’interface devrait être repensée pour un fonctionnement plus intuitif. En attendant, quelques petites améliorations ont tout de même été faites pour rendre les problèmes moins gênants.

    Lorsqu’une recherche dans la vue « paquets mis en avant » ne donne aucun résultat, il y a affichage d’un lien permettant de poursuivre la recherche dans la liste complète des paquets. En effet, de nombreux utilisateurs se sont plaints de ne pas trouver certains logiciels en effectuant une recherche, sans se rendre compte qu’ils faisaient une recherche dans une liste de quelques dizaines de paquets et pas dans tout ce qui est disponible.

    TextSearch

    TextSearch est un outil de recherche dans le contenu des fichiers par expressions régulières (une version graphique de grep).

    Il reçoit ce trimestre une fonction pour filtrer les fichiers à rechercher, équivalent à l’option grep --include.

    Debug Analyzer

    Debug Analyzer est un outil de profiling et d’analyse de traces d’exécution.

    Correction d’un problème de compilation suite à des changements dans l’API de BObjectList (cet outil n’est pas compilé par défaut, il avait donc été oublié lors du changement d’API au trimestre précédent).

    Préférences d’apparence

    Dans la configuration des couleurs du système, renommage de la couleur « barre d’état » en « barre de progression ». Le nom « barre d’état » (status bar en anglais) correspond à la classe BStatusBar utilisée par BeOS et Haiku, mais tout le monde appelle ça une barre de progression. On peut au moins éviter la confusion pour les utilisateurs, à défaut de pouvoir le faire pour les développeurs d’applications en renommant la classe elle-même (ce qui causerait des problèmes de compatibilité d’API et d’ABI).

    Utilisation de IconMenuItem

    Ce changement concerne l’application ShowImage (visualiseur d’images) ainsi que FileTypes (les préférences d’association de types fichiers avec des applications). Ces deux applications utilisent un menu pour sélectionner une application (pour ouvrir une image dans un éditeur, ou pour associer un type de fichier à une application, respectivement).

    Les applications pour Haiku utilisant des icônes colorées et facilement identifiables, c’est beaucoup mieux qu’une liste de noms pour s’y retrouver rapidement. Ces deux applications utilisent donc maintenant des IconMenuItem dans ces menus, pour afficher les applications avec leur icône respective.

    Adaptation aux écrans à très haute réolution

    Un travail en cours sur les applications concerne l’adaptation aux écrans à très haute résolution.

    Presque toutes les applications pour Haiku utilisent un système de mise en page dynamique, et toutes les ressources (police de caractères, icônes…) sont vectorielles. Cela permet en théorie d’afficher l’interface avec un niveau de zoom arbitraire. Cependant, une partie du code a été écrit avec des tailles en pixels « en dur » et ne s’adapte pas comme il faudrait (la bonne façon de faire est de se baser par exemple sur la taille de la police de caractères sélectionnée par l’utilisateur).

    Ce trimestre, on trouve des évolutions à ce sujet dans plusieurs applications:

    • Expander (décompression d’archives)
    • SerialConnect (communication par port série)
    • Mise à l’échelle de la barre de défilement
    • Préférences d’imprimantes
    • Mise à l’échelle des icônes

    Outils en ligne de commande

    Remote Desktop

    L’outil de connexion au bureau à distance n’est pas vraiment une application en ligne de commande. Cependant, il nécessite pour l’instant un lancement depuis un terminal avec les bonnes options, et selon les cas, la mise en place d’un tunnel SSH. Une interface grapique plus simple d’uitlisation sera probablement ajoutée plus tard.

    • Amélioration du parsing de la ligne de commande et en particulier de l’option pour choisir un port SSH
    • Activation de l’option SO_REUSEADDR permettant de plus facilement relancer l’outil s’il plante, sans attendre un timeout de la connexion précédente qui n’a pas été fermée proprement

    Time

    Le panneau de préférences de date et heure peut être lancé en ligne de commande avec une option spécifique pour forcer une synchronisation NTP. Cette fonctionnalité n’est pas vraiment documentée, à l’origine il s’agit plutôt d’une astuce interne au système. L’application reconnaît maintenant l’option --help standardisée et affiche un message d’aide qui documente cette fonctionnalité.

    Il peut être utile de relancer cette commande manuellement si jamais la synchronisation au démarrage n’a pas fonctionné (par exemple si le réseau n’était pas disponible à ce moment-là). En particulier, cela peut être utilisé dans des scripts d’automatisation et pour des machines où l’interface graphique n’est pas facilement accessible (serveurs de build par exemple).

    pkgman

    pkgman est une commande permettant d’installer, mettre à jour et rechercher des paquets logiciels.

    Ajout d’une option --no-refresh pour ne pas retélécharger la base de données des paquets.

    Cette base de données contient non seulement les noms des paquets, mais aussi leur description courte et la liste des “provides” (par exemple: commandes et bibliothèques fournies par chaque paquet). pkgman vérifié déjà si une nouvelle version de la base de données est disponible, mais cette dernière peut être mise à jour plusieurs fois par jour par l’intégration continue.

    Le nombre de paquets augmentant, la taille de la base de données devient non négligeable (plusieurs méga-octets), ce qui pose problème en particulier pour les utilisateurs et développeurs ne disposant pas d’un accès internet illimité.

    su

    La commande su est peu utilisée puisque l’utilisateur par défaut a déjà tous les droits. Son implémentation était donc un peu incomplète. Elle peut toutefois être utile pour avoir des utilisateurs supplémentaires restraints, par exemple pour un accès à distance par ssh.

    • La commande su ne demande pas de mot de passe si l’utilisateur dispose déjà de l’accès root
    • Toutes les commandes liées à la gestion des utilisateurs (su, login…) configurent les groupes actifs lors du changement d’utilisateur

    listarea

    listarea est une commande de debug permettant de lister les zones mémoire allouées à différentes applications. Elle affiche maintenant le verrouillage et les protections de ces zones (swappable ou non, exécutabele ou non, accessible en écriture ou non).

    fdinfo

    fdinfo permet d’examiner les descripteurs de fichiers ouverts (un peu comme lsof). Cette commande peut maintenant afficher en plus le dossier courant de chaque application (ce qui aurait été bien utile pour identifier le problème avec le dossier courant du Terminal ci-dessus).

    install-wifi-firmwares

    Ce script permet d’installer les firmwares pour certaines très anciennes cartes Wifi. Les firmwares publiés à l’époque sont disponibles avec des licenses n’autorisant pas la redistribution ou les modifications de packaging, ce qui empêche l’intégration dans le système de paquets habituel. Le problème a été corrigé depuis longtemps par les fabricants de cartes Wifi, mais les anciens firmwares n’ont jamais été republiés avec des licenses mises à jour.

    Le script a été mis à jour pour récupérer certains firmwares depuis un nouveau serveur, l’ancien emplacement utilisé n’étant plus disponible.

    Kits

    La bibliothèque de fonctions de Haiku est découpée en kits qui regroupent des ensembles de fonctions et de classes par thématique (stockage sur disque, interface graphique…). Dans certains cas il s’agit principalement d’une méthode d’organisation du code source et de la documentation (les kits pouvent être très interdépendants). Certains kits sont toutefois fournis sous forme de bibliothèques séparées.

    Support kit

    Ce kit contient diverses fonctions utilitaires et basiques du système.

    Changement d’API pour la classe BUrl. Dans l’ancienne version de cette classe, il était possible de construire un objet BUrl représentant une URL encodée ou non-encodée (échappement des caractères réservés). Cela rendait trop facile d’oublier d’encoder une URL avant de l’utiliser, ou bien d’encoder plusieurs fois une URL et de se retrouver avec un lien invalide.

    La nouvelle API impose d’indiquer dès la création d’un objet BUrl si la chaîne de caractères servant de base est déjà encodée ou non. L’objet BUrl construit représentera toujours une URL déjà encodée, qui peut éventuellement être décodée pour affichage si nécessaire.

    Interface kit

    Ce kit contient tout ce qui se rapporte à l’interface graphique: fenêtres, vues, contrôles, mise en page…

    Retour en arrière sur une modification des raccourcis claviers de BTextView pour naviguer vers les mots suivant et précédent. Les nouveaux raccourcis entrent en conflit avec des raccourcis déjà utilisés par plusieurs applications, et n’apportaient pas grand-chose.

    Correction de problèmes de compatibilité dans le format des données stockées par la classe BPicture (il s’agit d’un enregistrement de commandes envoyées au serveur graphique, qui peuvent être rejouées plus tard). Le format des données stockées était différent de celui de BeOS. Certaines applications utilisant un objet BPicture enregistré dans une ressource de l’application, ne s’affichaient pas correctement.

    Amélioration de la gestion des sous-menus, en particulier cela corrige un crash si un sous-menu est fermé en utilisant la touche échap.

    Remise à plat de tous les calculs accumulés au cours des années pour générer les couleurs de l’interface graphique en fonction des couleurs choisies par l’utilisateur. Chaque morceau de code concernait faisait ses propres calculs pour générer de jolis dégradés, des variantes plus sombres et plus claires, etc. Cela fonctionnait bien avec le thème par défaut, mais pas forcément avec des choix de couleurs qui en sont très éloignés. Le nouveau code est plus simple, plus prédictible, et permet de rassembler ces calculs dans la classe « control look », qui peut être remplacée par un add-on pour fournir une apparence complètement différente.

    Cela peut nécessiter d’ajuster un peu les couleurs dans les préférences d’apparence si vous les avez personnalisées.

    Storage kit

    Ce kit regroupe tout ce qui concerne le stockage de masse et la gestion des fichiers.

    Harmonisation de la nouvelle fonction BQuery::SetFlags avec d’autres fonctions similaires, et ajout d’une page de documentation pour cette fonction.

    Correction d’un crash lorsqu’on enregistre un type MIME alors que le type parent n’existe pas (par exemple si on enregistre image/gif alors que le type image n’existe pas).

    Ajout d’une constante pour identifier les systèmes de fichiers FAT16 parmi la liste des systèmes de fichiers connus.

    Shared kit

    Le shared kit contient des fonctions expérimentales en cours de développement mais déjà utilisées par plusieurs applications.

    Contrairement aux autres kits, il est fourni sous forme d’une bibliothèque statique, ainsi chaque application peut en utiliser une version différente (choisie au moment de la compilation) et il n’y a pas de contraintes pour conserver une stabilité d’API ou d’ABI. Les fonctions développées dans le shared kit peuvent ensuite être migrées vers les autres kits une fois qu’elles sont finalisées.

    La classe « color list » (utilisée par exemple dans les préférences d’apparence) accepte maintenant le glisser-déposer de couleurs.

    Serveurs

    Les serveurs sont des applications lancées au démarrage du système. Ils sont similaires aux services systemd. Ils fournissent des services utiles à l’implémentation de la bibliothèque standard, car tout ne peut pas être fait dans une bibliothèque partagée.

    app_server

    app_server regroupe le serveur graphique de Haiku (utilisé au travers de l’interface kit) ainsi que la gestion des applications en lien avec l’application kit.

    Correction d’un problème d’initialisation de variables indiquant dans quels workspaces (bureaux virtuels) une fenêtre doit être présente. Cela se manifestait par l’apparition de morceaux incomplets de la fenêtre si on change de bureau virtuel pendant son apparition. Le bug existait depuis 15 ans mais n’avait jusque-là pas pu être identifié.

    Les curseurs de souris ne sont plus générés en bitmap à la compilation à partir des sources vectorielles. C’est maintenant fait lors de l’initialisation du serveur graphique, ce qui permet d’avoir un plus gros curseur sur les écrans à très haute résolution.

    input_server

    input_server se charge des périphériques d’entrée utilisateurs (claviers, souris et autres périphériques de saisie et de pointage).

    Correction de la keymap espagnole latino-américaine dans laquelle plusieurs combinaisons de touches ne fonctionnaient pas comme sur les autres systèmes.

    Pilotes

    ACPI, gestion d’énergie, système

    Mise à jour de ACPICA pour la prise en charge de ACPI avec la dernière version disponible.

    Correction de problèmes dans le pilote poke (permettant l’accès direct à la mémoire pour écrire certains pilotes en espace utilisateur) pour mieux valider les paramètres des ioctl et éviter de pouvoir facilement déclencher un kernel panic suite à une mauvaise utilisation du pilote.

    Réseau

    Correction d’un problème dans la pile TCP ou les retransmissions de paquets lors de l’établissement de la connexion n’étaient pas faits, si le premier paquet était perdu, la connexion ne s’établissait jamais.

    Lorsque IP_HDRINCL est activé (une application demande à envoyer et recevoir elle-même les en-têtes IP des paquets reçus), la pile réseau s’assure tout de même que les en-têtes générés ont bien un checksum valide. Cela permet à traceroute de fonctionner correctement par exemple.

    Mise en place de l’infrastructure pour la découverte de MTU deu chemin. Cela permet de déterminer la taille maximale des paquets qu’on peut envoyer vers un serveur, sans que de la fragmentation IP soit mise en jeu en cours de route (ce qui, au mieux dégraderait les performances, au pire empêcherait la connexion de fonctionner correctement):

    • Ajout de l’option IP_DONTFRAG pour demander aux routeurs de ne pas redécouper certains paquets,
    • Remontée de l’information ICMP FRAGMENTATION_NEEDED pour détecter qu’on a essayé d’envoyer un paquet trop gros.

    Cela permet déjà de détecter les problèmes de MTU, mais pas encore de les corriger automatiquement. La suite du code est encore en cours de test.

    Remplacement du pilote iprowifi3945 par la version mise à jour disponible dans OpenBSD (pilote “wpi”) à la place de celle de FreeBSD qui est actuellement moins bien maintenue.

    Interface homme-machine

    Ajout de la tablette Intuos 4 dans le pilote pour les tablettes Wacom, ainsi que du support de la molette présente sur certaines tablettes.

    Systèmes de fichiers

    NFS4

    NFS est un système de fichier en réseau. Une machine serveur se charge réellement du stockage des fichiers, et d’autres machines peuvent monter ce disque et accéder aux fichiers partagés. Plusieurs machines peuvent accéder au même serveur en même temps et modifier les fichiers, ce qui nécessite une attention particulière lors de l’implémentation d’un système de fichier client.

    Le travail sur le pilote NFSv4 se poursuit pour le stabiliser et améliorer sa compatibilité avec les serveurs NFS existants.

    Correction de problèmes de gestion du cache et de libération anticipée d’inodes`, points sur lesquels NFS est un peu inhabituel par rapport à d’autres systèmes de fichiers puisque des évènements peuvent arriver du serveur NFS concernant un fichier qui a été supprimé localement, par exemple.

    Correction d’un problème qui pouvait conduire un fichier nouvellement redimensionné à contenir des données non initialisées au lieu d’octets à 0.

    Cela permet de corriger des problèmes détectés par des tests NFSv4 existants pour d’autres systèmes.

    EXT4

    Le pilote ext4 permet de monter, en lecture et en écriture, les systèmes de fichiers ext2, ext3 et ext4 développés pour Linux.

    Implémentation et activation de la fonctionnalité « metadata_csum_seed » qui est activée par défaut pour les systèmes de fichiers nouvellement créés sous Linux.

    Corrections dans le « tree splitting » qui n’était pas implémenté correctement, empêchant d’accéder à des dossiers contenant un trop grand nombre de fichiers.

    RAMFS

    RAMFS est un système de fichiers non persistant, stockant les fichiers uniquement dans la RAM. Il est plus rapide qu’un système de fichier traditionnel.

    Correction de crashs lors de la création de gros fichiers et lors du remplacement d’un hardlink par un autre fichier.

    FAT

    FAT est un système de fichiers développé par Microsoft pour DOS et les anciennes versions de Windows. Il est assez répandu et sert un peu de format d’échange standard en particulier pour les supports de stockage externes (clés USB, cartes SD, disquettes…).

    Ajout d’assertions et de vérifications d’intégrité supplémentaires. Le pilote FAT utilisé actuellement provient de FreeBSD, dont les développeurs nous ont assuré qu’il était bien testé et maintenu. Mais, de façon similaire aux pilotes Wifi, on se rend compte que les bases d’utilisateurs de Haiku et de BSD ne sont pas du tout les mêmes, et nous sommes face à beaucoup de systèmes de fichiers FAT corrompus ou inhabituels, ce qui se produit peut-être moins souvent dans les utilisations de FreeBSD sur un serveur par exemple.

    libroot

    La libroot contient l’équivalent de la libc, libdl, libpthread et libm d’un système UNIX standard, ainsi que des fonctions bas niveau spécifiques à BeOS.

    Les extensions GNU et BSD sont déportées dans des bibliothèques séparées (libgnu et libbsd), ce qui permet de respecter au mieux la spécification POSIX sans avoir à utiliser des astuces telles que des « weak symbols ».

    Mise à jour de la libio

    La bibliothèque standard de Haiku est à l’origine un fork de la glibc, utilisant exactement la même version que BeOS afin de garantir une compatibilité d’ABI optimale avec ce dernier. Cependant, cette version ancienne et obsolète ne répond pas aux besoins des applications modernes.

    Petit à petit, des parties de la bibliothèque C sont donc remplacées par des composants venant de FreeBSD, NetBSD, OpenBSD ou plus récemment de musl. Certaines choses sont très bien standardisées et ne posent pas de problèmes, pour d’autres parties, des symboles internes de la bibliothèque sont exposés et parfois exploités par des applications (directement par des développeurs applicatifs pour contourner un bug, ou alors parce que les développeurs de la glibc ont mal isolé les choses et ont exposé des détails internes).

    Ce trimestre, la partie libio (gestion des flux d’entrée-sortie) a été mise à jour avec la dernière version de la glibc. Il n’est pas possible d’utiliser une autre bibliothèque C pour cette partie sans casser l’ABI, mais la mise à jour est possible.

    Correction de multiples problèmes dans les fonctions standard C et les extensions BSD:

    • Ajout d’une vérification de la locale passée à setlocale pour retourner une erreur si la locale demandée est invalide.

    • L’ouverture d’un chemin se finissant par un / avec open() échoue si le fichier n’est pas un dossier (par exemple open("/home/user/foo.txt/")).

    • Validation du paramètre “how” de la fonction shutdown() et retour d’une erreur si le paramètre n’est pas une valeur connue.

    • Les queues d’évènement créées par kqueue ne sont pas conservées lors d’un fork (même comportement que les BSD).

    • Un socket sur lequel il n’y a jamais eu d’appel à listen() ou connect() ne doit pas déclencher les erreurs EPIPE ni ENOTCONN.

    • La fonction socket() retourne maintenant les bons codes d’erreurs détaillés si elle ne peut pas créer le socket: EPROTOTYPE si le type de protocole est inconnu, EPROTONOSUPPORT s’il est connu mais pas disponible, EAFNOSUPPORT si la famille d’adresse n’est pas disponible. Auparavant, tous ces cas renvoyaient EAFNOSUPPORT.

    • Amélioration de la gestion des erreurs dans accept()

    • Gestion de cas particuliers pour bind() en UDP

    • Ajout de l’option RTLD_GROUP pour dlopen(). Il s’agit d’une extension développée par Solaris qui permet d’avoir plusieurs espaces de noms pour la résolution de symboles lors du chargement de bibliothèques partagées. En particulier, dosemu l’utilise pour fournir aux programmes DOS une bibliothèque C indépendante de celle de l’hôte (fournissant donc des fonctions memcpy, memset… qui entreraient en conflit avec celles de l’hôte). L’implémentation est triviale, car le même comportement était déjà en place pour la gestion des add-ons de BeOS; il n’était simplement pas accessible au travers de l’API POSIX dlopen(). Linux implémente ce flag sous un autre nom, cependant, la documentation de la glibc n’est pas correcte, et FreeBSD a implémenté ce qui est documenté pour la glibc avec le même nom. C’est pourquoi le nom utilisé par Solaris, qui n’est pas ambigu, est utilisé pour l’instant, en espérant que la méprise entre Linux et FreeBSD pourra être corrigée.

    • sethostname() retourne une erreur si le hostname proposé est trop long (auparavant il était simplement tronqué).

    Intégration des changements de POSIX-2024

    La spécification POSIX a été mise à jour en 2024. Cette mise à jour est assez importante grâce à un changement de la méthode de travail de l’Austin Group qui maintient la spéficication. Le groupe de travail a ouvert un bug tracker sur lequel il est possible de remonter des problèmes et de proposer des améliorations (à conditions que ces dernières soient déjà implémentées sous forme d’extensions sur un assez grand nombre de systèmes).

    Cela a permis à plus de monde de prendre part à la spécification et de standardiser beaucoup de nouvelles choses. Haiku intègre ces changements petits à petits, parfois par anticipation, parfois parce que l’extension correspondante était déjà disponible, et parfois parce que le portage d’un logiciel le nécessite.

    • Ajout de O_CLOFORK, MSG_CMSG_CLOEXEC, et MSG_CMSG_CLOFORK pour fermer des descripteurs de fichiers lors d’un fork (équivalent de O_CLOEXEC qui ferme lors d’un exec, typiquement après un fork). Au passage, ajout dans la libbsd de closefrom() et closerange(), ces deux fonctions permettant de lancer des tests développés pour BSD pour ces nouveaux drapeaux.
    • Ajout de fdatasync(), une fonction qui s’assure que le contenu d’un fichier est bien enregistré sur disque et pas seulement dans le cache.

    Améliorations sur la gestion de la mémoire

    La gestion de la mémoire est un sujet central pour un système POSIX. L’API proposée (malloc, realloc, calloc et free) est à la fois très simple d’utilisation et très générique. Elle a donc tendance à être très sollicitée par les applications, ce qui en fait un composant critique de l’optilisation des performances du système. De plus, les applications sont de plus en plus consommatrices de mémoire et le matériel a tendance à en contenir de plus en plus.

    L’allocateur mémoire a été remplacé il y a quelques mois, l’ancien allocateur hoard2 ne permettant pas d’agrandir dynamiquement l’espace alloué à une application. Après plusieurs essais, c’est pour l’instant l’allocateur d’OpenBSD qui a été retenu. En effet, beaucoup d’allocateurs plus modernes supposent un espace d’adressage 64 bit et sont peu économes en termes de réservation d’espace mémoire.

    Cependant, même l’allocateur d’OpenBSD montrait ses limites sur les systèmes 32 bit. Son paramétrage a été amélioré, et d’autres modifications ont également été faites pour réduire la fragmentation de l’espace mémoire. Cela corrige des problèmes ou GCC ne parvient pas à allouer assez de mémoire lors de la compilation de très gros fichiers (par exemple lors de la compilation de clang ou de webkit). Il reste recommandé de désactiver l’ASLR (randomization de l’espace d’adressage) dans les cas où on a besoin de beaucoup de mémoire pour une application 32 bits.

    Noyau

    Le noyau de Haiku est un noyau monolithique tout à fait classique pour un système UNIX. Il permet le chargement dynamique de modules, et fournit une API relativement stable pour ces derniers, ce qui permet de maintenir des pilotes facilement en dehors du dépôt de sources de Haiku.

    Correction de problèmes causant le kernel panic « failed to acquire spinlock for a long time » lorsque l’affichage à l’écran des logs du noyau est activé.

    Ajout d’assertions supplémentaires dans le code de gestion de la mémoire virtuelle pour essayer de détecter des problèmes au plus tôt et avant de risquer de corrompre des données importantes.

    Correction de l’affichage des paramètres des appels systèmes dans strace sur x86.

    Correction de problèmes dans la gestion des permissions pour write_stat (modification des informations sur un fichier comme la date de modification) dans le noyau ainsi que dans les systèmes de fichiers RAMFS, BFS et EXT4. Cela corrige des comportements étranges observés lors de l’utilisation de rsync.

    Ajout d’un test vérifiant le bon fonctionnement des exceptions remontées par le FPU lors de calculs en virgule flottante (ces exceptions sont un peu difficiles à traiter dans un système multitâche, et en particulier dans Haiku où le code du noyau peut lui-même utiliser le FPU alors que ce n’est pas le cas pour d’autres systèmes).

    Correction de problèmes liés au découpage et au redimensionnement des areas (zones de mémoires allouées par les APIs prévues à cet effet de BeOS, ou indirectement par mmap et d’autres fonctions permettant de manipuler l’espace mémoire). Cela corrige des problèmes pour RAMFS ainsi qu’un kernel panic observé lors du lancement de dosemu.

    Correction de problèmes avec les areas en lecture seule, qui pouvaient aboutir dans certains cas à une sous-évaluation de la mémoire utilisée, aboutissant à un kernel panic, car il n’y a plus de mémoire disponible à un moment où le noyau ne s’y attend pas. Cela a été mis en évidence en particulier avec l’utilisation mémoire de certains navigateurs web, qui ont tendance à gérer la mémoire directement sans passer par l’allocateur standard du système, pour des raisons de performance.

    Remise en route de guarded_heap (un allocateur mémoire qui détecte les dépassements de buffers, au prix d’une consommation mémoire fortement augmentée). Correction de problèmes mis en évidence par cet allocateur dans quelques pilotes.

    Dans la structure mcontext/ucontext passée aux fonctions de traitement de signaux, ajout de plusieurs registres manquants (registres de segments, addresse de faute…). Cela est utilisé par le JIT de dosemu et va probablement permettre d’utiliser le JIT dans d’autres applications également. En effet, une approche possible pour le JIT est de déclencher volontairement un signal, afin d’intercepter l’état des registres, éventuellement de le manipuler, puis de reprendre l’exécution là où elle s’était arrêtée.

    Ajout de vérification de permissions manquantes dans l’appel système get_extended_team_info.

    Correction d’une possible fuite d’un descripteur de fichier dans le VFS.

    Bootloader

    Mise à 0 de tous les registres non utilisés lors de l’appel de fonctions du BIOS, afin d’aider à investiguer des problèmes avec certains BIOS capricieux.

    Amélioration des messages d’erreurs lorsque le bootloader ne parvient pas à charger le fichier ELF du noyau. Le chargeur de fichiers ELF du noyau est volontairement incomplet pour simplifier les choses (après tout, il a besoin seulement de charger le noyau), mais cela pose problème lors de mises à jour de GCC ou lors du portage sur de nouvelles architectures, si l’organisation du fichier ELF du noyau se trouve modifiée.

    Correction de problèmes de compilation lorsque des logs de debug optionels sont activés.

    Documentation

    La documentation de Haiku se découpe principalement en trois parties:

    • Un guide de l’utilisateur,
    • Une documentation d’API pour les développeurs d’applications,
    • Une documentation d’implémentation pour les développeurs du système lui-même.

    API (Haiku book)

    Documentation de la classe BControl (classe abstraite qui fournit l’API standard de la plupart des contrôles utilisables dans l’interface graphique, les rendant interchangeables dans une certaine mesure).

    Documentation de AdoptSystemColors et HasSystemColors pour la classe BButton.

    Ajout de documentation pour les extensions à dlfcn.h par rapport à ce qui est déjà spécifié par POSIX.

    Environnement de compilation

    Haiku est écrit en C++ et utilise jam (un concurrent de make) comme outil principal de compilation. Cet outil a été retenu, car il permet de définir des règles de compilation génériques et réutilisables pour faire toutes sortes de choses. La compilation de Haiku pouvant mettre en jeu trois compilateurs différents (un pour le système hôte, un pour le système Haiku cible, et un troisième pour la couche de compatibilité avec BeOS), la plupart des autres outils ne répondent pas bien aux besoins.

    Suppression de règles Jam redondantes. Jam repose sur des règles nommées pour savoir quelles actions sont nécessaires pour générer une cible à partir de sources. Les règles “Application”, “Server”, “Preferences” et “Executable” étaient toutes identiques, elles ont donc toutes été remplacées par “Application” pour simplifier le système de build.

    Correction de “warnings” du compilateur pour des variables inutilisées et suppression de code mort (dans le cadre du maintien d’un code propre et lisible, une tâche plus ou moins continue pour suivre l’évolution des bonnes pratiques, la disponibilité de nouveaux outils d’analyse, et absorber la dette technique qui peut s’accumuler au cours d’un projet aussi ancien).

    Début de support pour GCC 15: il est ajouté dans la liste des versions du compilateur reconnues pour le système hôte, ce qui permet de compiler Haiku depuis un système Linux très récent. L’intégration en tant que compilateur cible viendra plus tard.

    Remplacement de la commande which utilisée dans certains scripts de build par l’équivalent command -v, ce qui évite une dépendance à une commande non standard qui n’est pas forcément installée par défaut partout.

    Dans le makefile engine (un template de makefile proposé pour développer facilement des applications pour Haiku), ajout de documentation et d’exemples pour les variables INSTALL_DIR et TARGET_DIR.

    Portage de Haiku sur d’autres CPUs

    RISC-V

    Correction d’un problème dans un script de link qui empêchait le démarrage du noyau.

    Mise à jour de paquets utilisés pour compiler le système de base.

    Mise en place d’un serveur de compilation de paquets pour RISC-V, ce qui permet de remplir le dépôt de paquets pour cette architecture et d’envisager une version officielle de Haiku pour RISC-V lors de la prochaine version bêta. L’architecture RISC-V s’ajoutera ainsi au x86 (32 et 64 bit) déjà supporté.

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    LinuxFr

    Android n’autorisera plus que les applications des dévelopeurs autorisés


    Internet
    Publié le
    mercredi 27 août 2025 07h58
    Importé le
    mercredi 27 août 2025 13h03

    Google a annoncé qu'à partir de 2027, seules les applications signées par des développeurs « vérifiés » par Google pourraient s'installer sur les systèmes Android certifiés. Si ce plan est réalisé, il sera impossible de distribuer une application Android sans donner ses données personnelles à Google, et Google pourra interdire à n'importe qui de distribuer des applications Android.

    N'est-ce pas déjà le cas ?

    Non. Il est vrai que pour distribuer des applications à travers le Play Store, il faut se faire valider par Google. Par contre, il est possible de distribuer sans l'accord de Google des applications par d'autres canaux, par exemple à travers les plates-formes indépendantes comme F-Droid, ou simplement en mettant une application à disposition sur une page web.

    Ça ne concerne que les systèmes Android certifiés, qu'est-ce que ça veut dire ?

    Android consiste de deux parties : la partie libre, nommée AOSP, et les Google Mobile Services (GMS). AOSP est libre, et n'importe quel constructeur peut donc l'utiliser. Les GMS sont propriétaires, et pour avoir le droit de les distribuer, un constructeur doit obéir à un certain nombre de règles et se faire certifier par Google.

    Comme la plupart des applications propriétaires ne fonctionnent pas sans les GMS, la quasi-totalité des systèmes Android distribués dans le commerce sont certifiés.

    Qu'est-ce que ça entraîne pour les distributions alternatives d'Android ?

    Les distributions alternatives d'Android (LineageOS, e/OS, CalyxOS, GrapheneOS, etc.) sont basées sur AOSP, et ne dépendent pas de la certification. Elles pourront donc continuer à autoriser l'installation des applications des développeurs non-validés.

    Qu'est-ce que ça entraîne pour les applications libres ?

    Les développeurs d'applications libres ne pourront plus faire installer leur logiciel sans l'autorisation de Google. Pour certains, ça ne changera probablement pas grand chose, pour d'autres, ça confinera leurs applications aux distributions alternatives d'Android.

    Par contre, ça compliquera la contribution au logiciel libre : un contributeur à une application ne pourra plus tester ses changements sur un système Android du commerce, sauf s'il a accès aux clés privées validées par Google.

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    ACTUX

    Apéro du Libre – Jeudi 4 septembre


    Bretagne
    Publié le
    mardi 26 août 2025 11h40
    Importé le
    mardi 26 août 2025 13h03
    Actux organise un nouvel apéro du libre le jeudi 4 septembre 2025 au Papier Timbré. Les Apéros du Libre sont des rencontres conviviales autour d’un verre, pour discuter et échanger entre utilisateurs et curieux de logiciels et culture libres. L’entrée est gratuite et ouverte aux membres et non membres d’Actux. Les consommations sont à la […]
    Le deuxième texte

    Atelier Wikisource en ligne le 30 août


    France
    Publié le
    mardi 26 août 2025 09h59
    Importé le
    mardi 26 août 2025 13h05
    Une dernière transcription avant la rentrée  ? Venez nous rejoindre en ligne pour cet atelier d’été de 10h à 12h, consacrée à des anniversaires ! Bien entendu, il est toujours possible de contribuer ou de demander de l’aide sur d’autres textes, par exemple Poésies complètes (1858) d’Amable Tastu. Code de conduite Cet évènement est régi par […]
    Numericatous

    La rentrée approche : et si on la commençait avec du numérique responsable ?


    Centre-Val de Loire
    Publié le
    mardi 26 août 2025 09h31
    Importé le
    mardi 26 août 2025 13h04
    L’été tire sa révérence, on reprend le chemin du travail et chez Numericatous, on est déjà très motivé pour cette nouvelle saison ! Deux grandes nouvelles à partager avec vous (si vous les aviez ratés) :Nous avons le plaisir d’officialiser deux partenariats stratégiques avec des acteurs qui, comme nous, agissent pour un numérique plus éthique, […]
    LinuxFr

    Revue de presse de l’April pour la semaine 34 de l’année 2025


    Internet
    Publié le
    mardi 26 août 2025 07h21
    Importé le
    mardi 26 août 2025 13h03

    Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.

    [ZDNET] 10 applications open source que je recommande à tous les utilisateurs Windows de télécharger gratuitement

    ✍ Jack Wallen, le jeudi 21 août 2025.

    L’open source n’est peut-être pas la première chose qui vous vient à l’esprit avec Windows. Mais ces outils gratuits peuvent considérablement booster votre productivité.

    [l'Humanité.fr] Fête de l'Humanité: climat, industrie et logiciel libre au menu de l'espace sciences et numérique

    ✍ Anna Musso, Pierric Marissal, le dimanche 17 août 2025.

    Fort du succès de ces deux dernières années, l’espace sciences et numérique vous accueille à nouveau avec des animations, des conférences et des débats en présence de personnalités du monde scientifique.

    [Place Gre'net] Un guide pour inciter les Grenoblois à adopter les logiciels libres (€)

    ✍ Joël Kermabon, le lundi 11 août 2025.

    La Ville de Grenoble lance un guide pratique pour inciter ses habitants à adopter les logiciels libres. Disponible en version papier et en ligne, ce kit offre conseils, solutions et ressources locales pour naviguer autrement sur ordinateur ou smartphone. Objectif : réduire la dépendance aux géants du numérique, prolonger la durée de vie des équipements et favoriser un usage plus éthique et écologique des technologies de l’information.

    Télécharger ce contenu au format EPUB

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    CERCLL

    Quelle part de marché pour Linux dans le monde ? 3,9 %.


    Provence-Alpes-Côte d'Azur
    Publié le
    mardi 26 août 2025 07h06
    Importé le
    mardi 26 août 2025 13h03
    Linux a un peu perdu du terrain sur le marché des ordinateurs de bureau. Le système d’exploitation libre occupe aujourd’hui 3,9 % du marché des systèmes d’exploitation de bureau, contre 4,44 % en juillet 2024. En Europe, il progresse beaucoup plus fort. Voici les derniers chiffres dont nous disposons pour Windows, macOS, Linux, ChromeOS, iOS […]
    CERCLL

    Ces malwares Linux s’installent rien qu’en ouvrant une archive RAR.


    Provence-Alpes-Côte d'Azur
    Publié le
    mardi 26 août 2025 07h01
    Importé le
    mardi 26 août 2025 13h03
    Les chercheurs en cybersécurité tirent la sonnette d’alarme : une nouvelle campagne de malwares cible les systèmes Linux en exploitant un vecteur totalement inattendu… le nom de fichier d’une archive RAR. Selon l’information publiée par Trellix, il suffit d’ouvrir l’archive infectée pour déclencher le téléchargement et l’exécution d’un cheval de Troie baptisé VShell, sans aucune […]
    ALDIL

    Newsletter ALDIL du mois de septembre 2025


    Auvergne-Rhône-Alpes
    Publié le
    lundi 25 août 2025 21h13
    Importé le
    mardi 26 août 2025 05h03

    Découvrez notre newsletter de septembre. Dernière festivité estivale avec le pique-nique du Libre le 28/8. Les activités en intérieur reprennent à la mi-septembre. Nos partenaires sont un peu plus précoces.

    L’article Newsletter ALDIL du mois de septembre 2025 est apparu en premier sur ALDIL.