https://github.com/sn0walice/detox-mac
A fast, cute and clean Rust-based macOS maintenance CLI tool. Think of it as CleanMyMac, but open-source, modular, and no BS.
https://github.com/sn0walice/detox-mac
clean macos rust
Last synced: 3 months ago
JSON representation
A fast, cute and clean Rust-based macOS maintenance CLI tool. Think of it as CleanMyMac, but open-source, modular, and no BS.
- Host: GitHub
- URL: https://github.com/sn0walice/detox-mac
- Owner: Sn0wAlice
- License: gpl-3.0
- Created: 2025-07-06T19:54:13.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-07-06T20:18:48.000Z (about 1 year ago)
- Last Synced: 2025-10-04T07:29:25.527Z (9 months ago)
- Topics: clean, macos, rust
- Language: Rust
- Homepage:
- Size: 374 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# detox-mac

> A fast, cute and clean Rust-based macOS maintenance TUI tool.
> Think of it as *CleanMyMac*, but open-source, modular, and no BS. đŠ
---
## âš Features
### đ§č Nettoyage
- Nettoyer les caches utilisateur (`~/Library/Caches`)
- Vider la corbeille (`~/.Trash`) ou toutes les corbeilles (volumes montés inclus)
- Nettoyer les logs (`~/Library/Logs`)
- Supprimer les fichiers `.DS_Store` récursivement
- Nettoyer le cache Homebrew (`brew cleanup --prune=all`)
- Nettoyer les données Xcode (DerivedData, DeviceSupport, Simulateurs)
### đ» SystĂšme
- Afficher les infos systĂšme (CPU, RAM, disque, version macOS, uptime)
- Vérifier les mises à jour macOS (`softwareupdate -l`)
- Lister les apps les plus volumineuses (`/Applications`)
- Détecter les gros fichiers (> 500 Mo dans `~`)
- Flush DNS (`dscacheutil` + `mDNSResponder`)
- Libérer l'espace disque (snapshots Time Machine)
- Réindexer Spotlight (`mdutil -E`)
- Purger la RAM inactive (`purge`)
### đ DĂ©marrage
- Vue détaillée des LaunchAgents/Daemons (label, statut actif/inactif, tag Apple/Tiers)
- Lister uniquement les agents tiers (non-Apple)
- Désactiver/réactiver les agents tiers sans les supprimer (`launchctl unload/load`)
- Supprimer les LaunchAgents utilisateur (avec `launchctl unload` avant suppression)
- Supprimer tous les LaunchAgents/Daemons
### đĄïž SĂ©curitĂ© & UX
- **Mode Simulation (dry-run)** : voir ce qui serait fait sans rien modifier
- **Confirmation** avant chaque tĂąche destructive
- **Dashboard au démarrage** : résumé systÚme + espace récupérable (caches, corbeille, logs) + nombre d'agents
- Affichage de la taille avant/aprÚs chaque opération de nettoyage
---
## đ Installation
```bash
git clone https://github.com/youruser/detox-mac.git
cd detox-mac
cargo build --release
cp target/release/detox-mac /usr/local/bin/detox-mac
```
---
## đ§ Utilisation
Lancez simplement :
```bash
detox-mac
```
L'application s'ouvre en mode TUI interactif avec 4 onglets.
### Raccourcis clavier
| Touche | Action |
|---|---|
| `â` `â` / `j` `k` | Naviguer dans les tĂąches |
| `â` `â` / `Tab` | Changer d'onglet |
| `Entrée` | Exécuter la tùche sélectionnée |
| `Espace` | Cocher/décocher pour exécution groupée |
| `r` | Lancer toutes les tùches cochées |
| `d` | Activer/désactiver le mode simulation |
| `PgUp` / `PgDn` | Scroller le journal |
| `Esc` | Annuler la confirmation / Quitter |
| `q` | Quitter |
### Onglets
| Onglet | Description |
|---|---|
| **Général** | Tùches d'optimisation rapide (caches, corbeille, logs, DNS...) |
| **Nettoyage** | Nettoyage détaillé (Homebrew, Xcode, toutes corbeilles...) |
| **SystĂšme** | Infos, mises Ă jour, scan d'apps/fichiers, DNS, Spotlight, RAM |
| **Démarrage** | Gestion des LaunchAgents/Daemons (vue, filtre, disable/enable) |
---
## đĄïž Sudo
Certaines opérations nécessitent des privilÚges élevés (flush DNS, Spotlight, purge RAM).
Lancez avec sudo si besoin :
```bash
sudo detox-mac
```
Les tùches nécessitant sudo sont marquées `[sudo]` dans l'interface.
---
## đ§Ș Mode Simulation
Appuyez sur `d` pour activer le mode simulation. Dans ce mode :
- Aucun fichier n'est supprimé
- Aucune commande systÚme n'est exécutée
- Les tailles et fichiers concernés sont affichés normalement
- Le header et le journal indiquent `[SIMULATION]`
Idéal pour voir ce que l'app ferait avant de lancer pour de vrai.
---
## đïž Architecture
```
src/
âââ main.rs # Point d'entrĂ©e, boucle d'Ă©vĂ©nements
âââ app.rs # Ătat de l'app, onglets, tĂąches, logique
âââ ui.rs # Rendu TUI (ratatui)
âââ modules/
âââ cache.rs # Nettoyage des caches utilisateur
âââ trash.rs # Vidage corbeille (simple + multi-volumes)
âââ logs.rs # Nettoyage des logs
âââ dsstore.rs # Suppression des .DS_Store
âââ homebrew.rs # Nettoyage cache Homebrew
âââ xcode.rs # Nettoyage donnĂ©es Xcode
âââ system.rs # Commandes systĂšme (DNS, Spotlight, RAM...)
âââ sysinfo.rs # Infos systĂšme & dashboard
âââ scanner.rs # Scan apps volumineuses & gros fichiers
âââ launch.rs # Suppression LaunchAgents/Daemons
âââ login.rs # Vue dĂ©taillĂ©e, filtre Apple/tiers, disable/enable
âââ utils.rs # Utilitaires (tailles, dry-run, wrappers)
```
**DĂ©pendances** : `ratatui`, `crossterm` â rien d'autre.
---
## â€ïž Why?
Because we love our Macs, but we don't love bloated cleanup apps.