• [^] # Re: why ?

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Haiku a 24 ans - nouvelles de l'été 2025. Évalué à 10.

    C'est le seul système sur mon laptop principal sur lequel je fais tout mon développement (beaucoup de C++ pour Haiku lui-même et les logiciels qui fonctionnent dessus, un peu de Python, et cette semaine j'ai commencé mon premier projet en Rust par exemple).

    J'ai un serveur Linux qui héberge plusieurs trucs chez moi, sur lequel je peux me connecter en SSH si j'ai besoin d'un Linux (c'est assez rare, mais par exemple pour flasher postmarketos sur une vieille tablette, ça ne valait pas la peine d'essayer de porter tous les outils nécessaires vers Haiku).

    J'ai également un PC Windows pour les choses que je ne peux pas encore faire avec Haiku. Entre autres, pour Kicad et divers autres outils pour de l'électronique (programmation de microcontrôleurs, ...), occasionnellement du reverse engineering avec IDA, ce genre de choses. Ce PC est sous Windows 7, je ne compte pas le mettre à jour et j'espère pouvoir migrer ces outils vers Haiku pour la plupart (ou utiliser des alternatives libres).

    J'ai encore des problèmes pour tout faire sur Haiku:

    • WebPositive ne lit pas les vidéos youtube. Il y a des solutions alternatives (installer Iceweasel, utiliser mpv, ...), mais de toutes façons sur mon laptop actuel j'ai des problèmes de driver de carte son que je n'ai pas encore réussi à complètement démêler.
    • Je ne suis pas satisfait par les clients mail existants. Un jour j'en développerai un. Mais je peux m'en sortir avec un webmail si besoin (j'ai snappymail installé sur mon serveur mail).
    • J'aimerais beaucoup arriver à faire fonctionner mes deux écrans (celui du PC portable plus un externe) en même temps (actuellement c'est soit l'un soit l'autre). Les cartes graphiques Intel sont devenues de plus en plus compliquées et il manque du code dans nos pilotes pour initialiser tout ça comme il faut.
    • On peut éventuellement ajouter un pilote webcam pour faire des visioconférences, mais ça me sert peut être trois fois dans l'année, alors c'est pas très grave. Je peux faire ça avec mon téléphone.

    Pour tout le reste, je n'ai pas de raison de lancer un autre système. Je peux lancer LibreOffice, IceWeasel/Firefox, à peu près toutes les applications en Qt si j'ai besoin. C'est un peu mentionné dans la dépêche mais récemment j'ai porté dosemu, donc je peux lancer plein d'outils pour MS-DOS :D (mais en vrai ce serait super d'avoir de la virtualisation avec accélération matérielle un jour, pour lancer un Linux dans une VM).

    Je passe parfois un peu de temps à empaqueter des logiciels qui ne sont pas encore disponibles. Mais c'est assez simple à faire et avec l'intégration continue, c'est disponible dans les paquets logiciels pour tout le monde dès le lendemain. Les processus de contribution à Debian (par exemple, ailleurs j'ai jamais regardé) me semblent beaucoup plus opaques (c'est peut-être simplement parce que ça fait plus de 15 ans que je navigue dans Haiku et que je connaît trop bien comment ça marche, j'aurais peut-être pu être tout aussi à l'aise chez Debian).

    Il m'arrive aussi de trouver des bugs dans le système en essayant de faire des trucs. Ou juste des choses qui manquent. Mais d'un autre côté, c'est souvent des choses que je peux corriger moi-même, plutôt que de me faire balader entre les bugtrackers de plusieurs projets qui se renvoient la balle, ou ignorer lorsque j'envoie des patchs sur une mailing list de contribution (ce n'est pas le cas partout, mais ça arrive).

    Quelque part je me dis que c'est bien qu'il reste de niche, comme ça il reste simple.

    Potentiellement la niche "utilisateurs de PC de bureau" est assez large et on a l'impression parfois que les concurrents font tout pour se saborder.

    Les développeurs de Haiku restent vigilants sur ce qui est intégré ou pas dans le système. Effectivement tout reste appréhendable, même si certaines choses sont forcément plus complexes que d'autres. Je dirais que ce qui aide beaucoup, c'est d'avoir un développement un peu centralisé, avec une seule équipe qui maintient tout le code, et donc des pratiques standardisées. Cela contribue à démystifier pas mal de choses, d'une façon qui me semble plus difficile à mettre en place dans un système à base de Linux, où les projets se sont cristallisés autour de zones de friction (la limite entre l'espace utilisateur et le code qui tourne dans le noyau ; les parties client et serveur de la pile graphique) d'une façon qui rend beaucoup plus difficile l'évolution du logiciel lorsque cela remet en question ces interfaces. Mais d'un autre côté, il y a peut-être une limite à ça si l'équipe devient trop grosse, on ne pourrait probablement pas accueillir des milliers de développeurs dans Haiku sans remettre des choses en question.