Développement d’un nouveau navigateur web : Eolie
Cédric Bellegarde, développeur à l’origine du populaire lecteur de musique Lollypop, revient avec un nouveau projet complètement fou : un navigateur web. De son joli nom, Eolie.
En apprenant la nouvelle, on a limite envie de s’écrier WTF ! Un nouveau navigateur web pour l’environnement de bureau GNOME, alors que tout le monde délaisse déjà le navigateur officiel au profit des ténors que sont Firefox et Chrome ? On est donc curieux d’essayer la bête, histoire de tenter de comprendre ce qui a bien pu passer par la tête de son auteur.
Nous avons bien affaire à une application GNOME et sa fameuse barre d’en-tête. Et la première chose qui nous interpelle, c’est la barre d’onglets, qui n’est plus en haut de l’écran mais dans une colonne sur la gauche. Cette dernière ne se contentant pas non plus d’afficher seulement le nom des différents sites, mais propose un aperçu de chacun d’eux sous forme de vignettes.
Un clique droit sur la barre d’onglets offre la possibilité de choisir parmi trois modes : l’aperçu sous forme de vignettes, qui se trouve être le choix par défaut, le nom du site et sa favicon ou un panel minimaliste qui se limite aux favicons. Cette dernière option permettant d’afficher facilement plusieurs dizaines d’onglets sur un écran Full HD. Au-delà, on peut faire défiler la liste à l’aide de la molette de la souris ou faire appel à la fonction recherche pour filtrer les résultats.
Quant à la barre d’adresse, elle n’affiche pas l’URL mais le nom du site. Un simple survol de la souris permettant tout de même d’afficher cette dernière. C’est sans doute plus esthétique, mais de cacher une telle information risque de favoriser le phishing.
Pour continuer sur l’interface, j’ai trouvé la fenêtre de l’historique incroyablement plus claire que celle de Firefox. Vous me direz, c’est plutôt facile, tant cette dernière est catastrophique. Il manque tout de même la possibilité de pouvoir définir une période temporelle ou de pouvoir effectuer des recherches contextuelles à la manière d’un Vivaldi.
Pour rester sur les questions d’historique, on notera par ailleurs la prise en charge par Eolie de Firefox Sync, autorisant ainsi le partage des marques pages et de l’historique entre les deux navigateurs et leur synchronisation sur différentes machines.
D’un point de vue technique, le navigateur est développé en Python et utilise le moteur de rendu WebKitGTK+ (qui est lui, développé en C++). Le développeur peut donc se concentrer sur l’interface sans avoir besoin de trop se soucier de ce morceau gargantuesque qu’est le moteur de rendu de pages Web. Et pour ceux qui se poseraient la question, chaque onglet est bien rendu dans son propre processus, ce qui permet d’exploiter au mieux les processeurs modernes disposant de nombreux cœurs. Le plantage d’un onglet n’entraînant pas non plus le reste du navigateur dans sa chute.
La gestion des identifiants et mots de passe des différents sites s’effectuant quant à elle au travers de Seahorse et GNOME Keyring.
Autre sujet important, les extensions. Maintenant que les différents navigateurs se sont mis d’accord sur un format commun, les fameuses WebExtensions, Eolie finira sans doute par les prendre en charge. Mais pour le moment, je n’ai trouvé aucun moyen d’en installer. On notera néanmoins que le navigateur propose un bloqueur de publicités activé par défaut.
Pour une première version développée par un seul homme en seulement trois mois, je suis vraiment bluffé par le travail accompli. Tant sur le nombre d’options d’ores et déjà proposées, que sur la stabilité de l’ensemble. Et c’est dans ces moments-là que l’on constate toute la beauté du libre et des formats standards. Puisque il est évident que sans un moteur libre, les différentes technologies GNOME utilisées ou un système d’extensions standardisé, un tel projet aurait difficilement pu voir le jour.
Maintenant, ça reste une version 0.1 que l’auteur déconseille d’utiliser au quotidien. De mon côté, j’espère que l’on pourra prochainement déplacer la barre d’onglets à notre convenance et opter pour un modèle plus traditionnel si tel est notre souhait. De même que la prise en charge des WebExtensions ou l’ajout d’un gestionnaire de sessions. Après, tout se jouera sur les petits détails, comme de pouvoir annuler la fermeture d’un onglet ou couper rapidement le son de l’un d’entre eux. Si on ne retrouve pas nos petites habitudes, on aura du mal à changer.
Restera également la question du public cible et du nombre d’options qui seront proposées à terme. Si un navigateur comme Vivaldi a su trouver sa place face aux géants, c’est qu’il vise avant tout les utilisateurs confirmés. Comme on a pu le constater avec Web, une bonne intégration avec le reste de l’environnement GNOME ne sera pas suffisant pour être adopté, et il faudra non seulement proposer toutes les fonctionnalités habituelles, mais également en proposer de nouvelles dont on ne pourrait plus se passer.