Brew, l'APT-GET du Mac
Présentation
Mac OS est un OS absolument génial, il est d'une simplicité incroyable, et nous facilite la vie avec une gestuelle de trackpad fantastique. La seule critique que nous pouvons lui reprocher est qu'il lui manque un gestionnaire de paquet en ligne de commande.
Pas de panique, c'est pour cela que Homebrew a été développé.
Homebrew (aka brew) fonctionne comme APK pour Alpine, ou bien encore apt-get pour les distributions Debian Based.
Il est possible d'ajouter une tonne de paquets indispensable, mais pourtant manquant par défaut sous Mac.
Installation
De base, Homebrew nécéssite les outils de développement CLI de XCode, il existe une parade afin d'installer uniquement les outils CLI de XCode, et non XCode (Qui pèse prêt de 11GB, ce qui est considérable pour un SSD de 128/256GB)
Tout d'abord, nous devons installer les outils CLI de XCode
Puis on installe Homebrew
Commandes de base Homebrew
Comme tout gestionnaire de paquet, Homebrew dispose de commandes relativement basiques
- brew update : Met à jour les formules de brew et brew
- brew upgrade : Met à jour les paquets installés via brew
- brew search : Cherche les paquets correspondant à la chaine de caractère (accepte les expression régulières)
- brew install : Permet d'installer un packages
- brew uninstall : Désinstalle un paquet
- brew list : Liste les packages installés via brew
Pour plus d'informations concernant les commandes, je vous conseille Oh My ZSH avec le plugin brew d'activé
Caskroom
Caskroom est un complément à Homebrew, Homebrew dispo d'énormément de packages issus de la communauté UNIX (Liste complète disponible ici), il lui manque énormément de '"vrais'" applications (Chrome, VLC...)
C'est là que Caskroom intervient, celui-ci comble le manque en application que Homebrew a. Vous pouvez regarder tous les packages disponibles via Cask ici
Concernant les commandes, celle-ci sont les mêmes que pour homebrew, mais en y ajoutant cask devant
Par exemple, brew search vlc deviendra brew cask search vlc
Meilleurs Packages
Homebrew
bash
: Version récente de bashbat
: cat en plus utilecomposer
: Gestionnaire de paquet pour PHPdfc
: Commande df en mieuxdocx2txt
: Convertit un docx en txtduf
: df amélioré (https://github.com/muesli/duf)exa
: remplacant de lsfindutils
: find GNUgist
: Permet d'envoyer un fichier au service Gist de Github directement en CLIgit-quick-stats
: Comme son nom l'indique, affiche rapidement les stats d'un repo Gitgit
: Outil de versionninggrv
: Git en ligne de commandehtop
: Commande top en mieuxhttpie
: cURL en mieuxiproute2mac
: Ajoute toutes les commandes ip sur Maclftp
: client FTP/SFTP en ligne de commandelivestreamer
: Permet de regarder des streams sur VLC via le CLImpv
: Excellent player vidéo open sourcencdu
: Gestionnaire d'espace libre en CLInghttp
: Permet de bench un serveur HTTP2nmap
: Outil de scan réseauphp-cs-fixer
: Fix les erreurs standards en PHP + refactoringphp73
: PHP en ligne de commandespeedtest_cli
: Speedtest en ligne de commandetestssl
: Outil de bench SSL (ciphers protocoles & co)tmate
: Permet de partager une session SSHtmux
: Multiplexeur de terminaltrash
: Corbeille en CLItree
: Permet de lister récursivement tous les fichiers sous forme d'arbrewget
: Télécharger des fichiers en ligne de commandewhois
: Permet d'avoir un vrai whoisyoutubedl
: Permet de télécharger les vidéos YT et de beaucoup d'autres services en 1 ligne de commande
Homecask
daisydisk
(https://daisydiskapp.com/) : Analyser son utilisation disquedropbox
: Travail colaboratifelmedia-player
: Excellent player vidéo sous Macflux
: Enlève la lumière bleue de l'écrangoogle-chrome
: Le célèbre navigateur weblivestreamer-twitch-gui
: Interface graphique Twitch pour Livestreamermaccy
: Clipboard manager, réellement indispensablemediainfo
: Permet d'obtenir toutes les informations sur un médiaquicklook
(Plus d'informations)soundnode
: GUI pour SoundCloudsublime-text
: L'éditeur de code par excellencesuspicious-package
: Pour tout connaitre des paquets suspicieuxthe-unarchiver
: Tout désarchiver en 1 clictunnelblick
: Client VPNvirtualbox
: Virtualiser vos OS en quelques clicsvlc
: Le célèbre lecteur multimédiavscodium
: Version de VSCode sans bloatware
Divers
Bundle
Sous Brew, il existe une sous-commande absolument magique qui s'appelle bundle
.
Brew nous permet de générer dans un fichier l'ensemble des packages, tap & autres que nous avons. Pour ma part, ils sont disponibles ici.
Voici les principales commandes à connaitre !
brew bundle dump
: Permet de générer le fichier Brewfile--file=my_brewfile
: Pour spécifier un nom différent
brew bundle install
: Permet d'installer tout ce qui est dans le fichier ~/Brewfile--file=my_brewfile
: Permet de spécifier un nom différent
cask-upgrade
brew cu permet de mettre à jour facilement toutes ses applications installées avec brew. Je vous invite à aller consulter le README de cask-upgrade, qui est bougrement bien fait