# Désinstaller Homebrew en gardant l'inventaire de vos formules

> Le script officiel emporte Cellar et Caskroom : exportez d'abord l'inventaire des formules et conservez les chemins qu'il n'a pas pu supprimer

Published: 2026-08-04 | Updated: 2026-08-08

Homebrew fournit un désinstalleur officiel, et il fait ce qu'il annonce. La surprise, c'est l'étendue : il retire Homebrew, et il retire ce que Homebrew a installé, et ces deux opérations n'ont pas du tout le même impact selon la raison de votre visite.

Si vous êtes là pour récupérer de l'espace disque, c'est le plus gros gain d'un seul coup sur la plupart des Mac de développeurs. Si vous êtes là parce qu'une formule se comporte mal, c'est bien plus que ce que vous vouliez.

## Le désinstalleur officiel

```
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
```

Lisez-le avant de l'exécuter. Le script est court et c'est la description de référence de ce qui va se produire, qu'aucun article ne peut remplacer.

Il prend en charge `--dry-run`, et sur une machine qui vous tient à cœur, c'est par là qu'il faut commencer : il affiche ce qui serait supprimé et ne change rien.

## Ce que le script supprime réellement

Le désinstalleur supprime le préfixe Homebrew et les répertoires qu'il contient : `bin`,
`etc`, `include`, `lib`, `opt`, `sbin`, `share`, `var`, `Frameworks`, ainsi que
`Cellar` et `Caskroom`.

Ces deux derniers sont le cœur du sujet. Cellar est l'endroit où se trouvent les fichiers de chaque formule, et Caskroom est l'endroit où se trouvent les métadonnées des casks. Retirer Homebrew les retire, donc chaque outil en ligne de commande installé par ce biais part en même temps.

Il vide aussi `~/Library/Caches/Homebrew` et `~/Library/Logs/Homebrew`, le
cache Homebrew au niveau système, `/etc/paths.d/homebrew`, et les applications gérées par Homebrew dans
`/Applications` et `~/Applications`.

<figure class="blog-diagram">
  <img src="https://mole.fit/img/blog/homebrew-uninstall-scope.webp" width="1360" height="454" loading="lazy" alt="Le désinstalleur retire le préfixe Homebrew, y compris Cellar et Caskroom, ainsi que les caches et les journaux, tandis que la configuration écrite par les paquets eux-mêmes et les lignes du profil shell restent.">
  <figcaption>Le script emporte les paquets avec lui, pas seulement le gestionnaire de paquets. Ce qu'il laisse, c'est la configuration que ces paquets ont écrite et les lignes que vous avez ajoutées à votre profil shell.</figcaption>
</figure>

## Notez ce que vous avez avant de le supprimer

L'inventaire n'est pas récupérable ensuite, et il tient en une commande :

```
brew leaves > ~/Desktop/brew-formulae.txt
brew list --cask > ~/Desktop/brew-casks.txt
```

`brew leaves` liste les formules que vous avez demandées plutôt que chaque dépendance installée en arrière-plan, ce qui est la liste dont vous avez réellement besoin pour reconstruire. Sur une nouvelle machine, ces
deux fichiers transforment une journée de reconstitution manuelle en une seule ligne `brew install`.

Tout ce qu'un paquet a stocké hors de son propre répertoire survit et mérite d'être conservé : un
répertoire de données Postgres, une base locale sous `/opt/homebrew/var`, une configuration dans votre
dossier personnel. Le désinstalleur supprime `var` sous le préfixe, donc une base qui s'y trouve
part avec lui. Copiez-la d'abord si elle compte.

## Le message de fin que l'on défile trop vite

Quand le script se termine, il peut indiquer que certains fichiers susceptibles d'appartenir à Homebrew n'ont pas été
supprimés et qu'il peut être utile de les retirer vous-même, suivi de la liste.

C'est le seul endroit où ces chemins sont mentionnés. Cela se produit en général à cause de
permissions sur des répertoires que Homebrew n'a pas créés, et la liste est courte. Copiez-la
quelque part avant de fermer le Terminal, car relancer le désinstalleur sur une
installation déjà retirée ne la reproduira pas.

## Votre profil shell le mentionne encore

Le désinstalleur ne modifie pas `.zprofile`, `.zshrc` ni `.bash_profile`. La ligne `eval
"$(/opt/homebrew/bin/brew shellenv)"` ajoutée à l'installation reste, et chaque nouveau
shell tente alors d'exécuter un binaire qui n'existe plus.

C'est sans danger, mais bruyant. Retirez la ligne, ou laissez-la si vous prévoyez de réinstaller.

## Demandez-vous si une opération plus restreinte ne suffit pas

La plupart des raisons de désinstaller Homebrew se règlent mieux par une opération plus ciblée. `brew
cleanup` récupère les anciennes versions et les téléchargements en cache. `brew uninstall <formula>` retire
une seule chose. `brew autoremove` retire les dépendances dont plus rien n'a besoin. Quelle que soit la commande
que vous lancez, [Mole](https://mole.fit/) vous montre ce que pèse le préfixe avant et après, le chiffre qui permet de juger si le retrait complet était vraiment nécessaire.

## Reconstruction à partir de la liste exportée

Une fois Homebrew installé sur la nouvelle machine, deux commandes restaurent ce que vous aviez :

```
xargs brew install < brew-formulae.txt
xargs brew install --cask < brew-casks.txt
```

On les garde séparées parce que les casks exigent `--cask`, et qu'une liste mixte échoue sur la moitié de ses entrées.

C'est `brew leaves` plutôt que `brew list` qui rend cela possible. `brew list` inclut les dépendances, donc le rejouer installe explicitement des centaines de paquets qui se seraient installés tout seuls, et `brew autoremove` ne les touchera plus ensuite parce que vous les avez demandés par leur nom. `brew leaves` ne renvoie que ce que vous avez réellement installé et laisse le graphe de dépendances à Homebrew.

---

Canonical HTML page: https://mole.fit/fr/blog/how-to-uninstall-homebrew-mac
Blog index for agents: https://mole.fit/fr/blog/llms.txt
Site index for agents: https://mole.fit/llms.txt
