
TL; DR: J'admire Haiku, mais il y a quelque chose à raffiner
Hier, j'ai étudié Haiku , un système d'exploitation qui m'a agréablement surpris. Deuxième jour. Comprenez bien: je suis toujours ravi de la facilité avec laquelle il est difficile de faire ce qui est difficile dans les environnements de bureau Linux. J'ai hâte de savoir comment cela fonctionne et je suis également enthousiaste à l'idée de l'utiliser quotidiennement. Certes, le jour d'une transition complète n'est pas encore arrivé: je ne veux pas souffrir.

Editeur graphique raster WonderBrush - si vous savez où le trouver
Fondamentalement, prévu pour les versions inférieures à 1.0. Cependant, ne sous-estimez pas les réalisations incroyables, en vous souvenant de Mac OS X dans ses jours de pré-version et en tenant compte de la taille de l'équipe Haiku.
J'exprime généralement mes réflexions sur #LinuxUsability ( partie 1 , partie 2 , partie 3 , partie 4 , partie 5 , partie 6 ), alors ne soyez pas surpris par le choix de Haiku en termes de convivialité. Heureusement, la plupart d'entre eux sont liés à diverses améliorations.
C'était la préface, et maintenant tournons notre attention vers quelques problèmes.
Problème n ° 1: problèmes de navigateur
Il existe 3 navigateurs WebKit : le principal ( WebPositive ) et deux autres sur Qt (QupZilla, nom obsolète Falkon et OtterBrowser ), qui peuvent être installés à partir du référentiel. Aucun ne fonctionne correctement. Le navigateur principal a des problèmes de fonctionnalité et de rendu (par exemple, il est impossible de résoudre le captcha en entrant dans le bugtracker de Haiku ), et d'autres ont de gros problèmes de performances sur Haiku.

Voici à quoi ressemble Twitter dans WebPositive, le navigateur principal de Haiku
QupZilla et OtterBrowser accusent un retard important sur les connexions non fiables à Internet (par exemple, dans un train). Le basculement entre les onglets devient impossible si les données ne volent pas facilement. Il n'est pas réaliste d'ouvrir un nouvel onglet tant que l'actuel charge des données sur le réseau. Tout est stupide, malgré la faible charge. Les navigateurs ne sont probablement pas entièrement optimisés pour le multithreading Haiku, ou ont d'autres problèmes avec Haiku traducteur ].
Avec QupZilla, je n'ai rien pu écrire sur Medium ...
Apple a fait beaucoup pour assurer des performances de navigateur stables avec d'excellentes performances . Il me semble que ces investissements porteront leurs fruits sur Haiku. Surtout compte tenu de l'importance accrue des applications Web, et d'autant plus que les applications natives ne sont pas encore disponibles pour tous les cas d'utilisation.
L'histoire de Kenneth Kocienda et Richard Williamson: comment Safari et Webkit sont nés
Trouble # 2: Lanceur et Dock
Dans le coin supérieur droit de l'écran se trouve la barre de bureau , un mélange sophistiqué créé à partir du menu Démarrer de Windows avec une touche de fonctionnalités du Dock et d'autres fonctionnalités.

Barre de bureau
Comme il s'agissait peut-être d'un élément clé de l'expérience utilisateur pour BeOS, il lui manque les capacités d'un environnement de travail moderne: j'ai besoin d'un lanceur de programme, comme Spotlight , lancé via Alt + espace. L'exécution d'applications en un clic est lente. Il existe un outil de recherche qui ressemble à Stirlitz sous couverture, mais il n'est pas conçu pour lancer facilement des applications, même si vous lui donnez une accélération.

Pleins feux sur Mac OS X Leopard lancé par Command + Space
Il y a LnLauncher installé dans HaikuDepot . Au premier démarrage, il est complètement vide et il n'est pas clair comment y ajouter quoi que ce soit. De plus, il n'apparaît pas à un endroit très pratique sur l'écran sans un moyen évident de changer la position. Eh bien, comment le mettre à gauche ou en bas de l'écran, comme le Dock dans Mac OS X? Je pense que l'UX dans ce cas est méconnaissable.
DockBert , également installé à partir de HaikuDepot . Déjà mieux. Il est affiché en bas de l'écran. Je ne m'attendais pas à ce que l'ordre des icônes soit inversé: le panier est au début, mais dans l'ensemble il semble prometteur.
Comment le définir par défaut au lieu de la barre de bureau? Si vous cliquez sur l'icône Deskbar dans DockBert et sélectionnez "Fermer" - il se fermera bien sûr ... et réapparaîtra dans une demi-seconde. (Les développeurs ont déclaré qu'il s'agissait, en principe, d'un bogue dans DockBert). Ce serait bien si DockBert était suffisamment intelligent pour comprendre ce dont l'utilisateur avait besoin et le faire. Par défaut, il n'y a pas d'icônes d'application dans DockBert, mais il montre "faites-le glisser ici", donc vous savez comment tout ajouter. Cependant, je ne pouvais pas supprimer les applications - ni en cliquant avec le bouton droit, ni en faisant glisser l'icône depuis DockBert.
J'essaie HiQDock . Je l'ai accidentellement trouvé dans un référentiel tiers . Il ressemble à ce que je veux. Se concentrer sur les "looks". Parce que cela ne fonctionne pas encore: la version Bêta l'est toujours. Il est écrit en Qt4, donc je doute qu'il soit porté à l'image d'installation.

HiQDock.
En principe, non seulement je pense que la situation avec le Dock et le Launcher est compliquée. J'ai même trouvé un article entier sur ce sujet.

Quicklaunch
Ensuite, j'ai découvert QuickLaunch , dont le lancement est recommandé en ajoutant une combinaison de boutons dans les paramètres des raccourcis.

Paramètres des raccourcis dans Haiku
Ce serait bien si de telles choses étaient configurées pour "juste fonctionner" par défaut. Ai-je dit Alt + Space? Eh bien, en principe, QuickLaunch peut vous demander si vous devez configurer un raccourci clavier au premier lancement. Faire cela dans les paramètres de raccourcis est fastidieux.

Une fenêtre dans laquelle il est proposé de saisir "l'application" dans les paramètres des raccourcis. Sans blague
Je parie que la plupart des utilisateurs ne savent pas quoi saisir comme «application», à savoir: /boot/system/apps/QuickLaunch
(juste QuickLaunch
ne fonctionne pas).
Solution rapide: définissez QuickLaunch par défaut et affectez-lui un raccourci alt + espace par défaut.
Heureusement, j'ai des informations des développeurs qui pourraient à un moment donné l'inclure comme une amélioration ou un remplacement de la bonne vieille Deskbar. Peut-être ... un jour ... Croisons les doigts! (Laissez une demande, ou elle ne le sera jamais. Ici ). Un autre développeur a déclaré la citation: "à mon avis, suivez le chemin de Windows, c'est-à-dire, incluez le champ de recherche dans le menu de démarrage, c'est assez facile pour la version bêta, je dirais que ce sera d'une grande importance pour beaucoup." Je suis d'accord! (encore une fois: application ou non).
Et pourquoi QuickLaunch trouve-t-il un programme pour prendre des captures d'écran deux fois, dans /boot/system/apps
et dans /boot/system/bin
? Les développeurs sont au courant, comme dans le fichier /boot/system/apps/QuickLaunch/ReadMe.html.
/ system / bin n'a pas été traité auparavant, les programmes portés finissent souvent dans le répertoire / bin, ce qui est une mauvaise idée. Vous pouvez supprimer les applications CLI indésirables, par exemple, en utilisant le bouton "Ajouter à ignorer la liste" dans le menu contextuel
solution rapide: filtrez les applications avec / system / bin, qui existent également dans / system / apps
Problème n ° 3: aucune accélération matérielle
BeOS était chargé de programmes de démonstration. Pas une seule vidéo BeOS n'était complète sans plusieurs fenêtres avec différentes vidéos en cours de lecture. Une réalisation incroyable à l'époque. Haiku est livré avec des démos 3D montrant des polices 3D se déplaçant dans l'espace. (Hé, Haiku ne se prépare pas pour une introduction en bourse, hein?)
BeOS en 1995, sur lequel Haiku est basé. A cette époque, il fonctionnait sur deux processeurs PowerPC 603 avec une fréquence d'horloge de 66 MHz
Nous voulons devenir Linux dans le monde du son et de la vidéo.
- Jean-Louis Hesse , PDG
Étonnamment, la vidéo et la 3D ne sont pas réellement accélérées matériellement dans Haiku. Je suppose que les jeux aussi.
Les développeurs de mr. waddlesplash et Alex von Gluck ont une documentation pour l'accélération matérielle («cela prend environ deux mois-homme»). L'accélération 3D se fera via Mesa (Haiku, comme déjà mentionné, utilise Mesa et LLVMPipe comme base pour OpenGL), pour la vidéo, vous pouvez compter sur FFmpeg ou créer votre propre solution (je sais que Haiku utilise déjà FFMpeg à l'intérieur, il est tout simplement impossible d'utiliser sans pilotes accélérés VDPAU ou autre API similaire).
Croisez les doigts!
Problème # 4: aucun programme recherché
Je sais que bon nombre de programmes CLI ont déjà été portés sur Haiku, mais je ne les vois pas dans HaikuDepot. Pas même un indice. Il n'y a pas de commandes "haiku ..." ou "port ..." sur la ligne de commande
~/testing> haikuports bash: haikuports: command not found
Googler, j'ai trouvé où j'ai téléchargé avrdude. Lors du lancement par double-clic, une fenêtre avec des dépendances non satisfaites est apparue. Ce serait bien si cela ne se produisait pas. (L'une des raisons pour lesquelles j'aime tant les packages .app pour Mac et AppImage pour Linux).
J'ai appris des développeurs que «théoriquement», il existe un système pour empêcher cela. Apparemment, elle a besoin de plus d'amour.
Que faut-il faire? Il existe des instructions pour ceux qui souhaitent porter les programmes pour Haiku, mais il n'y a pas d'instructions pour ceux qui souhaitent simplement utiliser les programmes portés. C'est là que je suis entré.
Le développeur m'a dit: "Nous ne mentionnons pas HaikuPorts car 99,9% des utilisateurs ne sont pas tenus de savoir ou de se soucier de la façon dont ces packages sont créés et apparaissent dans HaikuDepot." Je suis d'accord. Parlez de HaikuDepot et de la façon d'en tirer quelque chose, car l'interface HaikuDepot ne l'affiche pas (par exemple, avrdude
cli). Apparemment, il devrait y avoir un indicateur qui affiche les applications CLI dans l'interface HaikuDepot, mais je ne l'ai pas trouvé, ou peut-être qu'il n'existe pas. ("Recommandé" ou "Tous les packages" ... en avez-vous besoin? Non, je ne veux pas regarder "tous" les packages, je suppose que beaucoup de bibliothèques seront affichées. Quelque chose comme le bon vieux Synaptic ).
Au lieu de cela, j'ai trouvé . De plus, je ne sais pas comment l'installer (ils disent que HaikuArchives est un "référentiel de logiciels pris en charge", et aussi que "tous les programmes utiles sont déjà dans HaikuPorts" - nous avons besoin d'intégrateurs).
Juste un petit google, j'ai trouvé:
/> pkgman search avrdudeStatus Name Description ------------------------------- avrdude A tool to up/download to AVR microcontrollers
Ouah! Ce serait bien de rendre cette équipe plus visible. L'un des développeurs a confirmé que "pkgman est un analogue cli pour HaikuDepot." Pourquoi ne l’appelait-elle pas alors haikudepot
?
La première chose que j'ai faite a été de définir command_not_found-0.0.1 ~ git-3-any.hpkg. Maintenant, je peux le faire:
/> file /bin/bash DEBUG:main:Entered CNF: file This application is aviaiblible via pkgman install file
solution rapide: ajoutez command_not_found-*-any.hpkg
à l'installation par défaut.
Le développeur Haiku estime que "dans Haiku, contrairement à Linux, il n'y a pas vraiment besoin de commande introuvable" car "vous pouvez simplement exécuter pkgman install cmd: commandname". Eh bien, comment puis-je, le "simple mortel" savoir cela?!
Packages, gestionnaires de packages, dépendances. Celui de Haiku est certainement beaucoup plus intelligent que la plupart, mais il s'agit toujours d'un gestionnaire de paquets:
/> pkgman install avrdude100% repochecksum-1 [65 bytes] Validating checksum for Haiku…done. 100% repochecksum-1 [64 bytes] Validating checksum for HaikuPorts... done. 100% repocache-2 [951.69 KiB] Validating checksum for HaikuPorts... done. Encountered problems: problem 1: nothing provides lib:libconfuse>=2.7 needed by libftdi-1.4–7 solution 1: - do not install “providing avrdude” Please select a solution, skip the problem for now or quit. select [1/s/q]:
Les gestionnaires de packages font ce que les gestionnaires de packages font toujours, d'une manière ou d'une autre, quel que soit le système d'exploitation. Il y a une raison pour laquelle je suis attirée - je l'ai déjà dit, non? - aux packages .app et AppImages .
En plus de cela, certaines applications open source très populaires manquent:
/> pkgman install inkscape 100% repochecksum-1 [65 bytes] Validating checksum for Haiku…done. 100% repochecksum-1 [64 bytes] Validating checksum for HaikuPorts…done. *** Failed to find a match for “inkscape”: Name not found
La réponse des développeurs: "Puisqu'il n'y a pas de Gtk - il n'y aura pas d'Inkscape." Je comprends. Un autre développeur a ajouté: "Mais nous avons un WonderBrush incroyable." Je ne le savais pas, mais vous ne pouvez pas le voir dans HaikuDepot, et d'où? (correction: il fallait passer à l'onglet «Tous les packages»! Complètement raté ce point!)
/> pkgman install gimp 100% repochecksum-1 [65 bytes] Validating checksum for Haiku... done. 100% repochecksum-1 [64 bytes] Validating checksum for HaikuPorts... done. *** Failed to find a match for “gimp”: Name not found/> pkgman install arduino 100% repochecksum-1 [65 bytes] Validating checksum for Haiku... done. 100% repochecksum-1 [64 bytes] Validating checksum for HaikuPorts... done. *** Failed to find a match for “arduino”: Name not found
Je sais que "Arduino était là avant" ... où est-ce que tout est allé?
Entre autres choses, j'ai été surpris par le fait de «techno-bavard»: tant de lignes s'affichent juste pour qu'au final elles donnent: «ce logiciel n'est pas disponible».
Problème numéro 5: diverses rugosités qui méritent d'être corrigées
Basculer entre les applications
Ennuyeux sans alt + tab pour changer d'application. Ctrl + tab fonctionne, mais en quelque sorte de travers.
Astuce des développeurs: si j'active la mise en page à partir de Windows, Cmd et Ctrl changeront de place et alt + Tab deviendra familier. Mais je veux sentir le Mac tout en travaillant sur un clavier PC!
Note des développeurs: "Le passage de ctrl + tab à alt + tab surprendra certains utilisateurs." Solution simple: activez les deux! (Moi, en tant qu'utilisateur Mac, Windows et Linux avec Gnome, KDE, Xfce, je ne sais toujours pas à quoi m'attendre).

Changement d'applications via ctrl + tab à l'aide de Twitcher. Par endroits, il apparaît, parfois pas la première fois
Pire encore: ctrl + tab affiche parfois une fenêtre avec des icônes d'application, et parfois non. Entre autres choses, l'ordre de commutation des applications semble aléatoire: StyledEdit-WebPositive-back StyledEdit-WebPositive-StyledEdit-window avec des icônes d'application ... Erreur logicielle? (Peut-être que quelqu'un sait s'il existe un outil d'enregistrement d'images Gif pour Haiku?) Correction : c'est une telle fonctionnalité, pas une erreur.
Une courte pression sur la combinaison ctrl + tab permet de passer directement à l'application précédente sans afficher la fenêtre Twitcher. Si vous maintenez les combinaisons plus longtemps, il s'avère que je suis déjà habitué.
Raccourcis
Si nous parlons de raccourcis clavier, dès que vous réalisez que tout est similaire à un Mac, vous essayez automatiquement d'utiliser les raccourcis clavier habituels ... Par exemple, dans les boîtes de dialogue "Ouvrir ..." et "Enregistrer sous ...", je veux appuyer sur alt + d pour le répertoire du bureau, etc.
Les développeurs "ont la possibilité d'ajouter ceci", "dans l'application d'amélioration des dialogues de fichiers". Je voudrais créer une telle application, être le traqueur de problèmes local sur GitHub ou GitLab, où j'ai des comptes.
Mais, comme je l'ai expliqué plus tôt, je ne peux pas m'inscrire dans leur système. (Comme vous l'avez probablement déjà deviné, je tiens à souligner la facilité de travailler avec de telles choses lorsque vous utilisez des services publics comme GitHub ou GitLab). Amendement: https://dev.haiku-os.org/ticket/15148
Écarts
Les applications Qt et les applications natives diffèrent dans leur comportement. Par exemple, vous pouvez supprimer le dernier mot avec alt + backspace dans les applications Qt, mais pas dans les applications natives. Il peut y avoir d'autres différences lors de l'édition de texte. J'aimerais que ces incohérences soient supprimées.
Correction: je n'ai pas fini d'écrire cet article (je l'ai d'abord montré sur la chaîne des développeurs Haiku pour collecter les commentaires), car il s'est avéré que cet écart était corrigé! Incroyable! Comment j'aime les projets open source! Merci Kacper Kasper
Remarques
Je suis toujours en train d'apprendre le haïku et elle continue de m'impressionner. Malgré le fait qu'aujourd'hui je me suis concentré sur la description des problèmes, je ne peux m'empêcher de me rappeler pourquoi ce système d'exploitation est si intrigant. Voici quelques exemples. Juste un rappel pour voir comment les choses sont conceptuellement correctes chez Haiku.
Si vous double-cliquez sur un fichier exécutable qui ne possède pas les bibliothèques requises, rien n'est visible sur Linux. Haiku aura une belle boîte de dialogue graphique avec des informations sur le problème. J'ai longtemps rêvé de telles choses sous Linux, et je suis toujours ravi que cela se soit fait correctement dans Haiku. Cet exemple montre que le système d'exploitation est cohérent à tous les niveaux. Le résultat est l'élégance, la beauté et la simplicité, même dans des cas tels que la gestion des erreurs.
Un coup d'œil fascinant sous le capot.
La documentation QuickLaunch indique:
Il peut y avoir 2 raisons pour lesquelles QuickLaunch ne trouvera pas l'application:
- L'application n'est pas sur une partition BeFS ou la partition BeFS n'est pas formatée pour prendre en charge les demandes.
- L'application n'a pas l'attribut BEOS approprié: APP_SIG. Dans ce cas, demandez au développeur de l'application de l'ajouter ou essayez de suivre
un tel conseil: si vous utilisez une application ou un script qui n'apparaît pas dans QuickLaunch (et se trouve dans un endroit accessible en écriture) - essayez d'ajouter ces attributs dans le terminal.
addattr BEOS: TYPE application / x-vnd.Be-elfexecutable / path / to / your / app-or-script
addattr BEOS: application APP_SIG / x-vnd.anything-unique / path / to / your / app-or-script
Cela donne un aperçu du fonctionnement de la magie comme Launch Services, que je continue d'admirer ( et qui est complètement absent des environnements de bureau Linux ).
Non moins passionnant est "Ouvrir avec ..."
Sélectionnez un fichier, appuyez sur alt + I, puis sur l'écran d'informations, vous pouvez choisir quelle application peut ouvrir un fichier spécifique.

Dans Haiku, je peux remplacer l'application pour ouvrir un fichier spécifique. Cool
Tout cela fonctionne, même avec l'extension de nom de fichier manquante, et je peux enfin indiquer pour différents fichiers du même type qu'ils devraient s'ouvrir dans différentes applications, ce qui est très difficile, voire presque impossible, dans les environnements de travail Linux.
Conclusion
Comme je l'ai écrit hier, Haiku m'a ouvert les yeux et a montré comment l'environnement de travail peut «simplement fonctionner». Le deuxième jour, j'ai également trouvé plusieurs points qui devaient clairement être améliorés.
Aucun d'eux n'arrêtera le travail. Je suis vraiment enthousiasmé par l'avenir de ce système d'exploitation de bureau personnel. Il s'agit d'un développement tant attendu en dehors des «environnements de bureau Linux», qui continue de présenter de graves problèmes architecturaux insolubles dans un avenir proche.
Espoir pour Haiku.
Essayez-le vous-même! Après tout, le projet Haiku fournit des images de téléchargement quotidiennes à partir d'un DVD ou d'une clé USB. Pour l'installer, il suffit de télécharger l'image et de l'écrire sur une clé USB à l'aide d' Etcher
Vous avez une question? Nous vous invitons à la chaîne de télégramme en russe.
Aperçu des bogues: comment se tirer une balle dans le pied en C et C ++. Collection de recettes Haiku OS
De l'auteur de la traduction: c'est le deuxième article de la série Haiku.
Liste des articles: premier deuxième troisième quatrième cinquième cinquième sixième septième huitième