Combien de gigas de fichiers inutiles traînent sur votre Mac à l’insu de votre plein gré ?
Je ne parle pas des photos en double de la soirée barbecue de 2019 ni du dossier Téléchargements qui ressemble à une décharge municipale. Je parle des artefacts de compilation. node_modules de projets que vous n’avez pas touchés depuis la pandémie. Caches de build provenant de frameworks dont vous ne vous souvenez même pas avoir installé. Les données dérivées de Xcode, s’accumulant comme de la poussière sous le lit.
Mon disque était utilisé à 85 % depuis des mois, je jonglais désespérément avec les fichiers à supprimer. Jusqu’à ce que je découvre Mole, que j’exécute mo purge --dry-run, et que l’écran crache un chiffre : 17 Go récupérables. Trois cent cinquante artefacts de compilation oubliés, moisissant paisiblement dans les coins.
Dix-sept gigas. Sans toucher à une seule photo ou document.
Qu’est-ce que Mole (et ce qu’il n’est pas)
Mole est un outil en ligne de commande (CLI) pour macOS qui promet de “nettoyer en profondeur et optimiser votre Mac”. Il propose un éventail de commandes digne d’un couteau suisse :
mo clean # Nettoie les caches, journaux et fichiers temporaires mo uninstall # Désinstalle complètement les applications mo optimize # Analyse et “optimise” le système mo analyze # Explore l’utilisation du disque mo status # Surveille la santé du système mo purge # Supprime les artefacts de projets mo installer # Trouve les anciens installateurs mo touchid # Configure Touch ID pour sudo
Huit commandes. Voilà la vérité tout de suite : **seules deux en valent la peine**. Les autres se situent entre "bof, je peux le faire moi-même" et "pas question d'exécuter ça sans vérifier".
## mo purge : le joyau caché
Si vous êtes développeur et utilisez votre Mac depuis plus de six mois, `mo purge` va dénicher des trésors cachés. Pour nous comprendre : il scanne vos dossiers de projets et détecte les artefacts de *build* qui occupent de l'espace sans apporter aucune valeur.
Quels types d'artefacts ? Les suspects habituels :
- **node_modules** dans les projets Node/Bun auxquels vous n'avez pas touché
- **target/** dans les projets Rust
- **build/** et **.build/** dans les projets Swift/Xcode
- **DerivedData** de Xcode
- **__pycache__** et environnements virtuels pour Python
- **.gradle** et **build/** dans les projets Java/Kotlin
- **Pods/** dans les projets iOS utilisant CocoaPods
La beauté de ces dossiers, c'est qu'ils sont entièrement régénérables. Si vous revenez à ce projet demain, un `npm install` ou `cargo build` les reconstruit à neuf. Mais en attendant, ils s'accumulent, occupant plusieurs gigas comme des locataires qui ne paient pas leur loyer.
### La bonne méthode
Tout d'abord, toujours en mode simulation :
```bash
mo purge --dry-run
Cela vous montre ce qu’il détecte et combien d’espace serait libéré, sans rien supprimer. C’est le moment de vérifier la liste et de vous assurer qu’il ne supprimera pas le node_modules du projet actuellement ouvert dans trois terminaux.
Si le résultat vous convient :
mo purge
Et voilà que 17 Go reviennent sur votre disque. Aussi simple que ça.
Configurer les chemins d’analyse
Par défaut, Mole recherche dans des chemins génériques (~/Projects, ~/GitHub, ~/Code…). Si votre structure de dossiers est différente — et elle le sera si vous êtes un peu organisé — il vous faut la configurer :
mo purge --paths
Cela ouvre un éditeur où vous pouvez ajouter vos vrais chemins. Dans mon cas, ~/code et ~/courses. Sans cela, Mole scanne des dossiers inexistants et manque ceux qui comptent vraiment.
mo analyze : la carte au trésor
mo analyze est l’autre pépite. Il lance une interface utilisateur basée sur terminal (TUI) interactive qui vous montre une carte de votre disque, répertoire par répertoire, triée par taille.
mo analyze # Analyse le disque principal
mo analyze /Volumes # Analyse les disques externes
C’est comme un Disk Inventory X ou un GrandPerspective, mais dans le terminal et sans installer d’application graphique.
Pourquoi est-ce utile ? Parce que le problème du manque d’espace disque n’est pas “je dois supprimer quelque chose”. C’est plutôt “je ne sais pas ce qui occupe 50 Go”. mo analyze vous donne la réponse en quelques secondes. Vous naviguez dans l’arborescence, voyez ce qui prend le plus de place, et décidez.
La différence avec une commande manuelle du -sh * | sort -rh : la TUI vous permet d’explorer en profondeur les sous-dossiers sans relancer la commande. Vous entrez, en ressortez, comparez. C’est plus rapide et plus intuitif que l’alternative pure en terminal.
Et le reste… franchement
Voici une opinion bien arrêtée : les autres commandes de Mole vont de dispensables à directement inutiles.
mo clean : peu d’impact comparé à ce que vous faites déjà
Nettoie les caches système, journaux et fichiers temporaires. Ça semble bien, mais macOS gère déjà la majorité de ces caches automatiquement. Quant à ceux qu’il ne gère pas (Homebrew, Docker, etc.), vous êtes mieux placé pour les nettoyer vous-même, en choisissant ce que vous voulez conserver ou pas.
Vous allez récupérer 2-3 Go ? Probable. Est-ce que ça vaut l’automatisation ? Si votre disque est si plein que 2 Go comptent, mo purge vous aurait donné dix fois plus.
mo optimize : la boîte noire
“Vérifie et maintient la santé du système, applique des optimisations.” Quelles optimisations ? Sur quoi ? La documentation est vague, et je n’aime pas exécuter des commandes qui “optimisent” mon système sans savoir exactement ce qu’elles modifient.
Vous pouvez tenter mo optimize --dry-run pour voir ce qu’il ferait, et c’est bien. Mais, selon mon expérience, les “optimisations” se limitent à des tâches simples comme vérifier les permissions des disques, nettoyer des polices corrompues ou reconstruire les index de Spotlight. Des choses que soit macOS gère déjà, soit vous n’avez pas besoin de toucher tant que tout fonctionne.
mo uninstall : utile mais avec des réserves
Désinstalle des applications tout en supprimant leurs fichiers temporaires (préférences, caches, etc.), qui restent souvent après les avoir déplacées à la corbeille. C’est ce que fait AppCleaner, mais via le terminal.
Si vous désinstallez souvent des applications, cela peut valoir le coup. Sinon, bof.
mo status : esthétique mais accessoire
Un tableau de bord dans le terminal affichant le CPU, la mémoire, le disque et la batterie. Esthétique. Mais vous avez déjà htop, btop, le Moniteur d’activité, ou même la possibilité de demander directement à votre système “quelle est la charge de la mémoire ?” sans rien lancer.
En conclusion : le moins est le mieux
Mole propose huit commandes. Deux sont réellement utiles. Le reste est superflu.
mo purge résout un problème concret que nulle autre app de nettoyage pour Mac n’aborde : les artefacts de compilation des développeurs. Ce n’est pas une simple bidouille qui efface les caches système en espérant que cela fera une différence. Il identifie des artefacts spécifiques, vous dit combien d’espace ils occupent, et les supprime. Tout est régénérable. Aucun risque.
mo analyze répond à un autre problème fondamental : déterminer où l’espace disque est utilisé. Pas besoin d’applications graphiques, ni de dépendre de l’indexation de Finder, ni de lancer du à répétition. Cette interface terminale rapide vous offre un aperçu exhaustif et clair de l’utilisation du disque.
Ces deux commandes m’ont permis de récupérer 17 Go en moins d’une minute. Et le meilleur dans tout ça, c’est que je peux répéter le processus chaque mois sans y réfléchir — les artefacts s’accumulent comme le linge sale, mais désormais, j’ai une solution efficace.
# Votre nouveau rituel mensuel
brew install mole # Une seule fois
mo purge --paths # Configurer vos chemins (une seule fois)
mo purge --dry-run # Vérifier
mo purge # Nettoyer
mo analyze # Explorer ce qui reste à supprimer
Bonus : automatiser l’entretien complet
Si mo purge est fiable — et il l’est, puisque tout ce qu’il supprime peut être recréé via un install ou build — pourquoi ne pas l’automatiser, avec brew upgrade en complément ?
“Mais attendez, une mise à jour automatique de brew upgrade ne risque-t-elle pas de provoquer des dysfonctionnements ?” Oui, sauf si vous utilisez des gestionnaires de versions par projet. Avec uv, par exemple, chaque projet a sa propre installation de Python (uv python install 3.x), donc une mise à jour de Homebrew ne perturbera pas vos environnements virtuels. Pareil pour Node avec nvm ou fnm. Le Python ou Node de Homebrew concerne votre système — vos projets n’en dépendent pas directement.
Une fois cette inquiétude dissipée, voici une tâche automatisée à exécuter chaque dimanche pour un bénéfice maximal :
#!/bin/bash
# Mettre à jour Homebrew
brew update && brew upgrade
brew cleanup --prune=30
brew autoremove
# Nettoyer les artefacts de développement
mo purge --yes
Le dimanche matin, vous vous réveillez et découvrez votre Mac avec des paquets à jour, les gigas de node_modules obsolètes supprimés, et un résumé qui arrive sur Telegram. Sans effort. Sans devoir y penser. Sans friction.
Cela dit : on ne peut pas automatiser mo analyze. Explorer son disque est une décision personnelle, pas une tâche pour cron. Mais une fois par mois, après un purge automatique, lancer mo analyze pour inspecter ce qui pourrait encore être supprimé reste un excellent réflexe.
Le meilleur logiciel n’est pas celui qui compte le plus de fonctionnalités. C’est celui qui accomplit efficacement les deux tâches qui comptent vraiment. Mole a six commandes en trop, mais celles qui valent la peine justifient son installation.