WTF is brew
?
tl;dr: brew is a package manager, built specifically for MacOS.
what is a package manager? (what is a package?)
brew gets its name from the Homebrew club, which was founded with the purpose of sharing software. 2 men named Steve circulated a computer they built at a homebrew club meeting in 1975...
(A package manager is a) collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer in a
consistentautomated manner manner. - wiki
In the READMEs of well written github repositories, you will find installation methods for brew
apt
choco
pacman
yum
et al. Each of these is a package manager for a specific operating system (or distribution of linux).
You will also encounter program language package managers. The terminology for this construct of a “package” might be different per domain (library, import, framework). pip
(python) npm
, yarn
, (javascript) maven
(java).
brew is able to install casks or formulae:
formulae
: a package with no GUI. You interact with it in terminal
cask
: a package with a GUI. It may have a terminal component as well.
You must include the --cask
flag when installing a cask. e.g:
brew install --cask vlc
How do I update my packages?
Glossary