Ouvrir le menu principal

MacGeneration

Recherche

Comment Mozilla a adapté Firefox à l'architecture Apple Silicon

Stéphane Moussie

jeudi 28 janvier 2021 à 18:30 • 4

Logiciels

Parmi les nombreuses applications qui ont été optimisées très rapidement pour l'architecture Apple Silicon, il y a plusieurs navigateurs, dont Firefox. Dans un long billet de blog, l'ingénieur Gian-Carlo Pascutto retrace les étapes qui ont mené à la réalisation d'une version native de Firefox sur les Mac M1.

Mozilla a été grandement aidée par le fait qu'elle disposait déjà d'une version de Firefox conçue pour d'autres plateformes ARM 64 bits, en l'occurrence Android, Linux et même Windows depuis 2019. Cela a considérablement facilité le travail, mais il restait des choses à faire. Il a d'abord fallu passer en revue les différents composants pour voir comment ils réagissaient au fait qu'un Mac tourne avec une puce ARM.

Les développeurs de Mozilla ont ensuite adapté et corrigé les parties bas niveau du navigateur, en particulier le code Rust, un langage de programmation mis au point par la fondation (lire aussi : Avec ou sans Mozilla, le projet Rust cherche à rassurer sur son avenir). L'indispensable compilateur Rust fonctionnant sur Apple Silicon est arrivé mi-août, débloquant ainsi la situation.

Si l'éditeur a eu évidemment les mains entièrement libres pour modifier le code Firefox, un élément échappait à son contrôle, à savoir le module de DRM, qui est une boîte noire propriétaire fournie par Google. Sans visibilité sur l'adaptation de cet élément indispensable pour regarder des vidéos sur Netflix et d'autres services, Mozilla a utilisé la même astuce que pour la version Windows ARM de Firefox.

Le navigateur fait appel à la version Intel du module DRM qui fonctionne grâce à Rosetta 2 et qui est compris dans le binaire universel. L'éditeur avait en effet le choix entre créer deux versions distinctes de Firefox pour Mac (l'une pour Intel, l'autre pour Apple Silicon), ou bien une seule qui soit universelle. C'est la seconde solution qui a été retenue par simplicité pour l'utilisateur — ce qui arrange aussi pour tirer parti du module Widevine x64.

Le binaire universel comprenait toutefois son lot de complications pour l'éditeur, comme le fait que Firefox 83 « rosettisé » ne lance pas immédiatement la version Apple Silicon de Firefox 84 après la mise à jour automatique, mais toujours le binaire Intel. Les utilisateurs ont alors été informés qu'ils devaient fermer complètement Firefox pour bénéficier de la version Apple Silicon après la mise à jour automatique. Autre aléa rencontré, certains antivirus identifiaient à tort le nouveau binaire universel comme un malware, un problème que Mozilla a réglé en contactant les éditeurs.

La fondation aurait pu distribuer la version Apple Silicon de Firefox dans la foulée de la sortie des Mac M1 en novembre, mais elle a préféré la programmer en décembre, afin de faire des tests avec les « vraies » machines et pas seulement le DTK. C'est Firefox 84, sorti le 15 décembre, qui a inauguré l'optimisation pour Apple Silicon, avec à la clé des performances doublées par rapport à la version traduite par Rosetta.

Mais le travail n'est pas encore terminé, il reste des composants à huiler. WebRender, qui tire parti du GPU pour accélérer le rendu des pages, vient d'être réactivé dans la mouture 85 parue cette semaine. Outre des bugs qui restent à corriger (dont un pénible avec le mode sombre, même s'il n'est pas spécifique à ARM), Mozilla va chercher à exploiter au mieux les caractéristiques de la puce M1 et des autres à venir, par exemple en attribuant aux cœurs économes les tâches légères.

Ajouter ce site dans Google News

Apple présente les Mac mini M6 et Mac Studio M5 dans des vidéos originales

21:57

• 3


Un Mac juste pour de la bureautique ? 255 € suffisent avec le code MACTOSCHOOL

20:54

• 0


Test de la Thermal Master P3, une caméra thermique compacte et convaincante pour les smartphones

20:44

• 7


Faille iCloud Private Relay : CyberGhost VPN à -82 % pour protéger votre Mac sans attendre le correctif d'Apple 📍

19:50

• 0


Le Mac mini M6 avec 16 Go de RAM a de la mémoire plus lente

19:30

• 22


Apple remplace le texte des Magic Keyboard par des glyphes

18:35

• 13


De 700 € à 1 050 € en moins de deux ans, le tarif du Mac mini n'en finit plus de bouger

17:35

• 20


Les Mac mini M6 et M5 Pro profitent d’un port Ethernet 2,5 Gb/s par défaut

16:52

• 5


Apple répond à l’inflation avec une nouvelle chiffonnette à 10 €

16:28

• 63


Surprise, Apple présente un nouveau Mac Studio, avec des puces M5 Max ou M5 Ultra

16:10

• 51


Apple lance les Mac mini M6 et M5 Pro : des performances en nette hausse, tout comme les prix

15:14

• 65


Fenix 9 et 9 Pro : Garmin renouvelle sa gamme phare à partir de 999 €

15:07

• 21


Apple devrait bien permettre à Siri AI d'utiliser ChatGPT, Grok ou Claude

15:05

• 13


Le hub domotique d’Apple ferait bien appel à la reconnaissance faciale pour reconnaître les utilisateurs

11:40

• 9


Transfert PC vers Mac : l’Assistant migration Windows d'Apple se refait une petite beauté

11:15

• 2


IBM présente un processeur hybride, capable d'accepter deux jeux d'instructions (dont l'ARM64)

11:15

• 7