Tribunes & Opinions

Créer un navigateur basé sur Chromium : comment ça marche ?

• Bookmarks: 2


Construire son propre navigateur basé sur Chromium est un sacré travail. Dans un article de blog particulièrement bien documenté, Yngve Pettersen, un développeur Vivaldi expert en sécurité, explique comment un fork de Chromium est possible.

capture_d_ecran_2022-08-28_a_15.44.36.jpg

Yngve Pettersen travaille pour le navigateur Vivaldi depuis le début. En qualité de responsable du code Chromium de Vivaldi, il a récemment documenté son processus de maintenance d’un fork Chromium.

Ce blog nous a particulièrement fasciné par la simplicité avec laquelle il explique un processus complexe. Nous reproduisons en français un extrait de cet article, que nous vous invitons à consulter (en anglais) à cette adresse.

Développer un navigateur basé sur Chromium

Pour Yngve Pettersen, développer un nouveau navigateur sur base de Chromium représente beaucoup de travail, à moins que vous ne souhaitiez simplement expédier la version de base de Chromium sans aucune modification.

Si vous avez l’intention de travailler sur un navigateur dérivé de Chromium et de le publier, vous aurez besoin de quelques éléments techniques lorsque vous commencerez à travailler sérieusement :

– Un dépôt de code source Git pour vos modifications.
– Une ou plusieurs machines de développement, configurées pour chaque système d’exploitation sur lequel vous souhaitez publier le navigateur.
– Des machines et des périphériques de test pour tester vos builds
– Des machines de construction pour chaque plate-forme. Elles doivent être connectées à un système qui construira automatiquement de nouvelles versions de test pour chaque mise à jour des sources et vos branches de travail, ainsi que des versions de production (officielles). Ces machines doivent être beaucoup plus puissantes que vos machines de développement. Les builds officiels prennent plusieurs heures, même sur une machine puissante, et nécessitent beaucoup de mémoire et d’espace disque. Il existe plusieurs solutions de cloud computing, mais vous devez bien peser le temps et (surtout) le coût. Franchement, avoir son propre rack de serveurs de construction sur place peut coûter « un peu » au départ, mais cela vous permet de mieux contrôler le système.
– Un site web où vous pouvez publier vos builds officiels afin que vos utilisateurs puissent les télécharger et les installer.

Ce qui risque de vous mettre des bâtons dans les roues ? La fréquence de publication des correctifs Chrome, entre autres.

« L’équipe de Chromium publie une nouvelle version majeure (ce qu’elle fait toutes les 4 ou 8 semaines, selon les cas) avec de nombreux correctifs de sécurité. Maintenant, votre navigateur est bogué et non sécurisé. Comment faire passer vos correctifs dans la nouvelle version ?

Ce processus peut être très compliqué et désordonné, surtout si vous avez beaucoup de correctifs sur le code Chromium. Ceux-ci introduiront fréquemment des conflits de fusion lors de la mise à jour du code source vers une version plus récente de Chromium parce que le projet en amont a mis à jour le code que vous avez corrigé. »

L’article explique l’une des parades : « Vivaldi utilise des extensions spéciales du langage de projet GN pour mettre à jour les cibles pertinentes avec les nouveaux fichiers et dépendances« .

La suite est à lire sur le blog de Vivaldi (en anglais). Vous pouvez également suivre les articles publiés par le développeur sur cette page.

Si vous souhaiter créer une extension pour les navigateur Chrome/Chromium, nous vous conseillons cet ouvrage.

2 recommended
bookmark icon
Mastodon