Brew, le gestionnaire de paquets pour macOS et Linux
Mise à jour :
Lorsque vous lisez les guides de ce site, vous avez sûrement remarqué que
l’installation d’un logiciel sur macOS en ligne de commande se fait avec brew
.
Homebrew, le gestionnaire de paquets, simplifie l’installation, la mise à jour
et la gestion des logiciels, aussi bien sur macOS que sur Linux.
Pourquoi utiliser Homebrew ?
Sur macOS, il comble un manque important : Apple ne propose pas de gestionnaire de paquets natif, contrairement à Linux avec APT (Debian/Ubuntu) ou DNF (Fedora). Sur Linux, bien qu’il existe déjà des alternatives comme asdf-vm, Homebrew se distingue par sa simplicité et sa flexibilité.
Avec une simple commande, vous pouvez installer presque n’importe quel logiciel, de la dernière version de Python à des outils comme Git, Node.js ou Docker. Il prend aussi en charge les applications graphiques grâce aux casks.
Comment installer Homebrew ?
Avant d’installer Homebrew, assurez-vous que votre système répond aux exigences suivantes :
Sur macOS (Intel et Apple Silicon) :
- macOS 11 (Big Sur) ou version ultérieure est recommandé
- Xcode Command Line Tools doit être installé
- Accès administrateur pour l’installation
Exécutez la commande suivante :
xcode-select --install
Une boîte de dialogue apparaîtra pour confirmer l’installation. Une fois celle-ci terminée, vérifiez que tout est bien installé avec :
xcode-select -p
Sur Linux :
- Une distribution basée sur Debian, Ubuntu, Fedora ou CentOS
curl
,git
etprocps
doivent être installés- Un accès sudo peut être nécessaire pour certaines étapes
Sur Debian/Ubuntu :
sudo apt update && sudo apt install -y curl git procps
Sur Fedora :
sudo dnf install -y curl git procps-ng
Installation sur macOS
L’installation se fait via un script à exécuter dans le terminal. Pour macOS (Intel et Apple Silicon), utilisez :
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Pendant l’installation, le script vous demandera d’entrer votre mot de passe administrateur.
À la fin de l’installation, Homebrew vous affichera des instructions pour
configurer votre PATH. Pour les architectures Intel, ajoutez la ligne
suivante à votre fichier ~/.zshrc
ou ~/.bashrc
:
echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zshrcsource ~/.zshrc
Pour les Macs avec puce Apple Silicon (M1/M2), utilisez :
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrcsource ~/.zshrc
Testez si Homebrew est correctement installé avec :
brew doctor
Si tout est en ordre, le message “Your system is ready to brew” s’affichera.
Installation sur Linux
Lancez l’installation avec :
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Ajoutez Homebrew à votre environnement :
Pour bash :
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrcsource ~/.bashrc
Pour zsh :
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.zshrcsource ~/.zshrc
Exécutez :
brew doctor
Si tout est en ordre, Homebrew est prêt à être utilisé.
Commandes de base
Maintenant que Homebrew est installé, voyons comment l’utiliser. Ce gestionnaire de paquets repose sur des commandes simples pour installer, mettre à jour et supprimer des logiciels.
Installer un paquet
Pour installer un logiciel avec Homebrew, il suffit d’exécuter :
brew install <nom_du_paquet>
Par exemple, pour installer htop, un outil de surveillance système :
brew install htop
Une fois installé, vous pouvez l’exécuter en tapant simplement htop
dans le
terminal.
Si vous voulez installer une application graphique sur macOS (exemple : Google Chrome), utilisez cask :
brew install --cask google-chrome
Sur Linux, cask n’est pas nécessaire puisque les applications graphiques sont installées comme n’importe quel autre paquet.
Mettre à jour les paquets
Les logiciels installés avec Homebrew peuvent être mis à jour facilement. Commencez par mettre à jour la liste des paquets disponibles :
brew update
Ensuite, mettez à jour tous les logiciels installés :
brew upgrade
Si vous voulez mettre à jour un seul paquet, ajoutez son nom :
brew upgrade htop
Lister les paquets installés
Pour afficher la liste des logiciels installés avec Homebrew :
brew list
Si vous souhaitez voir uniquement les applications graphiques installées via cask :
brew list --cask
Supprimer un paquet
Si vous n’avez plus besoin d’un logiciel, vous pouvez le désinstaller avec :
brew uninstall htop
Pour une application graphique :
brew uninstall --cask google-chrome
Si vous voulez supprimer un logiciel et nettoyer ses fichiers de configuration :
brew uninstall --force htop
Nettoyer les anciennes versions
Homebrew conserve parfois des anciennes versions des logiciels après une mise à jour. Pour libérer de l’espace disque :
brew cleanup
Et pour voir combien d’espace, vous pouvez récupérer avant de nettoyer :
brew cleanup -n
Résumé des commandes principales
Action | Commande |
---|---|
Installer un paquet | brew install <nom_du_paquet> |
Installer une application GUI | brew install --cask <nom_du_paquet> |
Mettre à jour Homebrew | brew update |
Mettre à jour les logiciels | brew upgrade |
Lister les paquets installés | brew list |
Supprimer un paquet | brew uninstall <nom_du_paquet> |
Nettoyer les anciennes versions | brew cleanup |
Avec ces commandes de base, vous pouvez déjà gérer efficacement vos logiciels avec Homebrew. Dans le chapitre suivant, nous allons voir la gestion des formules et des casks, pour aller plus loin dans l’utilisation de cet outil !
Gérer les dépôts externes avec les taps
Par défaut, Homebrew installe des paquets depuis son dépôt officiel, mais il est possible d’ajouter des dépôts externes appelés “taps”. Cela permet d’accéder à des logiciels non inclus dans la base officielle ou à des versions spécifiques.
Lister les taps disponibles
Avant d’ajouter un tap, vous pouvez vérifier ceux qui sont déjà installés :
brew tap
Ajouter un tap
Pour ajouter un dépôt externe, utilisez :
brew tap <utilisateur>/<nom_du_tap>
Par exemple, pour accéder à des versions alternatives d’applications populaires :
Pour ajouter le dépôt de Microsoft contenant des outils comme VS Code :
brew tap microsoft/git
Une fois ajouté, les paquets disponibles dans ce tap peuvent être installés normalement :
brew install <nom_du_paquet>
Supprimer un tap
Si vous n’avez plus besoin d’un dépôt externe, vous pouvez le supprimer :
brew untap <utilisateur>/<nom_du_tap>
Par exemple, pour supprimer le dépôt des versions alternatives :
brew untap homebrew/cask-versions
Cela n’affectera pas les paquets déjà installés, mais vous ne pourrez plus les mettre à jour depuis ce tap.
Ou trouver des taps ?
Pour découvrir des taps supplémentaires pour Homebrew, vous pouvez consulter les ressources suivantes :
-
Liste de taps intéressants : La page “Interesting Taps and Forks ↗” propose une sélection de taps notables maintenus par la communauté.
-
Dépôt GitHub “Awesome Homebrew Taps” : Le dépôt sticklerm3/awesome-homebrew-taps ↗ compile une liste de taps utiles et populaires.
Résumé des commandes pour gérer les taps
Action | Commande |
---|---|
Lister les taps installés | brew tap |
Ajouter un tap | brew tap <utilisateur>/<nom_du_tap> |
Supprimer un tap | brew untap <utilisateur>/<nom_du_tap> |
Gestion de plusieurs versions avec Homebrew
Avec Homebrew, il est possible d’installer et de gérer plusieurs versions d’un même logiciel grâce aux commandes link et unlink. Cela est particulièrement utile pour les développeurs qui ont besoin de tester différentes versions d’un langage ou d’un outil.
Vérifier les versions disponibles d’un paquet
Avant d’installer un logiciel, vous pouvez voir les versions disponibles avec :
brew search <nom_du_paquet>
Par exemple, pour Python :
brew search python
==> Formulaeboost-python3 ptpython python-gdbm@3.13 python-setuptools python-tk@3.9 python@3.8 jythonbpython python-argcomplete python-launcher python-tabulate python-yq python@3.9 ✔cyclonedx-python python-build python-lsp-server python-tk@3.10 python@3.10 reorder-python-importsipython python-freethreading python-markdown python-tk@3.11 python@3.11 wxpythonlibvirt-python python-gdbm@3.11 python-matplotlib python-tk@3.12 python@3.12 pythranmicropython python-gdbm@3.12 python-packaging python-tk@3.13 python@3.13 cython
Cela affiche la version installée, les anciennes versions encore disponibles et l’emplacement d’installation.
Installer une version spécifique d’un paquet
Par défaut, Homebrew installe la dernière version d’un logiciel. Mais vous
pouvez spécifier une version en utilisant @
suivi du numéro de version.
brew install python@3.10
Supprimer une version spécifique
Si vous n’avez plus besoin d’une version spécifique d’un logiciel, supprimez-la avec :
brew uninstall python@3.10
Résumé des commandes pour gérer plusieurs versions
Action | Commande |
---|---|
Voir les versions disponibles | brew search <paquet> |
Installer une version spécifique | brew install <paquet>@<version> |
Supprimer une version spécifique | brew uninstall <paquet>@<version> |
Grâce à ces commandes, vous pouvez facilement jongler entre différentes versions d’un même logiciel avec Homebrew. Dans le chapitre suivant, nous verrons comment aller encore plus loin avec les taps et les formules personnalisées.
Figer les versions et éviter les mises à jour
Par défaut, Homebrew met à jour les paquets lorsqu’on exécute brew upgrade
. Mais parfois, on veut figer une version pour éviter qu’elle ne
soit remplacée par une mise à jour. C’est particulièrement utile pour les
développeurs qui travaillent avec des versions spécifiques.
Empêcher la mise à jour d’un paquet avec pin
La méthode la plus simple pour empêcher la mise à jour d’un paquet est de le “pinner” avec la commande :
brew pin htop
Une fois un paquet pinné, il n’apparaîtra plus dans les mises à jour
quand on exécute brew upgrade
.
Vérifier les paquets “pinnés”
Pour voir tous les paquets qui sont bloqués sur une version spécifique :
brew list --pinned
Débloquer un paquet avec unpin
Si vous souhaitez autoriser de nouveau les mises à jour, utilisez :
brew unpin htop
Dès que vous faites cela, le paquet pourra être mis à jour avec brew upgrade
.
Résumé des commandes pour figer une version
Action | Commande |
---|---|
Bloquer un paquet sur une version | brew pin <paquet> |
Voir les paquets bloqués | brew list --pinned |
Débloquer un paquet | brew unpin <paquet> |
Mettre à jour sans toucher aux paquets bloqués | brew upgrade --ignore-pinned |
En appliquant ces astuces, vous pouvez garder un environnement stable et éviter des mises à jour non désirées qui pourraient casser votre configuration. Dans le prochain chapitre, nous verrons comment ajouter des dépôts externes avec les taps pour encore plus de flexibilité.
Conclusion
Après avoir exploré Homebrew en détail, je reconnais que c’est un excellent outil pour installer et gérer des logiciels sur macOS et Linux. Son fonctionnement simple, sa vaste bibliothèque de paquets et sa flexibilité en font un incontournable, surtout sur macOS où il comble l’absence d’un gestionnaire natif.
Cependant, pour la gestion des versions, notamment pour des langages comme
Python, Node.js ou Ruby, je préfère largement
asdf-vm. Cet outil permet
de jongler plus facilement entre plusieurs versions et offre un contrôle plus
précis sans avoir à utiliser brew link/unlink
.