I am sure everyone is familiar with Homebrew. If you have a mac, you have brew installed.
Until recently, I did not know that brew could also update casks that auto update! In Homebrew, there are two types of packages:
Formula: Command-line software/tools
Casks: GUI applications (like Spotify, Chrome, VSCode)
Many GUI applications (casks) have their own auto-update mechanisms. Because of this, Homebrew by default skips upgrading these casks when you run brew upgrade.
The --greedy
flag overrides this behavior:
brew upgrade
- Updates only formulae and casks without auto-updatersbrew upgrade --greedy
- Updates everything, including casks that auto-update
Now, whenever I log onto my mac, I run my “give-us-this-day-our-daily-brew” snippet in Termius:
brew update && brew upgrade --greedy && brew cleanup
brew cleanup
removes:
Old versions of installed packages
Cached downloads
Any stale lock files
Any unused files and directories
TL;DR: Use the command above
to update everything on your Mac, including GUI apps that normally auto-update themselves. This command updates the package list, upgrades all software (both command-line and GUI apps), and cleans up old files.
Cheers,
Joe