Comment utiliser Homebrew sur un Mac Apple Silicon

Nicolas Furno |

Si vous avez la chance d’utiliser un Mac Apple Silicon et que vous avez besoin d’utiliser le gestionnaire de paquets Homebrew, vous avez probablement été fort déçu en voyant que la ligne de commande habituelle pour l’installer affiche un message d’erreur :

Homebrew refuse de s’installer sur un Mac Apple Silicon.

Homebrew n’est pas encore une app optimisée Apple Silicon et elle doit fonctionner avec Rosetta. Le problème supplémentaire qui se pose dans ce cas est que c’est un outil en ligne de commandes à utiliser dans le terminal. L’app Terminal de macOS étant optimisée pour la nouvelle architecture d’Apple1, elle considère par défaut que c’est le cas pour toutes les commandes que vous y saisissez. Comme ce n’est pas le cas pour Homebrew, il y a un problème.

Pour le régler, les développeurs du gestionnaire de paquets suggèrent deux solutions :

  • Bloquer l’app Terminal sur Rosetta ;
  • Forcer l’installation de Homebrew sur Rosetta.

La première solution consiste à afficher l’app Terminal dans le Finder (vous pouvez le faire en cliquant son icône dans le Dock avec la touche ⌘), puis afficher ses informations (⌘I) et cocher la case « Ouvrir avec Rosetta ». Quittez l’app, relancez-la et Homebrew fonctionnera à nouveau. Seul problème de cette approche, tout ce que vous ferez dans le Terminal de macOS passera par la couche d’émulation x86, ce qui n’est pas optimal.

Cocher cette case force le Terminal à se lancer sous Rosetta et permet ainsi d’installer Homebrew.

La deuxième option me semble meilleure et c’est celle que j’ai utilisée sur un Mac mini sous Apple M1. Pour installer Homebrew, vous devez modifier la ligne de commande et saisir ceci :

/usr/bin/arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Les ajouts forcent le script d’installation à considérer que vous utilisez un Mac Intel, ce qui permet à Rosetta de s’activer. Vous devrez les utiliser pour toutes les commandes par la suite toutefois. Ainsi, pour installer l’éditeur de texte nano, vous devrez saisir :

	/usr/bin/arch -x86_64 brew install nano

Et pour mettre à jour tous vos paquets :

	/usr/bin/arch -x86_64 brew upgrade

C’est contraignant, mais les alias sont là pour simplifier les choses. Ajoutez un alias pour que la commande brew passe systématiquement par Rosetta :

alias brew='arch -x86_64 brew'

Et vous pourrez ensuite utiliser Homebrew normalement, ou presque. Le changement d’architecture implique que certains outils en ligne de commande ne fonctionnent plus correctement, vous trouverez une liste à cette adresse. Autre point à noter, on ne sait pas encore comment se déroulera la transition vers ARM, quand les paquets seront disponibles. L’utilitaire pourrait se charger de supprimer les versions Intel et de les remplacer pour vous automatiquement, mais il est aussi possible qu’une réinstallation manuelle soit nécessaire.

Et si vous pouvez patienter, sachez qu’une mise à jour de Homebrew est en préparation pour gérer les deux architectures de manière transparente.


  1. C’est aussi le cas d’iTerm 2, si vous préférez cette autre app de terminal.  ↩︎

Accédez aux commentaires de l'article