Package Managers¶
Install, update, and manage software across platforms.
Homebrew (macOS / Linux)¶
Install Homebrew:
Search for a package:
Install a CLI tool vs. a GUI app:
See what's outdated:
Upgrade everything:
winget (Windows)¶
Search for a package:
Install:
Upgrade all installed packages:
Export installed packages:
Import on a new machine:
Built into Windows 11. Windows 10 users: install via Microsoft Store.
Scoop (Windows)¶
Installs to user directory — no admin required:
Add the extras bucket for more packages:
Install and manage:
Best for dev tools. Use winget for GUI apps.
Nix (Cross-Platform)¶
Install Nix:
Run a tool without installing it:
Enter a shell with specific tools available:
Tip
Nix guarantees reproducible environments. Great for CI and shared dev setups.
mise (Runtime Version Manager)¶
Replaces nvm, pyenv, rbenv, goenv with a single tool:
Install a specific version:
List installed runtimes:
Set a global default:
Project-local versions (creates .mise.toml):
Install:
brew install mise·cargo install mise·curl https://mise.run | sh
Comparison¶
| Feature | Homebrew | winget | Scoop | Nix | mise |
|---|---|---|---|---|---|
| Platform | macOS, Linux | Windows | Windows | Cross-platform | Cross-platform |
| Best for | General packages | GUI + CLI apps | Dev tools (no admin) | Reproducible envs | Runtime versions |
| Admin required | No | Sometimes | No | No | No |