Homebrew의 용어는 양조장 이야기처럼 들려. Cellar, formula, cask, bottle, tap, keg가 모두 술과 관련된 말이니까. 하지만 각각 정확한 역할이 있어. 뜻을 알아두면 brew가 보여주는 메시지를 훨씬 쉽게 읽을 수 있어.
Formula는 CLI 도구나 라이브러리를 어떻게 설치할지 적은 Ruby 파일이야. 주로 homebrew/core에 들어 있어. Cask는 macOS GUI 앱의 설치법을 담고 주로 homebrew/cask에서 관리해. 둘 다 brew install로 설치하되, 필요한 경우 cask에 --cask를 붙여.
Bottle은 미리 컴파일해 GitHub Container Registry에 올려둔 바이너리 묶음이야. brew install python을 실행하면 보통 알맞은 bottle을 내려받아 Cellar에 푸는 것으로 끝나서 몇 초면 돼. 현재 macOS와 CPU에 맞는 bottle이 없을 때만 소스 빌드로 돌아가며, 그때는 몇 분에서 몇 시간까지 걸릴 수 있어.
Cellar(/opt/homebrew/Cellar/)는 formula로 설치한 파일이 실제로 놓이는 곳이야. 패키지마다 git/2.45.0/처럼 버전별 디렉터리를 갖고, Homebrew는 여기서 /opt/homebrew/bin/으로 symlink를 만들어 PATH에 노출해. Cellar 안의 패키지 버전 디렉터리 하나를 Keg라고 불러.
Tap은 formula와 cask를 더 받아올 수 있는 Git 저장소야. 기본 저장소만으로도 대부분 해결되지만, 글꼴이나 전문 도구, 특정 회사가 배포하는 소프트웨어는 별도 tap에서 제공되기도 해.