URL: https://linuxfr.org/news/haiku-r1-beta-3-haiku-a-20-ans Title: Haiku R1 beta 3 - Haiku a 20 ans ! Authors: pulkomandy Ysabeau đŸ§¶, BenoĂźt Sibaud, palm123, Pierre Jarillon et orfenor Date: 2021ćčŽ07月22æ—„T20:18:25+02:00 License: CC By-SA Tags: systĂšme_d'exploitation, haiku et don Score: 59 Ça y est, la troisiĂšme version bĂȘta de Haiku est disponible, juste Ă  temps pour fĂȘter les vingt ans du projet le mois prochain ! ![Logo de Haiku](https://raw.githubusercontent.com/haiku/haiku/master/data/artwork/HAIKU%20logo%20-%20black%20on%20transparent%20-%20big.png) ---- [DĂ©pĂȘche pour la version R1 beta 2](https://linuxfr.org/news/haiku-r1-beta-2) [DĂ©pĂȘche pour les 19 ans de Haiku](https://linuxfr.org/news/haiku-a-19-ans) [Site de Haiku](https://www.haiku-os.org) [TĂ©lĂ©charger Haiku](https://www.haiku-os.org/get-haiku) ---- Haiku est un systĂšme d’exploitation inspirĂ© par BeOS. L’objectif est de construire un systĂšme lĂ©ger, facile Ă  utiliser tout en permettant des usages plus avancĂ©s. Une particularitĂ© est le choix de rĂ©utiliser assez peu de composants existants. L’idĂ©e Ă©tant d’avoir une seule Ă©quipe de dĂ©veloppement en charge de tout le code source, ce qui permet de rĂ©aliser les modifications nĂ©cessaires aux bons endroits, et pas d’ajouter des couches d’abstraction et d’adaptation entre de multiples composants pas prĂ©vus pour fonctionner ensemble. Le projet est actuellement en version bĂȘta, ce qui signifie que toutes les fonctionnalitĂ©s prĂ©vues ont Ă©tĂ© implĂ©mentĂ©es, mais qu’il reste encore de nombreux bugs Ă  corriger. Cette dĂ©pĂȘche comporte des informations gĂ©nĂ©rales sur le projet, ainsi qu’une section prĂ©sentant les principales nouveautĂ©s de la version bĂȘta 3 qui vient d’ĂȘtre publiĂ©e. Un peu d’histoire =========== Le projet Haiku (au dĂ©part nommĂ© OpenBeOS) a dĂ©marrĂ© officiellement le 18 aoĂ»t 2001 avec le premier message sur la liste de diffusion: [Ok, let's start](http://www.freelists.org/post/haiku/Ok-lets-start) (OK, allons-y). L’idĂ©e Ă©tait de donner une suite Ă  BeOS, un systĂšme d’exploitation non libre dĂ©veloppĂ© par Be Inc. Au dĂ©but de l’annĂ©e prĂ©cĂ©dente, Be avait annoncĂ© la mise en tĂ©lĂ©chargement gratuit de son systĂšme BeOS et un [focus shift](http://www2.computerworld.com.au/article/89334/strategic_shift_beos_free/) pour se concentrer sur les « internet appliances », ce qu’on appellerait aujourd’hui l’internet des objets. Un certain nombre d’utilisateurs et de dĂ©veloppeurs de BeOS ne souhaitaient pas voir ce systĂšme disparaĂźtre, et se sont rassemblĂ©s pour essayer d’y donner suite. En 2004, le projet Ă©tait renommĂ© pour Ă©viter de potentiels problĂšmes de marques dĂ©posĂ©es avec BeOS. En 2005, pour la premiĂšre fois il Ă©tait possible de lancer « Tracker » (le navigateur de fichiers de BeOS) sous Haiku. En 2008, pour la premiĂšre fois, il Ă©tait possible de compiler Haiku depuis Haiku (self-hosting), ce qui Ă©tait l’objectif de l’entrĂ©e en phase « alpha » et de la publication d’une premiĂšre version. Trois autres versions alpha suivront jusqu’en 2012. En 2010, un sondage auprĂšs des dĂ©veloppeurs et utilisateurs dĂ©finit les objectifs de la version R1 de Haiku, donnant la direction Ă  suivre pour les 10 annĂ©es suivantes. En 2013, Haiku fonctionne sur les architectures x86 64 bits. En 2018, c’est l’entrĂ©e en phase « bĂȘta » de la version R1. On considĂšre que toutes les fonctionnalitĂ©s prĂ©vues dans la version 1 de Haiku sont prĂ©sentes, mais il reste de nombreux bugs Ă  corriger avant d’avoir une version finale. L’objectif est de publier de nouvelles versions assez souvent pour permettre aux utilisateurs de tester le systĂšme, et aux dĂ©veloppeurs de commencer Ă  porter ou Ă©crire leurs applications. Statistiques de contribution ============================= [Statistiques dĂ©taillĂ©es pour Haiku](https://pulkomandy.tk/stats) Au total, 305 personnes ont participĂ© Ă  Haiku avec au moins un commit dans le dĂ©pĂŽt Git. Ce nombre est sous-estimĂ©, en effet avant 2011, [Haiku utilisait Subversion](https://www.youtube.com/playlist?list=PLC64D26826684BE49), et les correctifs envoyĂ©s par des personnes n’ayant pas accĂšs en Ă©criture au dĂ©pĂŽt Git n’étaient pas correctement attribuĂ©s. De plus, il n’y a pas d’historique pour la premiĂšre annĂ©e d’existence du projet pendant laquelle il n’y avait pas du tout d’outil de gestion de code. AprĂšs un pic d’activitĂ© entre 2008 et 2010 avec plus de 5 000 commits par an, les choses ont ralenti et depuis 2016, c’est seulement environ 1 400 changements qui sont intĂ©grĂ©s chaque annĂ©e. Haiku utilise Gerrit pour recevoir les correctifs des contributeurs et la plupart des changements sont relus attentivement avant d’ĂȘtre intĂ©grĂ©s, afin de s’assurer de la cohĂ©sion dans le style de formatage du code, et d’éviter de rajouter trop de bugs. Le contributeur le plus actif est Axel Dörfler, prĂ©sent depuis le tout dĂ©but et encore actif aujourd’hui, qui est l’auteur de 16,63 % des commits intĂ©grĂ©s dans Haiku. Chaque annĂ©e, environ une soixantaine de personnes contribuent Ă  au moins un changement. Chaque mois, ce sont quinze Ă  vingt personnes. Aujourd’hui le projet comporte environ 8 000 fichiers sources C et C++ (et autant d’en-tĂȘtes .h) qui reprĂ©sentent quatre millions de lignes de code. Haikuports, les dĂ©pĂŽts de paquets -------------------------------- [Statistiques dĂ©taillĂ©es pour Haikuports](https://pulkomandy.tk/stats_hp) Bien sĂ»r, un systĂšme d’exploitation ne serait pas trĂšs utile sans logiciels Ă  faire fonctionner dessus. Haikuports est le principal dĂ©pĂŽt de logiciels pour Haiku. Le projet a dĂ©marrĂ© en 2008, d’abord briĂšvement sous le nom de BePorts, avant d’abandonner BeOS pour se concentrer sur Haiku. Il s’agit d’un projet indĂ©pendant de Haiku, mĂȘme si un grand nombre de contributeurs sont en fait impliquĂ©s dans les deux projets (le monde est petit). Le projet est devenu trĂšs actif en 2013, lorsque Haiku s’est dotĂ© d’un gestionnaire de paquets. Auparavant, HaikuPorts pouvait ĂȘtre utilisĂ© soit pour installer directement des logiciels compilĂ©s Ă  partir des sources sur le systĂšme local, soit pour gĂ©nĂ©rer des archives .zip permettant de redistribuer ces logiciels. Il n’y avait pas vraiment de gestion des dĂ©pendances, ce qui limitait fortement son utilitĂ©. Les annĂ©es 2017 et 2018 ont Ă©tĂ© les plus actives, avec 2 500 puis 2 900 commits respectivement. Les choses semblent se stabiliser avec autour de 1 600 commits par an. Au total, 250 personnes ont participĂ© Ă  Haikuports, soit entre 60 et 70 personnes chaque annĂ©e depuis 2017. Actuellement le dĂ©pĂŽt contient 2 971 recettes donnant chacune les instructions pour compiler un paquet, ainsi que 1 257 correctifs nĂ©cessaires pour compiler certains projets. Le nombre de recettes augmente assez rĂ©guliĂšrement depuis le dĂ©but du projet. La taille moyenne des recettes est de 88 lignes (incluant une description du logiciel, la liste des dĂ©pendances et de ce qui est fourni par le paquet, et les instructions de compilation et d’installation). Un systĂšme d’intĂ©gration continue est en place, qui permet de compiler automatiquement les paquets Ă  partir des recettes dĂšs qu’elles sont ajoutĂ©es dans le dĂ©pĂŽt git. Les utilisateurs de Haiku peuvent ainsi tĂ©lĂ©charger et installer directement les paquets prĂ©-compilĂ©s. NouveautĂ©s de la version bĂȘta 3 ============================== Processus d’installation -------------------- L’un des objectifs de Haiku est d’ĂȘtre un systĂšme peu gourmand en ressources et facile Ă  utiliser. Cela commence dĂšs le premier dĂ©marrage depuis un DVD (ou une clĂ© USB) d’installation, en essayant de guider l’utilisateur et de faciliter ses premiers pas. Suite Ă  la publication de la version bĂȘta 2, une Ă©tude d’expĂ©rience utilisateur empirique (en visionnant de nombreuses vidĂ©os de personnes testant Haiku sur Youtube) a permis de constater plusieurs problĂšmes d’utilisabilitĂ© et quelques bugs dans le processus d’installation. Cela a donc Ă©tĂ© un des aspects qui ont Ă©tĂ© amĂ©liorĂ©s dans cette nouvelle version : - il est possible d’utiliser l’application Installeur pour rĂ©initialiser proprement un disque contenant dĂ©jĂ  une installation de Haiku, en conservant les fichiers de l’utilisateur (mais pas les applications et la configuration) ; - il est possible de quitter l’Installeur et de revenir Ă  l’écran d’accueil permettant de choisir entre l’installation et le mode « live DVD » pour essayer Haiku ; - l’outil de partitionnement et de formatage des disques DriveSetup a reçu de nombreuses corrections de bugs et de petits changements d’interface pour Ă©viter les confusions les plus frĂ©quentes. ![Le gestionnaire de disques DriveSetup](https://pulkomandy.tk/drop/drivesetup.png) Gestionnaire de paquets ------------------ Haiku est fourni avec un gestionnaire de paquets disposant de fonctionnalitĂ©s peu souvent rencontrĂ©es sur d’autres systĂšmes, telles que l’installation et la dĂ©sinstallation de paquets par simple dĂ©placement dans un dossier dĂ©diĂ©, et la possibilitĂ© de dĂ©marrer le systĂšme dans un Ă©tat antĂ©rieur, si une mise Ă  jour se passe mal, ou Ă  des fins de tests : - les mises Ă  jour de paquets sont capables de reprendre un tĂ©lĂ©chargement lĂ  oĂč il s’était arrĂȘtĂ© si le processus est interrompu ; - la dĂ©sinstallation de paquets peut exĂ©cuter des scripts de nettoyage inclus dans le paquet ; - amĂ©lioration des performances de HaikuDepot, l’interface graphique du gestionnaire de paquets. En particulier, optimisation de la façon de stocker les icĂŽnes des applications, en les regroupant dans un seul fichier pour limiter le gaspillage d’espace disque ; - nombreuses amĂ©liorations de la stabilitĂ© et de l’expĂ©rience utilisateur de HaikuDepot ; - remplacement de Python 2 par Python 3.7 comme version par dĂ©faut fournie avec Haiku (des versions plus rĂ©centes et plus anciennes sont Ă©galement disponibles dans le gestionnaire de paquets et peuvent ĂȘtre installĂ©es si nĂ©cessaire). ![Le gestionnaire de paquets HaikuDepot](https://pulkomandy.tk/drop/haikudepot.png) Interface utilisateur -------------- - La classe BTextView affiche correctement le texte centrĂ© ou alignĂ© Ă  droite. De nombreuses corrections ont Ă©tĂ© faites dans la classe BTextControl pour corriger son comportement lors de dĂ©placements du curseur et de l’édition de texte. - AmĂ©lioration de l’apparence de Haiku lors de l’utilisation de thĂšmes de couleurs Ă  dominante sombre (texte plus clair que la couleur de fond). - IntĂ©gration de l’outil PadBlocker dans la configuration des pĂ©riphĂ©riques d’entrĂ©e. Il permet de dĂ©sactiver le touchpad lorsque le clavier est utilisĂ©, Ă©vitant ainsi de dĂ©clencher involontairement des clics ou dĂ©placements du pointeur de souris. - Mise Ă  l’échelle des barres de dĂ©filement en fonction de la taille de police choisie pour le systĂšme (permettant de s’adapter aux Ă©crans Ă  trĂšs haute rĂ©solution simplement en augmentant le rĂ©glage de taille du texte). - Multiples changements dans la gestion des chaĂźnes de caractĂšres pour amĂ©liorer l’internationalisation et faciliter la traduction de Haiku dans d’autres langues. - PossibilitĂ© d’afficher la charge CPU dans ProcessController pour les processeurs avec plus de huit cƓurs. - L’application Pulse affiche le vrai logo du fabricant du CPU (auparavant seul le logo d’Intel Ă©tait utilisĂ©). - AmĂ©liorations de la stabilitĂ© et de la compatibilitĂ© de MediaPlayer avec divers formats audio et vidĂ©o. - La fenĂȘtre d’attente lors de l’arrĂȘt du systĂšme affiche une icĂŽne animĂ©e lorsqu’une application est occupĂ©e et ne rĂ©pond pas Ă  la demande de fermeture. ![Pulse affichant le logo Intel](https://pulkomandy.tk/drop/pulse.png) Serveur graphique app_server ---------------------------- - Plusieurs corrections de problĂšmes de clipping et de clignotements dans l’affichage des fenĂȘtres. - PossibilitĂ© de dessiner une image bitmap avec une rĂ©pĂ©tition horizontale et/ou verticale (« tuiles »). - Ajout de nouvelles opĂ©rations de [composition graphique](https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation), utilisĂ©es entre autres dans le navigateur web pour implĂ©menter les canvas JavaScript. - Correction du systĂšme de substitution de polices de caractĂšres, ajout dans la liste des polices de remplacement de Noto Sans Symbols 2 et Noto Emoji pour couvrir la plupart des caractĂšres frĂ©quemment utilisĂ©s. - Refonte de la gestion de la mĂ©moire et correction de plusieurs problĂšmes de dĂ©passement de mĂ©moire qui pouvaient conduire Ă  un plantage du serveur graphique. Navigateur web ----------- - L’en-tĂȘte « Accept-Language » n’était pas envoyĂ© dans les requĂȘtes HTTP(S), ce qui empĂȘchait certains sites web de s’afficher. - Le menu contextuel « Rechercher sur le web » fonctionne Ă  nouveau. - Il est possible de sĂ©lectionner facilement un moteur de recherche parmi une liste prĂ©dĂ©finie. - Le moteur de recherche par dĂ©faut est DuckDuckGo, en remplacement de Google (pour des raisons de protection des donnĂ©es des utilisateurs, mais surtout de problĂšmes de compatibilitĂ© avec le navigateur des pages de Google et de l’affichage de messages d’avertissement dĂ©sagrĂ©ables). - Raccourcis de recherche dans la barre d’adresse, par exemple taper « w Haiku » recherchera Haiku sur Wikipedia. - Mise Ă  jour de HaikuWebKit Ă  la version 612.1.21 de WebKit (version datant de juin 2021). - Affichage des pages en utilisant leur mode sombre (spĂ©cifiĂ© via des feuilles de styles CSS) si le systĂšme est configurĂ© pour utiliser un thĂšme sombre. APIs ---- - Nouvelle version de l’API « net services » (clients HTTP et Gopher). Cette API est maintenant fournie sous forme d’une bibliothĂšque statique, ce qui permettra d’effectuer des changements sans casser les applications existantes. Les applications compilĂ©es avec la version bĂȘta 2 de la bibliothĂšque restent utilisables pour l’instant, mais il est recommandĂ© de les recompiler avec la nouvelle version dĂšs que possible. - La nouvelle version augmente les performances des tĂ©lĂ©chargements, et corrige de nombreux problĂšmes (par exemple il est possible de charger des fichiers de plus de 2 Go). SystĂšmes de fichiers ------------------------ La cohabitation et l’interopĂ©rabilitĂ© avec d’autres systĂšmes sont importants pour Haiku. Aussi, de nombreux systĂšmes de fichiers conçus initialement pour d’autres systĂšmes peuvent ĂȘtre lus et parfois Ă©crits depuis Haiku : - amĂ©liorations de la lecture du systĂšme de fichiers XFS ; - correction d’un plantage du noyau dans le pilote NFS ; - lecture des tables de partitions Sun VTOC (format utilisĂ© sur les machines SPARC) ; - correction de bugs dans la lecture des systĂšmes de fichiers ext4. ### Les systĂšmes de fichiers disponibles En lecture et Ă©criture : - BFS (le systĂšme de fichiers de BeOS), en versions gros-boutiste et petit-boutiste ; - ext2, 3, et 4 ; - FAT ; - netfs (systĂšme de fichiers en rĂ©seau spĂ©cifique Ă  Haiku) ; - NFS versions 2 et 4 ; - NTFS ; - Reiserfs. En lecture seule : - btrfs ; - cdda (permet d’accĂ©der aux pistes d’un CD audio sous forme de fichiers WAV) ; - exfat ; - ISO 9660 ; - UDF. D’autres systĂšmes de fichiers peuvent ĂȘtre utilisĂ©s via FUSE et userlandfs : SMB et sshfs par exemple. Ils sont disponibles dans le gestionnaire de paquets. CompatibilitĂ© avec BeOS ------------------ La possibilitĂ© d’exĂ©cuter des applications compilĂ©es pour BeOS reste un des objectifs du projet. Bien que cela n’ait aujourd’hui plus un grand intĂ©rĂȘt au quotidien (la plupart des applications ont Ă©tĂ© remplacĂ©es ou bien leurs sources ont Ă©tĂ© publiĂ©es et elles peuvent ĂȘtre mises Ă  jour), tester ces applications permet de dĂ©couvrir de nombreux cas particuliers dans le comportement du systĂšme et de corriger les bugs les plus tordus : - correction d’un problĂšme d’inter-blocage entre le _Locale Kit_ (localisation dans diffĂ©rentes langues) et le _Translation Kit_ (conversion de formats de fichiers) qui avaient indirectement une dĂ©pendance circulaire entre eux. Cela empĂȘchait certaines applications de dĂ©marrer (par exemple BeLive, et Tracker) ; - implĂ©mentation du drapeau B_OUTLINE_RESIZE qui permet Ă  certaines fenĂȘtres de ne dessiner que leur contour lorsqu’elles sont en cours de redimensionnement (utile si le tracĂ© du contenu de la fenĂȘtre est particuliĂšrement long) ; - ajout d’un « Control Look » qui ressemble autant que possible Ă  BeOS R5 (l’apparence par dĂ©faut de Haiku reste inchangĂ©e). Cela permet d’assurer une compatibilitĂ© avec les applications dont l’interface graphique est codĂ©e en dur avec des positions en pixels, sans tenir compte de la taille rĂ©elle de la police de caractĂšres et des contrĂŽles. CompatibilitĂ© avec POSIX ------------------- En plus des applications Ă©crites pour BeOS, Haiku permet d’utiliser des applications venues du monde UNIX (ou plutĂŽt GNU/Linux et BSD de nos jours). Par exemple, un grand nombre d’applications utilisant la bibliothĂšque Qt sont disponibles. Haiku essaie autant que possible de suivre strictement le standard POSIX, mais implĂ©mente Ă©galement des fonctions supplĂ©mentaires sur lesquelles il y a un consensus parmi les autres systĂšmes : - ajout des fonctions mlock et munlock, permettant d’empĂȘcher une zone de mĂ©moire d’ĂȘtre Ă©vacuĂ©e dans le fichier swap (pour des raisons de performance ou surtout de sĂ©curitĂ©) ; - retrait d’une limitation sur le nombre de threads « joinable » par application ; - correction du comportement de pselect() lors de l’utilisation de signaux ; - correction du code de retour de fsync() lorsqu’il est appelĂ© sur un pipe FIFO 0 ; - dĂ©placement de la fonction asprintf dans la libbsd, car ce n’est pas une fonction standard POSIX ; - ajout des fonctions exp10, exp10f et exp10l dans math.h (seulement en mode _GNU_SOURCE) ; - correction du comportement de write() en mode O_APPEND - ajout de la fonction posix_fallocate() ; - ajout de ut_host dans utmpx.h ; - ajout de ppoll() (qui ne fait pas encore partie du standard POSIX, mais arrive dans la prochaine version) ; - traitement d’une sĂ©quence d’échappement permettant d’insĂ©rer plusieurs rĂ©pĂ©titions d’un mĂȘme caractĂšre dans le Terminal (par exemple pour tracer une bordure dans une application ncurses) AmĂ©lioration des performances ------------------ - Optimisation de la fonction create_area pour Ă©viter un algorithme de complexitĂ© O(n2). - Optimisation de la fonction BMenuItem::RemoveItem pour ĂȘtre en complexitĂ© O(1) au lieu de O(n). - AmĂ©lioration du pilote cpufreq permettant de mesurer la charge CPU bas niveau et d’ajuster la frĂ©quence de fonctionnement du CPU. - AmĂ©lioration de la mĂ©moire tampon de MediaPlayer permettant la lecture de vidĂ©os 4K. - ImplĂ©mentation des acquittements sĂ©lectifs (SACK) dans le protocole TCP, pour limiter les retransmissions de paquets sur les liens rĂ©seaux avec des pertes de paquets (par exemple en Wifi). Internationalisation -------------------- - Ajout d’une traduction en tchĂšque, ce qui fait que Haiku est maintenant utilisable dans vingt-huit langues diffĂ©rentes. MatĂ©riel et pilotes ---------------------- ### Son AmĂ©lioration des pilotes pour les cartes son Ă  base de chipsets es1370 et intel HDA. ### Stockage - Nouveaux pilotes pour les lecteurs de cartes SD connectĂ©s sur le bus PCI (SDHCI). - AmĂ©lioration de la stabilitĂ© du systĂšme de fichier en mĂ©moire ramfs. - AmĂ©lioration des performances du pilote NVMe. ### RĂ©seau - AmĂ©lioration des performances du pilote rĂ©seau virtio (utilisĂ© lorsque Haiku est exĂ©cutĂ© dans certaines machines virtuelles). - Mise Ă  jour des pilotes de cartes rĂ©seau Ă  partir de ceux de FreeBSD 13. - Suppression du pilote rĂ©seau Wavelan, qui ne concerne que des cartes Wifi depuis longtemps obsolĂštes (principalement des cartes PCMCIA, sans possibilitĂ© d’utiliser des rĂ©seaux chiffrĂ©s en WPA). ### USB - Correction de problĂšmes dans les pilotes USB3 ### Cartes Graphiques - Mise Ă  jour du pilote Intel_Extreme pour les gĂ©nĂ©rations de cartes 4 Ă  7 (chipset Sandy Bridge et suivants). DĂ©but de travail sur l’affichage multi-Ă©crans, en mode « clone » pour l’instant. - AmĂ©lioration du pilote NVIDIA GeForce 6200-6400. Plans pour la suite ==================== AprĂšs vingt ans passĂ©s Ă  dĂ©velopper le systĂšme, on peut se poser des questions sur l’absence de version R1 stable pour l’instant. Cependant, il faut se souvenir que le dĂ©veloppement de Haiku est effectuĂ© en grande majoritĂ© par des volontaires sur leur temps libre, en jonglant souvent avec un emploi Ă  plein temps et d’autres activitĂ©s informatiques ou non. En parallĂšle du travail des dĂ©veloppeurs sur les versions bĂȘta 2 et 3, du tri a Ă©tĂ© fait dans les rapports de bugs pour essayer de dĂ©gager une feuille de route pour les prochaines versions. Beaucoup de tickets ont Ă©tĂ© dĂ©placĂ©s dans les jalons « Unscheduled » (qui signifie que ce n’est pas nĂ©cessaire pour la version R1) et R1.1 (pour les bugs les moins importants, pour lesquels on considĂšre qu’ils ne justifient pas de bloquer la version R1). Durant l’annĂ©e de travail sur la bĂȘta 3, ce sont environ 250 bugs qui ont Ă©tĂ© corrigĂ©s. Actuellement, le jalon R1 contient plus de 600 bugs, et cela va probablement augmenter aprĂšs la publication de la nouvelle version bĂȘta, car de nombreuses personnes vont essayer Haiku et dĂ©couvrir de nouveaux problĂšmes. Il reste donc encore *au moins* trois ans de travail sur la version R1 au rythme actuel. C’est beaucoup. En fait, c’est trop. La solution pour aller plus vite consiste Ă  embaucher une ou plusieurs personnes pour travailler Ă  plein temps sur le projet. Cela a dĂ©jĂ  Ă©tĂ© fait plusieurs fois depuis 2010, d’abord avec des contrats ponctuels de quelques semaines ou quelques mois, puis un contrat plus long en 2014 avec un dĂ©veloppeur qui a pu travailler Ă  plein temps sur Haiku pendant environ un an. Ces emplois sont financĂ©s entiĂšrement par les dons reçus par l’association Haiku inc. Ces dons proviennent en partie de particuliers, et en partie de sponsoring de Google pour la participation au Google Summer of Code et au Google Code In. De plus, Haiku inc a reçu certains dons en bitcoins qui ont Ă©tĂ© oubliĂ©s sur un portefeuille Ă©lectronique quelque temps et leur cours a pas mal augmentĂ©. Le budget est donc suffisant Ă  prĂ©sent pour embaucher un dĂ©veloppeur pendant un ou deux ans avec un salaire raisonnable. Le problĂšme restait de trouver une personne compĂ©tente et volontaire pour se lancer dans l’aventure. En effet, la plupart des dĂ©veloppeurs actifs de Haiku ne souhaitaient pas quitter leurs emplois actuels. La situation va peut-ĂȘtre changer puisque Waddlesplash, un des dĂ©veloppeurs les plus actifs, vient de quitter son emploi et est en discussion avec Haiku inc pour Ă©tablir un contrat. AprĂšs les versions R1 et R1.1, il est logiquement prĂ©vu une version R2. Dans celle-ci, des changements d’API et d’ABI seront faits (en plus, probablement, d’autres changements). Il n’est pas encore dĂ©cidĂ© si cette version assurera toujours la compatibilitĂ© avec les applications BeOS, et de quelle façon elle pourra le faire. ConcrĂštement, on verra si l’un des dĂ©veloppeurs qui souhaitent conserver cette compatibilitĂ© se propose pour effectivement implĂ©menter quelque chose. Le retour de la « promotion team » =========== Durant les cinq derniĂšres annĂ©es et suite au dĂ©part de Matt Madia, il n’y avait plus vraiment d’équipe chargĂ©e de la publicitĂ© et du marketing. Une nouvelle Ă©quipe a Ă©tĂ© formĂ©e cette annĂ©e et travaille sur plusieurs sujets : rĂ©organisation du site web et de la documentation, amĂ©lioration de « l’onboarding » (accueil, embarquement) pour les nouveaux contributeurs, interviews des dĂ©veloppeurs, remise en place d’une boutique de produits dĂ©rivĂ©s pour financer le projet, etc. Portage de Haiku sur RISC-V =========================== Une autre grosse nouveautĂ© cette annĂ©e est le portage de Haiku sur une nouvelle architecture de CPU. Jusqu’à prĂ©sent, seule la version x86 (32 ou 64bits) Ă©tait fonctionnelle. Ceci a Ă©tĂ© possible principalement grĂące au travail de Kallisti5 et X512. Ces deux dĂ©veloppeurs ont chacun reçu une station de travail RISC-V offerte par Haiku inc pour les aider Ă  poursuivre leurs efforts (aprĂšs avoir rĂ©ussi Ă  faire fonctionner le systĂšme dans qemu). Les corrections faites dans le cadre de ce portage ont Ă©galement permis de dĂ©bloquer la situation pour la version ARM de Haiku, qui pourrait elle aussi devenir bientĂŽt utilisable. À moins que la version SPARC soit prĂȘte avant. Tous les changements pour la version RISC-V n’ont pas encore Ă©tĂ© intĂ©grĂ©s dans le dĂ©pĂŽt Git. Certains ont besoin d’ĂȘtre mis au propre afin de ne pas casser les autres architectures, d’autres sont en cours de revue et de relecture. Le Google Summer of Code ======================== Haiku participe rĂ©guliĂšrement au Google Summer of Code depuis 2006. Ce programme financĂ© par Google permet d’accueillir des Ă©tudiants en tant que contributeurs Ă  des projets open source, sous la forme d’un stage avec un dĂ©veloppeur du projet servant de tuteur. Cette annĂ©e, quatre Ă©tudiants contribuent Ă  Haiku dans ce cadre : - Saloni Goyal et Hrithik Kumar travaillent sur l’intĂ©gration de clang-format dans l’infrastructure d’intĂ©gration continue, afin de signaler automatiquement les erreurs de formatage de code sur les patchs soumis. Ceci nĂ©cessite Ă©galement d’adapter clang-format pour implĂ©menter les conventions de formatage utilisĂ©es par Haiku ; - Xiaojie Yi amĂ©liore la prise en charge du systĂšme de fichiers XFS ; - Jaidyn Levesque dĂ©veloppe un client de messagerie instantanĂ©e multi-protocoles. Tous les quatre ont passĂ© avec succĂšs la premiĂšre Ă©valuation aprĂšs un mois de dĂ©veloppement. Migration des canaux de discussion IRC de Freenode vers OFTC ============================== Dans la dĂ©pĂȘche de l’annĂ©e derniĂšre, on parlait de la fermeture du service d’archivage de conversations IRC Echelog. Malheureusement, moins d’un an aprĂšs, c’est tout le rĂ©seau IRC Freenode qui a Ă©tĂ© fermĂ©. L’ensemble des [canaux de discussion de Haiku](https://www.haiku-os.org/community/irc) (Ă  l’exception de certains canaux dans diffĂ©rentes langues qui ont choisi d’utiliser d’autres protocoles de communication) ont donc migrĂ© sur le rĂ©seau OFTC, un autre rĂ©seau IRC accueillant les projets de logiciels libres. L’enregistrement des conversations est maintenent fait par [le service irclog de whitequark](https://oftc.irclog.whitequark.org/haiku)

AltStyle ă«ă‚ˆăŁăŠć€‰æ›ă•ă‚ŒăŸăƒšăƒŒă‚ž (->ă‚ȘăƒȘă‚žăƒŠăƒ«) /