Is it possible to and how do I get a list of all the packages installed on my Mac using
Homebrew? I am not interested in packages installed outside of Homebrew.
brew bundle may also be interesting if you are asking because you want to manage your brew installation. This includes casks, which
brew list does not. It is aimed at having reproducible Homebrew setups.
# creates Brewfile in the current directory from currently-installed packages brew bundle dump # edit Brewfile # install everything from the Brewfile brew bundle
You can use the
--global flag to operate on your
-f to force overwriting of your existing file (for installation, this will force uninstallation of not-listed packages).
brew list command shows a simple, alphabetically sorted list of all the installed packages.
However, various required packages (dependencies) get automatically installed when installing a package using Homebrew. It is possible to view the list of all the installed packages as a nicely formatted dependency tree. To view it, execute the following command:
brew deps --tree --installed
An example output is as shown below:
gdbm openssl python ├── gdbm ├── openssl ├── readline ├── sqlite │ └── readline └── xz readline sqlite └── readline xz
The independently listed packages (e.g. gdbm and openssl in the example output above) have no depndencies. The packages depicted as part of a tree structure have their dependency listed at immediate lower level (e.g. package sqlite requires that the package readline to be installed). The packages listed at leaf nodes in the tree structures have no dependencies.
Dependencies visualised in a tree structure can help in easily getting rid of the unnecessary packages.