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 !  ---- [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.  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).  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.  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)