URL: https://linuxfr.org/news/sortie-de-la-version-r1-beta-4-de-haiku Title: Sortie de la version R1 beta 4 de Haiku Authors: pulkomandy orfenor, Benoît Sibaud, palm123 et tisaac Date: 2022-12-27T15:29:37+01:00 License: CC By-SA Tags: haiku Score: 5 La version R1 beta 4 de Haiku est sortie le 23 décembre 2022. Cette dépêche fait un tour des nouveautés dans cette version et un point sur la situation du projet Haiku et des plans pour la suite. ---- [La dépêche pour la sortie de la version précédente R1 beta 3](https://linuxfr.org/news/haiku-r1-beta-3-haiku-a-20-ans) [Les notes de version](https://www.haiku-os.org/get-haiku/r1beta4/release-notes/) ---- Une publication un 23 décembre? =============================== Oui, cette version est sortie juste avant Noël, suivant le principe habituel des versions de Haiku : ça sort quand c’est prêt. Cette fois ça tombe pendant les fêtes de fin d’année, période habituellement plutôt calme. C’est comme ça. Les principales nouveautés ========================== Amélioration de l’affichage sur les écrans à haute densité ---------------------------------------------------------- C’est la poursuite d’un travail déjà commencé dans la version précédente et qui va encore continuer un peu. Toute l’interface graphique de Haiku est dessinée avec des instructions vectorielles (pas d’images bitmap) mais il reste encore quelques endroits où la taille de certains éléments est codée _en dur_. L’idée est de s’adapter automatiquement en fonction de la taille de police de caractères choisie, de la résolution de l’écran et/ou de sa densité (nombre de pixels par centimètre carré). Pour l’instant seule la taille de police est prise en compte. Une apparence pour les contrôles et un « décorateur » plats ---------------------------------------------------------- L’apparence de l’interface graphique de Haiku évolue peu. Elle fait un usage raisonnable de dégradés et d’effets de relief pour bien visualiser les éléments de l’interface graphique. Cela déplaît à certains utilisateurs qui souhaitent une apparence plus « plate », à base de couleurs unies. Cela est maintenant possible avec le décorateur et l’apparence « plats », disponible dans le paquet haiku_extras. Des miniatures dans le Tracker ------------------------------ Tracker, le navigateur de fichiers, peut maintenant afficher des miniatures pour les fichiers à la place de leur icône. Le tracker peut générer lui-même une miniature pour les fichiers image pour lesquels il existe un _translator_. Pour les autres fichiers, c’est à chaque application de créer une miniature (stockée dans les attributs étendus du fichier) si c’est utile. Par exemple, certains émulateurs peuvent ajouter une miniature représentant l’écran de la machine émulée dans leurs sauvegardes instantanées. Pilotes réseau -------------- Une nouvelle couche de compatibilité avec OpenBSD permet d’exploiter les pilotes réseau développés pour ce dernier. En particulier, cela permet d’utiliser des pilotes Wifi 802.11ac (la dernière norme Wifi haut débit), et certaines cartes Wifi USB. D’autre part, le nouveau pilote usb_rndis permet d’utiliser le partage de connexion d’un téléphone fonctionnant par exemple sous Android ou d’autres systèmes similaires (mais pas iOS qui utilise une autre solution pour le partage de connexion). Nouveau pilote NTFS ------------------- La prise en charge de NTFS dans Haiku est faite en utilisant le code de NTFS-3G (pilote en espace utilisateur basé sur FUSE). Ce code avait été adopté pour BeOS avant d’être à nouveau adapté pour Haiku. Le pilote existant avait de nombreux problème de performance et de fonctionnement (fonctions non implémentées, corruptions de données, pas d’utilisation du cache disque). Il a donc été entièrement réécrit à partir de la dernière version de NTFS-3G. Traducteur AVIF --------------- Un nouveau traducteur permet de lire et écrire les images au format AVIF, toutes les applications utilisant les traducteurs peuvent en bénéficier. Navigateur web -------------- Le navigateur WebPositive a reçu une mise à jour qui corrige de nombreux problèmes. Il abandonne pour l’instant l’implémentation native de HTTP de Haiku pour utiliser CURL, en attendant une réécriture de l’API HTTP native qui est en cours et devrait régler de nombreux problèmes. Chargeur de démarrage --------------------- La prise en charge des systèmes EFI 32-bit a été ajoutée. Ce travail a été démarré dans le cadre de la version de Haiku pour les processeurs ARM, mais bénéficie également aux toutes premières machines EFI qui utilisent une implémentation 32 bits (certains ordinateurs de chez Apple, et quelques tablettes à base de processeurs x86). Couches de compatibilité X11 et Wayland --------------------------------------- Haiku utilise son propre serveur graphique nommé app_server. Cependant, cela rend complexe le portage d’applications existantes. Une solution a été mise en place qui consiste en une couche de compatibilité qui se substitue à la libx11 ou à la libwayland dans les applications. Ainsi, avec une simple recompilation, on peut faire fonctionner les applications GTK. Par exemple on pourra trouver GIMP, Inkscape, ou encore Epiphany (GNOME Web) dans le dépôt d’applications. On trouve également parmi les nouveautés une version de Wine, pour l’instant limitée aux applications Windows 64bit. Du côté des applications qui fonctionnent directement sur Haiku, on peut citer Emacs qui se dote d’une nouvelle interface graphique (c’était déjà fait depuis très longtemps pour Vim). Corrections de bugs =================== La liste complète des bugs corrigés est trop longue pour tout détailler ici. La plupart corrigent simplement des plantages du système ou des fuites de mémoire. Mais voici tout de même une sélection de quelques changements intéressants. Compatibilité POSIX ------------------- La compatibilité avec POSIX s’améliore et les travaux démarrent déjà pour implémenter les fonctions qui seront ajoutées dans la prochaine version de POSIX ou les déplacer au bon endroit (les extensions GNU et BSD sont généralement séparées dans des bibliothèques spécifiques et protégées via le fichier d’en-tête `features.h`). Parmi les nouveautés, citons la gestion de `locale_t` et des fonctions associées, les threads C11, `dl_iterate_phdr`, des corrections sur la gestion des _weak symbols_, et une correction sur `O_NOCTTY` qui posait problème à GPG. Pilotes de périphériques ------------------------ De nombreux problèmes ont été résolus dans les pilotes NVMe, USB, et HDA audio. Noyau compilé avec gcc 11 ------------------------- Dans la version 32 bits de Haiku, une partie du système est toujours compilée avec gcc2 pour assurer la compatibilité avec BeOS. C’était dans les versions précédentes le cas pour le noyau, afin d’assurer la compatibilité avec les pilotes matériels de BeOS. Cependant, des changements sur la gestion des _areas_ (zone de mémoires partagées entre plusieurs processus ou entre un processus et le noyau) et l’introduction d’une gestion plus fine des protections a de toutes façons cassé la compatibilité avec ces pilotes. Et ils n’avaient que peu d’intérêt : soit ils ciblaient du matériel obsolète depuis longtemps, soit leurs sources ont été publiées et intégrées dans Haiku, soit des pilotes de remplacement ont été développés. Cette contrainte étant levée, il n’y avait plus de raison de compiler le noyau avec gcc 2. Il est donc maintenant compilé avec gcc 11 ce qui permet de commencer à utiliser certaines fonctionnalités modernes de C++ dans le code du noyau. Les plans pour la suite ======================= Il s’agit de la première version publiée depuis [l’embauche d’un développeur à plein temps](/news/haiku-embauche-un-developpeur-a-presque-plein-temps) cet été. Cela explique en partie les grosses avancées et plus de 400 tickets fermés dans l’outil de suivi de bugs. Cependant, le budget actuel de [Haiku inc](https://www.haiku-inc.org) ne permet toujours pas de financer cet emploi à plein temps de façon durable. L’association puise donc dans ses réserves d’argent pour continuer ce contrat. L’idée étant de continuer à publier des versions et des nouveautés régulièrement pour attirer plus d’utilisateurs et de donateurs, et ainsi de pérenniser la situation. Il ne reste plus que 634 tickets dans la feuille de route avant la version R1, qui ne semble donc plus trop loin si les choses continuent à ce rythme. Mais, pour l’instant, le budget 2022 de Haiku inc est loin d’être bouclé, il manque près de 4000 euros sur les 20 000 prévus. Sans évolutions de ce côté, le contrat à plein temps ne pourra pas être renouvelé et le développement de Haiku serait à nouveau ralenti. C’est un peu la difficulté de Haiku inc, qui se trouve depuis plusieurs années un peu coincée dans cette situation : largement assez de dons pour financer l’infrastructure du projet (serveurs, noms de domaines, marques déposées) mais pas pour embaucher des développeurs.