Les utilisateurs de Linux sont plus susceptibles que la plupart de connaître Chromium, le projet Web gratuit et open source de Google qui sert de base à leur très populaire Chrome. Depuis le lancement du projet il y a plus de dix ans, les utilisateurs ont pu compiler le code sous licence BSD dans un navigateur presque le même que le Chrome à source fermée. En tant que tel, la plupart des distributions proposent leur propre package pour le navigateur et certaines l’incluent même dans l’installation de base. Malheureusement, cela pourrait bientôt changer.

Un message publié plus tôt ce mois-ci sur le blog officiel de Chromium expliquait qu’un audit avait déterminé que les «navigateurs tiers basés sur Chromium» utilisaient des API destinées uniquement à l’usage interne de Google. En réponse, tout navigateur tentant d’accéder à des fonctionnalités telles que Chrome Sync avec une clé API non officielle serait empêché de le faire après le 15 mars.

Pour l’utilisateur moyen de Chromium, cela ne semble pas être un problème. En fait, vous pourriez même supposer que cela ne s’applique pas à vous. Le langage utilisé dans l’article donne l’impression que Google fait référence à des navigateurs issus de la base de code Chromium, et au moins en partie, ils le sont. Mais le géant de la recherche profite également de cette opportunité pour codifier sa conviction que les seules versions officielles de Chromium sont celles qu’ils se fournissent. Avec ce simple changement, toute personne utilisant une version de Chromium spécifique à la distribution est devenue persona non grata.

Insatisfaits de l’idée de donner aux utilisateurs un navigateur semi-fonctionnel, les mainteneurs de Chromium pour plusieurs distributions telles que Arch Linux et Feutre ont déclaré qu’ils envisageaient de retirer complètement le paquet de leurs référentiels respectifs. Avec un représentant de Google confirmant que le changement est à venir indépendamment des commentaires de la communauté, il semble probable que davantage de distributions suivront.

Promesses non tenues

Pour la plupart des utilisateurs, ce n’est guère plus qu’un ennui mineur. Bien sûr, c’était bien d’avoir Chromium disponible dans le référentiel de paquets de votre distribution, mais accéder au site officiel et télécharger la dernière version stable n’est pas la fin du monde. Cependant, ceux qui exécutent des machines plus anciennes risquent de se réveiller grossièrement, car Google ne propose plus de versions 32 bits. Ils ne fournissent pas non plus de build BSD natif au moment de la rédaction de cet article. Pour ces utilisateurs, il est peut-être temps d’essayer Firefox.

Bientôt un souvenir de temps plus simples?

Les personnes qui souffrent le plus de cette décision sont celles qui ont passé des années à créer le navigateur open source de Google. Ils ont consacré beaucoup de temps et d’efforts pour compiler, distribuer et prendre en charge un Chromium personnalisé, seulement pour que Google retire le tapis sous eux sans un appel à commentaires. Vous pourriez penser que ce n’est qu’un des risques que vous prenez lorsque vous soutenez un projet sous licence BSD, qui par définition n’offre aucune garantie implicite, mais dans ce cas, les choses sont un peu moins simples.

Comme l’explique le développeur Eric Hameleers dans un long article de blog, l’équipe Google Chrome lui a fourni une clé API dédiée pour ses versions Slackware Chromium en 2013. Il a obtenu «l’autorisation officielle d’inclure des clés API Google dans vos packages», et a été a dit que le quota d’utilisation pour cette clé particulière serait augmenté «dans un effort pour soutenir adéquatement vos utilisateurs», car normalement la clé qui lui a été assignée ne serait utilisée que pour le développement personnel. Evangelos Foutras, le mainteneur du paquet Arch Linux Chromium, a indiqué qu’il avait reçu un e-mail similaire à peu près au même moment.

Il ne fait aucun doute que Google a compris comment ces personnes avaient l’intention d’utiliser leurs clés API. Ils ont même reçu une dispense spéciale pour contourner les limites de l’API, une décision qui a dû passer par plusieurs niveaux d’approbation. Le cadre permettant de donner aux packages Chromium spécifiques à la distribution le même niveau de fonctionnalité que les versions officielles a été convenu et mis en service il y a des années, c’est certain. Ce qui est moins clair, c’est ce qui s’est passé en interne chez Google qui les a incités à résilier ces accords existants avec un peu plus qu’un vague article de blog pour servir de notification.

Clés du royaume

Nous n’obtiendrons peut-être jamais toute l’histoire dans cette situation, et comme un représentant de Google a clairement indiqué que la décision était finale, cela n’a pas beaucoup de sens de s’en inquiéter. En fin de compte, Google va gérer son entreprise comme bon lui semble. S’ils pensent que permettre aux versions non officielles de Chromium de puiser dans leurs services cloud tels que Sync n’en vaut pas la peine, c’est leur prérogative de les bloquer. Ceux qui croient fermement au concept de logiciel libre et open source vous diront que c’est un exemple parfait de la raison pour laquelle vous auriez dû utiliser Firefox ou un autre navigateur vraiment libre en premier lieu.

D’un autre côté, les pirates dans leur ensemble n’aiment pas trop qu’on leur dise quoi faire. Trouver des solutions non conventionnelles aux limitations arbitraires est le nom du jeu, alors quelles options existent pour ceux qui ne peuvent pas ou ne veulent pas utiliser les versions officielles de Chromium de Google? Foutras a avancé une suggestion intéressante qui, du moins à première vue, ne semble pas enfreindre les conditions d’utilisation de Google. Bien que cela ne signifie certainement pas qu’ils en seront heureux.

En termes simples, il ne semble y avoir aucune raison technique pour laquelle une version tierce de Chromium ne pourrait pas simplement utiliser les clés d’API officielles fournies avec Chrome. Ces clés sont connues du public depuis au moins 2012 et n’ont jamais été modifiées pendant tout ce temps. Alors qu’en fait distribuer une version de Chromium utilisant ces clés peut constituer une zone grise suffisante pour que les distributions principales évitent de le faire, un script distinct qui s’exécute sur la machine de l’utilisateur final et glisse les clés dans les variables d’environnement pertinentes peut être une faille que Google ne s’attendait pas .