❌

Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraĂźchir la page.

Une histoire de formats : il n’y a pas que la taille qui compte

Dans cette nouvelle excursion dans le temps et dans l’espace du Transimpressux, nous allons rendre une rapide visite Ă  ThĂ©otiste Lefevbvre (1798 - 1887) prote d’imprimerie et Ă  quelques-uns de ses confrĂšres ainsi que dans les magasins de quelques bibliothĂšques. Nous passerons aussi, un grand moment du cĂŽtĂ© de la Silicon Valley et de Redmond dans l’État de Washington, bien obligĂ© puisqu’on parlera beaucoup de formats numĂ©riques, sans oublier d’aller dire bonjour Ă  Donald Knuth, Tim Berners-Lee et John Gruber. On terminera notre exploration quelque part dans les archives numĂ©riques de la BibliothĂšque nationale de France (BnF).

La climatisation du Transimpressux a été entiÚrement révisée et le bar rechargé en boissons fraßches et glaces en tous genres. On vous souhaite un bon voyage.

Le transimpressux

Sommaire

Préambule

Cette dĂ©pĂȘche ne se veut pas exhaustive sur les formats en tous genres ni trĂšs technique sur les formats informatiques. Pour les formats d’image, qui ne sont pas traitĂ©s ici, je vous renvoie Ă  l’excellente dĂ©pĂȘche de Tanguy Ortolo qui a fait le tour de la question et au journal de Glandos sur l’intĂ©gration du JPEG XL dans les navigateurs.

Les formats matériels, entre coût et rangement

Encore aujourd’hui, le format matĂ©riel d’un document, spĂ©cialement, s’il s’agit d’un livre, est important pas uniquement pour des questions de coĂ»t. Mais aussi Ă  cause d’eux. C’est parce que le papier coĂ»tait cher qu’Alde Manuce a crĂ©Ă© l’italique au dĂ©but du 16e siĂšcle. L’italique prenant moins de place que les autres styles de caractĂšres, il devenait possible d’imprimer des livres en petit format qui pouvaient ainsi ĂȘtre achetĂ©s par une clientĂšle impĂ©cunieuse.

Une pile de livres
Des diffĂ©rences de taille et de tailles. Image retravaillĂ©e avec le filtre « Pencil Portrait Â» de Q’mic-Qt (et un peu Inkscape).

Les rouleaux, volumen ou rotulus

La taille de ces rouleaux varie beaucoup. Ils peuvent atteindre plusieurs mĂštres de long (ou de large, selon le sens de lecture). TĂ©moin cette remarque d’Auguste Molinier, chartiste et bibliothĂ©caire, en 1892 :

On a Ă©tudiĂ© rĂ©cemment la longueur des volumina antiques. En Égypte, elle paraĂźt avoir Ă©tĂ© illimitĂ©e ; un rouleau trouvĂ© Ă  ThĂšbes a 43 m. 50, ce qui est excessif ; il est vrai que le moyen Ăąge a eu des rouleaux de parchemin, plus solides, mais encore plus lourds et infiniment plus longs. Pour les Ɠuvres littĂ©raires grecques et latines, un Ă©rudit moderne, M. Birt, a Ă©valuĂ© Ă  12 mĂštres la longueur extrĂȘme des volumina.1

Ces longueurs dĂ©mesurĂ©es ne sont pas propres aux Égyptiens. Les Archives nationales de Paris possĂšdent un parchemin d’une longueur d’une vingtaine de mĂštres. DatĂ© de 1307, ce rouleau consigne les aveux, obtenus sous la torture, de cent-trente-huit Templiers. Il va sans dire que leur longueur et leur anciennetĂ© rend les rouleaux trĂšs difficiles Ă  manipuler, une difficultĂ© que la numĂ©risation Ă©limine.

Des formats des livres

Les noms des formats des livres en imprimerie traditionnelle sont liĂ©s au nombre de pages que l’on imprimait sur une feuille. Le mot « format Â» lui-mĂȘme pourrait venir des chĂąssis, ou « formes Â» dans lesquels on plaçait les pages Ă  imprimer. Ce procĂ©dĂ© s’appelait l’imposition.

Les formats les plus usuels, du plus grand au plus petit :

  • in-folio : soit quatre pages par feuille, la taille la plus grande de livre,
  • in-quarto, huit pages,
  • in-octavo, seize pages,
  • in-douze, vingt-quatre pages,
  • in-dix-huit, trente-six pages.

La rĂ©partition des pages sur la feuille Ă©tait Ă  la fois importante et dĂ©licate puisqu’une fois imprimĂ©e, la feuille Ă©tait pliĂ©e. Il fallait donc veiller non seulement Ă  la bonne rĂ©partition des pages sur la feuille, mais aussi Ă  leur sens. Dans son Guide pratique du compositeur d’imprimerie, ThĂ©otiste Lefebvre consacre plus d’un quart de son livre (119 pages sur 440) Ă  cette dĂ©licate question. Dans son petit guide sur la Typographie, Charles-FĂ©licien Huart y consacre aussi plusieurs pages.

Un exemple de rĂ©partition des pages2 pour un volume in-douze, « cĂŽtĂ© de premiĂšre Â» indique le recto, « cĂŽtĂ© de seconde Â», le verso. La feuille est pliĂ©e en trois dans le sens de la hauteur et deux dans la largeur.

répartition
Recto : deux sĂ©ries de pages tĂȘte en bas, pages 12, 13, 16 et 9 (1re sĂ©rie) et 8, 17, 20 et 5 (2e sĂ©rie) et, en dessous pages 1, 24, 21 et 4. Verso : deux sĂ©ries de pages tĂȘte en bas, pages 10, 15, 14 et 11 (1re sĂ©rie) et 6, 19,18 et 7 (2e sĂ©rie) et 3, 22, 23 et 2 en dessous.

Cette diffĂ©rence de tailles peut amener les bibliothĂšques dont le fond n’est pas directement accessible au public Ă  opter pour un classement matĂ©riel des livres basĂ©s sur le format. On aura ainsi des cĂŽtes du genre « in12-numĂ©ro d’inventaire Â». C’est un systĂšme trĂšs efficace et qui Ă©vite d’avoir un petit livre (littĂ©ralement) perdu au milieu de livres nettement plus grands.

Les formats actuels, livre et papier

L’indication de format Ă  partir du nombre de pages imprimĂ©es sur une feuille ne donne pas d’information prĂ©cise sur la taille effective des livres. Il faut signaler que les dimensions changent en fonction de celles de la feuille d’origine. Les appellations actuelles, cĂŽtĂ© Ă©dition, du style Livre de poche (environ 10,5 cm x 17,5 cm), livre brochĂ© ou encore grand format, utilisĂ©es en lieu et place d’in-folio, in-octavo, etc. rĂ©servĂ©s plutĂŽt au livre ancien ne sont pas plus prĂ©cises.

En, revanche, la taille des feuilles de papier les plus utilisĂ©es a fait l’objet d’une norme, la norme ISO 216. Elle concerne les formats A, dont le fameux A4 qui est celui des feuilles standard des imprimantes de bureau et le format B. Le principe : plus le numĂ©ro est Ă©levĂ©, plus la feuille est petite. La numĂ©rotation commence Ă  0 qui fait un mĂštre carrĂ© (84,1 cm x 118,9 cm) pour le format A. La taille de la feuille du numĂ©ro supĂ©rieur devant ĂȘtre Ă©gale Ă  la moitiĂ© de celle du numĂ©ro infĂ©rieur qui la prĂ©cĂšde. En d’autres termes : le format A3 Ă©gal deux fois le format A4 qui, lui-mĂȘme, est deux fois plus grand que le format A5. Il en va de mĂȘme avec le format B. Cela explique au passage pourquoi le format A4 mesure 21 x 29,7 cm et pas 21 x 30 cm.

Les formats de texte

Jusque dans les annĂ©es 1990, il y avait un nombre trĂšs important d’outils et de formats de textes. Writer de LibreOffice, d’aprĂšs mes comptes, peut ouvrir jusqu’à quarante-quatre formats de fichier diffĂ©rents, hors modĂšles et hors web, mais n’enregistre que dans des formats qui sont ceux encore utilisĂ©s Ă  l’heure actuelle. Ce qui rĂ©duit la liste Ă  treize formats incluant les modĂšles et l’HTML.

Sur cette frise chronologique, on a, en haut, des formats de texte avec leur date de naissance plus ou moins approximative et, en dessous, des langages de balisage avec leur date de naissance Ă©galement.

Formats de texte et langages de balisage
Les formats de texte : 1977 Texte brut, 1987-2007 RTF, 1990-2007 DOC, 2005 ODT, 2007 DOCX. Ils ont Ă©tĂ© choisis parce qu’ils sont les plus connus, voire, les plus utilisĂ©s. Dans cette liste deux formats ne sont plus maintenus, les formats RTF et DOC. Mais il existe encore des amas de fichiers dans ces deux formats.

Le texte brut, .txt

Le texte brut, nait Ă  une date imprĂ©cise. Probablement vers la fin des annĂ©es 1950 ou au dĂ©but des annĂ©es 1960. Le premier RFC3 qui dĂ©finit un standard de protocole pour des messages en texte brut (Standard for the Format of Arpa Network Text Messages) date de 1977, il porte le numĂ©ro 733 et a Ă©tĂ© rĂ©digĂ© par l’agence amĂ©ricaine pour les projets de recherche avancĂ©e de dĂ©fense (DARPA pour Defense Advanced Research Projects Agency).

Au dĂ©but, le format n’acceptait que l’Ascii, Ă  savoir les vingt-six lettres de l’alphabet, les chiffres, les ponctuations de base et les caractĂšres de commande Ascii. Ce qui en fait un format simple, mais trĂšs pauvre. L’Ascii est codĂ© sur 7 bits, ce qui ne permet d’avoir que cent-vingt-huit caractĂšres, en fait quatre-vingt-dix imprimables et trente-huit pour les codes de commande4. Il accepte, depuis, l’Unicode. Depuis quand ? Difficile Ă  prĂ©ciser, mais la premiĂšre mention d’Unicode qui figure sur le site rfc-editor remonte Ă  juillet 1994 (en), RFC 1641, Ă  titre expĂ©rimental. On peut supposer, en tout cas, que le consortium Unicode qui rĂ©unit la fine fleur de l’informatique a dĂ» trĂšs tĂŽt faire en sorte que son standard puisse ĂȘtre acceptĂ© dans le format texte brut.

Ce format se rĂ©vĂšle assez vite insuffisant de part sa simplicitĂ© mĂȘme, confinant Ă  la pauvretĂ© : pas d’enrichissement typographique, pas de notion de style ni de hiĂ©rarchie des paragraphes, pas de possibilitĂ© d’avoir des images. Il est, de fait, plutĂŽt infĂ©rieur Ă  ce que l’on peut avoir sur du papier. Il reste nĂ©anmoins trĂšs utilisĂ© et par toutes les applications qui traitent du texte : Ă©diteurs de texte, bureautique, etc. Il a pour lui l’avantage d’ĂȘtre simple, lĂ©ger et interopĂ©rable. C’est le format, par exemple, avec lequel la BnF Gallica dĂ©livre les documents « bruts de numĂ©risation Â» (il faut copier-coller le texte ailleurs pour le garder et le retravailler), et c’est, bien Ă©videmment, celui des RFC.

Il y a des personnes qui recommandent de conserver le texte en texte brut, compte tenu des limitations du format, ce n’est pas franchement conseillĂ© pour des documents un peu complexes Ă©tant donnĂ© qu’il y aura Ă©normĂ©ment de pertes d’information.

Le RTF

En 1987, Microsoft lance le Rich Text Format (RTF) qui permettait d’avoir du texte « enrichi Â» avec des attributs : gras, italique, soulignĂ© et de dĂ©passer le cadre du texte brut. C’est un format qui a Ă©tĂ© pendant un certain temps, un standard d’échange de fait pour ce type de fichiers. Il Ă©tait au moins lu par beaucoup de logiciels sur nombre de systĂšmes d’exploitation. C’était un format pratique d’échange, notamment Ă  une Ă©poque oĂč le PDF n’était pas encore un format ouvert et ne pouvait ĂȘtre gĂ©nĂ©rĂ© que via le (cher) logiciel d’Adobe. Et aussi parce que c’était l’époque de la « grande dĂ©mocratisation Â» de l’informatique, et, qu’à vrai dire, les utilisateurices finaux ne savaient pas trop comment, surtout sous quelle forme et ce qui se passait quand on Ă©changeait des fichiers.

Aussi pratique que soit le format RTF, outre son absence de lĂ©gĂšretĂ©, il Ă©tait nĂ©anmoins trĂšs limitĂ© : pas de texte structurĂ© autrement que sur un plan purement visuel, par exemple. Microsoft arrĂȘtera de le maintenir en 2008 (il aura tenu vingt ans tout de mĂȘme !). C’est donc un format mort.

Le .doc, un format propriétaire incontournable

Quand Microsoft lance sa suite bureautique dans les annĂ©es 1990 (la date sur la chronologie n’est pas tout Ă  fait exacte), il adopte pour le traitement de texte, Word, l’extension .doc qui avait Ă©tĂ© aussi celle de WordPerfect. Word avait pour lui de montrer le rendu du texte immĂ©diatement : le fameux WYSIWYG pour « What you see is what you get Â» (ce que vous voyez est ce que vous obtenez).

La suite finit par devenir quasiment incontournable et le format DOC de Word devenir un « standard de fait Â». Microsoft abandonnera le DOC en 2007 pour le DOCX basĂ© sur l’Office Open XML. On produira encore longtemps aprĂšs des fichiers en .doc en vertu du « tout le monde n’a pas la version de MsOffice 2007 Â». On trouve encore sur internet des modĂšles de fichiers Ă  ce format Ă  tĂ©lĂ©charger.

Il Ă©tait reprochĂ© au format son poids, lourd, des problĂšmes de confidentialitĂ© (on pouvait, par exemple, retrouver du texte effacĂ© avant l’enregistrement ou le modĂšle de l’imprimante5) et sa faiblesse devant les virus. Et, bien entendu, c’était un format propriĂ©taire et pas interopĂ©rable. Un autre dĂ©faut majeur du format Ă©tait qu’il Ă©tait modifiĂ© Ă  chaque nouvelle version de Word ce qui impliquait de devoir acheter la nouvelle version du logiciel pour pouvoir travailler sur les nouveaux fichiers en .doc.

Microsoft dĂ©livrera les sources du format en 2006, mais les spĂ©cifications semblent ne plus figurer sur le site de la firme. Le code source de la version d’origine de Word, quant Ă  lui, a Ă©tĂ© rendu public et versĂ© au musĂ©e amĂ©ricain de l’histoire de l’ordinateur (en).

Le .doc peut encore ĂȘtre ouvert et travaillĂ© d’un grand nombre de logiciels. Abiword par exemple ouvre les .doc mais pas les .docx. En revanche, il est de moins en moins possible de gĂ©nĂ©rer des fichiers Ă  ce format, et c’est une bonne chose. On ne saurait que trop vous suggĂ©rer de transformer tous les fichiers en .doc qui traĂźneraient encore dans vos ordinateurs en ODT (ou de faire le mĂ©nage). Il en va de mĂȘme pour le format de modĂšle .dot.

L’ODT : un format ouvert

En 2005 apparaĂźt un format bien intĂ©ressant : le format ODT, qui est une des composantes du plus gĂ©nĂ©ral OpenDocument Format (ODF) avec le O d’Open, le D de Document et le T de Texte, l’extension OTT Ă©tant pour les modĂšles avec le premier T pour Template (modĂšle en anglais). L’ODF est gĂ©rĂ© par le consortium OASIS, pour Organization for the Advancement of Structured Information Standards (Organisation pour l’avancement des normes d’informations structurĂ©es).

OASIS est une structure Ă  but non-lucratif autorisĂ©e par l’ISO (International Standard Organization, l’organisation dont l’objectif social est l’élaboration et la publication de normes mondiales de produits et services), Ă  publier des standards dont les spĂ©cifications sont publiquement disponibles sans passer par les fourches caudines de l’ISO. Le consortium a Ă©tĂ© crĂ©Ă© en 1993, il s’appelait Ă  l’époque SGML Open. Il Ă©tait constituĂ© de fournisseurs et d’utilisateurs d’outils informatique, son but Ă©tait le dĂ©veloppement de lignes directrices pour l’interopĂ©rabilitĂ© de logiciels utilisant le langage de balisage SGML. Il change de nom en 1998 pour devenir OASIS qui reflĂšte mieux les travaux du consortium. Parmi les cent-seize membres (l’adhĂ©sion est payante) : Ă  peu prĂšs toutes les grandes entreprises de l’informatique amĂ©ricaine et quelques chinoises ou japonaises (Alibaba, Hitachi, Huawei, Fujitsu
) mais aussi des organismes tels que le Parlement europĂ©en, l’Office des publications europĂ©ennes, le MinistĂšre français de l’IntĂ©rieur, le FBI, des universitĂ©s (Brno, Milan, Luxembourg, Oslo, Westminster, MIT, etc.), la Biblioteca del Congreso Nacional du Chili, TheDocumentFoundation, etc. Il existe en outre une fondation europĂ©enne Ă  but non lucratif OASIS Open Europe (en) affiliĂ©e au consortium et dont l’objectif est de soutenir le rĂŽle de l’Europe dans le dĂ©veloppement de l’open source et des normes ouvertes.

La version 1.0 du format OpenDocument (ODF) pour les applications bureautiques a Ă©tĂ© approuvĂ©e le 1er mai 2005 Ă  l’unanimitĂ© des soixante-dix-huit membres ayant votĂ©. La version 1.0 des directives pour l’accessibilitĂ© du format ODF, quant Ă  elle a Ă©tĂ© approuvĂ©e Ă  l’unanimitĂ© des onze membres ayant votĂ© le 1á”‰Êł mai 2008. La derniĂšre version du format ODF est la 1.3 (en), approuvĂ©e le 27 avril 2021. LibreOffice l’a intĂ©grĂ© Ă  partir des versions 7, pratiquement Ă  la sortie de la norme, c’est le format d’enregistrement par dĂ©faut. La norme ODF 1.3 a mis notamment l’accent sur la signature et le chiffrage des documents.

Le format ODF est basĂ© sur le XML. C’est un fichier « compressĂ© Â» qui en contient plusieurs6 :

  • le fichier meta.xml contient des informations au sujet du document (l’auteur, la date de la derniĂšre sauvegarde),
  • le fichier styles.xml contient les styles utilisĂ©s dans le document,
  • le fichier content.xml contient le contenu principal du document (texte, tableaux, Ă©lĂ©ments graphiques
),
  • le fichier settings.xml, en gĂ©nĂ©ral spĂ©cifique Ă  une application, contient certains paramĂštres tels que l’imprimante sĂ©lectionnĂ©e
,
  • les fichiers META-INF/manifest.xml contiennent des informations supplĂ©mentaires sur les autres fichiers (comme le type MIME ou le chiffrement).

Plus des dossiers : Pictures, Thumbnails, etc.

Ce format est le format natif notamment de LibreOffice, OpenOffice7, Calligra, Collabora Online, GoogleDocs, Zoho, il est aussi ouvert, travaillé et enregistré par des logiciels tels que MsOffice depuis 2007 (2016 pour la version pour MacOS), Office365, OnlyOffice ou AbiWord (listes non limitatives).

L’une de ses trĂšs grandes forces est, qu’à l’instar du format HTML, toute la mise en forme repose sur des styles. Ce qui rend trĂšs Ă©volutifs et adaptables les documents au format ODT (pour peu qu’ils le soient avec un logiciel qui le gĂšre bien).

En France, le format ODF est le seul format bureautique recommandĂ© par le rĂ©fĂ©rentiel gĂ©nĂ©ral d’interopĂ©rabilitĂ©. Le format ODT Ă©tant mentionnĂ© comme format Ă  privilĂ©gier par nombre d’administrations de par le monde.

Le format DOCX et son OOXML

L’annĂ©e 2007 est celle qui « rĂ©volutionne Â» la suite bureautique de Microsoft. En effet, la firme abandonne les vieux formats pour en adopter des nouveaux basĂ©s sur le XML d’oĂč le X de l’extension. Mais pas n’importe quel XML, le XML maison appelĂ© Office Open XML (OOXML pour faire court). Il est fort probable que, ce faisant, l’idĂ©e Ă©tait de court-circuiter le standard ODF. Microsoft a d’ailleurs livrĂ© une guerre fĂ©roce pour que son OOXML soit acceptĂ© par l’ISO en s’y reprenant Ă  deux fois. La norme, adoptĂ©e le 17 aout 2008, porte le numĂ©ro ISO/IEC DIS 29500. Il est possible (probable ?) Ă©galement que, Word Ă©tant ce qu’il est, se baser sur le XML de l’ODT aurait vraisemblablement nĂ©cessitĂ© un grand travail de refonte du logiciel. Il existe deux « variantes Â» de DOCX, le premier, celui de la version 2007 et celui de 2010. En effet, la norme ISO/IEC DIS 29500 n’est pas compatible avec Office 2007.

Sur le plan technique, il est reprochĂ© Ă  l’OOXML sa complexitĂ© qui en rend difficile la mise en Ɠuvre. À tel point qu’il se dit que Microsoft lui-mĂȘme ne l’implĂ©mente pas correctement. La derniĂšre version d’OOXML est actuellement la rĂ©fĂ©rence ISO/IEC 29500-1:2016 (en) de novembre 2016 (elle fait 5024 pages).

Sur le plan juridique, le caractĂšre libre de la norme est flou, il en ressort une certaine instabilitĂ© sur ce plan. Avec les spĂ©cifications, Microsoft a distribuĂ© :

un document promettant de ne pas poursuivre les auteurs de l’utilisation d’Office Open XML dans un autre logiciel que ceux de Microsoft. Cette promesse de non-poursuite elle-mĂȘme laisse certains flous, notamment :
‱ s’appliquant Ă  la norme ECMA en l’état, s’applique-t-elle Ă  une Ă©ventuelle version finale de l’ISO ?
‱ s’applique-t-elle Ă  tous les brevets logiciels nĂ©cessaires Ă  la mise en Ɠuvre de la norme ?
‱ s’applique-t-elle Ă©galement aux extensions du format OOXML ?
La licence d’utilisation de OpenXML est incompatible avec les programmes sous la licence GPL.8

À l’instar des fichiers ODF, le DOCX est un fichier compressĂ© qui en contient plusieurs. On en trouvera l’anatomie (en) par exemple sur le site Office Open XML (en).9

Il est actuellement ouvert, voire travaillé et enregistré, de la plupart des suites bureautiques.

Des langages de balisages

Parler des formats de texte sans évoquer les langages de balisage serait assez inepte puisque les formats modernes sont basés dessus. Pour rappel, un langage de balisage est un langage servant à définir et à structurer les informations dans un document.

Il en existe de nombreux, mais on n’évoquera que ceux qui semblent les plus connus ou les plus utilisĂ©s.

TeX le grand ancien

TeX fait figure de grand ancien, puisque la premiĂšre version du langage de balisage date de 1978. Cela dit, on devrait peut-ĂȘtre plutĂŽt parler « d’écosystĂšme Â» car c’est Ă  la fois un format, le langage de balisage utilisĂ© par LaTeX et un logiciel libre de composition. TeX a Ă©tĂ© crĂ©Ă© par Donald E. Knuth, professeur Ă©mĂ©rite Ă  l’UniversitĂ© de Stanford et considĂ©rĂ© comme l’un des pionniers de l’algorithmique. L’objectif de Donald E. Knuth en crĂ©ant TeX Ă©tait d’avoir des documents scientifiques et techniques de bonne qualitĂ© typographique, ce qu’il n’était pas possible d’obtenir avec les logiciels d’édition de l’époque. Le principe du langage TeX est la sĂ©paration du contenu de et la forme, ce qui Ă©tait innovant.

TeX est complĂ©tĂ© par LaTeX qui est « un ensemble de macros permettant de faire beaucoup de choses Â»10, et, bien sĂ»r, par le langage de composition de polices vectorielles Metafont. LaTeX a Ă©tĂ© dĂ©veloppĂ© par Leslie Lamport. La premiĂšre version est sortie en 1983.

Ce n’est pas un traitement de texte, l’idĂ©e Ă©tant que l’auteur ou l’autrice :

puisse mettre son Ă©nergie Ă  rĂ©diger le contenu sans ĂȘtre distrait par l’apparence de son document. En Ă©crivant en langage LaTeX, l’utilisateur doit donc dĂ©finir sĂ©mantiquement le contenu de son document plutĂŽt que visuellement. DMS, UniversitĂ© de MontrĂ©al.

On peut générer des fichiers TeX soit directement avec un éditeur de texte, soit avec des logiciels comme Lyx ou encore Overleaf qui est un éditeur LaTeX en ligne et collaboratif. Mais, pour en voir le rendu, il faudra soit faire un PDF, si on utilise un éditeur de texte, soit passer par le visualiseur, quand il existe, dans un logiciel tel que Lyx.

À ma connaissance la plupart des suites bureautiques ne l’acceptent pas, pas plus que Calibre d’ailleurs.

La derniÚre version de TeX, 3,143.141592653 date de janvier 2021. Le format est géré par le groupe des utilisateurs de TeX ou TUG (en). LaTeX quant à lui est géré par le projet LaTeX (en). La derniÚre version date de juin 2024.

Le SGML et ses petits

Le SGML, S pour Standard, G pour Generalized, M pour Markup et L pour Langage (langage de balisage gĂ©nĂ©ralisĂ© normalisĂ©) possĂšde le numĂ©ro de norme ISO 8879:1986. 1986 Ă©tant l’annĂ©e d’obtention du numĂ©ro ISO, la premiĂšre version du SGML Ă©tant sortie en 1978. Produit de l’industrie de l’édition, il a adoptĂ©, comme TeX, le principe de la sĂ©paration complĂšte du fond et de la forme. C’est, en fait, une norme permettant de dĂ©finir des langages de balisage gĂ©nĂ©riques pour des documents. SGML sera, dĂšs 1984, le format standard des publications officielles des CommunautĂ©s europĂ©ennes.

Ce qui caractĂ©rise un document SGML : il doit possĂ©der une « dĂ©finition du type de document Â» (DTD ou doctype en anglais). Cette DTD sert Ă  indiquer la structure du document. Et, Ă©videmment le systĂšme de balises que l’on va retrouver chez les membres de la famille.

HTML, sans lequel, possiblement, LinuxFr.org ne serait pas

Le langage HTML, pour HyperText Markup Language, est un langage de balisage pour l’hypertexte, cette fonctionnalitĂ© qui permet de naviguer sur internet. Il a Ă©tĂ© crĂ©Ă©, ou plutĂŽt lancĂ© au dĂ©but des annĂ©es 1990 par Tim Berners-Lee qui en a profitĂ© pour concevoir au passage la forme des adresses Web que nous connaissons (les URL) et le protocole de communication HTTP.

Le format HTML est gĂ©rĂ© par le World Wide Web Consortium (W3C) fondĂ© en 1994 par Tim Berners-Lee. L’objectif du W3C : Ă©mettre des normes et des recommandations pour le web.

La premiĂšre version de HTML Ă©tait trĂšs limitĂ©e : cela n’allait pas plus loin que la structure du texte avec les balises de titres et de listes, et les liens hypertextes.

En 1999, sort la version 4 (en) qui deviendra une norme ISO en 2000. La norme HTML 4 supporte pleinement le langage de mise en forme CSS (Cascading Style Sheet ou feuilles de style en cascade). Le HTML 4 existe en trois variantes, si on peut dire :

  • le HTML strict qui exclut les Ă©lĂ©ments de « prĂ©sentation Â» puisque qu’il revient au CSS de faire le travail de mise en forme,
  • le HTML transitionnel accepte quelques balises de prĂ©sentation obsolĂštes hĂ©ritĂ©es du HTML 3,
  • frameset qui normalise les jeux de cadre, les «frames Â».

La derniĂšre version de HTML est le HTML 5 publiĂ© en 2012. Il ne remplace pas le HTML 4.1 : les deux standards coexistent. HTML 5 apporte en plus des fonctionnalitĂ©s d’animations complexes, multimĂ©dia avec de l’audio et de la vidĂ©o, etc. jusque-lĂ  assurĂ©es notamment par le logiciel privateur Flash. HTML 5 s’est aussi Ă©loignĂ© du SGML.

XML le futur du HTML

C’est, en tout cas, ainsi que s’intitulait en 1998 un article (en) de Todd Freter (en) directeur de programme chez Sun Microsystem. DĂ©fini comme un sous-ensemble de SGML, « le XML a Ă©tĂ© conçu pour ĂȘtre facile Ă  mettre en Ɠuvre et interopĂ©rable avec SGML et HTML Â»11. De fait les syntaxes HTML et XML sont les mĂȘmes. L’une des diffĂ©rences fondamentales entre les deux Ă©tait, au dĂ©part, qu’il Ă©tait possible de dĂ©finir ses propres balises avec XML, mais pas avec HTML. Un comportement qui a Ă©tĂ© modifiĂ© en 2014 pour HTML avec les Web Components (en).

XML (eXtensible Markup Language) a Ă©tĂ© dĂ©veloppĂ© par un groupe de travail pilotĂ© par le W3C Ă  partir de 1996, avec, comme prĂ©sident, Jon Bosak (en) de Sun Microsystems. Les objectifs, Ă  sa sortie en 1998, Ă©taient les suivants selon la Recommandation du W3C du 10 fĂ©vrier 1998 :

  1. XML devrait pouvoir ĂȘtre utilisĂ© sans difficultĂ© sur Internet ;
  2. XML devrait soutenir une grande variĂ©tĂ© d’applications ;
  3. XML devra ĂȘtre compatible avec SGML ;
  4. Il devrait ĂȘtre facile d’écrire des programmes traitant les documents XML ;
  5. Le nombre d’options dans XML doit ĂȘtre rĂ©duit au minimum, idĂ©alement Ă  aucune ;
  6. Les documents XML devraient ĂȘtre lisibles par l’homme et raisonnablement clairs ;
  7. La conception de XML devrait ĂȘtre prĂ©parĂ©e rapidement ;
  8. La conception de XML sera formelle et concise ;
  9. Il devrait ĂȘtre facile de crĂ©er des documents XML ;
  10. La concision dans le balisage de XML est de peu d’importance.

Qu’en est-il aujourd’hui de ces principes ?

En fonction de la syntaxe XML du document, s’il est transmis avec le type MIME text/html, il est vu par les navigateurs comme un fichier HTML. En revanche, s’il est transmis avec un type XML MIME, il sera traitĂ© comme un document XML. Dans le deuxiĂšme cas de figure, des erreurs de syntaxe mĂȘme mineures empĂȘcheront un document Ă©tiquetĂ© XML d’ĂȘtre correctement restituĂ© alors qu’elles seraient ignorĂ©es dans la syntaxe HTML. L’objectif 1, n’est donc pas atteint et XML ne remplace dĂ©finitivement pas HTML. En revanche, XML est effectivement trĂšs utilisĂ© : outre les formats ODF et OOXML, c’est le langage sur lequel est basĂ© le format SVG (Scalable Vector Graphics, ou, en français graphique vectoriel adaptable) et c’est le format de rĂ©fĂ©rence pour l’échange de donnĂ©es. Mais, pour ce qui est de la lisibilitĂ© du format par des yeux humains, elle n’est pas toujours au rendez-vous.

XML est maintenu par le W3C. La derniÚre version (en) porte le numéro 1.1, elle est sortie le 29 septembre 2006.

Langages de balisage léger

Les langages de balisage lĂ©ger sont conçus pour ĂȘtre facile Ă  utiliser avec un Ă©diteur de texte. La syntaxe en est simple.

Le MarkDown, peut-ĂȘtre le plus connu d’entre eux, a Ă©tĂ© crĂ©Ă© en 2004 par le programmeur amĂ©ricain John Gruber; aidĂ© d’Aaron Swartz. Il n’a pas subi d’évolution importante depuis. En revanche, il en existe des variantes. John Gruber le dĂ©finit comme :

un outil de conversion de texte en HTML destinĂ© Ă  la rĂ©daction Web. Markdown vous permet d’écrire en utilisant un format de texte brut facile Ă  lire et Ă  Ă©crire, puis de le convertir en XHTML (ou HTML) structurellement valide. Daring Fireball (en).

Pour en savoir plus sur la syntaxe MarkDown, on peut, trÚs profitablement, se référer au wiki de LinuxFr.org.

Il en existe d’autres comme txt2tags crĂ©Ă© en 2001 ou encore AsciiDoc (en) dont la premiĂšre version date de 2002. Txt2tags (en) est un logiciel gĂ©nĂ©rateur de documents Ă©crit en Python et qui utilise un langage de balisage lĂ©ger comme source. Quant Ă  AsciiDoc, il se veut un langage particuliĂšrement adaptĂ© Ă  la rĂ©daction de documentations techniques. Il existe aussi le langage de balisage du CMS (gestion de contenu web) SPIP, nĂ© en 2001.

L’archivage et la conservation des textes

Il est ici, Ă©videmment question des formats d’archivage des textes, avec ou sans images, tableaux, formules de mathĂ©matiques, etc. Avant d’aborder cette question : une dĂ©finition s’impose. Il ne s’agit pas des formats dits d’archives de type .zip, .rar, .tar etc. Archiver les textes c’est, dans ce contexte, pouvoir les conserver et y accĂ©der sans avoir besoin de l’application qui a servi Ă  les gĂ©nĂ©rer. Et ce soit en conservant la mise en page d’origine, comme pour le PDF, soit en laissant Ă  l’outil de lecture la main pour la mise en page. Chaque format a ses spĂ©cificitĂ©s. Mais de toute façon :

un bon format de prĂ©servation, c’est un bon format tout court. Outils open source nombreux, mĂ©tadonnĂ©es internes bien foutues, dĂ©marche collective de normalisation
 Bertrand Caron, archiviste numĂ©rique Ă  la BnF, janvier 2024.

EPUB

L’EPUB, pour Electronic PUBlication, est un format de document numĂ©rique qui n’est pas destinĂ© Ă  l’impression. L’une de ses spĂ©cificitĂ©s est, notamment, de laisser Ă  l’utilisatrice ou l’utilisateur le choix du rendu du fichier. Il existe, toutefois, un mode « fixed-layout Â» qui fige la mise en forme de l’EPUB. Ce mode a Ă©tĂ© conçu pour les publications qui nĂ©cessitent que la mise en page soit respectĂ©e, comme certaines publications scolaires. Mais cela rĂ©clame une mise en page adaptĂ©e aux tailles des Ă©crans des appareils de lecture.

EPUB a succĂ©dĂ© au format OeB (Open eBook). Au dĂ©part, gĂ©rĂ© par l’International Digital Publishing Forum (IDPF) qui sera intĂ©grĂ© au W3C en 2017. La premiĂšre version sort en 2007, suivie, en 2010 par l’EPUB2 et, en 2011, par l’EPUB3. Il a Ă©tĂ© trĂšs vite adoptĂ©. Aujourd’hui les deux versions coexistent, l’EPUB2 prĂ©dominant encore sur l’EPUB3. Le format est basĂ© sur XML et sur HTML. Un fichier EPUB est un fichier zip qui contient plusieurs fichiers et rĂ©pertoires dont un dossier META-INF qui contient un fichier container.xml, ce dossier n’apparait pas quand on gĂ©nĂšre un fichier Ă  partir de Sigil d’ailleurs. Les fichiers de texte sont au format XHTML.

Qu’apporte l’EPUB3 par rapport Ă  l’EPUB2 ? Les Ă©volutions concernent principalement l’accessibilitĂ© et l’intĂ©gration de contenus audio ou vidĂ©o. Ainsi les formules de mathĂ©matiques qui, en EPUB2 sont converties en images, donc illisibles sans yeux, sont gardĂ©es en tant que telles avec EPUB3. Les liseuses ne supportent pas forcĂ©ment toutes les fonctions, notamment multimĂ©dias.

Il est possible d’y ajouter diffĂ©rents types de marquage ou de verrous : les DRM Adobe, chĂšres et complexes, les DRM LCP, trĂšs pratiques pour le prĂȘt des livres en bibliothĂšque ou encore des filigranes qui n’imposent aucune limitation aux EPUB. L’apposition d’une DRM a un EPUB est, en principe, une dĂ©cision Ă©ditoriale. Il semble nĂ©anmoins que certaines librairies Ă©prouvent le besoin d’en rajouter. Il convient donc d’ĂȘtre vigilant quand on achĂšte un EPUB si on veut Ă©viter d’avoir un livre avec une DRM. Le livre numĂ©rique reprĂ©sente 10,1 % du chiffre d’affaires de l’édition française en 2023, ce qui inclut les EPUB et les PDF.

La version la plus rĂ©cente du format EPUB et l’EPUB3.3 sortie en mai 2023. Elle est devenue une Recommandation W3C (en).

PDF

L’objectif du format PDF a contrario de celui de l’EPUB est le respect de la mise en page du fichier qui a servi Ă  le gĂ©nĂ©rer. De ce fait, il n’est pas trĂšs lisible sur une liseuse ou sur un tĂ©lĂ©phone.

La naissance du PDF remonte Ă  1991 et elle est due Ă  John Warnock cofondateur d’Adobe. La premiĂšre version de ce format est sortie en 1992. À l’époque c’était assez fou de pouvoir accĂ©der Ă  un fichier avec sa mise en page d’origine sans qu’il soit nĂ©cessaire d’avoir l’application qui avait servi Ă  le gĂ©nĂ©rer. Il deviendra un standard ouvert gĂ©rĂ© par l’ISO en 2008, numĂ©ro ISO 32000.

En fait il n’existe pas un, mais plusieurs formats PDF dont :

  • PDF/A pour l’archivage,
  • PDF/E pour les documents techniques,
  • PDF/X pour l’impression,
  • PDF/UA pour l’accessibilitĂ© universelle,
  • ou encore des formulaires FDF.

La version PDF/A-3 permet d’incorporer le fichier d’origine au PDF : dans l’export PDF de LibreOffice, cela s’appelle un PDF hybride. Cela donne un fichier qui pĂšse deux fois plus lourd, grosso modo, minus le poids des polices embarquĂ©es, que le PDF « simple ». Et, si on ouvre le PDF Ă  partir de l’application qui a servi Ă  le crĂ©er, ou si on clique sur « Cliquer pour les afficher » (ou Ă©quivalent) dans un lecteur de PDF qui le permet, ici Okular, on ouvre le fichier d’origine. Mais, Ă©videmment, quand on le modifie ça ne modifie pas le PDF. Il faut soit gĂ©nĂ©rer un nouveau PDF soit l’écraser.

À savoir, il n’y a que quatorze polices standard PDF, en fait seulement cinq fontes diffĂ©rentes avec leurs variantes, gras, italiques : Courrier, Helvetica, Times Roman, Symbol et Zapf Dingbats. Il est donc trĂšs important, quand on gĂ©nĂšre un PDF d’incorporer les polices au fichier Ă  condition que cela soit permis par la licence des polices. Pour ne pas alourdir le fichier, il est suggĂ©rĂ© de n’incorporer que les polices utilisĂ©es dans le document. Avec LibreOffice, vous pouvez configurer cela soit en gĂ©nĂ©rant le PDF, soit, de prĂ©fĂ©rence, la premiĂšre fois que vous enregistrez le fichier, c’est dans l’onglet « Police Â» des propriĂ©tĂ©s dudit fichier. Si vous utilisez un modĂšle, la case peut avoir Ă©tĂ© cochĂ©e dans le modĂšle et il ne sera pas nĂ©cessaire de le faire.

Kurinto une histoire de chasses

La chasse, en typographie, est l’encombrement d’un caractĂšre : largeur plus approche (espace autour). Pour un mĂȘme corps de caractĂšre (sa hauteur), elle peut varier selon les polices, ce qui, Ă©videmment, peut changer, voire, chambouler, complĂštement un document crĂ©Ă© avec une police et pour lequel on a changĂ© la typographie. La collection de polices Kurinto (en) a Ă©tĂ© dessinĂ©e Ă  la fois pour couvrir un large Ă©ventail de langues et de systĂšmes d’écriture et dans l’optique de pouvoir remplapcer les polices Microsoft avec des glyphes qui ont la mĂȘme chasse.

Si vous cherchez des polices au dessin Ă©lĂ©gant pour remplacer des fontes comme le couple Arial/Times New Roman, avoir aussi des typographies Ă  chasse fixe ou lĂ©gĂšrement fantaisie, l’ensemble de polices Kurinto est un bon choix qui offre en prime une bonne cohĂ©rence entre les diverses polices. Elles sont sous licence SIL.

DĂ©clinaison des noms des polices Kurinto permettant de voir leurs chasses respectives

Les textes et documents qui ont servi Ă  alimenter cette dĂ©pĂȘche

Les rĂ©fĂ©rences sont donnĂ©es Ă  peu prĂšs dans leur ordre d’apparition dans le texte. Ils sont tous accessibles en ligne et, de prĂ©fĂ©rence, en français. Volontairement, il y a un minimum de rĂ©fĂ©rences Ă  WikipĂ©dia. Ce n’est pas tout Ă  fait exhaustif, mais ça vous fera dĂ©jĂ  pas mal de lecture. Par exemple, je n’ai pas citĂ© le blog de StĂ©phane Bortzmeyer qui m’a bien servi Ă  dĂ©fricher le terrain.

Les formats matériels

  • Sur les rouleaux notamment leur rangement. Le site Rotulus est consacrĂ© aux rouleaux mĂ©diĂ©vaux.
  • Guide pratique du compositeur d’imprimerie, ThĂ©otiste LefĂšvre, un guide considĂ©rĂ© longtemps comme une, si pas LA, rĂ©fĂ©rence en matiĂšre de typographie et d’imprimerie. Paru en 1855, il fera l’objet de multiples Ă©ditions, les derniĂšres en 2000. Aujourd’hui encore, ses pages sur la typographie peuvent servir de rĂ©fĂ©rences. ThĂ©otiste LefĂšvre Ă©tait le fils d’un apprenti compositeur. Il commencera comme ouvrier en imprimerie pour devenir une figure clĂ© du secteur. Sa fille deviendra correctrice. La version du guide donnĂ©e en tĂ©lĂ©chargement sur le site archive.org est d’assez mauvaise qualitĂ©. De toute façon, avec le texte brut ou la piĂštre qualitĂ© de la reconnaissance des caractĂšres on perd absolument tout ce qui fait l’intĂ©rĂȘt du livre qui donne beaucoup d’exemples.
  • Sur les formats A. Le site donne les dimensions des feuilles de papier en centimĂštres et en pixels.

Les formats numériques (texte et archivage)

La police

Postambule

La prochaine dĂ©pĂȘche de la sĂ©rie devrait ĂȘtre moins longue (pas difficile) et portera sur le code avant Unicode. Elle parlera donc aussi de football. Comme toujours, vos suggestions sont apprĂ©ciĂ©es.


  1. MOLINIER A. « Les manuscrits et les miniatures Â», BnF Gallica: Librairie Hachette, 1892. Disponible sur : BnF Gallica en PDF ou en texte brut. â†©

  2. L’exemple est reproduit Ă  partir du petit guide de Charles-Lucien Huard La Typographie↩

  3. Pour rappel, un RFC (Request For Comments) est un document qui dĂ©finit les normes techniques sur les lesquelles s’appuient le rĂ©seau Internet↩

  4. ANDRÉ Jacques, « CaractĂšres, codage et normalization. De Chappe Ă  Unicode Â», Document numĂ©rique, 2002/3-4 (Vol. 6), p. 13-49. DOI : 10.3166/dn.6.3-4.13-49.↩

  5. Les formats de texte, archives. â†©

  6. Wiki de LibreOffice↩

  7. À noter qu’OpenOffice, compte tenu de son absence d’évolution ne supporte pas la norme ODF 1.3↩

  8. Office Open XML – DĂ©finition↩

  9. Pour tout dire, mon gestionnaire d’archives Engrampa est incapable d’ouvrir un fichier .docx et l’explication du site, qui n’est pas un site officiel, me semble trĂšs touffue. â†©

  10. LittĂ©ralement : « set of macros to let you do many things Â».What is the difference between TeX and LaTeX? (en)↩

  11. Langage de balisage extensible (XML) 1.0, Recommandation du W3C, 10 fĂ©vrier 1998. â†©

Commentaires : voir le flux Atom ouvrir dans le navigateur

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

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

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

C'est ce que nous allons voir dans la suite de la dĂ©pĂȘche.

smart-drive

Sommaire

Préambule

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

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

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

S.M.A.R.T.

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

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

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

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

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

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

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

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

smartctl howto
smartctl configure self test
smartd howto

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

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

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

BADBLOCKS

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

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

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

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

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

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

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

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

BADBLOCKS2

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

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

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

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

En pratique

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

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

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

# blockdev --getbsz /dev/sdc

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

On peut vĂ©rifier son activation par smartctl :

# smartctl -i /dev/sdc

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

# smartctl -a /dev/sdc

Noter le nombre de rĂ©allocations faites et prĂ©vues :

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

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

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

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

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

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

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

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

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

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

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

# smartctl -H /dev/sda

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

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

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

Commentaires : voir le flux Atom ouvrir dans le navigateur

Sailfish OS, quoi de neuf en 2024 depuis octobre 2022 ?

Sailfish OS est un systÚme d'exploitation basé sur le noyau Linux et développé par la société finlandaise Jolla. Il vise surtout le marché des appareils mobiles (smartphones, tablettes).

Dans la suite de la dĂ©pĂȘche, vous dĂ©couvrirez les derniĂšres nouvelles concernant Jolla et Sailfish OS.

Sommaire

Introduction

AprĂšs une pĂ©riode turbulente, Jolla est enfin prĂȘte Ă  attaquer cette nouvelle annĂ©e sereinement. En attendant les rĂ©percussions de cette nouvelle Ăšre, petit tour d'horizon des derniĂšres nouveautĂ©s dans Sailfish OS depuis la dĂ©pĂȘche d'octobre 2022 et des annonces survenues lors du Jolla Love Day 2.

BasĂ©e sur la distribution GNU/Linux MeeGo, initialement dĂ©veloppĂ©e par Nokia et Intel, Sailfish a le principal avantage de fournir une couche supplĂ©mentaire nommĂ©e AppSupport basĂ©e sur Android AOSP. AppSupport s'exĂ©cute dans un container LXC et permet d'installer des applications Android, compensant ainsi l'absence de certaines applications ou services natifs. Cela positionne Sailfish comme une rĂ©elle alternative Ă  Android, sans pour autant ĂȘtre handicapĂ© par le peu d'applications natives.

Pour la petite histoire, en 2011, Nokia opÚre un choix stratégique consistant à passer à Windows Phone pour tous ses modÚles. Cela a abouti au démantÚlement de la division en charge de MeeGo et du Nokia N9, qui était aussi à l'origine du Nokia N900 sous Maemo.
En raison de ces turbulences, plusieurs employĂ©s dĂ©cident de fonder Jolla afin de continuer le dĂ©veloppement de MeeGo et de concevoir leur propre matĂ©riel. En 2013, leur premier modĂšle — le Jolla 1 — est dĂ©voilĂ© et sera maintenu jusqu'en septembre 2020.

Par la suite, la sociĂ©tĂ© Jolla a dĂ©veloppĂ© une tablette mais pour diverses raisons, notamment de fabrication, sa commercialisation a dĂ» ĂȘtre arrĂȘtĂ©e et seule une partie des commandes a Ă©tĂ© livrĂ©e. Enfin, il y a eu une nouvelle tentative pour un second smartphone dĂ©diĂ© aux dĂ©veloppeurs dont nous parlerons dans la suite de cette dĂ©pĂȘche.

C'est aprÚs cet échec, que Jolla a décidé de se concentrer sur le systÚme d'exploitation en s'appuyant entre autres sur le programme «Sony Open Devices». La premiÚre version du programme Sailfish X est publiée en 2017 pour le Xperia X.

Il y a eu par la suite le Xperia XA2 (32bits), toujours maintenu, puis le Xperia 10 II et enfin le 10 III (64bits).

Nouveautés depuis Sailfish OS 4.4

Chaque nouvelle version apporte sa grosse nouveauté. L'occasion aussi de stabiliser l'OS et mettre à niveau les différentes dépendances. Toutes les modifications sont listées dans les notes de version de chaque mise à jour.

Écran de verrouillage

Version 4.5 - Struven Ketju

Cette mise à jour sortie le 09 février 2023 est nommée en l'honneur de l'arc géodésique de Struve.
Struven Ketju
Elle apporte la mise à niveau d'Android vers la version 11, tout comme diverses contributions pour stabiliser et améliorer l'expérience utilisateur tant au niveau d'Android qu'au niveau de Sailfish OS.
Dans les principales améliorations, notons :

  • une meilleure intĂ©gration d'Android au sein de Sailfish OS ;
  • une connectivitĂ© (Wi-Fi, rĂ©seau mobile) plus stable ;
  • une amĂ©lioration lorsque l'utilisateur active le Bluetooth et cherche de nouveaux appareils ;
  • ou encore la possibilitĂ© d'utiliser une phrase de passe. PrĂ©cisions de taille, cela sert Ă  dĂ©chiffrer la partition, dĂ©verrouiller le systĂšme ou encore Ă  obtenir les droits root lorsque c'est nĂ©cessaire.

Cette mise à jour est aussi l'occasion d'ouvrir l'accÚs à plusieurs API. Comme aux bibliothÚques QtLocation, BluezQt ou encore Sailfish.media. Cette derniÚre permettant d'intégrer le lecteur audio dans une application. Voir la liste de toutes les nouvelles API dans la note de version struven ketju 4.5.0-16 pour l'énumération complÚte.

Autre nouveautĂ© apportĂ©e, cette fois-ci par dcaliste : en plus de la vue « Ă  la semaine Â» l'application calendrier offre une vue « au mois Â» ainsi qu'une autre vue « au jour Â». dcaliste en a aussi profitĂ© pour amĂ©liorer la synchronisation avec les divers comptes en lignes.
Calendrier
Dernier point, l'ajout d'une option native arrĂȘtant la charge pour rĂ©duire l'impact sur la batterie.

Au fil de l'année, plusieurs mises à jour mineures ont été déployées afin de corriger divers bugs introduit par la 4.5.0.16.
La 4.5.0.19 publiée le 23 mars 2023 apporte la gestion de CLAT à ConnMan, permettant d'utiliser les données mobiles sur les réseaux IPv6.

En mars 2024 est publiée une mise à jour mineure modifiant les conditions générales d'utilisation. Ceci afin de marquer le changement de propriétaire et donc le renouveau de Sailfish.

Version 4.6 - Sauna

À l'occasion du Jolla Love Day 2, la version 4.6.0.11 a Ă©tĂ© publiĂ©e pour les utilisateurs aguerris ayant activĂ© le mode « Early Access Â». La version dĂ©finitive sera rendue publique lorsque les bugs dĂ©couverts durant la seconde phase de test seront corrigĂ©s.

Parmi les principales nouveautés, l'apport de la 5G pour le Sony Xperia X10 III. Le précédent modÚle, en l'occurrence le X10 II en étant dépourvu, il n'y a pour l'instant qu'un seul appareil compatible. Précision de taille, l'apport de la 5G est intimement lié au matériel malgré l'adaptation de ConnMann et oFono pour gérer la 5G.

Autre changement de taille, le partage de connexion par Bluetooth est désormais implémenté.

À nouveau, calendrier est l'une des principales applications Ă  recevoir une nouvelle fonctionnalitĂ© l'amĂ©liorant grandement avec la possibilitĂ© de rechercher des Ă©vĂ©nements.

Le 06 juin, la version 4.6.0.13 a Ă©tĂ© dĂ©ployĂ©e aux abonnĂ©s « Early Access Â» et corrige certains bugs introduits prĂ©cĂ©demment.

Nouveaux modĂšles pris en charge

De nombreuses rumeurs mentionnaient la prise en compte de nouveaux appareils. En suivant divers dépÎt Github, il a été possible de déduire quel était le futur appareil Sony géré par Jolla. Le 18 avril, la lettre d'information met enfin un terme aux diverses spéculations et confirme le portage de Sailfish sur les Sony X10 IV et Sony X10 V. D'autres portages toutefois non-officiels sont en cours de développement, comme pour le Fairphone 5.

Suite au Jolla Love Day 2, un nouvel appareil officiel limitĂ© Ă  1 000 unitĂ©s est annoncĂ©. À savoir le Jolla Community Phone aussi nommĂ© Jolla C2 et dĂ©veloppĂ© en collaboration avec le constructeur turc Reeder.

Pour rappel, le premier appareil dĂ©diĂ© Ă  la communautĂ© Ă©tait le Jolla C. Ce modĂšle a Ă©tĂ© dĂ©veloppĂ© sur la base du Intex Aquafish du constructeur indien Intex Technologies. D'ailleurs il Ă©tait relativement facile, pour ceux et celles qui n'avaient pu obtenir le Jolla C de convertir l'Intex Aquafish en Jolla C. Il en reste encore des traces dans le forum. Le Jolla C et l'IntexAquafish « as a Jolla C Â» sont encore maintenus, mais la version 4.6 sera la derniĂšre mise Ă  jour. Le Jolla C Ă©tant sorti en 2016, et l'Intex Aquafish quelques mois plus tard, nous pouvons considĂ©rer que c'est une bonne durĂ©e de maintenance et Ă©quivalente Ă  celle du Jolla 1.

Contributions communautaires

Sailfish OS n'est certes pas entiĂšrement libre, cela n'empĂȘche pas d'avoir une communautĂ© d'utilisateurs active contribuant aux parties libres de la distribution. Ce faisant, Sailfish OS fait ainsi partie des solutions alternatives aux deux autres grands systĂšmes du marchĂ© que sont iOS et Android.

Historiquement, pour le navigateur natif, Sailfish OS a toujours utilisé Gecko comme moteur de rendu, en utilisant l'adaptation Qt (QtMozEmbed) pour ce dernier. Maintenir cette adaptation pour un logiciel tel que Gecko est une tùche ardue et chronophage, raison pour laquelle Sailfish Browser utilise encore la version ESR 78. Un ancien employé de Jolla, flypig, a pris en main la mise à niveau du moteur de rendu à la version Gecko 91.
Ce travail titanesque est entiĂšrement documentĂ© dans un journal. La lecture en vaut d'ailleurs la chandelle !

En ce qui concerne oFono, un autre contributeur de Sailfish, piggz, a entrepris de gommer les divergences avec la version maintenue par Jolla. piggz est également connu pour ses portages, principalement sur le PinePhone. Suite à l'initiative de flypig de documenter son projet, l'avancement de son projet est documenté dans un journal.

La nouvelle n'a pas encore eu d'énormes répercussions, mais une équipe d'utilisateurs a entrepris de porter Flutter sur Sailfish OS. Pour l'instant, seule une application est disponible.

Les plus téméraires d'entre vous pourront également installer le gestionnaire de paquets nix sur SailfishOS. Le développeur qui s'est lancé dans cette aventure a eu droit à un bel entretien dans le Community News de décembre 2023.

Entre le 26 et 30 septembre 2024 se tiendra le second Hackathon organisé par la communauté d'utilisateur. L'événement étant en cours d'organisation les informations suivront prochainement.

Les applications natives

Il est Ă©vident que la liste des applications natives est moins fournie que les OS concurrents dominant le marchĂ©. Pour autant, l'essentiel est disponible ! Chaque 2 semaines lors du « Community News Â», les derniĂšres applications actualisĂ©es sont mis en Ă©vidence dans cette lettre de diffusion. Par exemple — et outre le calendrier dĂ©jĂ  Ă©voquĂ© — voici de maniĂšre non exhaustive quelques applications tierces natives :

Grille d'application

  • Pure Maps : associĂ©e avec OSMScoutServer, offre un systĂšme de navigation hors-ligne performant. Certes, il n'y a pas toutes les informations que l'on peut trouver dans les applications concurrentes, mais son usage reste trĂšs confortable ;
  • Barcode, anciennement Codereader, un lecteur de codes-barres et de codes QR. Disponible dans Openrepos et Chum. Parfait pour rĂ©cupĂ©rer les codes QR des timbres postes en lettre suivie. A noter Ă©galement que l'auteur de Barcode a publiĂ© une application pour utiliser une Yubikey disponible dans Chum.
  • Paketti : une application de suivi de courrier et de colis ;
  • Chum : magasin d'applications fonctionnant dans les mĂȘmes principes que F-Droid. Il est possible d'installer aisĂ©ment via https://chumrpm.netlify.app/. Voir aussi cet article de blog du Nico's blog au sujet de Chum ;
  • ownKeepass : application capable d'emporter avec vous votre fichier .kdbx Application et offre toutes les fonctions basiques prĂ©sentes dans KeepassX. Malheureusement le dĂ©veloppement d'ownKeepass s'est arrĂȘtĂ©, ce qui n'empĂȘche pas qu'un jour le dĂ©veloppement soit repris par quelqu'un d'autre :

ownKeepass

Si l'utilisateur ne trouve pas son bonheur, grĂące au Android AppSupport il sera toujours possible d'installer Fdroid et Aurora Store. A noter aussi que microG peut Ă©galement ĂȘtre installĂ© assez facilement, notamment pour permettre l'usage de certaines applications bancaires.

Ainsi, le magasin d'applications fourni par Jolla permet de trouver le magasin F-droid ou encore Aptoide. C'est depuis F-droid qu'il sera possible d'installer Aurora Store.

Rappelons que parmi les limitations, le Bluetooth n'est opérationnel que pour le son dans les applications Android. A ce jour, seuls certains modÚles de montres assez spécifiques sont capables de communiquer avec le smartphone grùce à l'application native Amazfish développé par piggz, toutes les autres montres ne pouvant pas se connecter en Bluetooth au smartphone en raison de cette limitation du Bluetooth.
Pour en savoir plus, vous pourrez lire cet article du Nico's blog. Il en est exactement de mĂȘme pour le NFC. ImplĂ©menter une interface entre Android et Sailfish requiert malheureusement Ă©normĂ©ment de ressources, mais nous pourrions espĂ©rer qu'un jour cela finisse par arriver. Principalement depuis que l'industrie automobile s'intĂ©resse Ă  la prise en charge d'Android.

Nouveau modĂšle Ă©conomique pour Sailfish OS

Suite Ă  l'Ă©chec de la tablette Jolla et du modĂšle « commerce entre entreprises et particuliers Â», une politique de licence rĂ©gionale a Ă©tĂ© mise en place dĂšs 2017 avec un partenariat dans plusieurs pays. Cela s'est concrĂ©tisĂ© avec l'Intex Aquafish en Inde, qui a servi de base pour le Jolla C. En AmĂ©rique Latine, un accord de licence a Ă©tĂ© signĂ© avec l'entreprise bolivienne Jala sous la marque Accione et enfin avec Rostelcom en Russie, certainement lors de son entrĂ©e au capital de Jolla.

Pour des raisons douaniĂšres et administratives, Jolla ne commercialisait ses licences qu'au sein de l'Union europĂ©enne ainsi que dans l'Association europĂ©enne de libre-Ă©change (AELE). Suite au « Brexit Â», la commercialisation avec la Grande-Bretagne n'a repris qu'en 2021.

Lors du Jolla Love Day 2, un nouveau modĂšle Ă©conomique a Ă©tĂ© prĂ©sentĂ©. Les appareils apparus avant les Sony X10 IV et Sony X10 V sont livrĂ©s avec une licence perpĂ©tuelle. Les nouveaux modĂšles eux sont utilisables avec un abonnement mensuel, voire annuel. La documentation sur les licences sera mise Ă  jour lors de la commercialisation des licences pour les X10 IV, V et Jolla C2. Quelle que soit la licence payante (perpĂ©tuelle pour X10 II et X10 III ou Ă  abonnement pour le X10 IV et X10 V et aussi le J2), les services fournis demeurent les mĂȘmes :

  • Les mises Ă  jour logiciel OTA ;
  • L'accĂšs au support client tant que l'appareil est garanti ;
  • La possibilitĂ© d'installer les extensions suivantes :
    • Android AppSupport ;
    • Support Microsoft Exchange ;
    • Saisie prĂ©dictive.

Petite particularité du Jolla Community 2, l'abonnement valide une année est inclus dans le prix d'achat.

En dehors du Jolla Community 2, oĂč Sailfish OS est flashĂ© par dĂ©faut, tous les autres modĂšles nĂ©cessitent d'ĂȘtre manipulĂ© par l'utilisateur pour changer l'OS. Les instructions en anglais sont fournies pour tous les modĂšles et rĂ©digĂ©es pour ĂȘtre exĂ©cutĂ©es depuis Linux, Mac OS ou encore Windows.

Jolla et le logiciel libre

Jolla a toujours Ă©tĂ© ouvert Ă  l'idĂ©e de libĂ©rer les sources, il est dommage que depuis 2013 certaines parties comme le compositeur Lipstick restent encore propriĂ©taires. Un bref instant, une vague de projets a Ă©tĂ© libĂ©rĂ©. Malheureusement, cela a Ă©tĂ© de courte durĂ©e. Cela n'empĂȘche pas que Jolla reste un contributeur au logiciel libre et qu'il a libĂ©rĂ© les sources de certaines applications comme le navigateur ou encore le lecteur de document. La grosse partie du backend est lui libre. Avec un changement radical dans leur modĂšle Ă©conomique, les choses pourraient changer.

Récemment, quelques nouvelles bibliothÚques ont été développées avec une licence open-source, comme une exportation vers le QML de l'interface MPRIS.

Autre point intéressant à noter, Jolla a grandement contribué à l'essor de Linux sur les téléphones portables avec le développement du projet libhybris.

Voici une liste non exhaustive des projets auxquels Jolla contribue ou a libéré les sources :

  • amber-web-authorization qui permet de faire de l’authentification OAuth en QML ;
  • sailfish-secrets qui est un projet ambitieux, permettant de chiffrer / dĂ©chiffrer depuis le QML en choisissant son backend (principalement OpenSSL, mais aussi GnuPG), mais qui permet aussi de stocker des informations chiffrĂ©es sur le tĂ©lĂ©phone, un peu comme un kwallet ;
  • messagingframework, hĂ©ritĂ© de l’ùre Nokia et hĂ©bergĂ© par le projet Qt. C’est un quadriciel de gestion des courriels ;
  • KCalendarCore, un « framework Â» KDE pour la gestion du calendrier.

Et bien sĂ»r tout l’hĂ©ritage de MeeGo, directement maintenu par Jolla, Ă©galement utilisĂ© par d’autres projets comme LuneOS ou encore AsteroidOS :

Notons aussi que Jolla participe réguliÚrement à FOSDEM. Si vous souhaitez lire à ce sujet : https://www.ncartron.org/jolla-and-sailfish-os-at-fosdem-23.html

Restructuration

Cette restructuration s'est opérée dans le cadre du droit finlandais. L'objectif était notamment de restructurer le capital et faire sortir l'actionnaire russe Rostelcom. Pour ce faire, et comme vraisemblablement les négociations amiables n'ont pas dû aboutir, les dirigeants de Jolla ont demandé à la justice de placer l'entreprise dans le cadre d'une procédure que nous pourrions comparer en droit français à la procédure de sauvegarde.

Cette procĂ©dure a fini par aboutir et — selon notre comprĂ©hension — cela s'est traduit par la crĂ©ation d'une nouvelle entitĂ© : l'entreprise Jollyboys Ltd.

Jollyboys a repris ainsi tous les actifs de Jolla, y compris la marque, les noms de domaines et bien entendu Sailfish OS.
Nous comprenons, selon les planches qui furent publiées pendant le Jolla Love Day 2, que les entreprises Jolla/Jollyboys Ltd et Seafarix ont été rachetées par le personnel dirigeant de l'entreprise Jolla.
Chaque technologie est séparée dans une structure juridique différente :

  • Seafarix pour ce qui concerne l'automobile ;
  • Jollyboys pour Sailfish OS ;
  • VenhoAI pour les produits relatifs Ă  l'IA.

La réorganisation de l'entreprise Jolla a suscité l'objet de beaucoup de discussions sur le forum.
Nous comprenons également que la marque Jolla et le nom de domaine jolla.com sont la propriété de la société Jollyboys.

Conclusion

Lors du Jolla Love Day 2, une feuille de route pour la version 5 a été dévoilée.
Une séparation de Sailfish est planifiée avec une partie nommée Sailfish Core et dévouée à l'embarqué et une autre conçue pour les téléphones portables, tablettes et autres appareils.

À voir ce que donnera le nouveau modĂšle de financement, mais il est rĂ©jouissant de voir du changement. L'annĂ©e prochaine nous confirmera si cette nouvelle voie est la bonne. Le dĂ©veloppement logiciel Ă©tant coĂ»teux, offrir la possibilitĂ© d'y contribuer financiĂšrement en tant qu'utilisateur donne plus de garantie de survie et de dĂ©veloppement.

Si vous souhaitez suivre Sailfish, des comptes rendu des réunions de la communauté organisés par Jolla sont également accessibles. Il existe un blog officiel et une lettre de diffusion qui parait toutes les deux semaines et dont le numéro du 6 juin est précisément consacré à la 4.6 - Sauna.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Systemd v256

Systemd est une suite logicielle primordiale du monde GNU/Linux. Elle peut ĂȘtre prĂ©sente du dĂ©but Ă  la fin de l'allumage du systĂšme, permettant de gĂ©rer de maniĂšre fine la vie des autres services.

Systemd est sorti en 2010, en a énervé certains notamment en raison de l'approche audacieuse et intégrée, et a séduit une grande majorité de systÚmes GNU/Linux à partir de 2015. Aujourd'hui il est possible de voir Systemd dans la plupart des grandes distributions, gérant les arcanes du systÚme en s'appuyant sur les mécanismes noyau de cgroup, dbus et namespace notamment.

La version 256 succĂšde Ă  la v255 sortie en dĂ©cembre 2023, oĂč vous trouverez encore d'Ă©normes Ă©volutions et encore plus d'intĂ©gration afin de proposer un Ă©cosystĂšme cohĂ©rent, le plus automatique possible, compatible avec chacun des autres systĂšmes, et cherchant Ă  offrir de la sĂ©curitĂ© par dĂ©faut associĂ© Ă  une granularitĂ© de configuration et d'isolation.

Il peut ĂȘtre intĂ©ressant de remarquer qu'au moins, Ă  ma connaissance, deux dĂ©veloppeurs fortement actifs, sont des salariĂ©s de Microsoft, travaillant autant sur systemd qu'Ă  la normalisation d'un certain standard Linux par le truchement du groupe UAPI. Ce sont Lennart Poettering et Luca Boccassi, mais peut ĂȘtre en connaissez vous d'autres ?

Je vous invite Ă©galement Ă  vous pencher sur casync et mkosi (maintenu par Daan De Meyer, de chez Meta), deux nouvelles marottes de ces dĂ©veloppeurs fous mais qui semblent avoir rĂ©ussi le pari, qu'en pensez-vous ?

NdM : La dĂ©pĂȘche qui suit est une traduction en français des nouveautĂ©s de la version 256.

Sommaire

Une nouvelle version de systemd v256 est sortie

Modifications depuis la version précédente v255

Annonces de futures suppressions de fonctionnalités et de modifications incompatibles

  • La prise en charge du vidage automatique des caches de la base de donnĂ©es des utilisateurs/groupes nscd sera abandonnĂ©e dans une prochaine version.

  • La prise en charge du groupe de contrĂŽle cgroupv1 (hiĂ©rarchies « hĂ©ritĂ©es Â» et « hybrides Â») est dĂ©sormais considĂ©rĂ©e comme obsolĂšte, et systemd refusera par dĂ©faut de dĂ©marrer sous celui-ci. Pour rĂ©activer de force la prise en charge de cgroup v1, SYSTEMD_CGROUP_ENABLE_LEGACY_FORCE=1 doit ĂȘtre dĂ©fini sur la ligne de commande du noyau. L'option Meson 'default-hierarchy=' est Ă©galement obsolĂšte, c'est-Ă -dire que seul le groupe cgroup v2 (hiĂ©rarchie unifiĂ©e) peut ĂȘtre sĂ©lectionnĂ© comme valeur par dĂ©faut au moment de la compilation.

  • La prise en charge des scripts de service System V est Ă  prĂ©sent obsolĂšte et sera supprimĂ© dans une prochaine version. Veuillez vous assurer de mettre Ă  jour votre logiciel maintenant pour inclure un fichier d'unitĂ© systemd natif au lieu d'un hĂ©ritage de scripts System V, afin conserver la compatibilitĂ© avec les futures versions de systemd.

  • La prise en charge de la variable EFI SystemdOptions est Ă  prĂ©sent obsolĂšte. bootctl systemd-efi-options Ă©mettra un avertissement lorsqu'il sera utilisĂ©. Il semble que cette fonctionnalitĂ© soit peu utilisĂ©e et qu'il soit prĂ©fĂ©rable d'utiliser des approches alternatives comme les informations d'identification et les contextes. Le plan est d'abandonner complĂštement le support ultĂ©rieurement, mais cela pourrait ĂȘtre rĂ©examinĂ© en fonction des commentaires des utilisateurs.

  • Le commutateur --expand-environment= de systemd-run, qui est actuellement dĂ©sactivĂ© par dĂ©faut lorsqu'il est combinĂ© avec --scope, sera modifiĂ© dans une prochaine version pour ĂȘtre activĂ© par dĂ©faut.

  • Auparavant, systemd-networkd ne supprimait explicitement aucun ID de VLAN de pont attribuĂ© sur le maĂźtre de pont et les ports. Depuis la version 256, si un fichier .network pour une interface possĂšde au moins un paramĂštre valide dans la section [BridgeVLAN], alors tous les ID de VLAN attribuĂ©s sur l'interface qui ne sont pas configurĂ©s dans le fichier .network sont supprimĂ©s.

  • Le paramĂštre IPForward= dans le fichier .network est obsolĂšte et remplacĂ© par les paramĂštres IPv4Forwarding= et IPv6Forwarding=. Ces nouveaux paramĂštres sont pris en charge Ă  la fois dans le fichier .network et dans networkd.conf. S'ils sont spĂ©cifiĂ©s dans un fichier .network, ils contrĂŽlent les paramĂštres correspondants par lien. S'ils sont spĂ©cifiĂ©s dans networkd.conf, ils contrĂŽlent les paramĂštres globaux correspondants. Notez qu'auparavant IPv6SendRA= et IPMasquerade= impliquaient IPForward=, mais maintenant ils impliquent les nouveaux paramĂštres par lien. L'un des moyens les plus simples de migrer les configurations, qui fonctionnait comme un routeur avec la version prĂ©cĂ©dente, consiste Ă  activer Ă  la fois IPv4Forwarding= et IPv6Forwarding= dans networkd.conf. Voir systemd.network(5) et networkd.conf(5) pour plus de dĂ©tails.

  • systemd-gpt-auto-generator arrĂȘtera de gĂ©nĂ©rer des unitĂ©s pour les partitions ESP ou XBOOTLDR s'il trouve des entrĂ©es de montage pour ou en dessous des hiĂ©rarchies /boot/ ou /efi/ dans /etc/fstab. Cela permet d'Ă©viter que le gĂ©nĂ©rateur n'interfĂšre avec les systĂšmes dans lesquels l'ESP est explicitement configurĂ© pour ĂȘtre montĂ© sur un chemin, par exemple /boot/efi/ (ce type de configuration est obsolĂšte, mais reste courant).

  • Le comportement de systemd-sleep et systemd-homed a Ă©tĂ© mis Ă  jour pour geler les sessions utilisateur lors de l'entrĂ©e dans les diffĂ©rents modes de veille ou lors du verrouillage d'une zone d'accueil gĂ©rĂ©e par homed. Ceci est connu pour causer des problĂšmes avec les pilotes propriĂ©taires NVIDIA. Les conditionneurs des pilotes propriĂ©taires NVIDIA peuvent souhaiter ajouter des fichiers de configuration dĂ©roulants qui dĂ©finissent SYSTEMD_SLEEP_FREEZE_USER_SESSION=false pour systemd-suspend.service et les services associĂ©s, et SYSTEMD_HOME_LOCK_FREEZE_SESSION=false pour systemd-homed.service.

  • systemd-tmpfiles et systemd-sysusers, lorsqu'ils reçoivent un chemin de fichier de configuration relatif (avec au moins un sĂ©parateur de rĂ©pertoire /), ouvriront le fichier directement, au lieu de rechercher le chemin partiel donnĂ© dans les emplacements standard. L'ancien mode n'Ă©tait pas utile car la configuration tmpfiles.d/ et sysusers.d/ a une structure plate sans sous-rĂ©pertoires sous les emplacements standard et ce changement facilite le travail avec des fichiers locaux avec ces outils.

  • systemd-tmpfiles applique dĂ©sormais correctement la configuration imbriquĂ©e aux strophes (stanzas) « R Â» et « D Â». Par exemple, avec la combinaison de « R /foo Â» et « x /foo/bar Â», /foo/bar sera dĂ©sormais exclu de la suppression.

  • systemd.crash_reboot et les paramĂštres associĂ©s sont obsolĂštes au profit de systemd.crash_action=.

Modifications générales et nouvelles fonctionnalités v256

  • Divers programmes tenteront dĂ©sormais de charger le fichier de configuration principal Ă  partir d'emplacements situĂ©s sous /usr/lib/, /usr/local/lib/ et /run/, et pas seulement sous /etc/. Par exemple, systemd-logind recherchera /etc/systemd/logind.conf, /run/systemd/logind.conf, /usr/local/lib/systemd/logind.conf et /usr/lib/systemd/logind.conf et utilise le premier fichier trouvĂ©. Cela signifie que la logique de recherche pour le fichier de configuration principal et pour les drop-ins est dĂ©sormais la mĂȘme.

    • De mĂȘme, l'installation du noyau recherchera les fichiers de configuration dans /usr/lib/kernel/ et dans les autres emplacements de recherche, et prend dĂ©sormais Ă©galement en charge les drop-ins.
    • systemd-udevd prend dĂ©sormais en charge les drop-ins pour udev.conf.
  • Un nouveau binaire systemd-vpick a Ă©tĂ© ajoutĂ©. Il implĂ©mente le nouveau protocole vpick, dans lequel un rĂ©pertoire *.v/ peut contenir plusieurs fichiers dont les versions (suivant la spĂ©cification du format de version UAPI) sont intĂ©grĂ©es dans le nom du fichier. Les fichiers sont classĂ©s par version et la plus rĂ©cente est sĂ©lectionnĂ©e.

    • systemd-nspawn --image=/--directory=, systemd-dissect, systemd-portabled et les paramĂštres RootDirectory=, RootImage=, ExtensionImages= et ExtensionDirectories= pour les unitĂ©s prennent dĂ©sormais en charge le protocole vpick et permettent d'utiliser la derniĂšre version sĂ©lectionnĂ©e automatiquement si un rĂ©pertoire *.v/ est spĂ©cifiĂ© comme source.
  • Les informations d'identification du service chiffrĂ©es peuvent dĂ©sormais ĂȘtre rendues accessibles aux utilisateurs non privilĂ©giĂ©s. systemd-creds a obtenu de nouvelles options --user/ --uid= pour chiffrer/dĂ©chiffrer les informations d'identification d'un utilisateur spĂ©cifique.

  • Le nouvel outil de ligne de commande importctl pour tĂ©lĂ©charger, importer et exporter des images disque via systemd-importd est ajoutĂ© avec les verbes suivants : pull-tar, pull-raw, import-tar, import-raw, import-fs, export-tar, export-raw, list-transfers et cancel-transfer. Cette fonctionnalitĂ© Ă©tait auparavant disponible dans machinectl, oĂč elle Ă©tait utilisĂ©e exclusivement pour les images machine. Le nouveau importctl gĂ©nĂ©ralise cela pour les images de service sysext, confext et portables.

  • Les sources systemd peuvent dĂ©sormais ĂȘtre compilĂ©es proprement avec toutes les dĂ©prĂ©ciations d'OpenSSL 3.0 supprimĂ©es, y compris la logique du moteur OpenSSL dĂ©sactivĂ©e.

Sur la gestion des services

  • Un nouveau paramĂštre de gestionnaire systĂšme ProtectSystem= a Ă©tĂ© ajoutĂ©. C'est analogue au rĂ©glage de l'unitĂ©, mais s'applique Ă  l'ensemble du systĂšme. Il est activĂ© par dĂ©faut dans le fichier initrd.

    • Notez que cela signifie que le code exĂ©cutĂ© dans initrd ne peut pas ĂȘtre naĂŻvement attendu Ă  ce qu'il puisse Ă©crire dans /usr/ pendant le dĂ©marrage. Cela affecte dracut <= 101, lequel Ă©crit un crochet ("hooks") dans /lib/dracut/hooks/. src.
  • Un nouveau paramĂštre d'unitĂ© WantsMountsFor= a Ă©tĂ© ajoutĂ©. Il est analogue Ă  RequiresMountsFor=, mais crĂ©e une dĂ©pendance Wants= au lieu de Requires=. Cette nouvelle logique est dĂ©sormais utilisĂ©e Ă  divers endroits oĂč des montages ont Ă©tĂ© ajoutĂ©s en tant que dĂ©pendances pour d'autres paramĂštres (WorkingDirectory=-
, PrivateTmp=yes, lignes cryptsetup avec nofail).

  • Le nouveau paramĂštre d'unitĂ© MemoryZSwapWriteback= peut ĂȘtre utilisĂ© pour contrĂŽler le nouveau bouton de groupe de contrĂŽle memory.zswap.writeback ajoutĂ© dans le noyau 6.8.

  • Le gestionnaire a acquis une mĂ©thode D-Bus org.freedesktop.systemd1.StartAuxiliaryScope() pour dĂ©lĂ©guer certains processus d'un service vers une nouvelle portĂ©e.

    • Cette nouvelle Ă©tendue restera en cours d'exĂ©cution, mĂȘme lorsque l'unitĂ© de service d'origine est redĂ©marrĂ©e ou arrĂȘtĂ©e. Cela permet Ă  une unitĂ© de service de diviser certains processus de travail qui doivent continuer Ă  s'exĂ©cuter. Les propriĂ©tĂ©s du groupe de contrĂŽle de la nouvelle Ă©tendue sont copiĂ©es Ă  partir de l'unitĂ© d'origine, de sorte que diverses limites sont conservĂ©es.
  • Les unitĂ©s exposent dĂ©sormais les propriĂ©tĂ©s EffectiveMemoryMax=, EffectiveMemoryHigh= et EffectiveTasksMax=,

    • qui signalent la limite la plus stricte dont systemd a connaissance pour l'unitĂ© donnĂ©e.
  • Un nouveau spĂ©cificateur de fichier d'unitĂ© %D

    • correspondra Ă  $XDG_DATA_HOME pour les services utilisateur
    • ou correspondra Ă  /usr/share/ pour les services systĂšme
  • AllowedCPUs= prend dĂ©sormais en charge l'extension du spĂ©cificateur.

  • Le paramĂštre What= dans les unitĂ©s .mount et .swap accepte dĂ©sormais les identifiants de style fstab, par exemple UUID=
 ou LABEL=
.

  • RestrictNetworkInterfaces= prend dĂ©sormais en charge les noms d'interface rĂ©seau alternatifs.

  • PAMName= implique dĂ©sormais SetLoginEnvironment=yes.

  • systemd.firstboot=no peut ĂȘtre utilisĂ© sur la ligne de commande du noyau pour dĂ©sactiver les requĂȘtes interactives,

    • mais autoriser d'autres configurations de premier dĂ©marrage en fonction des informations d'identification.
  • Le nom d'hĂŽte du systĂšme peut ĂȘtre configurĂ© via les informations d'identification systĂšme systemd.hostname.

  • Le binaire systemd ne chargera plus en chaĂźne le binaire telinit de sysvinit lorsqu'il est appelĂ© sous le nom init/telinit sur un systĂšme qui n'est pas dĂ©marrĂ© avec systemd.

    • Cela a dĂ©jĂ  Ă©tĂ© pris en charge pour garantir qu'une distribution sur laquelle les deux systĂšmes d'initialisation sont installĂ©s peut raisonnablement passer de l'un Ă  l'autre via un simple redĂ©marrage. Les distributions ont apparemment perdu tout intĂ©rĂȘt pour cela, et la fonctionnalitĂ© n'a pas Ă©tĂ© prise en charge sur la distribution principale Ă  laquelle elle Ă©tait encore destinĂ©e depuis longtemps, et a donc Ă©tĂ© supprimĂ©e maintenant.
  • Un nouveau concept appelĂ© capsules a Ă©tĂ© introduit.

    • Les capsules enveloppent des gestionnaires de services supplĂ©mentaires par utilisateur, dont les utilisateurs sont transitoires et ne sont dĂ©finis que tant que le gestionnaire de services est en cours d'exĂ©cution.
    • (Ceci est implĂ©mentĂ© via DynamicUser=1), permettant Ă  un gestionnaire d'utilisateurs d'ĂȘtre utilisĂ© pour gĂ©rer un groupe de processus sans avoir besoin de crĂ©er un compte utilisateur rĂ©el.
    • Ces gestionnaires de services fonctionnent avec les rĂ©pertoires personnels de /var/lib/capsules/<capsule-name>
      • et peuvent contenir des services rĂ©guliers et d'autres unitĂ©s.
    • Une capsule est dĂ©marrĂ©e via un simple systemctl start capsule@<name>.service.
    • Consultez la page de manuel capsule@.service(5) pour plus de dĂ©tails.
    • Divers outils systemd (y compris, et surtout, systemctl et systemd-run) ont Ă©tĂ© mis Ă  jour pour interagir avec les capsules via le nouveau commutateur --capsule=/-C.
  • Les unitĂ©s .socket ont obtenu un nouveau paramĂštre PassFileDescriptorsToExec=, prenant une valeur boolĂ©enne.

    • S'ils sont dĂ©finis sur true, les descripteurs de fichiers que l'unitĂ© de socket encapsule sont transmis Ă  ExecStartPost=, ExecStopPre=, ExecStopPost= en utilisant l'interface $LISTEN_FDS habituelle.
    • Cela peut ĂȘtre utilisĂ© pour effectuer des initialisations supplĂ©mentaires sur les sockets une fois qu'elles sont allouĂ©es. (Par exemple, pour y installer un programme eBPF supplĂ©mentaire).
  • Le paramĂštre .socket MaxConnectionsPerSource= (qui imposait jusqu'Ă  prĂ©sent une limite aux connexions simultanĂ©es par IP dans les unitĂ©s de socket Accept=yes),

    • a dĂ©sormais Ă©galement un effet sur les sockets AF_UNIX 
      • il limitera le nombre de connexions simultanĂ©es Ă  partir du mĂȘme UID source (tel que dĂ©terminĂ© via SO_PEERCRED).
    • Ceci est utile pour implĂ©menter les services IPC dans un simple mode Accept=yes.
  • Le gestionnaire de services maintiendra dĂ©sormais un compteur des cycles de redĂ©marrage logiciel effectuĂ©s par le systĂšme.

    • Il peut ĂȘtre interrogĂ© via les API D-Bus.
  • La logique d'exĂ©cution de systemd prend dĂ©sormais en charge la nouvelle API pidfd_spawn() introduite par la glibc 2.39,

    • qui nous permet d'invoquer un sous-processus dans un groupe de contrĂŽle cible et de rĂ©cupĂ©rer un pidfd en une seule opĂ©ration.
  • systemd/PID 1 enverra dĂ©sormais un message sd_notify() supplĂ©mentaire Ă  son VMM ou gestionnaire de conteneur superviseur signalant le nom d'hĂŽte sĂ©lectionnĂ© (X_SYSTEMD_HOSTNAME=) et l'ID de la machine (X_SYSTEMD_MACHINE_ID=) au dĂ©marrage.

    • De plus, le gestionnaire de services enverra des messages sd_notify() supplĂ©mentaires (X_SYSTEMD_UNIT_ACTIVE=) chaque fois qu'une unitĂ© cible est atteinte.
    • Cela peut ĂȘtre utilisĂ© par les VMM/gestionnaires de conteneurs pour planifier prĂ©cisĂ©ment l’accĂšs au systĂšme.
    • Par exemple, dĂšs qu'un systĂšme signale que ssh-access.target est atteint, un gestionnaire VMM/conteneur sait qu'il peut dĂ©sormais se connecter au systĂšme via SSH.
    • Enfin, un nouveau message sd_notify() (X_SYSTEMD_SIGNALS_LEVEL=2) est envoyĂ© au moment oĂč le PID 1 a terminĂ© avec succĂšs l'installation de ses diffĂ©rents gestionnaires de signaux de processus UNIX (c'est-Ă -dire le moment oĂč SIGRTMIN+4 envoyĂ© au PID 1 commencera Ă  avoir pour effet d'arrĂȘter proprement le systĂšme).
    • X_SYSTEMD_SHUTDOWN= est envoyĂ© peu de temps avant l'arrĂȘt du systĂšme et contient une chaĂźne identifiant le type d'arrĂȘt, c'est-Ă -dire poweroff, halt, reboot.
    • X_SYSTEMD_REBOOT_PARAMETER= est envoyĂ© en mĂȘme temps et porte la chaĂźne passĂ©e Ă  systemctl --reboot-argument= s'il y en avait une.
  • Les nouvelles propriĂ©tĂ©s D-Bus ExecMainHandoffTimestamp et ExecMainHandoffTimestampMonotonic sont dĂ©sormais publiĂ©es par unitĂ©s de services.

    • Cet horodatage est considĂ©rĂ© comme la toute derniĂšre opĂ©ration avant de transfĂ©rer le contrĂŽle aux binaires invoquĂ©s. Ces informations sont disponibles pour d'autres types d'unitĂ©s qui exĂ©cutent des processus (c'est-Ă -dire les unitĂ©s de montage, d'Ă©change, de socket), mais actuellement uniquement via systemd-analyze dump.
  • Un horodatage supplĂ©mentaire est dĂ©sormais pris par le gestionnaire de service lorsqu'une opĂ©ration d'arrĂȘt du systĂšme est lancĂ©e. Il peut ĂȘtre interrogĂ© via D-Bus pendant la phase d'arrĂȘt. Il est transmis lors des redĂ©marrages logiciels Ă  l'invocation suivante du gestionnaire de services, qui l'utilisera pour enregistrer le temps de « grisage Â» global de l'opĂ©ration de redĂ©marrage logiciel, c'est-Ă -dire l'heure Ă  laquelle l'arrĂȘt a commencĂ© jusqu'Ă  ce que le systĂšme soit Ă  nouveau complĂštement opĂ©rationnel.

  • systemctl status affichera dĂ©sormais l'ID d'invocation dans sa sortie habituelle, c'est-Ă -dire l'ID de 128 bits attribuĂ© de maniĂšre unique au cycle d'exĂ©cution actuel de l'unitĂ©.

    • L'ID est pris en charge depuis longtemps, mais il est dĂ©sormais affichĂ© de maniĂšre plus visible, car il s'agit d'un identifiant trĂšs utile pour un appel spĂ©cifique d'un service.
  • systemd gĂ©nĂšre dĂ©sormais une nouvelle chaĂźne taint unmerged-bin pour les systĂšmes qui ont /usr/bin/ et /usr/sbin/ sĂ©parĂ©s.

    • De nos jours, il est gĂ©nĂ©ralement recommandĂ© de faire de ce dernier un lien symbolique vers le premier.
  • Une nouvelle option de ligne de commande kernel systemd.crash_action= a Ă©tĂ© ajoutĂ©e qui configure ce qu'il faut faire aprĂšs le crash du gestionnaire systĂšme (PID 1).

    • Cela peut Ă©galement ĂȘtre configurĂ© via CrashAction= dans systemd.conf.
  • systemctl kill prend dĂ©sormais en charge --wait qui fera attendre la commande jusqu'Ă  ce que les services signalĂ©s se terminent.

Journalisation et autres gestions d'erreurs

  • systemd-journald peut dĂ©sormais transfĂ©rer les entrĂ©es de journal vers un socket (AF_INET, AF_INET6, AF_UNIX ou AF_VSOCK).

    • Le socket peut ĂȘtre spĂ©cifiĂ© dans journald.conf via une nouvelle option ForwardAddress= ou via les informations d'identification journald.forward_address.
    • Les enregistrements de journaux sont envoyĂ©s au format d'exportation du journal.
    • Un paramĂštre associĂ© MaxLevelSocket= a Ă©tĂ© ajoutĂ© pour contrĂŽler les niveaux de journalisation maximum pour les messages envoyĂ©s Ă  ce socket.
  • systemd-journald lit dĂ©sormais Ă©galement les informations d'identification de journal.storage lorsque cherche oĂč stocker les fichiers journaux.

  • systemd-vmspawn a obtenu une nouvelle option --forward-journal= pour transmettre les entrĂ©es de journal de la machine virtuelle Ă  l'hĂŽte.

    • Cela se fait via un socket AF_VSOCK, c'est-Ă -dire qu'il ne nĂ©cessite pas de mise en rĂ©seau dans l'invitĂ©.
  • journalctl a obtenu l'option -i comme raccourci pour --file=.

  • journalctl a gagnĂ© une nouvelle option -T/--exclude-identifier= pour filtrer certains identifiants syslog.

  • journalctl a gagnĂ© une nouvelle option --list-namespaces.

  • systemd-journal-remote accepte dĂ©sormais Ă©galement les sockets AF_VSOCK et AF_UNIX : il peut donc ĂȘtre utilisĂ© pour recevoir les entrĂ©es transmises par systemd-journald.

  • systemd-journal-gatewayd permet de restreindre la plage horaire des entrĂ©es rĂ©cupĂ©rĂ©es avec un nouveau paramĂštre d'URL realtime=[<since>]:[<until>].

  • systemd-cat a gagnĂ© une nouvelle option --namespace= pour spĂ©cifier l'espace de noms du journal cible auquel la sortie doit ĂȘtre connectĂ©e.

  • systemd-bsod a gagnĂ© une nouvelle option --tty= pour spĂ©cifier le TTY de sortie

À propos de la gestion des pĂ©riphĂ©riques

  • /dev/ contient dĂ©sormais des liens symboliques qui combinent des informations by-path & by-{label,uuid}:

    • /dev/disk/by-path/<chemin>/by-<label|uuid|
>/<label|uuid|
>
    • Cela permet de distinguer les partitions avec un contenu identique sur plusieurs pĂ©riphĂ©riques de stockage.
    • Ceci est utile, par exemple, lors de la copie du contenu brut du disque entre pĂ©riphĂ©riques.
  • systemd-udevd crĂ©e dĂ©sormais des liens symboliques /dev/media/by-path/ persistants pour les contrĂŽleurs multimĂ©dias.

    • Par exemple, le pilote uvcvideo peut crĂ©er /dev/media0 qui sera liĂ© en tant que /dev/media/by-path/pci-0000:04:00.3-usb-0:1:1.0-media-controller.
  • Une nouvelle unitĂ© systemd-udev-load-credentials.service a Ă©tĂ© ajoutĂ©e pour rĂ©cupĂ©rer les drop-ins udev.conf et les rĂšgles udev Ă  partir des informations d'identification.

  • Une liste d'autorisation/liste de refus peut ĂȘtre spĂ©cifiĂ©e pour filtrer les attributs sysfs utilisĂ©s lors de la crĂ©ation des noms d'interface rĂ©seau.

    • Ces listes sont stockĂ©es sous forme d'entrĂ©es hwdb
      • ID_NET_NAME_ALLOW_<sysfsattr>=0|1
      • et ID_NET_NAME_ALLOW=0|1
      • L'objectif est d'Ă©viter des modifications inattendues des noms d'interface lorsque le noyau est mis Ă  jour et que de nouveaux attributs sysfs deviennent visibles.
  • Une nouvelle unitĂ© tpm2.target a Ă©tĂ© ajoutĂ©e pour fournir un point de synchronisation pour les unitĂ©s qui s'attendent Ă  ce que le matĂ©riel TPM soit disponible.

    • Un nouveau gĂ©nĂ©rateur systemd-tpm2-generator a Ă©tĂ© ajoutĂ© qui insĂ©rera cette cible chaque fois qu'il dĂ©tectera que le micrologiciel a initialisĂ© un TPM, mais que Linux n'a pas encore chargĂ© de pilote pour celui-ci.
  • systemd-backlight prend dĂ©sormais correctement en charge les pĂ©riphĂ©riques numĂ©rotĂ©s crĂ©Ă©s par le noyau pour Ă©viter les collisions dans le sous-systĂšme LED.

  • L'opĂ©ration de mise Ă  jour systemd-hwdb peut ĂȘtre dĂ©sactivĂ©e avec une nouvelle variable d'environnement SYSTEMD_HWDB_UPDATE_BYPASS=1.

systemd-hostnamed offre divers maniĂšres de modifier le nom et la description du systĂšme

  • systemd-hostnamed expose dĂ©sormais l'ID de la machine et l'ID de dĂ©marrage via D-Bus.

    • Il expose Ă©galement les hĂŽtes AF_VSOCK CID, si disponible.
  • systemd-hostnamed fournit dĂ©sormais une interface Varlink de base.

  • systemd-hostnamed exporte les donnĂ©es complĂštes dans os-release(5) et machine-info(5) via D-Bus et Varlink.

  • hostnamectl affiche dĂ©sormais l'UUID du produit du systĂšme et le numĂ©ro de sĂ©rie du matĂ©riel s'il est connu.

La gestion du réseau avec systemd

  • systemd-networkd fournit dĂ©sormais une interface Varlink de base.

  • La prise en charge du proxy ARP de systemd-networkd a gagnĂ© une nouvelle option pour configurer une variante de VLAN privĂ© du proxy ARP pris en charge par le noyau sous le nom IPv4ProxyARPPrivateVLAN=.

  • systemd-networkd exporte dĂ©sormais les propriĂ©tĂ©s NamespaceId et NamespaceNSID via D-Bus et Varlink.

    • qui exposent l'inode et le NSID de l'espace de noms rĂ©seau gĂ©rĂ© par l'instance networkd)
  • systemd-networkd prend dĂ©sormais en charge les paramĂštres IPv6RetransmissionTimeSec= et UseRetransmissionTime= dans les fichiers .network pour configurer le temps de retransmission pour les messages de sollicitation de voisin IPv6.

  • networkctl a acquis de nouveaux verbes « mask Â» et « unmask Â» pour masquer les fichiers de configuration rĂ©seau tels que les fichiers .network.

  • networkctl edit --runtime permet de modifier la configuration volatile sous /run/systemd/network/.

  • La mise en Ɠuvre derriĂšre le paramĂštre rĂ©seau TTLPropagate= a Ă©tĂ© supprimĂ©e, et ce paramĂštre est dĂ©sormais ignorĂ©.

  • systemd-network-generator rĂ©cupĂ©rera dĂ©sormais la configuration situĂ© dans .netdev/.link/.network/networkd.conf Ă  partir des informations d'identification du systĂšme.

  • systemd-networkd rĂ©cupĂ©rera dĂ©sormais les secrets de wireguard depuis les informations d'identification (credentials).

  • L'API Varlink de systemd-networkd prend dĂ©sormais en charge l'Ă©numĂ©ration des homologues LLDP.

  • Les fichiers .link prennent dĂ©sormais en charge les nouveaux champs Property=, ImportProperty=, UnsetProperty= pour dĂ©finir les propriĂ©tĂ©s udev sur un lien.

  • Les diffĂ©rents fichiers .link fournis par systemd pour les interfaces censĂ©es ĂȘtre gĂ©rĂ©es uniquement par systemd-networkd portent dĂ©sormais une propriĂ©tĂ© udev ID_NET_MANAGED_BY=io.systemd.Network garantissant que les autres solutions de gestion de rĂ©seau honorant cette propriĂ©tĂ© udev n'entrent pas en conflit avec networkd, en essayant de gĂ©rer ces interfaces.

  • Les fichiers .link prennent dĂ©sormais en charge un nouveau paramĂštre ReceiverPacketSteeringCPUMask=

    • pour configurer les processeurs vers lesquels diriger les paquets entrants.
  • La section [RĂ©seau] des fichiers .network a gagnĂ© un nouveau paramĂštre UseDomains=,

    • qui est un bouton gĂ©nĂ©rique unique pour contrĂŽler les paramĂštres du mĂȘme nom dans [DHCPv4], [DHCPv6] et [IPv6AcceptRA].
  • Le fichier 99-default.link que nous livrons par dĂ©faut

    • (qui dĂ©finit la politique pour tous les pĂ©riphĂ©riques rĂ©seau auxquels aucun autre fichier .link ne s'applique)
    • rĂ©pertorie dĂ©sormais mac parmi AlternativeNamesPolicy=.
    • Cela signifie que les interfaces rĂ©seau recevront dĂ©sormais par dĂ©faut un nom de pĂ©riphĂ©rique alternatif supplĂ©mentaire basĂ© sur l'adresse MAC. (c'est-Ă -dire enx
)

À propos de systemd-nspawn, l'alternative sĂ©curisĂ©e et fine de chroot

  • systemd-nspawn fournit dĂ©sormais un rĂ©pertoire /run/systemd/nspawn/unix-export/ dans lequel la charge utile du conteneur peut exposer les sockets AF_UNIX pour leur permettre d'y accĂ©der de l'extĂ©rieur.

  • systemd-nspawn teintera l'arriĂšre-plan du terminal des conteneurs d'une couleur bleuĂątre. Cela peut ĂȘtre un contrĂŽleur avec le nouveau commutateur --background=.

  • systemd-nspawn a obtenu la prise en charge de l'option owneridmap pour les montages --bind= afin de mapper le propriĂ©taire du rĂ©pertoire cible depuis l'intĂ©rieur du conteneur vers le propriĂ©taire du rĂ©pertoire liĂ© au systĂšme de fichiers hĂŽte.

  • systemd-nspawn prend dĂ©sormais en charge le dĂ©placement des pĂ©riphĂ©riques rĂ©seau Wi-Fi dans un conteneur, tout comme les autres interfaces rĂ©seau.

À propos du multi rĂ©solveur systemd-resolved, qui peut remplacer dnsmasq, Avahi & libnss-mdns

  • systemd-resolved lit dĂ©sormais les codes d'erreur RFC 8914 EDE fournis par les services DNS en amont.

  • systemd-resolved et solvectl prennent dĂ©sormais en charge les enregistrements RFC 9460 SVCB et HTTPS, ainsi que les enregistrements RFC 2915 NAPTR.

  • solvectl a acquis une nouvelle option --relax-single-label= pour permettre d'interroger des noms d'hĂŽtes en une seule partie via DNS unicast pour chaque requĂȘte.

  • L'interface Varlink IPC de systemd-resolved prend dĂ©sormais en charge la rĂ©solution des services DNS-SD ainsi qu'une API pour rĂ©soudre les RR DNS bruts.

  • Les fichiers de description de service .dnssd DNS_SD de systemd-resolved prennent dĂ©sormais en charge les sous-types DNS-SD via le nouveau paramĂštre SubType=.

  • La configuration de systemd-resolved peut dĂ©sormais ĂȘtre rechargĂ©e sans redĂ©marrer le service, c'est-Ă -dire que systemctl reload systemd-resolved est dĂ©sormais pris en charge.

Une intégration fine de SSH

  • Un drop-in de configuration sshd pour permettre aux clĂ©s ssh acquises via userdbctl (par exemple exposĂ©es par des comptes de type systemd-homed) d'ĂȘtre utilisĂ©es pour l'autorisation des connexions SSH entrantes.

  • Un petit nouveau gĂ©nĂ©rateur d'unitĂ©s systemd-ssh-generator a Ă©tĂ© ajoutĂ©. Il vĂ©rifie si le binaire sshd est installĂ©. Si tel est le cas, il le lie via l'activation de socket par connexion Ă  diffĂ©rentes sockets en fonction du contexte d'exĂ©cution :

    • Si le systĂšme est exĂ©cutĂ© sur une VM prenant en charge AF_VSOCK, il lie automatiquement sshd au AF_VSOCK port 22 .
    • Si le systĂšme est invoquĂ© en tant que conteneur OS complet et que le gestionnaire de conteneur prĂ©-monte un rĂ©pertoire /run/host/unix-export/, il liera sshd Ă  un socket AF_UNIX /run/host/unix-export/ssh. L'idĂ©e est que la liaison du gestionnaire de conteneur monte Ă©galement le rĂ©pertoire Ă  un endroit appropriĂ© sur l'hĂŽte, de sorte que le socket AF_UNIX puisse ĂȘtre utilisĂ© pour se connecter facilement de l'hĂŽte au conteneur.
  • sshd est Ă©galement liĂ© Ă  un socket AF_UNIX /run/ssh-unix-local/socket, qui consiste Ă  utiliser ssh/sftp Ă  la maniĂšre de sudo pour accĂ©der aux ressources d'autres utilisateurs locaux.

  • Via l'option de ligne de commande du noyau systemd.ssh_listen= et les informations d'identification systĂšme ssh.listen, sshd peut ĂȘtre liĂ© Ă  des options supplĂ©mentaires explicitement configurĂ©es, notamment les ports AF_INET/AF_INET6.

  • En particulier, les deux premiers mĂ©canismes devraient faciliter grandement la gestion des machines virtuelles locales et des conteneurs de systĂšme d'exploitation complets, car les connexions SSH fonctionneront basiquement Ă  partir de l'hĂŽte – mĂȘme si aucun rĂ©seau n'est disponible.

  • systemd-ssh-generator gĂ©nĂšre optionnellement un fichier de service d'activation de socket par connexion en encapsulant sshd. Ceci n'est fait que si la distribution n'en fournit pas elle-mĂȘme sous le nom de sshd@.service. L'unitĂ© gĂ©nĂ©rĂ©e ne fonctionne correctement que si le rĂ©pertoire de sĂ©paration des privilĂšges SSH privsep existe. Malheureusement, les distributions varient & placent ce rĂ©pertoire de maniĂšre trĂšs variable. Voici une liste incomplĂšte :

    • /usr/share/empty.sshd/ (nouveau sous Fedora)
    • /var/empty/
    • /var/empty/sshd/
    • /run/sshd/ (debian/ubuntu ?)

Si le rĂ©pertoire SSH privsep est placĂ© sous /var/ ou /run/, il faut veiller Ă  ce que le rĂ©pertoire soit crĂ©Ă© automatiquement au dĂ©marrage si nĂ©cessaire, car ces rĂ©pertoires peuvent ĂȘtre ou sont toujours vides. Cela peut ĂȘtre fait via un drop-in tmpfiles.d/. Vous pouvez utiliser l'option meson sshdprivsepdir fournie par systemd pour configurer le rĂ©pertoire, au cas oĂč vous souhaiteriez que systemd crĂ©e automatiquement le rĂ©pertoire selon vos besoins, si votre distribution ne le couvre pas de maniĂšre native.

Recommandations aux distributions, afin que les choses fonctionnent correctement :

‱ Veuillez fournir un fichier de service SSH par connexion sous le nom sshd@.service.
‱ Veuillez dĂ©placer le rĂ©pertoire SSH privsep dans /usr/
* afin qu'il soit véritablement immuable sur les systÚmes d'exploitation basés sur des images
* qu'il soit strictement sous le contrĂŽle du gestionnaire de paquets
* et qu'il ne nécessite jamais de recréation si le systÚme démarre avec un répertoire /run/ ou /var vide.
‱ Dans le prolongement de ceci : veuillez envisager de suivre l'exemple de Fedora ici et d'utiliser /usr/share/empty.sshd/ pour minimiser les diffĂ©rences inutiles entre les distributions.
‱ Si votre distribution insiste pour placer le rĂ©pertoire dans /var/ ou /run/ alors veuillez au moins fournir un drop-in tmpfiles.d/ pour le recrĂ©er automatiquement au dĂ©marrage, afin que le binaire sshd fonctionne correctement, quel que soit le contexte dans lequel il se trouve appelĂ©.

  • Un petit outil systemd-ssh-proxy a Ă©tĂ© ajoutĂ©, censĂ© faire office de pendant de systemd-ssh-generator. C'est un petit plug-in pour le client SSH (via ProxyCommand/ProxyUseFdpass) pour lui permettre de se connecter aux sockets AF_VSOCK ou AF_UNIX. Exemple : ssh vsock/4711 se connecte Ă  une VM locale avec le cid 4711, ou ssh unix/run/ssh-unix-local/socket pour se connecter Ă  l'hĂŽte local via le socket AF_UNIX /run/ssh-unix-local/socket.

systemd-boot et systemd-stub et outils associés, une alternative minimale & ukify à grub

  • La prise en charge des mesures PCR TPM 1.2 a Ă©tĂ© supprimĂ©e de systemd-stub. Le TPM 1.2 est obsolĂšte et – en raison de la faiblesse (selon les normes actuelles) des algorithmes cryptographiques qu'il ne prend en charge – n'offre pas rĂ©ellement les avantages en matiĂšre de sĂ©curitĂ© qu'il est censĂ© offrir. Étant donnĂ© que le reste de la base de code de systemd n'a jamais pris en charge TPM 1.2, la prise en charge a Ă©galement Ă©tĂ© supprimĂ©e de systemd-stub.

  • systemd-stub mesurera dĂ©sormais sa charge utile via les nouvelles API EFI Confidential Computing (CC), en plus des mesures prĂ©existantes du TPM.

  • Les confextes (cf [systemd-sysext](https://www.freedesktop.org/software/systemd/man/latest/systemd-sysext.html)) sont Ă©galement chargĂ©s par systemd-stub depuis l'ESP.

  • kernel-install a obtenu le support de --root= pour le verbe list.

  • bootctl fournit dĂ©sormais une interface Varlink de base et peut ĂȘtre exĂ©cutĂ© en tant que service(dĂ©mon) via une unitĂ© modĂšle.

  • systemd-measure a obtenu de nouvelles options --certificate=, --private-key= et --private-key-source= pour permettre l'utilisation des moteurs ou fournisseurs d'OpenSSL comme mĂ©canisme de signature Ă  utiliser lors de la crĂ©ation de valeurs de mesure signĂ©es PCR TPM2

  • ukify a obtenu la prise en charge de la signature des signatures PCR via les moteurs et fournisseurs OpenSSL.

  • ukify prend dĂ©sormais en charge les noyaux zboot.

  • systemd-boot prend dĂ©sormais en charge la transmission de commutateurs de ligne de commande de noyau supplĂ©mentaires aux noyaux invoquĂ©s via une chaĂźne SMBIOS Type #11 io.systemd.boot.kernel-cmdline-extra. Ceci est similaire Ă  la prise en charge prĂ©existante de cela dans systemd-stub, mais s'applique Ă©galement aux entrĂ©es de spĂ©cification du chargeur de dĂ©marrage de type n°1.

  • La prise en charge automatique de l'inscription SecureBoot par systemd-boot prend Ă©galement en charge l'inscription dbx (auparavant, seule l'inscription db/KEK/PK Ă©tait prise en charge). Il prend Ă©galement dĂ©sormais en charge le mode UEFI « PersonnalisĂ© Â».

  • La politique pcrlock est enregistrĂ©e dans un fichier d'informations d'identification non chiffrĂ© pcrlock.<entry-token>.cred sous XBOOTLDR/ESP dans le rĂ©pertoire /loader/credentials/. Il sera rĂ©cupĂ©rĂ© au dĂ©marrage par systemd-stub et transmis Ă  initrd, oĂč il pourra ĂȘtre utilisĂ© pour dĂ©verrouiller le systĂšme de fichiers racine.

  • systemd-pcrlock a obtenu une option --entry-token= pour configurer le jeton d'entrĂ©e.

  • systemd-pcrlock fournit dĂ©sormais une interface Varlink de base et peut ĂȘtre exĂ©cutĂ© en tant que dĂ©mon via une unitĂ© modĂšle.

  • La politique d'accĂšs au TPM nvindex de systemd-pcrlock a Ă©tĂ© modifiĂ©e

    • cela signifie que les politiques pcrlock prĂ©cĂ©dentes stockĂ©es dans nvindexes sont invalidĂ©es.
    • Ils doivent ĂȘtre supprimĂ©s (systemd-pcrlock remove-policy) et recrĂ©Ă©s (systemd-pcrlock make-policy).
    • Pour le moment, systemd-pcrlock reste une fonctionnalitĂ© expĂ©rimentale, mais elle devrait devenir stable dans la prochaine version, c'est-Ă -dire la v257.
  • Le commutateur --recovery-pin= de systemd-pcrlock prend dĂ©sormais trois valeurs : hide, show, query. Si « afficher Â» est sĂ©lectionnĂ©, le code PIN de rĂ©cupĂ©ration gĂ©nĂ©rĂ© automatiquement est affichĂ© Ă  l'utilisateur. Si « requĂȘte Â» est sĂ©lectionnĂ©, le code PIN est demandĂ© Ă  l'utilisateur.

  • sd-stub prend dĂ©sormais en charge la nouvelle section PE .ucode dans les UKI, qui peut contenir des donnĂ©es de microcode CPU. Lorsque le contrĂŽle est transfĂ©rĂ© au noyau Linux, ces donnĂ©es sont ajoutĂ©es au dĂ©but de l'ensemble des initrds transmis.

systemd-run/run0, une alternative sécurisée à sudo

  • systemd-run est dĂ©sormais un binaire multi-appels. Lorsqu'il est invoquĂ© en tant que run0, il fournit une interface similaire Ă  sudo, tous les arguments commençant au premier paramĂštre non-option Ă©tant traitĂ©s comme la commande Ă  invoquer en tant que root.

    • Contrairement Ă  « sudo Â» et aux outils similaires, il n'utilise pas de binaires setuid ou d'autres mĂ©thodes d'Ă©lĂ©vation de privilĂšges
    • mais exĂ©cute Ă  la place la commande spĂ©cifiĂ©e comme une unitĂ© transitoire
    • Elle est dĂ©marrĂ©e par le gestionnaire de services systĂšme, de sorte que les privilĂšges sont supprimĂ©s plutĂŽt que gagnĂ©s.
    • Cela met ainsi en Ɠuvre un modĂšle de sĂ©curitĂ© beaucoup plus robuste et sĂ»r.
    • Comme d'habitude, l'autorisation est gĂ©rĂ©e via Polkit.
  • systemd-run/run0 teintera dĂ©sormais l'arriĂšre-plan du terminal sur les terminaux pris en charge :

    • dans un ton rougeĂątre lors de l'appel d'un service racine
    • dans un ton jaunĂątre sinon.
    • Cela peut ĂȘtre contrĂŽlĂ© et dĂ©sactivĂ© via le nouveau commutateur --background=.
  • systemd-run a gagnĂ© une nouvelle option --ignore-failure pour supprimer les Ă©checs de commandes.

Outillages en ligne de commande

  • systemctl edit --stdin permet la crĂ©ation de fichiers d'unitĂ© et de drop-ins avec du contenu fourni via l'entrĂ©e standard.

    • Ceci est utile lors de la crĂ©ation d’une configuration par programme ; l'outil se charge de dĂ©terminer le nom du fichier, de crĂ©er les rĂ©pertoires Ă©ventuels et de recharger ensuite le gestionnaire.
  • systemctl disable --now et systemctl mask --now fonctionnent dĂ©sormais correctement avec les modĂšles d'unitĂ©s.

  • systemd-analyze architectures rĂ©pertorie les architectures CPU connues.

  • systemd-analyze --json=
 est pris en charge pour les architectures, capability, exit-status

  • systemd-tmpfiles --purge purgera (supprimera) tous les fichiers et rĂ©pertoires crĂ©Ă©s via la configuration tmpfiles.d.

  • systemd-id128 a gagnĂ© de nouvelles options --no-pager, --no-legend et -j/ --json=.

  • hostnamectl a gagnĂ© -j comme raccourci pour --json=pretty ou --json=short

  • loginctl prend dĂ©sormais en charge -j/ --json=.

  • resolvectl prend dĂ©sormais en charge -j/ --json= pour --type=.

  • systemd-tmpfiles a gagnĂ© une nouvelle option --dry-run pour simuler ce qui serait fait sans rĂ©ellement agir.

  • varlinkctl a obtenu un nouveau commutateur --collect pour collecter toutes les rĂ©ponses d'un appel de mĂ©thode qui prend en charge plusieurs rĂ©ponses et le transforme en un seul tableau JSON.

  • systemd-dissect a acquis une nouvelle option --make-archive pour gĂ©nĂ©rer un fichier d'archive (tar.gz et similaire) Ă  partir d'une image disque.

systemd-vmspawn, permet de générer un systÚme d'exploitation dans une machine virtuelle

  • systemd-vmspawn a gagnĂ©

    • une nouvelle option --firmware= pour configurer ou lister les dĂ©finitions de firmware pour Qemu
    • une nouvelle option --tpm= pour activer ou dĂ©sactiver l'utilisation d'un TPM logiciel
    • une nouvelle option --linux= pour spĂ©cifier un noyau binaire pour le dĂ©marrage direct du noyau
    • une nouvelle option --initrd= pour spĂ©cifier un initrd pour le dĂ©marrage direct du noyau
    • une nouvelle option -D/--directory pour utiliser un rĂ©pertoire simple comme systĂšme de fichiers racine
    • une nouvelle option --private-users similaire Ă  celle de systemd-nspawn
    • de nouvelles options --bind= et --bind-ro= pour lier une partie de la hiĂ©rarchie du systĂšme de fichiers de l'hĂŽte Ă  l'invitĂ©
    • une nouvelle option --extra-drive= pour attacher du stockage supplĂ©mentaire
    • et -n/--network-tap/--network-user-mode pour configurer le rĂ©seau.
  • Un nouveau systemd-vmspawn@.service peut ĂȘtre utilisĂ© pour lancer systemd-vmspawn en tant que service.

  • systemd-vmspawn a obtenu les nouveaux commutateurs --console= et --background= qui contrĂŽlent la maniĂšre d'interagir avec la VM.

    • Comme auparavant, une interface de terminal interactive est fournie par dĂ©faut, mais dĂ©sormais avec un fond teintĂ© d'une teinte verdĂątre.
  • systemd-vmspawn peut dĂ©sormais enregistrer ses VM auprĂšs de systemd-machined, contrĂŽlĂ© via le commutateur --register=.

  • La commande start de machinectl (et associĂ©e) peut dĂ©sormais appeler des images

    • soit en tant que conteneurs via systemd-nspawn (le commutateur est --runner=nspawn, la valeur par dĂ©faut)
    • soit en tant que VM via systemd-vmspawn (le commutateur est --runner=vmspawn , ou court -V).
  • systemd-vmspawn prend dĂ©sormais en charge deux commutateurs --pass-ssh-key= et --ssh-key-type= pour configurer Ă©ventuellement des clĂ©s SSH transitoires Ă  transmettre aux machines virtuelles invoquĂ©es afin de pouvoir y accĂ©der en SSH une fois dĂ©marrĂ©es.

  • systemd-vmspawn activera dĂ©sormais diverses options sur les VMs

    • HyperV enlightenments"
    • et le VM Generation ID
  • Une nouvelle variable d'environnement $SYSTEMD_VMSPAWN_QEMU_EXTRA peut contenir des options de ligne de commande qemu supplĂ©mentaires Ă  transmettre Ă  qemu.

  • systemd-machined a acquis une nouvelle mĂ©thode D-Bus GetMachineSSHInfo() qui est utilisĂ© par systemd-vmspawn pour rĂ©cupĂ©rer les informations nĂ©cessaires pour se connecter au systĂšme.

    • systemd-machined a acquis une nouvelle interface Varlink qui est utilisĂ©e par systemd-vmspawn pour enregistrer les machines avec diverses informations & mĂ©tadonnĂ©es supplĂ©mentaires.

systemd-repart, pour retailler un disque à la volée

  • systemd-repart a obtenu de nouvelles options --generate-fstab= et --generate-crypttab=

    • pour Ă©crire les fichiers fstab et crypttab correspondant aux partitions gĂ©nĂ©rĂ©es.
  • systemd-repart a obtenu une nouvelle option --private-key-source=

    • pour permettre d'utiliser les moteurs ou fournisseurs d'OpenSSL comme mĂ©canisme de signature Ă  utiliser lors de la crĂ©ation de partitions de signature Verity.
  • systemd-repart a obtenu un nouveau paramĂštre DefaultSubvolume= dans les drop-ins repart.d/

    • qui permettent de configurer le sous-volume btrfs par dĂ©faut pour les systĂšmes de fichiers btrfs nouvellement formatĂ©s.

BibliothĂšques autours du monde systemd

  • libsystemd a obtenu un nouvel appel sd_bus_creds_new_from_pidfd()

    • pour obtenir un objet d'informations d'identification pour un pidfd
    • et sd_bus_creds_get_pidfd_dup() pour rĂ©cupĂ©rer le pidfd Ă  partir d'un objet d'informations d'identification.
  • La logique d'identification de sd-bus acquerra dĂ©sormais Ă©galement les listes de groupes UNIX du homologue

    • et le pidfd du homologue si pris en charge et demandĂ©.
  • La macro RPM %_kernel_install_dir a Ă©tĂ© ajoutĂ©e avec le chemin d'accĂšs au rĂ©pertoire des plugins d'installation du noyau.

  • Les dĂ©pendances liblz4, libzstd, liblzma, libkmod, libgcrypt ont Ă©tĂ© modifiĂ©es

    • de dĂ©pendances de bibliothĂšque partagĂ©e habituelles en dĂ©pendances basĂ©es sur dlopen().
    • Notez que cela signifie que ces bibliothĂšques pourraient ne pas ĂȘtre automatiquement rĂ©cupĂ©rĂ© lorsque les dĂ©pendances ELF sont rĂ©solues. En particulier le manque de libkmod peut causer des problĂšmes de dĂ©marrage. Cela affecte le dracut <= 101
  • Les binaires systemd ELF qui utilisent des bibliothĂšques via dlopen() sont maintenant construits avec une nouvelle section de note d'en-tĂȘte ELF, suite Ă  une nouvelle spĂ©cification dĂ©finie Ă 
    docs/ELF_DLOPEN_METADATA.md, qui fournit des informations sur lesquels le sonames sont chargés et utilisés s'ils sont trouvés au moment de l'exécution. Cela permet aux outils et packagers pour découvrir par programme la liste des éléments facultatifs
    dépendances utilisées par tous les binaires systemd ELF. Un analyseur avec packaging les outils d'intégration sont disponibles sur git

  • L'API sd-journal a obtenu un nouvel appel sd_journal_stream_fd_with_namespace()

    • qui ressemble Ă  sd_journal_stream_fd() mais crĂ©e un flux de journaux ciblĂ© sur un espace de noms de journal spĂ©cifique.
  • L'API sd-id128 a obtenu un nouvel appel d'API sd_id128_get_invocation_app_special()

    • pour acquĂ©rir un ID spĂ©cifique Ă  l'application dĂ©rivĂ© de l'ID d'appel de service.
  • L'API sd-event a obtenu un nouvel appel d'API sd_event_source_get_inotify_path()

    • qui renvoie le chemin du systĂšme de fichiers pour lequel une source d'Ă©vĂ©nement inotify a Ă©tĂ© crĂ©Ă©e.

systemd-cryptsetup systemd-cryptenroll, oĂč l'aide au chiffrement de disque

  • L'argument du nƓud de pĂ©riphĂ©rique pour systemd-cryptenroll est dĂ©sormais facultatif.

    • S'il est omis, il sera automatiquement dĂ©duit du pĂ©riphĂ©rique de bloc de support de /var/
      • (qui est trĂšs probablement le mĂȘme que le systĂšme de fichiers racine, ce qui signifie effectivement que si vous ne spĂ©cifiez rien, sinon l'outil enregistrera dĂ©sormais par dĂ©faut une clĂ© dans pĂ©riphĂ©rique LUKS du systĂšme de fichiers racine).
  • systemd-cryptenroll peut dĂ©sormais s'inscrire directement avec une clĂ© publique PKCS11 (au lieu d'un certificat).

  • systemd-cryptsetup systemd-cryptenroll peuvent dĂ©sormais verrouiller un disque avec une clĂ© EC fournie par PKCS#11

    • (auparavant, il ne prenait en charge que RSA).
  • systemd-cryptsetup prend en charge l'option crypttab link-volume-key=

    • pour lier la clĂ© du volume au jeu de clĂ©s du noyau lorsque le volume est ouvert.
  • systemd-cryptenroll n'activera plus la protection contre les attaques par dictionnaire (c'est-Ă -dire activer NO_DA) pour les inscriptions TPM qui n'impliquent pas de code PIN.

    • DA ne devrait pas ĂȘtre nĂ©cessaire dans ce cas (puisque l'entropie de la clĂ© est suffisamment Ă©levĂ©e pour rendre cela inutile),
    • mais un risque un verrouillage accidentel en cas de modifications inattendues du PCR.
  • systemd-cryptenroll prend dĂ©sormais en charge l'inscription d'un nouvel emplacement tout en dĂ©verrouillant l'ancien emplacement via TPM2

    • (auparavant, le dĂ©verrouillage ne fonctionnait que via un mot de passe ou FIDO2).

systemd-homed systemd-logind, systemd-userdbd

  • systemd-homed prend dĂ©sormais en charge le dĂ©verrouillage des rĂ©pertoires personnels lors de la connexion via SSH.

    • Auparavant, les rĂ©pertoires personnels devaient ĂȘtre dĂ©verrouillĂ©s avant toute tentative de connexion SSH.
  • Les enregistrements utilisateur au format JSON ont Ă©tĂ© Ă©tendus avec une zone de stockage publique distincte appelĂ©e « RĂ©pertoires binaires des enregistrements utilisateur Â» ("User Record Blob Directories").

    • Ceci est destinĂ© Ă  stocker l'image d'arriĂšre-plan de l'utilisateur, l'image de l'avatar et d'autres Ă©lĂ©ments similaires qui sont trop volumineux pour tenir dans l'enregistrement utilisateur lui-mĂȘme.
    • systemd-homed, userdbctl et homectl prennent dĂ©sormais en charge les rĂ©pertoires binaires.
    • homectl a gagnĂ© --avatar= et --login-background=
      • pour contrĂŽler deux Ă©lĂ©ments spĂ©cifiques des rĂ©pertoires binaires.
    • Un nouveau champ additionalLanguages a Ă©tĂ© ajoutĂ© aux enregistrements utilisateur JSON (tel que pris en charge par systemd-homed et systemd-userdbd),
      • qui est Ă©troitement liĂ© au preferredLanguage prĂ©existant, et permet de spĂ©cifier plusieurs langues supplĂ©mentaires pour le compte utilisateur.
      • Il est utilisĂ© pour initialiser la variable d'environnement $LANGUAGES lorsqu'elle est utilisĂ©e.
  • Une nouvelle paire de champs preferredSessionType et preferredSessionLauncher a Ă©tĂ© ajoutĂ©e aux enregistrements utilisateur JSON,

    • qui peuvent ĂȘtre utilisĂ©es pour contrĂŽler le type de session de bureau Ă  activer de prĂ©fĂ©rence lors des connexions de l'utilisateur.
  • homectl a gagnĂ© un nouveau verbe firstboot, et une nouvelle unitĂ© systemd-homed-firstboot.service

    • ce verbe est utilisĂ© pour crĂ©er des utilisateurs dans un environnement de premier dĂ©marrage,
      • soit Ă  partir des informations d'identification du systĂšme
      • soit en interrogeant de maniĂšre interactive.
  • systemd-logind prend dĂ©sormais en charge une nouvelle classe de session background-light qui n'envoie pas l'unitĂ© user@.service.

    • Ceci est destinĂ© aux sessions automatisĂ©es, type cron, sans nĂ©cessirĂ© d'interactions utilisateurs
    • Cela rend l'ouverture plus lĂ©gĂšre et rapide.
  • Le gestionnaire de services par utilisateur sera dĂ©sormais suivi comme un type de session « gestionnaire Â» (manager) distinct parmi les sessions de connexion de chaque utilisateur.

  • homectl prend dĂ©sormais en charge un mode --offline,

    • grĂące auquel certaines propriĂ©tĂ©s du compte peuvent ĂȘtre modifiĂ©es sans dĂ©verrouiller le rĂ©pertoire personnel.
  • systemd-logind a acquis une nouvelle mĂ©thode org.freedesktop.login1.Manager.ListSessionsEx()

    • qui fournit des mĂ©tadonnĂ©es supplĂ©mentaires par rapport Ă  ListSessions().
    • loginctl l'utilise pour lister des champs supplĂ©mentaires dans les sessions de liste.
  • systemd-logind a gagnĂ© une nouvelle mĂ©thode org.freedesktop.login1.Manager.Sleep()

    • qui redirige automatiquement vers SuspendThenHibernate(), Suspend(), HybridSleep() ou Hibernate(),
      • selon ce qui est pris en charge et configurĂ©,
        • une nouvelle paramĂštre de configuration SleepOperation=,
        • ainsi qu'une mĂ©thode d'assistance associĂ©e org.freedesktop.login1.Manager.CanSleep()
        • et une propriĂ©tĂ© org.freedesktop.login1.Manager.SleepOperation.
        • systemctl sleep appelle la nouvelle mĂ©thode pour mettre automatiquement la machine en veille de la maniĂšre la plus appropriĂ©e.
  • systemctl sleep appelle une nouvelle mĂ©thode pour mettre automatiquement la
    machine dans le mode sommeil de la maniÚre la plus appropriée.

systemd-creds, mĂ©canisme de gestion des authentifications, pour arrĂȘter de balancer du mot de passe en clair partout

  • systemd-creds fournit dĂ©sormais une API Varlink IPC pour chiffrer et dĂ©chiffrer les informations d'identification.

  • La sĂ©lection de clĂ© tpm2-absent de systemd-creds a Ă©tĂ© renommĂ©e en null, puisque c'est ce qu'elle fait rĂ©ellement :

    • chiffrer et signer avec une clĂ© nulle fixe.
    • --with-key=null ne doit ĂȘtre utilisĂ© que dans des cas trĂšs spĂ©cifiques,
    • car il n'offre aucune protection en matiĂšre d'intĂ©gritĂ© ou de confidentialitĂ©.
    • c'est-Ă -dire qu'il n'est sĂ»r Ă  utiliser comme solution de secours que dans des environnements dĂ©pourvus Ă  la fois d'un TPM et d'un accĂšs au systĂšme de fichiers racine pour utiliser la clĂ© de chiffrement de l'hĂŽte, ou lorsque l'intĂ©gritĂ© est assurĂ©e d'une autre maniĂšre.
  • systemd-creds a obtenu un nouveau commutateur --allow-null.

    • S'il est spĂ©cifiĂ©, le verbe decrypt dĂ©codera les informations d'identification chiffrĂ©es qui utilisent la clĂ© null
    • Par dĂ©faut, cela est refusĂ©, car l'utilisation de la clĂ© null annule le cryptage authentifiĂ© normalement effectuĂ©.

De quoi mettre en veille et mettre en veille prolongée

  • Le fichier de configuration sleep.conf a obtenu un nouveau paramĂštre MemorySleepMode=

    • pour configurer le mode veille plus en dĂ©tail.
  • Un nouveau petit service systemd-hibernate-clear.service a Ă©tĂ© ajoutĂ©

    • qui efface les informations d'hibernation de la variable EFI HibernateLocation,
      • au cas oĂč le pĂ©riphĂ©rique de reprise disparaĂźtrait.
      • Normalement, cette variable est censĂ©e ĂȘtre nettoyĂ©e par le code qui lance l'image de reprise depuis l'hibernation.
      • Mais lorsque le pĂ©riphĂ©rique est manquant et que ce code ne s'exĂ©cute pas,
      • ce service effectuera dĂ©sormais le travail nĂ©cessaire, garantissant qu'aucune information d'image d'hibernation obsolĂšte ne reste lors des dĂ©marrages suivants.

Espaces de noms utilisateurs non privilégiés et gestion des montages de disques

  • Un nouveau petit service systemd-nsresourced.service a Ă©tĂ© ajoutĂ©.

    • Il fournit une API Varlink IPC qui attribue une plage UID/GID de 64 Ko gratuite et allouĂ©e de maniĂšre transitoire Ă  un espace de noms d'utilisateur non initialisĂ© fourni par un client. Il peut ĂȘtre utilisĂ© pour implĂ©menter des gestionnaires de conteneurs sans privilĂšges et d'autres programmes nĂ©cessitant des plages d'ID utilisateur dynamiques. Il fournit Ă©galement des interfaces pour dĂ©lĂ©guer ensuite des descripteurs de fichiers de montage, des groupes de contrĂŽle et des interfaces rĂ©seau aux espaces de noms utilisateur configurĂ©s de cette maniĂšre.
  • Un nouveau petit service systemd-mountfsd.service a Ă©tĂ© ajoutĂ©.

    • Il fournit une API Varlink IPC pour monter des images DDI et renvoyer un ensemble de descripteurs de fichiers de montage pour celles-ci. Si un espace de noms utilisateur fd est fourni en entrĂ©e, alors les montages sont enregistrĂ©s avec l'espace de noms utilisateur. Pour garantir la confiance dans l'image, elle doit fournir des informations Verity (ou bien une authentification polkit interactive est requise).
  • L'outil systemd-dissect peut dĂ©sormais accĂ©der aux DDI sans aucun privilĂšge en utilisant systemd-nsresourced/systemd-mountfsd.

  • Si le gestionnaire de services s'exĂ©cute sans privilĂšges (c'est-Ă -dire systemd --user),

    • il prend dĂ©sormais en charge RootImage= pour accĂ©der aux images DDI, Ă©galement implĂ©mentĂ© via systemd-nsresourced/systemd-mountfsd.
  • systemd-nspawn peut dĂ©sormais fonctionner sans privilĂšges,

    • si un DDI appropriĂ© est fourni via --image=, encore une fois implĂ©mentĂ© via systemd-nsresourced/systemd-mountfsd.

Divers changements

  • timedatectl et machinectl ont obtenu l'option -P,
    • un alias pour --value --property=
.
  • Divers outils permettant d'imprimer joliment les fichiers de configuration mettront dĂ©sormais en Ă©vidence les directives de configuration.

  • varlinkctl a obtenu le support du transport ssh:.

    • Cela nĂ©cessite OpenSSH 9.4 ou plus rĂ©cent.
  • systemd-sysext a obtenu la prise en charge de l'activation des extensions systĂšme de maniĂšre mutable,

    • oĂč un rĂ©pertoire supĂ©rieur inscriptible est stockĂ© sous /var/lib/extensions.mutable/,
    • et une nouvelle option --mutable= pour configurer ce comportement.
    • Un mode « Ă©phĂ©mĂšre Â» n'est pas non plus pris en charge lorsque la couche mutable est configurĂ©e pour ĂȘtre un tmpfs qui est automatiquement libĂ©rĂ© lorsque les extensions systĂšme sont rattachĂ©es.
  • Les coredumps sont dĂ©sormais conservĂ©s pendant deux semaines par dĂ©faut (au lieu de trois jours comme auparavant).

  • Le paramĂštre portablectl --copy= a obtenu un nouvel argument mixte,

    • qui entraĂźnera la liaison des ressources appartenant au systĂšme d'exploitation
    • (par exemple : les profils portables) mais aux ressources appartenant Ă  l'image portable Ă  copier (par exemple les fichiers unitaires et les images elles-mĂȘmes).
  • systemd enregistrera dĂ©sormais les types MIME de ses divers types de fichiers

    • (par exemple, fichiers journaux, DDI, informations d'identification cryptĂ©es
) via l'infrastructure d'informations mime partagĂ©es XDG.
    • (Les fichiers de ces types seront ainsi reconnus comme leur propre Ă©lĂ©ment dans les gestionnaires de fichiers de bureau tels que les fichiers GNOME.)
  • systemd-dissect affichera dĂ©sormais la taille de secteur dĂ©tectĂ©e d'un DDI donnĂ© dans sa sortie par dĂ©faut.

  • systemd-portabled gĂ©nĂšre dĂ©sormais des messages de journal structurĂ©s reconnaissables chaque fois qu'un service portable est attachĂ© ou dĂ©tachĂ©.

  • La vĂ©rification de la signature Verity dans l'espace utilisateur (c'est-Ă -dire la vĂ©rification par rapport aux clĂ©s /etc/verity.d/) lors de l'activation des DDI peut dĂ©sormais ĂȘtre activĂ©e/dĂ©sactivĂ©e

    • via une option de ligne de commande du noyau systemd.allow_userspace_verity=
    • et une variable d'environnement SYSTEMD_ALLOW_USERSPACE_VERITY=.
  • La gestion des quotas du systĂšme de fichiers ext4/xfs a Ă©tĂ© retravaillĂ©e,

    • de sorte que quotacheck et quotaon soient dĂ©sormais invoquĂ©s en tant que services basĂ©s sur un modĂšle par systĂšme de fichiers
    • (par opposition Ă  des singletons uniques Ă  l'Ă©chelle du systĂšme), de style similaire Ă  la logique fsck, growfs, pcrfs.
    • Cela signifie que les systĂšmes de fichiers avec quota activĂ© peuvent dĂ©sormais ĂȘtre raisonnablement activĂ©s au moment de l'exĂ©cution du systĂšme, et pas seulement au dĂ©marrage.
  • systemd-analyze dot affichera dĂ©sormais Ă©galement les dĂ©pendances BindsTo=.

  • systemd-debug-generator a acquis la possibilitĂ© d'ajouter des unitĂ©s arbitraires en fonction de leur transmission via les informations d'identification du systĂšme.

  • Une nouvelle option de ligne de commande du noyau systemd.default_debug_tty= peut ĂȘtre utilisĂ©e pour spĂ©cifier le TTY pour le shell de dĂ©bogage, indĂ©pendamment de son activation ou de sa dĂ©sactivation.

  • portablectl a obtenu un nouveau commutateur --clean qui efface les donnĂ©es d'un service portable (cache, logs, state, runtime, fdstore) lors de son dĂ©tachement.

Documentations

Contributeurs

Contributions from: A S Alam, AKHIL KUMAR,
Abraham Samuel Adekunle, Adrian Vovk, Adrian Wannenmacher,
Alan Liang, Alberto Planas, Alexander Zavyalov, Anders Jonsson,
Andika Triwidada, Andres Beltran, Andrew Sayers,
Antonio Alvarez Feijoo, Arthur Zamarin, Artur Pak, AtariDreams,
Benjamin Franzke, Bernhard M. Wiedemann, Black-Hole1, Bryan Jacobs,
Burak Gerz, Carlos Garnacho, Chandra Pratap, Chris Simons,
Christian Wesselhoeft, Clayton Craft, Colin Geniet, Colin Walters,
Costa Tsaousis, Cristian RodrĂ­guez, Daan De Meyer,
Damien Challet, Dan Streetman, David Tardon, David Venhoek,
Diego Viola, Dionna Amalie Glaze, Dmitry Konishchev,
Edson Juliano Drosdeck, Eisuke Kawashima, Eli Schwartz,
Emanuele Giuseppe Esposito, Eric Daigle, Evgeny Vereshchagin,
Felix Riemann, Fernando Fernandez Mancera, Florian Schmaus,
Franck Bui, Frantisek Sumsal, Friedrich Altheide,
GabrĂ­el ArthĂșr PĂ©tursson, GaĂ«l Donval, Georges Basile Stavracas Neto,
Gerd Hoffmann, GNOME Foundation, Guido Leenders,
Guilhem Lettron, Göran Uddeborg, Hans de Goede, Harald Brinkmann,
Heinrich Schuchardt, Henry Li, Holger Assmann, Ivan Kruglov,
Ivan Shapovalov, Jakub Sitnicki, James Muir, Jan Engelhardt,
Jan Macku, Jeff King, JmbFountain, Joakim NohlgÄrd,
Jonathan Conder, Julius Alexandre, Jörg Behrmann, Keian, Kirk,
Kristian Klausen, Krzesimir Nowak, Lars Ellenberg,
Lennart Poettering, Luca Boccassi, Ludwig Nussel, LukĂĄĆĄ NykrĂœn,
Luna Jernberg, Luxiter, Maanya Goenka, Mariano Giménez,
Markus Merklinger, Martin Ivicic, Martin Srebotnjak,
Martin Trigaux, Martin Wilck, Matt Layher, Matt Muggeridge,
Matteo Croce, Matthias Lisin, Max Gautier, Max Staudt, MaxHearnden,
Michael Biebl, Michal KoutnĂœ, Michal Sekletár, Mike Gilbert,
Mike Yuan, Mikko Ylinen, MkfsSion, MrSmör, Nandakumar Raghavan,
Nick Cao, Nick Rosbrook, Norbert Lange, Ole Peder BrandtzĂŠg,
Ondrej Kozina, Oğuz Ersen, Pablo MĂ©ndez HernĂĄndez,
Pierre GRASSER, Piotr Drąg, QuonXF, RafaĂ«l Kooi, Raito Bezarius,
Rasmus Villemoes, Reid Wahl, Renjaya Raga Zenta, Richard Maw,
Roland Hieber, Ronan Pigott, Rose, Ross Burton, Sam Leonard,
Samuel BF, Sarvajith Adyanthaya, Sergei Zhmylev, Sergey A, Shulhan,
SidhuRupinder, Simon Fowler, Sludge, Stuart Hayhurst, Susant Sahani,
Takashi Sakamoto, Temuri Doghonadze, Thilo Fromm, Thomas Blume,
TobiPeterG, Tobias Fleig, TomĂĄĆĄ Pecka, Topi Miettinen,
Tycho Andersen, Unique-Usman, Usman Akinyemi, Vasiliy Kovalev,
Vasiliy Stelmachenok, Vishal Chillara Srinivas, Vitaly Kuznetsov,
Vito Caputo, Vladimir Stoiakin, Werner Sembach, Will Springer,
Winterhuman, Xiaotian Wu, Yu Watanabe, Yuri Chornoivan,
Zbigniew Jędrzejewski-Szmek, Zmyeir, aslepykh, chenjiayi,
cpackham-atlnz, cunshunxia, djantti, hfavisado, hulkoba, ksaleem,
medusalix, mille-feuille, mkubiak, mooo, msizanoen, networkException,
nl6720, r-vdp, runiq, sam-leonard-ct, samuelvw01, sharad3001, sushmbha,
wangyuhang, zzywysm, Ä°. Ensar GĂŒlƟen, Ɓukasz Stelmach,
Ć těpĂĄn Němec, æˆ‘è¶…ćŽ‰ćźł, êč€ìžìˆ˜

— Edinburgh, 2024-06-11

Vous ĂȘtes invitĂ© Ă  tĂ©lĂ©charger l'archive tar ici si vous souhaitez le compiler vous-mĂȘme.

Commentaires : voir le flux Atom ouvrir dans le navigateur

Projets libres ! Episode 26 : Odoo Community Association

Pour ce nouvel Ă©pisode de Projets libres !, nous partons Ă  la rencontre de l'association communautaire Odoo, l'OCA (Odoo Community Association).

Nous avons le plaisir de recevoir Joël Grand-Guillaume, son président.
Ensemble nous abordons les thĂšmes suivants :

  • les enjeux de sa crĂ©ation
  • son fonctionnement et sa gouvernance
  • son financement
  • les rapports avec l'Ă©diteur Odoo et les Ă©volutions de ce dernier
  • sa communautĂ©
  • les grands dĂ©fis de son avenir

L'Ă©pisode possĂšde une transcription et une traduction en anglais.

Bonne Ă©coute !

Commentaires : voir le flux Atom ouvrir dans le navigateur

Vidéos des derniÚres conférences

Le festival Pas Sage En Seine (société, internet, liberté) a eu du 31 mai au 2 juin 2024. Les vidéos ont été publiées (annonce des vidéos April).

L'April a publiĂ© treize transcriptions au mois de mai 2024, ce qui correspond Ă  dix heures et trois minutes d’enregistrements audio ou de vidĂ©os.

La « confĂ©rence pour l'Ă©thique et la diversitĂ© dans la tech avec des crĂȘpes et du cƓur Â» MiXiT a eu lieu en avril. Les vidĂ©os ont Ă©tĂ© publiĂ©es (une sĂ©lection par FrĂ©dĂ©ric Couchet).

L'OW2con 2024 a eu lieu les 11 et 12 juin 2024. Les vidéos ne sont pas encore disponibles (voir celles de 2023). Mise à jour : les vidéos 2024 sont désormais disponibles

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    GIMP 2.10.38 est sorti

    Note : cette dĂ©pĂȘche est une traduction de l'annonce officielle de la sortie de GIMP 2.10.38 du 3 mai 2024 (en anglais).

    Cette (peut-ĂȘtre derniĂšre) version stable de GIMP 2 apporte des rĂ©troportages trĂšs demandĂ©s de GTK3, y compris une prise en charge amĂ©liorĂ©e des tablettes sous Windows. Un certain nombre de corrections de bugs et d’amĂ©liorations mineures sont Ă©galement incluses dans cette version.

    Sommaire

    Cette actualité répertorie les changements les plus notables et visibles. En particulier, nous ne répertorions pas toutes les corrections de bogues ou améliorations mineures. Pour obtenir une liste plus complÚte des modifications, vous devez vous référer au fichier NEWS ou consulter l'historique des commits.

    Nouvelles fonctionnalités et améliorations

    Prise en charge améliorée des tablettes sous Windows

    Avant cette version, GIMP prenait uniquement en charge la connexion de tablettes sous Windows via les pilotes WinTab plutÎt que les nouveaux pilotes Windows Ink. Pour cette raison, nous avons reçu un certain nombre de rapports concernant des tablettes présentant des problÚmes avec des boutons qui ne répondent pas, une sensibilité à la pression incorrecte, un mouvement de brosse retardé et des changements de position à mi-course.

    Ces problĂšmes Ă©taient dus Ă  une limitation de GTK2, car la prise en charge de Windows Ink a Ă©tĂ© implĂ©mentĂ©e dans GTK3 par Luca Bacci, contributeur de longue date. Pour cette version, Luca a eu la gentillesse de rĂ©troporter ce support vers GTK2. Vous pouvez dĂ©sormais basculer entre les pilotes WinTab et Windows Ink (s’ils sont pris en charge par votre ordinateur) dans la boĂźte de dialogue PrĂ©fĂ©rences sous les paramĂštres du pĂ©riphĂ©rique d’entrĂ©e.

    Windows Pointer Input API option in GIMP 2.10.38
    Windows Pointer Input API peut ĂȘtre changĂ© maintenant - GIMP 2.10.38

    RĂ©troportages d’autres fonctionnalitĂ©s de GTK3

    Luca a Ă©galement contribuĂ© Ă  plusieurs autres fonctionnalitĂ©s portĂ©es de GTK3 Ă  GTK2. Certaines des amĂ©liorations rĂ©troportĂ©es incluent la mise Ă  jour de la taille de la boĂźte de dialogue d’impression afin que les boutons ne soient pas coupĂ©s, la rĂ©solution de problĂšmes avec les boĂźtes de dialogue contextuelles apparaissant derriĂšre les prĂ©cĂ©dentes et plusieurs correctifs concernant la saisie au clavier.

    Ces amĂ©liorations concernent principalement Windows et sont dĂ©jĂ  incluses dans la version de dĂ©veloppement 2.99. Cependant, nous sommes trĂšs heureux que ces amĂ©liorations de la qualitĂ© de vie soient dĂ©sormais disponibles dans cette version stable de GIMP 2.10 !

    Corrections de bogues

    Crashs récents

    Deux crashs fréquemment signalés ont été corrigés. Un changement dans GLib 2.80 a exposé un bogue dans notre processus de fermeture et provoqué un crash à la sortie. Luca Bacci a une fois de plus conçu un correctif pour la version 2.10.38 et la prochaine version candidate 3.0. Un autre crash que certains utilisateurs rencontraient lors de trÚs petites sélections a également été corrigé.

    Autres correctifs

    Un certain nombre d’autres petits bugs ont Ă©tĂ© corrigĂ©s dans cette version. Parmi eux :

    • Les PNG indexĂ©s avec transparence sont dĂ©sormais exportĂ©s avec les bonnes couleurs
    • Anders Jonsson a corrigĂ© les plages d’entrĂ©e de plusieurs filtres tels que Waves et Distort
    • Le champ de personnalisation de la barre de titre prend dĂ©sormais en charge les caractĂšres UTF-8
    • Les commentaires d’images existants ne « fuient Â» plus dans les images nouvellement crĂ©Ă©es

    Statistiques de sortie

    Depuis GIMP 2.10.36 :

    • 16 rapports ont Ă©tĂ© clos comme CORRIGÉS dans la version 2.10.38
    • 9 demandes de fusion ont Ă©tĂ© exĂ©cutĂ©es
    • 81 commits ont Ă©tĂ© poussĂ©s
    • 1 nouvelle traduction a Ă©tĂ© ajoutĂ©e : kabyle
    • 16 traductions ont Ă©tĂ© mises Ă  jour : biĂ©lorusse, portugais brĂ©silien, anglais britannique, danois, gĂ©orgien, allemand, grec, hongrois, islandais, italien, norvĂ©gien nynorsk, slovĂšne, espagnol, suĂ©dois, turc, espagnol

    25 personnes ont apportĂ© des modifications ou des correctifs Ă  la base de code de GIMP 2.10.36 (l’ordre est dĂ©terminĂ© par le nombre de commits) :

    • 7 dĂ©veloppeurs : Alx Sa, Jehan, Luca Bacci, Jacob Boerema, Lukas Oberhuber, lillolollo, Øyvind KolĂ„s
    • 19 traducteurs : KolbjĂžrn StuestĂžl, Sabri Ünal, Bruce Cowan, Yuri Chornoivan, Vasil Pupkin, Anders Jonsson, Rodrigo LledĂł, JĂŒrgen Benvenuti, Sveinn Ă­ Felli, Andi Chandler, Juliano de Souza Camargo, Ekaterine Papava, BalĂĄzs Úr, Martin, Philipp Kiemle, Alan Mortensen, Dimitris Spingos, Marco Ciampa, Yacine Bouklif

    Contributions sur d’autres dĂ©pĂŽts du GIMPverse (l’ordre est dĂ©terminĂ© par le nombre de commits) :

    • La branche gimp-2-10 de gimp-macos-build (scripts de build macOS) a eu 30 commits depuis la version 2.10.36 par 2 contributeurs : Lukas Oberhuber, Bruno Lopes.
    • La version flatpak est composĂ©e de 11 commits par 3 contributeurs : Jehan, Hubert FiguiĂšre et Bruno Lopes.
    • Notre site Web principal a eu 42 commits depuis la sortie du 2.99.18 par 4 contributeurs : Jehan, Alx Sa, Andre Klapper et Lukas Oberhuber.
    • Notre site Web du dĂ©veloppeur a enregistrĂ© 34 commits depuis la version 2.99.18 par 6 contributeurs : Bruno Lopes, Jehan, Alx Sa, bootchk, Alpesh Jamgade et Robin Swift.
    • Notre documentation 2.10 a eu 35 commits depuis la version 2.10.36 par 8 contributeurs : Alan Mortensen, Anders Jonsson, Rodrigo LledĂł, Jacob Boerema, KolbjĂžrn StuestĂžl, Marco Ciampa, Andi Chandler et Vittor Paulo Vieira da Costa.

    N’oublions pas de remercier toutes les personnes qui nous aident Ă  trier dans Gitlab, rapportent des bugs et discutent avec nous d’éventuelles amĂ©liorations. Notre communautĂ© est Ă©galement profondĂ©ment reconnaissante envers les guerriers d’Internet qui gĂšrent nos diffĂ©rents canaux de discussion ou comptes de rĂ©seaux sociaux tels que Ville PĂ€tsi, Liam Quin, Michael Schumacher et Sevenix !

    Remarque : compte tenu du nombre de composants dans GIMP et son univers, et de la maniĂšre dont nous obtenons des statistiques via les scripts git, des erreurs peuvent se glisser dans ces statistiques. N’hĂ©sitez pas Ă  nous dire si nous avons manquĂ© ou mal catĂ©gorisĂ© certains contributeurs ou contributions.

    Nouvelles de l’équipe et processus de publication

    Idriss, contributeur du GSoC 2023, a rĂ©cemment obtenu un accĂšs « dĂ©veloppeur Â» sur le rĂ©fĂ©rentiel source principal, pour le travail formidable qu’il a continuĂ© depuis lors.

    Ville PĂ€tsi, contributeur de trĂšs longue date (plus de 20 ans !), sur divers sujets (design, thĂ©matisation et plus) a obtenu l’accĂšs « reporter » Ă  Gitlab pour aider au tri et Ă  l’organisation directement dans le tracker.

    Autour de GIMP

    Des nouvelles des miroirs

    Depuis nos derniĂšres nouvelles, 3 nouveaux miroirs accueillent GIMP :

    • Clarkson Open Source Institute, États-Unis
    • FCIX, Suisse
    • TomĂĄs Leite de Castro, Portugal

    Cela nous amÚne à un total de 49 miroirs répartis dans le monde.

    Les miroirs sont importants, car ils aident le projet en partageant la charge de dizaines de milliers de téléchargements quotidiens. De plus, en disposant de miroirs répartis à travers le monde, nous garantissons que tous aient un accÚs rapide au téléchargement de GIMP.

    Sponsors d’infrastructure et de matĂ©riel

    Nous avons amĂ©liorĂ© la page sponsor avec 2 sections :

    • "Infrastructure Sponsors" rĂ©pertorie les sponsors qui aident GIMP au niveau de l’infrastructure :

      • CircleCI et MacStadium rendent possible notre plateforme d’intĂ©gration continue macOS.
      • Arm Ltd. sponsorise et administre plusieurs exĂ©cuteurs « Aarch64 Â» sur Windows pour notre version ARM 64 bits pour Windows ; et Microsoft avait offert des frais uniques pour leur Microsoft Store.
    • "Hardware Sponsors" rĂ©pertorie les sponsors qui ont fait don de matĂ©riel aux contributeurs pour les aider dans leur travail de dĂ©veloppement :

      • Arm Ltd. a rĂ©cemment fait don d’un kit de dĂ©veloppement Windows 2023 pour prendre en charge notre rĂ©cent support Aarch64/Windows.
      • Purism a fait don d’un Librem Mini en 2021.

    Télécharger GIMP 2.10.38

    Vous trouverez toutes nos builds officielles sur le site officiel de GIMP (gimp.org) :

    • Flatpaks Linux pour x86 et ARM (64 bits)
    • Installateur Windows universel pour x86 (32 et 64 bits) et pour ARM (64 bits)
    • Paquets macOS DMG pour le matĂ©riel Intel
    • Paquets macOS DMG pour le matĂ©riel Apple Silicon

    D’autres paquets rĂ©alisĂ©s par des tiers devraient Ă©videmment suivre (paquets des distributions Linux ou *BSD, etc.).

    Et ensuite ?

    C’est clairement l’une des plus petites versions de la sĂ©rie 2.10, et elle pourrait ĂȘtre notre derniĂšre. Nous verrons, mĂȘme si nous savons aussi que certaines personnes restent bloquĂ©es plus longtemps que d’autres sur des sĂ©ries plus anciennes (en particulier lors de l’utilisation des distributions Long Term Support (LTS) de systĂšmes d’exploitation de logiciels libres), si nous pourrions donc faire (si nous pensons que c’est nĂ©cessaire), une version 2.10.40 avec des corrections de bogues juste avant ou juste aprĂšs la sortie de GIMP 3.0.0, en guise de conclusion.

    Dans tous les cas, nous arrĂȘtons dĂ©sormais le rĂ©troportage des fonctionnalitĂ©s de la sĂ©rie 2.10. Ces amĂ©liorations de la prise en charge des tablettes graphiques pour Windows sont suffisamment importantes pour qu’elles aient dĂ» ĂȘtre intĂ©grĂ©es ; mais Ă  partir de maintenant, nous voulons nous concentrer uniquement sur la sortie de GIMP 3.0.0.

    Maintenant, vous vous demandez peut-ĂȘtre quand cela se produira-t-il ? TrĂšs bientĂŽt ! Nous sommes sur le dernier sprint vers la release candidate. Cela inclut de nombreuses corrections de bugs, mais Ă©galement des modifications de l’API en cours. Nous vous tiendrons au courant !

    N’oubliez pas que vous pouvez faire un don et financer personnellement les dĂ©veloppeurs de GIMP, comme moyen de redonner et accĂ©lĂ©rer le dĂ©veloppement de GIMP. L’engagement communautaire permet au projet de se renforcer ! đŸ’ȘđŸ„ł

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    Sortie de GIMP 2.99.18 (version de développement)

    Note : cette dĂ©pĂȘche est une traduction de l'annonce officielle de la sortie de GIMP 2.99.18 du 21 fĂ©vrier 2024 (en anglais).

    Voici enfin la derniĂšre version de dĂ©veloppement avant GIMP 3 ! Bien que la sortie de la version 2.99.18 soit un peu en retard par rapport au planning espĂ©rĂ©, celle-ci contient un certain nombre de fonctionnalitĂ©s et d'amĂ©liorations que nous sommes ravis de pouvoir partager avec vous.

    ⚠ â˜ąïž Nous vous rappelons qu'une version de dĂ©veloppement sert Ă  prĂ©senter les travaux en cours, mais vous permet aussi de dĂ©tecter et signaler les problĂšmes au plus tĂŽt. En d'autres termes, cette version est instable et nous ne recommandons pas son usage en production. Utilisez-lĂ  parce que vous voulez aider Ă  amĂ©liorer GIMP en signalant des bogues.

    En particulier, cette version 2.99.18 est peut-ĂȘtre l'une des versions les plus instables de la sĂ©rie 2.99 Ă  cause du projet « space invasion Â» (NDT : « invasion venue de l'espace Â», un jeu de mots avec l'anglais colorspace signifiant espace de couleurs). Cela est parfaitement attendu et normal. ⚠ â˜ąïž

      Sommaire

      Cette dĂ©pĂȘche prĂ©sente les changements les plus notables et les plus visibles. En particulier, elle ne contient pas de liste exhaustive des correctifs de bogues ou des amĂ©liorations un peu moins importantes. Pour une liste plus complĂšte des changements, nous vous invitons Ă  consulter le fichier NEWS ou Ă  jeter un coup d’Ɠil Ă  l'historique du dĂ©pĂŽt Git.

      L'invasion de l'espace (des couleurs) !

      Nous avons travaillĂ© dur sur le projet Space Invasion, qui est — comme vous vous en rappelez peut-ĂȘtre — le nom de code que nous avons donnĂ© au projet visant Ă  rendre GIMP plus correct en ce qui concerne les couleurs.

      Ces derniers temps, nous avons réalisé le portage des anciennes structures de couleurs utilisées en interne (GimpRGB, GimpCMYK, GimpHSV
) dont nous nous servions pour stocker les informations de couleurs vers GeglColor. Cet objet générique peut contenir n'importe quelle donnée de couleur, quel que soit le modÚle colorimétrique, la précision ou l'espace, du moment que ceux-ci sont pris en charge par babl, notre moteur pour l'encodage des pixels.

      En ce qui concerne la justesse des couleurs, cela signifie que nous ferons maintenant les conversions de couleurs uniquement si cela est nĂ©cessaire (conversions Ă  la derniĂšre minute), ce qui permettra de ne pas perdre d'information lorsque cela peut ĂȘtre Ă©vitĂ©. Par exemple, imaginons que vous utilisiez la pipette Ă  couleurs sur une image : si nous convertissions cette couleur vers un format intermĂ©diaire avant de l'utiliser sur une autre image (qui peut avoir le mĂȘme format de couleurs ou un format diffĂ©rent), deux conversions auraient lieu. Cela augmente les possibilitĂ©s de perte de prĂ©cision. Ce problĂšme est encore plus flagrant si les formats d'entrĂ©e et de sortie sont les mĂȘmes (autrement dit, lorsqu'aucune conversion n'est nĂ©cessaire). Et cela sera encore plus problĂ©matique lorsque le modĂšle CMJN sera pris en charge nativement (nous voulons Ă©viter Ă  tout prix de faire un aller-retour entre un format intermĂ©diaire et le CMJN, qui n'a pas de relation bijective avec la plupart des autres modĂšles de couleurs, mĂȘme en travaillant sans bornes et en ignorant les problĂšmes de prĂ©cision).

      DĂ©finition d'un espace non bornĂ© (ajout par rapport Ă  la dĂ©pĂȘche originelle) : lorsque la prĂ©cision est entiĂšre, l'espace est toujours bornĂ© (par exemple [0-255] en 8-bit). Par contre, en flottant, oĂč l'espace de travail standard est [0, 1], on peut dĂ©cider d'accepter les valeurs nĂ©gatives et supĂ©rieures Ă  1. Cela rend les conversions entre beaucoup d'espaces de couleurs bijectives, aux erreurs de prĂ©cisions prĂšs. Notamment, les conversions entre deux espaces RVB, ou mĂȘme un espace RVB et divers autres modĂšles, deviennent bijectives. Ce n'est pas le cas entre RVB et CMJN, mĂȘme en espace de couleurs infini.

      Nous sommes Ă©galement en train de migrer le stockage des donnĂ©es de couleur vers ce type d'objet gĂ©nĂ©rique. Cela signifie entre autres que les palettes de couleurs pourront comporter des couleurs au format CMJN, CIELAB ou bien encore dans tout autre modĂšle pris en charge (et pas seulement ces couleurs aprĂšs une Ă©tape de conversion vers le sRVB non bornĂ© - « unbounded sRGB Â»).

      Une consĂ©quence pour la maintenance logicielle est qu'il sera beaucoup plus facile de gĂ©rer les conversions de couleurs au sein de notre code, Ă©tant donnĂ© que cette structure comprend Ă  la fois les donnĂ©es et leur « signification Â». Cela rend la gestion des couleurs beaucoup moins susceptible d'introduire des bogues par rapport Ă  l'approche prĂ©cĂ©dente, qui consistait Ă  faire suivre les deux types d'information sĂ©parĂ©ment.

      Finalement, nous travaillons Ă  faire apparaĂźtre l'information concernant l'espace de couleurs Ă  plusieurs endroits de l'interface oĂč cela est pertinent, par exemple lorsque des donnĂ©es RVB, CMJN, TSL ou TSV sont affichĂ©es ou peuvent ĂȘtre choisies. Les valeurs brutes dans ces modĂšles de couleurs en l'absence de la connaissance de l'espace de couleurs associĂ© n'ont pratiquement aucun sens. L'affichage dans l'interface de valeurs RVB sans autre prĂ©cision est un reliquat du passĂ©, lorsque cela signifait le plus souvent sRVB. Cela n'est plus vrai dans un contexte graphique moderne et l'interface devrait ĂȘtre claire Ă  ce sujet.

      La vidĂ©o ci-dessous montre quelques aspects de ce travail sur l'interface, par exemple le fait que les modĂšles RVB, TSV ou CMJN affichent Ă  tout instant l'espace de couleurs dans lequel les valeurs sont considĂ©rĂ©es (ce qui trĂšs souvent correspond au nom du profil ICC). Cela est dĂ©jĂ  fait pour la pipette Ă  couleurs, les Ă©chantillons de couleurs, l'ancrable des couleurs de premier/d'arriĂšre plan, la boĂźte de dialogue « Changer la couleur de premier/d'arriĂšre plan Â», ainsi qu'Ă  d'autres endroits.

      Non seulement cela, mais lorsque les gens sĂ©lectionnent un profil d’épreuve sur Ă©cran et activent l'Ă©preuve sur Ă©cran (par exemple grĂące Ă  la nouvelle bascule de simulation qui a Ă©tĂ© ajoutĂ©e dans GIMP 2.99.12), nous afficherons Ă©galement non seulement la zone hors gamme de l'espace colorimĂ©trique de l'image, mais Ă©galement celle de l'espace d’épreuve.

      Invasion de l'espace dans l'interface - GIMP 2.99.18
      Invasion de l'espace dans l'interface - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

      Avertissement trĂšs important : il s'agit encore une fois d'un portage Ă©norme dans notre base de code, ce qui a impactĂ© littĂ©ralement des milliers de lignes de code. Ce travail est inachevĂ© mais il devra ĂȘtre terminĂ© avant la premiĂšre version candidate. Des instabilitĂ©s ou des bugs sont Ă  prĂ©voir dans cette mise Ă  jour donc si vous rencontrez un problĂšme, nous recommandons de le rapporter.

      Amélioration des algorithmes de couleur

      Øyvind KolÄs a amélioré quelques algorithmes internes :

      • Les pixels achromatiques de l'outil Teinte-Saturation sont dĂ©sormais un cas spĂ©cial afin que les pixels en niveaux de gris (saturation de 0) ne soient modifiĂ©s que par le rĂ©glage principal, pas par le rĂ©glage rouge.
      • Les dĂ©gradĂ©s en niveaux de gris restent dĂ©sormais achromatiques mĂȘme avec "Tramage" cochĂ© dans l'outil DĂ©gradĂ©.

      Au fur et à mesure que le projet space invasion avance, obtenir des résultats cohérents devient plus facile dans divers algorithmes liés aux couleurs, nous permettant ainsi de découvrir rapidement les problÚmes et de les résoudre.

      Édition non-destructive, premiùre mouture

      Un domaine dans lequel nous sommes « en avance sur le planning Â» est l'Ă©dition non destructive, qui Ă©tait trĂšs demandĂ©e ! Les fondations de ces fonctionnalitĂ©s ont Ă©tĂ© mises en place par de nombreux dĂ©veloppeurs au cours de nombreuses annĂ©es, depuis l'introduction de GEGL dans GIMP. Bien qu'initialement prĂ©vue pour la feuille de route de la version 3.2, une premiĂšre implĂ©mentation a vu le jour en tant que continuation d'un projet Google Summer of Code. Si vous n'ĂȘtes pas familier avec ce terme, « Ă©dition non destructive Â» implique notamment que des effets de filtres tels qu'un effet de flou sont stockĂ©s sĂ©parĂ©ment des pixels du calque. Cela signifie que si vous dĂ©sirez plus tard modifier un rĂ©glage, rĂ©arranger ou mĂȘme retirer le filtre, vous pouvez le faire trĂšs facilement sans affecter le reste de l'image. Jusqu'Ă  prĂ©sent, GIMP utilisait une procĂ©dure d'Ă©dition destructive oĂč les effets Ă©taient immĂ©diatement appliquĂ©s sur le calque, c'est donc un changement majeur !

      Toute opĂ©ration GEGL munie d'une interface graphique est dĂ©sormais appliquĂ©e aux calques de maniĂšre non destructive. (Les effets non destructifs pour les masques de calques et les canaux sont prĂ©vus pour les versions ultĂ©rieures.) Cela inclut les greffons GEGL tiers et les opĂ©rations personnalisĂ©es crĂ©Ă©es avec notre outil GEGL Graph. Ces effets peuvent ĂȘtre sauvegardĂ©s et chargĂ©s via les fichiers de projet .xcf, bien que toutes les propriĂ©tĂ©s GEGL ne soient pas encore prises en charge dans la version actuelle.

      Une fois qu'un filtre a Ă©tĂ© appliquĂ©, vous pouvez continuer Ă  interagir avec lui en cliquant sur l'icĂŽne de filtre dans l'ancrable des calques. Cela ouvrira une boĂźte de dialogue montrant tous les filtres actuellement appliquĂ©s au calque. À partir de lĂ , vous pouvez alterner l'Ă©tat de visibilitĂ© du filtre, modifier ses rĂ©glages, rĂ©ordonner les filtres et retirer les effets un Ă  un. Vous pouvez aussi fusionner tous les filtres et les appliquer Ă  l'image pour retrouver une procĂ©dure d'Ă©dition destructive.

      Effets non destructifs - GIMP 2.99.18
      Effets non destructifs - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

      Notez bien que tout cela est seulement une premiĂšre implĂ©mentation, et beaucoup de travail reste Ă  faire pour disposer d'une Ă©dition non destructive complĂšte et riche. Nous allons continuer Ă  affiner les fonctionnalitĂ©s existantes pour la sortie de la version 3.0 en nous basant sur les tests et les retours des utilisateurs, et nous les dĂ©velopperons davantage par la suite. L'interface elle-mĂȘme ne correspond pas Ă  notre vision idĂ©ale de cette fonctionnalitĂ©, et un premier jet de spĂ©cifications a Ă©tĂ© Ă©crit pour dĂ©finir un processus d'Ă©dition bien plus intĂ©grĂ©.

      La capture d'Ă©cran ci-dessous est une maquette rĂ©alisĂ©e Ă  partir de ces premiĂšres spĂ©cifications. Elle montre les effets de calque placĂ©s au sein de la liste principale des calques, partageant les mĂȘmes boutons « Ć“il Â» et « cadenas Â», mais Ă©galement avec leurs propres masques faciles Ă  Ă©diter :

      Maquette des spécifications pour l'application non-destructive d'effets de calque

      Maquette des spécifications : les effets de calque sont visibles directement dans la liste des calques, avec leur propres masques

      NĂ©anmoins, l'implĂ©mentation de cette nouvelle interface sera un dĂ©fi en elle-mĂȘme et nous avons donc dĂ©cidĂ© de la remettre Ă  aprĂšs la sortie de GIMP 3 et de proposer cette premiĂšre mouture en premier lieu.

      N'hĂ©sitez pas Ă  partager vos opinions dans les forums de discussion et dans le suivi des incidents !

      Amélioration de la prise en charge des polices de caractÚres

      Idriss Fekir, un autre étudiant du GSoC 2023, a travaillé avec Liam Quinn, un développeur de longue date, sur l'amélioration de la prise en charge des polices de caractÚres par GIMP. Une grande partie de ce travail concerne le code interne de GIMP afin d'améliorer sa capacité à gérer les futures mises à jour de polices et de texte. Certains changements plus visibles sont par exemple :

      • GIMP n'a plus besoin que les noms des polices de caractĂšres soient uniques pour pouvoir les distinguer les unes des autres. Cela signifie qu'il n'ajoutera plus « #1 Â», « #2 Â» et ainsi de suite, mais gardera Ă  prĂ©sent les noms originaux dans la liste de sĂ©lection des polices. MalgrĂ© des noms apparemment identiques, deux polices avec le mĂȘme nom fonctionneront dĂ©sormais correctement.
      • GIMP peut maintenant charger des polices avec des styles personnalisĂ©s (en contournant l'utilisation de Pango qui n'est pas capable de les charger).
      • Nous pouvons Ă  prĂ©sent charger davantage de types de polices qu'auparavant. Si jamais nous ne prenons pas encore en charge une police donnĂ©e (ou si elle est inexistante), nous sommes mieux Ă  mĂȘme de le dĂ©tecter et nous pouvons nous replier sur une police par dĂ©faut. Cela permet d'amĂ©liorer la prise en charge d'un fichier .xcf crĂ©Ă© sur un autre ordinateur avec diffĂ©rentes polices disponibles.
      • Sous Windows, nous forçons le moteur Pango Ă  toujours utiliser l'anticrĂ©nelage. Cela augmente la lisibilitĂ© du texte des menus sous ce systĂšme d'exploitation, en particulier lorsqu'un thĂšme sombre est utilisĂ©.
      • Le code pour la sauvegarde au format XCF stocke dĂ©sormais les informations concernant les polices de maniĂšre bien plus prĂ©cise, ce qui aide Ă  Ă©viter de charger une police incorrecte lors de la rĂ©ouverture d'un fichier XCF.
      • L'alignement du texte dans les calques de texte pour les langues Ă©crites de la droite vers la gauche est maintenant plus cohĂ©rent avec la maniĂšre dont cela fonctionne dans d'autres programmes (par exemple LibreOffice et Scribus).

      Ces changements sont beaucoup moins voyants que certaines autres fonctionnalités et pourraient sembler moins importants, mais ils constituent en fait les fondations qui permettront d'avoir une gestion du texte bien plus fiable dans GIMP. Notre vision pour le futur est d'avoir une édition de texte plus simple tout en étant plus puissante et plus riche en fonctionnalités (en particulier les fonctionnalités OpenType qui sont quelques-unes des améliorations majeures que nous espérons ajouter un jour ou l'autre).

      Expansion automatique des calques

      Le troisiĂšme projet GSoC de l'Ă©tĂ© dernier par l'Ă©tudiant Shubham Daule a apportĂ© une fonctionnalitĂ© demandĂ©e depuis longtemps : l'expansion automatique de calques ! Les outils de peinture ont dĂ©sormais une option supplĂ©mentaire « Ă‰tendre les calques Â». Lorsque cette case est cochĂ©e, peindre au-delĂ  des limites des calques les fera s'Ă©tendre automatiquement afin que vous n'ayez pas Ă  gĂ©rer vous-mĂȘme la taille du calque. Si vous souhaitez Ă©tendre le calque au-delĂ  de la taille actuelle du canevas, vous devrez Ă©galement cocher l'option « Afficher tout Â» dans le menu Affichage.

      Calques à expansion automatique - démonstration de GIMP 2.99.18
      Calques à expansion automatique - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

      L'option d'expansion des calques comporte Ă©galement des paramĂštres supplĂ©mentaires lorsqu'elle est sĂ©lectionnĂ©e. Vous pouvez dĂ©cider dans quelle mesure vous souhaitez que les limites du calque s'Ă©tendent chaque fois que le pinceau les atteint. Il existe Ă©galement des options pour spĂ©cifier comment les nouvelles zones du calque et du masque de calque doivent ĂȘtre remplies une fois Ă©tendues.

      Nouvelles options d'alignement

      Le nouveau contributeur mr. fantastic a dĂ©veloppĂ© deux nouvelles options pour aligner les calques sur le canevas. Avec « Snap to Bounding Boxes Â» (« Aligner sur les boĂźtes englobantes Â») activĂ©, des guides dynamiques s'afficheront dĂ©sormais pour vous montrer quand le calque que vous dĂ©placez est alignĂ© avec le centre ou les cĂŽtĂ©s des autres. Le calque actif s'alignera Ă©galement sur ces bordures pour vous aider Ă  les organiser correctement. La deuxiĂšme option, « Snap to Equidistance Â» (« Aligner Ă  Ă©quidistance Â»), vous permet un alignement entre trois calques Ă©quidistants les uns des autres.

      Aligner sur les boßtes englobantes et Aligner à équidistance - démonstration de GIMP 2.99.18
      Nouvelles options d'alignement automatique - GIMP 2.99.18 (cliquez sur l'image pour voir la vidéo sur le compte Peertube de GIMP)

      ThĂšmes

      Nous avons continuĂ© Ă  amĂ©liorer l'interface utilisateur et le style de cette version. L’une des amĂ©liorations les plus importantes concernait la gestion des « fuites de thĂšmes systĂšme Â». Il existe des styles qui n'ont pas Ă©tĂ© spĂ©cifiquement dĂ©finis dans nos thĂšmes, donnant ainsi l'opportunitĂ© aux rĂšgles de style du thĂšme systĂšme de "fuiter" de maniĂšre conflictuelle dans notre interface. Avec l’aide et les retours de plusieurs contributeurs et utilisateurs, nous avons beaucoup progressĂ© dans la dĂ©finition de ces styles afin que tous aient une expĂ©rience cohĂ©rente !

      RĂ©cemment, Jehan a travaillĂ© sur la rĂ©organisation et la simplification de notre systĂšme de thĂšmes. Dans les versions de dĂ©veloppement prĂ©cĂ©dentes, nous avions cinq thĂšmes diffĂ©rents : Par DĂ©faut, Gris, SystĂšme, Plus Sombre et Compact (chacun avec des options claires et sombres). Ceux-ci ont Ă©tĂ© simplifiĂ©s dans le thĂšme SystĂšme et un seul thĂšme par dĂ©faut avec trois Ă©tats possibles : clair, foncĂ© et gris. De mĂȘme, nos quatre thĂšmes d'icĂŽnes distincts ont Ă©tĂ© condensĂ©s dans l'ensemble Legacy et un thĂšme d'icĂŽns par dĂ©faut avec des variantes couleur et symbolique. Nous pensons que ces changements rĂ©duiront la confusion des utilisateurs et leur permettront de trouver plus facilement leur apparence d'interface prĂ©fĂ©rĂ©e.

      De plus, sous Windows, la barre de titre principale (et la plupart des barres de titre des boßtes de dialogue) s'ajuste désormais au mode clair ou sombre en fonction du thÚme sélectionné.

      BoĂźte de dialogue de bienvenue

      La boßte de dialogue de bienvenue a été étendue pour fournir un accÚs rapide à un certain nombre de fonctionnalités et d'options utiles. Elle comporte ainsi quatre nouvelles sections :

      • Personnaliser : Plusieurs options de personnalisation nĂ©cessitent de fouiller dans la boĂźte de dialogue des PrĂ©fĂ©rences pour ĂȘtre modifiĂ©es. À prĂ©sent, vous pouvez facilement modifier les thĂšmes de couleurs et d'icĂŽnes, la langue et la taille de la police de l'interface utilisateur, ainsi que certains rĂ©glages en fonction du systĂšme d'exploitation.
      • CrĂ©er : Cette section affiche les huit images que vous avez ouvertes en dernier et vous permet de les rouvrir rapidement. Des boutons pour crĂ©er une nouvelle image ou pour en charger une existante sont Ă©galement prĂ©sents. À l'instar d'autres programmes, vous pouvez demander Ă  ce que cet Ă©cran apparaisse automatiquement au dĂ©marrage de GIMP pour un accĂšs direct Ă  ces fonctionnalitĂ©s.
      • Contribuer : Nous avons rĂ©uni ici quelques-unes des nombreuses façons dont vous pouvez participer au dĂ©veloppement de GIMP. Cette section comporte des liens pour le signalement de bogues, pour Ă©crire du code, pour aider aux traductions ou pour faire un don.
      • Notes de version : PrĂ©cĂ©demment, le lien vers ces notes Ă©taient affichĂ©es dans la moitiĂ© infĂ©rieure de la boĂźte de dialogue de bienvenue. À prĂ©sent, nous avons un onglet entier dĂ©diĂ© Ă  ces notes pour une lecture plus aisĂ©e.

      Formats de fichiers

      Comme cela était déjà le cas avec les versions précédentes, nous avons amélioré la prise en charge de formats de fichiers déjà existants et nous avons ajouté la prise en charge de l'importation et de l'exportation pour de nouveaux formats.

      DDS

      Stayd, un nouveau contributeur, a travaillĂ© avec notre dĂ©veloppeur Jacob Boerema pour apporter de nombreuses amĂ©liorations au greffon DDS. Pour commencer, les fonctions d'importation ont Ă©tĂ© Ă©crites afin d'ĂȘtre plus simples et plus faciles Ă  Ă©tendre dans le futur. Les mises Ă  jour supplĂ©mentaires incluent Ă©galement :

      • Le chargement d'images DDS RVBA 16 et 32 bits/canal est maintenant possible.
      • Le filtre cubique Catmull-Rom a Ă©tĂ© ajoutĂ© pour la gĂ©nĂ©ration de mipmaps, et tous les calculs pour gĂ©nĂ©rer les mipmaps sont effectuĂ©s avec une prĂ©cision de 32 bits.
      • Les images DDS aux formats R8G8, R16 et R16G16 peuvent maintenant Ă©galement ĂȘtre chargĂ©es.
      • Une option pour renverser verticalement les images DDS lors de l'importation a Ă©tĂ© ajoutĂ©e pour faire Ă©cho Ă  l'option d'exportation correspondante, Ă©tant donnĂ© que certaines images de jeux stockent leurs donnĂ©es de cette maniĂšre.

      GIF

      Par le passé, écraser un fichier GIF à la sauvegarde (plutÎt que de l'exporter) le convertissait systématiquement en un fichier avec une seule image. Désormais nous vérifions lors du chargement si le fichier GIF est une animation, de maniÚre à également sauvegarder une animation lors de l'écrasement.

      HEIF et JPEG-XL

      Les deux greffons utilisent maintenant leurs bibliothÚques respectives (libheif et libjxl) pour le chargement des métadonnées. Cela nous a permis de retirer notre code maison chargé d'interpréter l'orientation des images et d'utiliser à la place les informations fournies par ces bibliothÚques.

      OpenEXR

      Le format OpenEXR permet aux canaux d'avoir des noms personnalisés, outre le type de couleur. Dans ce cas, nous considérons maintenant toute image à un seul canal avec un nom non conventionnel comme étant en niveaux de gris. Lors de l'importation, nous affichons une notification afin que les utilisateurs soient prévenus de cette conversion.

      PDF

      L'option d'exportation « Calques en tant que pages Â» fonctionne maintenant mĂȘme s'il y a un seul groupe de calques. Auparavant, cette option n'Ă©tait pas disponible car le greffon vĂ©rifiait seulement s'il y avait plus d'un « calque Â» sans examiner s'il s'agissait d'un groupe de calques avec de multiples sous-calques.

      PNG

      Les fragments de fichiers PNG qui sont « copiables sans risque Â» (« safe-to-copy chunks Â») sont maintenant prĂ©servĂ©s lors de l'importation et inclus dans l'image exportĂ©e. Un autre souci qui existait lors de l'exportation de PNGs indexĂ©s avec transparence (et qui nous avait Ă©tĂ© souvent signalĂ©) a Ă©tĂ© rĂ©solu. DĂ©sormais les couleurs indexĂ©es devraient ĂȘtre affichĂ©es correctement aprĂšs exportation.

      PSD

      Jacob Boerema a poursuivi son travail d'amélioration du greffon PSD. En plus d'avoir résolu des bogues, par exemple dans l'ordre des calques lors de l'importation, il a aussi clarifié l'avertissement présenté lors de l'exportation et concernant la compatibilité des modes de calques entre GIMP et Photoshop.

      PSP

      Le greffon Paintshop Pro peut maintenant importer davantage de caractéristiques depuis un fichier projet, comme par exemple le profil de couleurs ICC, les guides, les grilles, et la sélection active lors de la sauvegarde. Les failles de sécurité ZDI-CAN-22096 et ZDI-CAN-22097 ont également été corrigées dans cette version.

      Nouveaux formats d'image pris en charge : Farbfeld, Esm Software PIX, HEJ2

      Nous avons rĂ©cemment ajoutĂ© la prise en charge de l'importation et de l'exportation pour le format Farbfeld, un format d'image sRVB conçu pour ĂȘtre facile Ă  lire, Ă  envoyer dans des pipes et Ă  compresser avec des outils tiers.

      Nous avons aussi ajouté la prise en charge de l'importation seule pour les nouveaux formats suivants :

      • Esm Software PIX : Un format JPEG modifiĂ© utilisĂ© exclusivement par l'entreprise Esm Software pour stocker leurs images propres. Cela a Ă©tĂ© implementĂ© en rĂ©ponse Ă  un signalement de bogue qui avait confondu ce format avec le format Alias PIX que nous prenions dĂ©jĂ  en charge.
      • HEJ2 : Un ajout Ă  notre greffon HEIF dĂ©jĂ  existant fourni par Daniel NovomeskĂœ qui permet d'importer des images JPEG 2000 compressĂ©es.

      Nouveau format de palette pris en charge : Swatchbooker

      Swatchbooker est un programme libre de crĂ©ation et de conversion de palettes de couleurs qui prend en charge de nombreux formats. Bien que le programme lui-mĂȘme n'ait pas Ă©tĂ© mis Ă  jour depuis de nombreuses annĂ©es, son format de palette propre .sbz est le plus complet de tous ceux que nous prenons en charge actuellement. Parmi ses nombreuses fonctionnalitĂ©s, on peut citer la possibilitĂ© de dĂ©finir des couleurs dans plusieurs modĂšles de couleurs pour chaque entrĂ©e d'une palette, des noms et des descriptions rĂ©gionalisables, et la prise en charge de profils de couleurs ICC diffĂ©rents pour chaque entrĂ©e.

      Via notre travail sur la prise en charge de son importation, nous avons pu fournir des informations qui ont conduit Ă  un correctif de bogue dans la prise en charge de Swatchbooker par Krita. C'est toujours sympa quand des projets peuvent collaborer et s'entraider !

      Interactions avec les pads de tablettes graphiques sous Wayland

      Carlos Garnacho, un contributeur GNOME de longue date, a ajoutĂ© la prise en charge de l'interaction directe des boutons de tablettes graphiques (pad) avec GIMP. Quand une tablette est branchĂ©e, vous pouvez dĂ©sormais assigner diffĂ©rentes actions aux contrĂŽles de la tablette depuis la boĂźte de dialogue « PĂ©riphĂ©riques d'entrĂ©e Â» dans le menu Édition.

      Assigner des actions aux boutons d'une tablette graphique
      Assigner des actions aux boutons d'une tablette graphique - GIMP 2.99.18

      Ce travail a aussi impliqué le portage de fonctionnalités vers GTK 3, la boßte à outils utilisée par GIMP pour son interface graphique. Notez que cette fonctionnalité est seulement disponible sous Wayland pour le moment.

      Mise Ă  jour de l'API

      L'interface de programmation d'application (API), destinĂ©e aux crĂ©ateurs de greffons, est rĂ©guliĂšrement retravaillĂ©e dans le cadre de la refonte de GIMP 3. Une partie de ce travail est de migrer l'API vers l'utilisation de GeglColor lorsque les couleurs sont impliquĂ©es, ce qui entre dans le cadre plus gĂ©nĂ©ral du projet Space Invasion. MalgrĂ© tout, ce n’est qu’une petite partie de l’ensemble des amĂ©liorations de l’API.

      Nous nous orientons Ă©galement vers plus de classes pour reprĂ©senter les diffĂ©rentes ressources gĂ©rĂ©es par GIMP (pinceaux, polices, motifs, etc.) au lieu de les reprĂ©senter uniquement par des noms (ce qui Ă©tait une limitation historique alors qu'il est tout Ă  fait possible Ă  2 crĂ©ateurs de ressources de choisir le mĂȘme nom et le fait est que nous voyons de tels cas dans la nature — par exemple, 2 polices crĂ©Ă©es indĂ©pendamment peuvent avoir le mĂȘme nom).

      Un autre grand pas consiste à remplacer le GimpValueArray représentant les arguments ordonnés d'une procédure d'un greffon par un GimpProcedureConfig qui contient les arguments par nom plutÎt que par ordre. Cela permet une utilisation beaucoup plus sémantique des procédures de greffon (surtout lorsqu'elles ont une longue liste d'arguments) et facilitera également l'amélioration des greffons à l'avenir, avec des arguments nouveaux ou réorganisés sans créer de nouvelles procédures, car l'ordre et le nombre des arguments comptent beaucoup moins. Cela signifie que l'ajout de nouveaux arguments dans le futur ne brisera plus les scripts déjà existants qui dépendaient des versions antérieures de ces greffons (les auteurs de greffons devront toujours choisir des valeurs par défaut appropriées pour les nouveaux arguments afin que cela soit vrai, bien sûr).

      En parallĂšle, nous continuons d'amĂ©liorer la capacitĂ© de crĂ©ation automatique d'interfaces graphiques offerte aux greffons, rendant la crĂ©ation de boĂźtes de dialogue plus simple que jamais. Cela inclut (parmi de nombreuses autres amĂ©liorations) un nouveau type d'argument de procĂ©dure nommĂ© GimpChoice qui est une liste de choix sous forme de chaĂźnes de caractĂšres qui peut ĂȘtre prĂ©sentĂ©e aux crĂ©ateurs sous forme de widgets de liste dĂ©roulante dans la boĂźte de dialogue de votre greffon.

      Nous prĂ©voyons d'Ă©crire et de publier un didacticiel pour les rĂ©dacteurs de greffons dans la section DĂ©veloppement de ressources de notre site Web pour dĂ©veloppeur en mĂȘme temps que la sortie de GIMP 3, ou peu de temps aprĂšs.

      GEGL et babl

      Cette version de GIMP est accompagnée de nouvelles versions de GEGL et babl, qui contribuent toutes deux au projet (Color) Space Invasion.

      babl 0.1.108 apporte une nouvelle fonction babl_space_is_rgb pour nous aider à confirmer directement qu'un espace colorimétrique est RVB (plutÎt que de faire plusieurs tests pour voir s'il n'est pas CMJN ou niveaux de gris). Plusieurs améliorations ont également été apportées au processus de compilation et à l'outil d'interface de ligne de commande de babl.

      GEGL 0.4.48 fournit plusieurs mises à jour de l'objet GeglColor qui prend désormais en charge une grande partie des opérations de couleur de GIMP. Les améliorations spécifiques incluent la possibilité d'obtenir et de définir directement les valeurs de couleur CMJN, ainsi que l'attribution de l'espace colorimétrique lors de la définition des couleurs RVB(A).

      Un crash dans le filtre gegl:voroni existant a Ă©tĂ© corrigĂ©, et un bogue de longue date avec le filtre gegl:dropshadow qui empĂȘchait l'effet de rĂ©trĂ©cir a Ă©galement Ă©tĂ© corrigĂ©.

      Enfin, un nouveau filtre gegl:shuffle-search a été ajouté à l'atelier. Il mélange les pixels voisins pour créer un effet de tramage plus optimisé.

      Statistiques de sortie

      Hormis la premiÚre version de la série (2.99.2), GIMP 2.99.18 est clairement la plus grosse mise à jour à bien des égards. Depuis la version 2.99.16 :

      • 238 rapports ont Ă©tĂ© clĂŽturĂ©s comme CORRIGÉS.
      • 201 demandes de fusion ont Ă©tĂ© acceptĂ©es.
      • 1358 commits ont Ă©tĂ© poussĂ©s.
      • 26 traductions ont Ă©tĂ© mises Ă  jour : allemand, basque, biĂ©lorusse, portugais brĂ©silien, bulgare, catalan, chinois (Chine), danois, espagnol, espĂ©ranto, finnois, gĂ©orgien, grec, hongrois, islandais, italien, lituanien, norvĂ©gien nynorsk, persan, polonais, russe , slovĂšne, suĂ©dois, turc, ukrainien, vietnamien.

      60 personnes ont apporté des modifications ou des correctifs à la base de code de GIMP 2.99.18 (l'ordre est déterminé par le nombre de commits; certaines personnes apparaissent dans plusieurs groupes) :

      • 23 dĂ©veloppeurs pour le code principal : Jehan, Alx Sa, Shubham, Jacob Boerema, Idriss Fekir, bootchk, Anders Jonsson, Carlos Garnacho, mr.fantastic, Stanislav Grinkov, lillolollo, Øyvind KolĂ„s, Sabri Ünal, programmer_ceds, Lukas Oberhuber, programmer-ceds, James Golden, Luca Bacci, Massimo Valentini, Niels De Graef, Zander Brown, psykose, sonia.
      • 17 dĂ©veloppeurs de greffons ou de modules : Jehan, Alx Sa, Jacob Boerema, bootchk, Anders Jonsson, Stayd, Zander Brown, Bruno Lopes, Daniel NovomeskĂœ, Sabri Ünal, programmer_ceds, Kamil Burda, Mark, Michael Schumacher, Stanislav Grinkov, programmer-ceds, sonia.
      • 31 traducteurs : Yuri Chornoivan, Martin, Ekaterine Papava, Luming Zh, Sabri Ünal, Anders Jonsson, Rodrigo LledĂł, Jordi Mas, Alan Mortensen, Vasil Pupkin, Asier Sarasua Garmendia, KolbjĂžrn StuestĂžl, Boyuan Yang, VĂ­ttor Paulo Vieira da Costa, dimspingos, Alexander Shopov, Alexandre Prokoudine, Aurimas Černius, BalĂĄzs Úr, Marco Ciampa, Sveinn Ă­ Felli, Danial Behzadi, Ngọc QuĂąn Tráș§n, JĂŒrgen Benvenuti, Piotr Drąg, Timo Jyrinki, Andre Klapper, Kristjan SCHMIDT, MohammadSaleh Kamyab, Rafael Fontenelle, Tim Sabsch.
      • 9 crĂ©ateurs de ressources (icĂŽnes, thĂšmes, curseurs, splash screen, mĂ©tadonnĂ©es
) : Alx Sa, Jehan, Ferry JĂ©rĂ©mie, Stanislav Grinkov, Anders Jonsson, Bruno Lopes, Jacob Boerema, Sabri Ünal, mr.fantastic.
      • 5 contributeurs Ă  la documentation : Jehan, Bruno Lopes, Jacob Boerema, Alx Sa, Anders Jonsson.
      • 14 contributeurs pour la compilation, l'empaquetage ou l'intĂ©gration continue : Jehan, Bruno Lopes, bootchk, Alx Sa, Zander Brown, Jacob Boerema, Jacob Boerema, Stayd, Carlos Garnacho, Heiko Becker, mr.fantastic, Daniel NovomeskĂœ, U-YGGDRASIL\ender, lillolollo.

      Contributions à d'autres dépÎts du GIMPverse (l'ordre est déterminé par le nombre de commits) :

      • babl 0.1.108 est composĂ© de 17 commits par 6 contributeurs : Jehan, Øyvind KolĂ„s, John Marshall, Andre Klapper, John, sid.
      • GEGL 0.4.48 est composĂ© de 77 commits par 20 contributeurs : Øyvind KolĂ„s, Jehan, Anders Jonsson, Jacob Boerema, Yuri Chornoivan, Alan Mortensen, Sabri Ünal, Andre Klapper, Ekaterine Papava, Jan Tojnar, Jordi Mas, Luming Zh, Martin , Piotr Drąg, VĂ­ttor Paulo Vieira da Costa, Asier Sarasua Garmendia, Marco Ciampa, Rodrigo LledĂł, dimspingos, woob.
      • ctx a eu 308 commits depuis la version 2.99.14 par 1 contributeur : Øyvind KolĂ„s.
      • La version gimp-macos-build (scripts d'empaquetage macOS) est composĂ©e de 32 commits par 1 contributeur : Lukas Oberhuber.
      • La version flatpak est composĂ©e de 15 commits par 3 contributeurs : Jehan, Daniel NovomeskĂœ et Hubert FiguiĂšre.
      • Notre site Web principal a eu 31 commits depuis la sortie du 2.10.36 par 6 contributeurs : Jehan, Alx Sa, Sabri Ünal, Anders Jonsson, Bruno Lopes, Jonathan Demeyer.
      • Notre site Web des dĂ©veloppeurs a eu 30 commits depuis la version 2.10.36 par 5 contributeurs : Bruno Lopes, Jehan, Alx Sa, bootchk, Robin Swift.
      • Notre documentation 3.0 a enregistrĂ© 247 commits depuis la version 2.99.16 par 17 contributeurs : Andre Klapper, Jacob Boerema, Yuri Chornoivan, Alx Sa, Jordi Mas, Alan Mortensen, Dimspingos, Anders Jonsson, Boyuan Yang, Sabri Ünal, VĂ­ttor Paulo Vieira da Costa, Juliano de Souza Camargo, Rodrigo LledĂł, KolbjĂžrn StuestĂžl, Marco Ciampa, Danial Behzadi, Emin Tufan Çetin.

      N'oublions pas de remercier toutes les personnes qui nous aident Ă  faire le tri dans Gitlab, rapportent des bogues et discutent avec nous d'Ă©ventuelles amĂ©liorations. Notre communautĂ© est Ă©galement profondĂ©ment reconnaissante envers les guerriers d'Internet qui gĂšrent nos diffĂ©rents canaux de discussion ou comptes de rĂ©seaux sociaux tels que Ville PĂ€tsi, Liam Quin, Michael Schumacher et Sevenix !

      Remarque : compte tenu du nombre de piÚces qui composent GIMP et son environnement, et de la maniÚre dont nous obtenons des statistiques via des scripts git, des erreurs peuvent se glisser dans ces statistiques. N'hésitez pas à nous dire si nous avons manqué ou mal catégorisé certains contributeurs ou contributions.

      Nouvelles de l'équipe et procédure de sortie

      Les droits d'accÚs au dépÎt git ont été récemment accordés à Bruno Lopes (qui a été trÚs actif dans l'amélioration de notre processus de compilation et de l'empaquetage pour Windows).

      Plusieurs développeurs ou empaqueteurs de longue date ou plus récents qui ont commencé à contribuer au nouveau site Web des développeurs ont également reçu l'accÚs au dépÎt git associé.

      De plus en plus de contributeurs participent dĂ©sormais activement aux tests des versions et du processus d'empaquetage, et c'est la premiĂšre dĂ©pĂȘche depuis des annĂ©es (NDT : cela dĂ©signe la news originale sur le site de GIMP) que Jehan n'a pas Ă©crite presque entiĂšrement ! Merci beaucoup Ă  Alx Sa (alias Nikc ou CmykStudent) d'avoir entamĂ© la rĂ©daction collaborative de la nouvelle !

      Il est clair que nous consolidons jour aprĂšs jour une solide Ă©quipe de contributeurs et cela se voit dans notre processus de publication, avec de plus en plus de retours Ă  chaque version.

      Nous sommes Ă©galement particuliĂšrement heureux et fiers que les 4 projets GSoC que nous avons eus, depuis que nous avons recommencĂ© Ă  souscrire Ă  ce programme de mentorat, aient tous Ă©tĂ© couronnĂ©s de succĂšs et ont fini par ĂȘtre fusionnĂ©s avec la branche principale du code au plus tard six mois aprĂšs la fin du stage.

      Autour de GIMP

      Des nouvelles des miroirs

      Depuis la derniĂšre dĂ©pĂȘche, un nouveau miroir a Ă©tĂ© apportĂ© Ă  GIMP par :

      • Sahil Dhiman, Ă  Nuremberg, en Allemagne, comme projet personnel.

      Cela nous amÚne à un total de 46 miroirs répartis dans le monde.

      Les miroirs sont importants car ils aident le projet en partageant la charge de dizaines de milliers de téléchargements quotidiens. De plus, en disposant de miroirs répartis à travers le monde, nous garantissons que tout le monde puisse avoir un accÚs rapide au téléchargement de GIMP.

      GIMP sous Windows/ARM

      Depuis notre annonce d'une version expĂ©rimentale sur Windows pour l'architecture ARM 64 bits (en anglais), nous avons reçu l'aide de Hernan Martinez, contributeur bien connu du projet MSYS2, qui a hĂ©bergĂ© notre tout premier runner pour l'intĂ©gration continue (CI) pour Windows sur l'architecture Aarch64. Bien que cela n'ait Ă©tĂ© qu'une configuration temporaire (littĂ©ralement une machine de compilation dans le salon de quelqu'un) en attendant une situation plus stable, nous sommes extrĂȘmement reconnaissants envers Hernan qui nous a aidĂ©s Ă  faire notre deuxiĂšme pas sur cette plateforme (la premiĂšre Ă©tape a Ă©tĂ© effectuĂ©e par Jernej, qui a crĂ©Ă© notre premier installateur expĂ©rimental), s'est assurĂ© que notre processus de compilation automatique fonctionne sur cette machine, et plus encore.

      Depuis lors, la situation plus stable est arrivĂ©e : Arm Ltd. eux-mĂȘmes se sont mobilisĂ©s et ont officiellement contribuĂ© trois runners pour notre processus d'intĂ©gration continue dans Gitlab ! Arm Ltd. a Ă©galement sponsorisĂ© un kit de dĂ©veloppement Windows pour l'un de nos dĂ©veloppeurs.

      Bien que nous considĂ©rions toujours cette version comme expĂ©rimentale, en raison du manque de tests et du fait que seuls 2 contributeurs disposent actuellement d'une machine capable de l'exĂ©cuter, le plus gros facteur bloquant a Ă©tĂ© supprimĂ© et nous sommes heureux d'annoncer que notre programme d'installation Windows universel pour GIMP 2.99.18 contient GIMP pour les 3 plates-formes (x86 32 et 64 bits, et maintenant ARM 64 bits) !

      Télécharger GIMP 2.99.18

      Vous trouverez toutes nos versions officielles sur le site officiel de GIMP (gimp.org) :

      • Flatpaks Linux pour x86 et ARM (64 bits)
      • Installateur Windows universel pour x86 (32 et 64 bits) et pour ARM (64 bits)
      • Paquets macOS DMG pour le matĂ©riel Intel
      • Paquets macOS DMG pour le matĂ©riel Apple Silicon

      D'autres paquets réalisés par des tiers devraient évidemment suivre (paquets des distributions Linux ou *BSD, etc.).

      Et ensuite ?

      Alors que nous sommes maintenant entrés dans un gel des fonctionnalités, notre attention s'est déplacée vers la correction des bogues, le nettoyage et la préparation de la premiÚre version candidate 3.0.

      Nous pensons en effet qu'il s'agit de la derniÚre version de développement puisqu'aucune nouvelle fonctionnalité ne sera introduite désormais, du moins au niveau de l'interface utilisateur (l'API est encore en évolution jusqu'à la premiÚre version candidate). Donc, ce que vous voyez maintenant est essentiellement ce que vous devriez obtenir dans GIMP 3.0.0, en termes de fonctionnalités.

      C'est pourquoi nous avons sorti cette version mĂȘme si nous savons qu'elle est assez instable. C'est l'heure des commentaires de derniĂšre minute ! C'est aussi le moment de signaler et de corriger les bogues comme si demain n'existait pas. Nous espĂ©rons pouvoir bientĂŽt livrer une RC1 et elle devrait ĂȘtre aussi dĂ©pourvue de bogue que possible.

      Nous espĂ©rons actuellement pouvoir publier GIMP pour le prochain Libre Graphics Meeting du 9 au 12 mai. Pour ĂȘtre honnĂȘte, ce n’est pas un objectif facile et nous ne sommes donc pas sĂ»rs de pouvoir l’atteindre. Ce qui est sĂ»r, c'est que mĂȘme si nous n'y parvenons pas Ă  temps, cela ne devrait pas arriver trop longtemps aprĂšs. En particulier, nous ne publierons pas simplement parce que nous avons fixĂ© une date limite. Nous voulons offrir la meilleure expĂ©rience possible, ce qui signifie que si nous dĂ©couvrons des bogues bloquants de derniĂšre minute, nous retarderons la sortie jusqu'Ă  ce qu'ils soient corrigĂ©s.

      N'oubliez pas que vous pouvez faire un don et financer personnellement les dĂ©veloppeurs de GIMP, c'est un moyen de donner en retour et d'accĂ©lĂ©rer le dĂ©veloppement de GIMP. L’engagement communautaire permet au projet de se renforcer ! đŸ’ȘđŸ„ł

      Commentaires : voir le flux Atom ouvrir dans le navigateur

      LibreOffice 24.2 : nouvelle annĂ©e, nouvelle numĂ©rotation, nouvelle version

      Une nouvelle version de la formidablement libre suite bureautique LibreOffice vient de sortir. Non contente de s’offrir une nouvelle numĂ©rotation pour la nouvelle annĂ©e, elle nous offre surtout une accessibilitĂ© accrue, une meilleure internationalisation notamment pour les langues qui n’utilisent pas l’alphabet latin et une meilleure compatibilitĂ© avec l’Office Open XML (OOXML).

      On trouvera plus bas un bouquet choisi des Ă©volutions de LibreOffice, les notes de version sont lĂ  pour l’exhaustivitĂ©.

      Logo de LibreOffice

      Sommaire

      Sur la nouvelle numérotation

      La question de ce changement de numĂ©rotation de LibreOffice a fait tourbillonner un bon paquet d’électrons sur LinuxFr. Dans un premier lien annonçant la sortie de la 7.6, puis un deuxiĂšme annonçant celle de la bĂȘta 24.2 pour tests et enfin dans un journal (avec quelques erreurs) signalant en avant-premiĂšre quelques fonctionnalitĂ©s et amĂ©liorations.

      Mais un rappel peut s’avĂ©rer nĂ©cessaire. Donc la numĂ©rotation des versions de LibreOffice est passĂ©e d’un schĂ©ma de type SemVer (en) : numĂ©ro majeur de version. numĂ©ro mineur. patch, exemple 7.6.4 qui est la derniĂšre Ă  porter ce type de numĂ©rotation Ă  un schĂ©ma de type CalVer (en). On a donc :

      • annĂ©e de sortie de la version : 24
      • mois de sortie : 2
      • micro : 0.

      Les mises Ă  jour de cette version, selon le calendrier de sortie porteront ainsi les numĂ©ros : 24.2.1, 24.2.2, 24.2.3, etc. jusqu’à la derniĂšre 24.2.7 dont la sortie est prĂ©vue fin octobre 2024. La durĂ©e de vie d’une version de LibreOffice est de neuf mois.

      Pas de changement pour le reste : deux versions « vivantes Â» vont continuer Ă  coexister, une seulement maintenue, l’actuelle 7.6.4 et une en pleine Ă©volution, l’actuelle 24.2. Sans oublier les versions de dĂ©veloppement et les archives.

      L’accessibilitĂ© enfin une prioritĂ©

      L’accessibilitĂ© n’a pas toujours Ă©tĂ© une prioritĂ© de LibreOffice, il semblerait qu’avec les derniĂšres versions, cela change fort heureusement. Par exemple, les versions antĂ©rieures ont ajoutĂ© la possibilitĂ© de marquer comme dĂ©corative une illustration ou un cadre, ce qui signale aux lecteurs d’écran de les ignorer et allĂšge la lecture pour des Ă©lĂ©ments qui n’apportent pas une information supplĂ©mentaire.

      La version 24.2 corrige beaucoup de dĂ©fauts pour Windows, Mac, et Linux. On se contentera de relever ce qui concerne Linux :

      • les vues arborescentes comme celle de la configuration avancĂ©e, menu Outils → Options → LibreOffice → AvancĂ© → Ouvrir la configuration avancĂ©e1 sont correctement annoncĂ©es, passant, lues correctement par les lecteurs d’écran ;
      • un paramĂštre systĂšme permet de rĂ©duire ou dĂ©sactiver les animations est pris en compte par LibreOffice, permettant de dĂ©sactiver les petits traits animĂ©s qui encadrent des cellules copiĂ©es dans Calc ;
      • dans Calc, signalement des Ă©tiquettes d’entĂȘte de lignes et colonnes en conformitĂ© avec la spĂ©cification ARIA, elles sont utilisĂ©es par le lecteur d’écran Orca pour annoncer les cellules ;
      • les lecteurs d’écran peuvent annoncer correctement le texte des Ă©lĂ©ments des Ă©ditions multilignes dont on trouve un exemple dans le menu Aide → VĂ©rifier les mises Ă  jours
 ;
      • les barres d’état des boites de dialogues sont signalĂ©es avec le rĂŽle accessible correct ;
      • les cases Ă  cocher dans la boite de dialogue d’orthographe peuvent ĂȘtre activĂ©es avec la touche espace ;
      • dans Writer, les paragraphes de style « Bloc de citation Â» utilisent le modĂšle d’accessibilitĂ© du mĂȘme nom qui permet aux lecteurs d’écran de les annoncer sous forme de citation entre guillemets ;
      • l’activation et la dĂ©sactivation des boutons peut se faire Ă  l’aide de l’action d’accessibilitĂ© correspondante ;
      • le lecteur d’écran Orca indique si le soulignement est actif ou non.

      Pour complĂ©ter, il est bon de rappeler ces deux logiciels qui facilitent l’utilisation de Linux, donc de LibreOffice : le logiciel de commandes vocales NoComprendo qui a fait l’objet de deux dĂ©pĂȘches sur ce site. Il permet de lancer verbalement quelques raccourcis clavier (passant de soulager les articulations ou de supplĂ©er Ă  des problĂšmes de motricitĂ©) et le logiciel de dictĂ©e vocale Elograf dĂ©veloppĂ© pour Mageia.

      L’internationalisation parce qu’il n’y a pas que l’alphabet latin

      La meilleure prise en compte des langues qui utilisent d’autres systĂšmes d’écriture que l’alphabet latin fait partie Ă©galement des points forts du dĂ©veloppement des derniĂšres versions de LibreOffice. The Document Foundation (TDF), la fondation qui chapeaute le projet a d’ailleurs lancĂ© un appel Ă  recrutement en novembre 2023 pour un poste de dĂ©veloppeur. Il Ă©tait plus particuliĂšrement demandĂ© aux candidats ou candidates des compĂ©tences linguistiques et sur Unicode.

      Dans Impress certains des modĂšles livrĂ©s avec LibreOffice avaient des polices incorrectes pour les systĂšmes d’écriture CJC qui est la qualification d’Unicode pour les Ă©critures chinoises, japonaises et corĂ©ennes et CTL. CTL pour « Complex Text Layout Â» qui concerne le rendu de polices complexes. CTL qualifie un systĂšme d’écriture dans lequel la forme et la position d’un graphĂšme dĂ©pend de ses relations avec les autres graphĂšmes, c’est le cas notamment du Devanagari ou de l’alphabet arabe dont le sens du texte peut ĂȘtre bidirectionnel. La version 24.2 a corrigĂ© ce bogue.

      Des modĂšles avec les paramĂštres requis pour les textes japonais ont Ă©tĂ© ajoutĂ©s dans la catĂ©gorie « localisation Â»2 ce qui, en outre, amĂ©liore l’inter-opĂ©rabilitĂ© avec MsWord pour les personnes dont l’interface est en japonais.

      Math peut afficher les formules aussi bien dans le sens gauche-droite que droite-gauche (ça c’est nouveau). L’application accepte maintenant Ă©galement les opĂ©rateurs et les symboles arabes et persans (juste retour des choses dans l’histoire de la science mathĂ©matique).

      L’interface, adieu les veuves et les orphelines

      Les changements peuvent ĂȘtre visuels ou concerner des intitulĂ©s, un choix parmi ce qui a Ă©tĂ© signalĂ© dans les notes de version.

      La boite de dialogue des propriĂ©tĂ©s des fichiers, menu Fichier → PropriĂ©tĂ©s suit enfin le schĂ©ma du Dublin Core et ça passe bien dans les fichiers EPUB. Mais il faudra tout de mĂȘme ajouter l’auteur, si ce n’est pas vous, dans SIGIL aprĂšs la crĂ©ation de l’EPUB.

      La nouvelle boite de dialogue des propriétés des fichiers avec ses champs tout neufs

      À ce sujet : remplir lesdites propriĂ©tĂ©s devrait ĂȘtre une habitude, allez donc faire un tour dans le menu Outils → Options → Chargement/enregistrement → GĂ©nĂ©ral pour cocher la case « Ă‰diter les propriĂ©tĂ©s du document avant l’enregistrement Â». Elle apparaĂźtra au premier enregistrement, et pourra toujours ĂȘtre modifiĂ©e par la suite en passant par le menu Fichier → PropriĂ©tĂ©s.

      La rĂ©cupĂ©ration automatique des fichiers est cochĂ©e par dĂ©faut pour une premiĂšre installation. Si vous ne l’avez pas fait sur votre LibreOffice, on ne saurait que trop vous conseiller de le faire : menu Outils → Options → Chargement/enregistrement → GĂ©nĂ©ral. Sur l’illustration, j’ai configurĂ© 5 minutes. Cette rĂ©cupĂ©ration ne remplace pas l’enregistrement au fil de l’eau des fichiers. Elle permet seulement de rĂ©cupĂ©rer le document aprĂšs un arrĂȘt intempestif de LibreOffice.

      Configuration de l’enregistrement automatique et des propriĂ©tĂ©s.

      Si vous voulez protĂ©ger un fichier (onglet sĂ©curitĂ© des propriĂ©tĂ©s), LibreOffice affiche maintenant une barre indiquant la force du mot de passe : plus elle est grande plus il est fort. Et il devient impĂ©ratif, ce qui n’est pas forcĂ©ment une bonne chose : on peut vouloir simplement protĂ©ger un fichier des modifications intempestives sans plus.

      Apposer un mot de passe Ă  un fichier

      Suggestion : les mots de passe des fichiers de LibreOffice sont quasiment incraquables (pas sans beaucoup de temps), si l’idĂ©e n’est que d’éviter des modifications involontaires notamment de formules de feuilles de calcul, pensez Ă  mettre le mot de passe dans les commentaires des propriĂ©tĂ©s.

      Un autre changement sympathique : sur la barre d’outils l’icĂŽne qui reprĂ©sente un omĂ©ga, Ω, et qui ouvre un menu dĂ©roulant avec les caractĂšres « spĂ©ciaux Â» favoris et les derniers utilisĂ©s. Cela affiche maintenant aussi la description du caractĂšre et donc son numĂ©ro de code Unicode. Vous saurez ainsi que le numĂ©ro Unicode du manchot 🐧 est U+1f427.

      Choisir un caractÚre spécial

      Et si vous avez bien modifiĂ© votre barre d’outils et supprimĂ© ce bouton, vous pouvez le remettre en passant par Outils → Personnaliser, onglet Menu, il s’appelle « symbole Â».

      Cette version signe aussi le glas des veuves et des orphelines (format des paragraphes), remplacĂ©es par des scissions qu’on autorise (ou pas). D’ici lĂ  que la casse y passe aussi


      Et, puisqu’on parle de Writer, une nouveautĂ© qui en annonce peut-ĂȘtre d’autres : il est possible de styler les commentaires, un style existe pour ça. Les notes de version laissent prĂ©sager que ce pourrait ĂȘtre l’amorce d’une plus grande variĂ©tĂ© de styles pour les commentaires.

      Modifier le style de commentaire

      Compatibilité OOXML et autre

      Au rythme oĂč ça va, LibreOffice va finir par ĂȘtre plus compatible avec l’OOXML que la suite MsOffice elle-mĂȘme 😉. Plus sĂ©rieusement outre ce qui a Ă©tĂ© dit plus haut sur le japonais, j’ai relevĂ© deux innovations majeures pour Writer.

      LibreOffice utilise le style « PremiĂšre page Â» pour rĂ©cupĂ©rer l’entĂȘte et le pied de page d’un document au format DOCX sans plus crĂ©er un nouveau style de page.

      L’algorithme de coupure des lignes justifiĂ©es a Ă©tĂ© modifiĂ©, pour l’instant, seulement pour les fichiers au format DOCX, LibreOffice reprend celui implĂ©mentĂ© par MsWord 2013. Par la suite il sera utilisĂ© comme justification par dĂ©faut dans la prochaine version majeure de LibreOffice. L’algorithme permet de gagner jusqu’à 20 % d’espace.

      Et aussi, dans un autre domaine, Draw importe les fichiers TIFF multipages en plaçant une image par page.

      Pour complĂ©ter (peut-ĂȘtre)

      À la source de cette dĂ©pĂȘche, j’ai Ă©crit un premier article sur les nouveautĂ©s de LibreOffice 24. principalement pour avoir des illustrations. L’article a une structure diffĂ©rente et relĂšve aussi d’autres nouveautĂ©s.

      On ne saurait terminer sans remercier les personnes qui font de LibreOffice une suite aussi formidable et agrĂ©able Ă  utiliser, sans oublier celles et ceux qui ont ajoutĂ© Ă  Mageia deux outils d’accessibilitĂ© indispensables.


      1. La traduction des notes de version ne correspond pas forcĂ©ment Ă  celle de l’interface de LibreOffice, je reprends ici celle de l’interface qui n’est pas encore entiĂšrement traduite en français. â†©

      2. Notes de version (je n’ai pas pu vĂ©rifier cela pour la dĂ©pĂȘche, et pour cause). â†©

      Commentaires : voir le flux Atom ouvrir dans le navigateur

      ❌