A girl walks towards the night sky by "ands//picociko"
Categories
Languages
Tags
1Password 3615.computer aeronef ai announcement api ATProto automation Bluesky bot buildkit chatgpt cicd claviers cloudflare company context devops docker documentation entrepreneuriat fish fly-io france golang Halloy hardware homebrew images IRC llm macos mastodon mécanique mechalick migration minecraft nas open-source PDS privacy productivity screenshot Security self-hosted self-hosting semaphoreci shell tips tools unraid workunit
188 words
1 minutes
Update everything on macOS with one Fish command
Picture from Andras Vas on Unsplash
Got tired of running multiple apps and commands to keep my Mac updated? Here’s a Fish shell function that handles everything in one go:
function upall --description "Update all the things"
brew update-reset && \
brew update && \
brew upgrade --formulae && \
brew cu --all --cleanup --no-brew-update --interactive --include-mas && \
brew cleanup --prune=all
endJust run upall and you’re set! Here’s what each part does:
brew update-reset- Resets Homebrew to fix any potential issuesbrew update- Fetches the latest package definitionsbrew upgrade --formulae- Updates all your CLI tools and librariesbrew cu --all --cleanup --no-brew-update --interactive --include-mas- Updates cask applications and Mac App Store apps (requires brew-cask-upgrade)brew cleanup --prune=all- Removes old versions and cleans up the cache
The --interactive flag is particularly nice—it lets you choose which cask apps to update, perfect for when you want to skip that one app that always breaks after updates.
To add this to your Fish shell, paste the function into a function file, mine is .config/fish/functions/upall.fish. No more remembering multiple commands or running them one by one!
Note: You’ll need to install brew-cask-upgrade first, see github.com/buo/homebrew-cask-upgrade.
Update everything on macOS with one Fish command
https://alyx.pink/posts/2025-09-17-fish-shell-update-everything-mac/