| name | brew-apt |
| description | Package manager commands for macOS (Homebrew) and Linux (apt, yum/dnf). Use when user mentions "brew", "homebrew", "apt", "apt-get", "yum", "dnf", "install package", "update packages", "package manager", "brew cask", "PPA", "system dependencies", "upgrade all", or managing system packages. |
Package Manager Reference: Homebrew, APT, DNF/YUM
Homebrew (macOS)
Install, Remove, Upgrade
brew install <package>
brew install <package>@<version>
brew uninstall <package>
brew reinstall <package>
brew update
brew upgrade
brew upgrade <package>
brew outdated
Search and Inspect
brew search <term>
brew info <package>
brew list
brew list --versions
brew deps --tree <package>
Casks (GUI Applications)
Casks manage macOS GUI applications (.app bundles, installers, fonts).
brew install --cask <app>
brew list --cask
brew upgrade --cask
brew uninstall --cask <app>
brew search --cask <term>
Taps (Third-Party Repositories)
brew tap <user/repo>
brew tap
brew untap <user/repo>
brew install <user/repo>/<formula>
Brewfile (Reproducible Setups)
brew bundle dump --file=~/Brewfile
brew bundle dump --force --file=~/Brewfile
brew bundle install --file=~/Brewfile
brew bundle check --file=~/Brewfile
brew bundle cleanup --file=~/Brewfile
Example Brewfile:
tap "homebrew/bundle"
tap "hashicorp/tap"
brew "git"
brew "node@20"
brew "python@3.12"
cask "visual-studio-code"
cask "docker"
mas "Xcode", id: 497799835
Services
brew services start <service>
brew services stop <service>
brew services restart <service>
brew services list
brew services run <service>
Cleanup
brew cleanup
brew cleanup -n
brew cleanup -s
du -sh "$(brew --cache)"
Pin Packages
Pinning prevents a package from being upgraded by brew upgrade.
brew pin <package>
brew unpin <package>
brew list --pinned
Troubleshooting
brew doctor
brew update-reset
brew --prefix <package>
brew install -v <package>
APT (Debian / Ubuntu)
Install and Remove
sudo apt install <package>
sudo apt install -y <package>
sudo apt install <package>=<version>
sudo apt remove <package>
sudo apt purge <package>
sudo dpkg -i <file.deb>
Update vs Upgrade vs Full-Upgrade
sudo apt update
sudo apt upgrade
sudo apt full-upgrade
Always run apt update before apt upgrade.
Search and Inspect
apt search <term>
apt show <package>
apt list --installed
apt list --upgradable
apt-cache policy <package>
PPAs (Personal Package Archives)
sudo add-apt-repository ppa:<user>/<ppa-name>
sudo apt update
sudo add-apt-repository --remove ppa:<user>/<ppa-name>
grep -r --include='*.list' '^deb ' /etc/apt/sources.list /etc/apt/sources.list.d/
On newer Ubuntu, repos use DEB822 .sources files in /etc/apt/sources.list.d/.
Hold Packages
sudo apt-mark hold <package>
sudo apt-mark unhold <package>
apt-mark showhold
Cleanup
sudo apt autoremove
sudo apt clean
sudo apt autoclean
DNF / YUM (RHEL / Fedora / CentOS)
DNF replaced YUM starting with Fedora 22 and RHEL 8. Command syntax is nearly identical.
Install and Remove
sudo dnf install <package>
sudo dnf install -y <package>
sudo dnf remove <package>
sudo dnf reinstall <package>
Upgrade
sudo dnf upgrade
sudo dnf check-update
sudo dnf upgrade <package>
dnf update is an alias for dnf upgrade.
Search and Inspect
dnf search <term>
dnf info <package>
dnf list installed
dnf list updates
dnf provides <file-or-command>
Repositories
dnf repolist
dnf repolist all
sudo dnf config-manager --add-repo <url>
sudo dnf config-manager --set-enabled <repo-id>
sudo dnf config-manager --set-disabled <repo-id># Disable a repo
Version Lock
sudo dnf install dnf-plugin-versionlock
sudo dnf versionlock add <package>
sudo dnf versionlock delete <package>
dnf versionlock list
Cleanup
sudo dnf autoremove
sudo dnf clean all
sudo dnf clean packages
Cross-Platform Comparison
| Task | Homebrew (macOS) | APT (Debian/Ubuntu) | DNF (RHEL/Fedora) |
|---|
| Refresh package index | brew update | sudo apt update | sudo dnf check-update |
| Install | brew install pkg | sudo apt install pkg | sudo dnf install pkg |
| Remove | brew uninstall pkg | sudo apt remove pkg | sudo dnf remove pkg |
| Upgrade all | brew upgrade | sudo apt upgrade | sudo dnf upgrade |
| Upgrade one | brew upgrade pkg | sudo apt install --only-upgrade pkg | sudo dnf upgrade pkg |
| Search | brew search term | apt search term | dnf search term |
| Package info | brew info pkg | apt show pkg | dnf info pkg |
| List installed | brew list | apt list --installed | dnf list installed |
| List outdated | brew outdated | apt list --upgradable | dnf list updates |
| Hold / pin version | brew pin pkg | sudo apt-mark hold pkg | sudo dnf versionlock add pkg |
| Remove unused deps | brew autoremove | sudo apt autoremove | sudo dnf autoremove |
| Clean cache | brew cleanup | sudo apt clean | sudo dnf clean all |