Homebrew로 나만의 Mac 환경 구축하기

franc·2021년 8월 19일
1
post-thumbnail

Homebrew를 통해...

  1. 원하는 프로그램과 App들을 터미널로 설치 할 수 있다.
  2. 그렇게 설치된 프로그램들은 Homebrew가 관리하기 때문에, 업데이트/삭제 등의 관리가 쉬워진다.
  3. 'brewFile'을 통해 나만의 환경을 백업할 수 있으며, 어디서든 한방에 셋업할 수 있다.


Homebrew

MacOS용 패키지 관리 어플리케이션.

우리에게 익숙한 패키지-매니저로는 Maven, Gradle, Npm 등이 있다.
이런 패키지-매니저가 수많은 Dependency들을 자동으로 매칭하고 관리해 주는 것처럼,
Mac에서는 Homebrew를 통해 프로그램이나 App을 편리하게 관리할 수 있다.


1. Homebrew 설치

  • 경우에 따라 Xcode-select를 먼저 설치해야 할 수도 있다.
  • M1 Mac이 아닌 경우 Homebrew 홈페이지의 설치명령어를 터미널에 붙여넣어도 된다.
# [1-1]. 설치명령어(M1 Mac인 경우)
/bin/bash -c "$(curl -fsSL <https://gist.githubusercontent.com/nrubin29/bea5aa83e8dfa91370fe83b62dad6dfa/raw/48f48f7fef21abb308e129a80b3214c2538fc611/homebrew_m1.sh>)"

# [1-2]. 설치명령어(M1 Mac이 아닌 경우)
/bin/bash -c "$(curl -fsSL <https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh>)"

# [2]. BicSur 이후 버젼은 아래와 같이 PATH에 Homebrew 경로 추가
echo "export PATH=/opt/homebrew/bin:$PATH" >> ~/.zshrc
source ~/.zshrc

# [3]. homebrew 설치확인
brew -v

2. cask, mas 설치

  • Homebrew(Formulae) : 개발관련 패키지 설치환경 구성
    • java, awscli, curl, git, gradle, maven, mysql, node ... cask, mas
  • cask : 웹사이트에서 받을 수 있는 어플리케이션 설치환경 구성
    • 크롬, IntelliJ, java(openJdk) 등...
  • mas : 앱스토어에서 받을 수 있는 어플리케이션 설치환경 구성
    • 카카오톡, 슬랙, 마그넷 등...

이미 Homebrew는 설치 됐기 때문에 개발 패키지에 대한 설치환경이 구성된 상태다.
하지만 웹/앱 어플리케이션 설치환경 구성을 위해 cask, mas를 먼저 설치한다.

# cask 설치
brew install cask

# mas 설치
brew install mas

3. brew 명령어

이제 개발관련 패키지 뿐만 아니라 웹과 앱 어플리케이션까지 모두 설치할 수 있게 됐다.
아래의 명령어를 통해 패키지를 설치하거나, 관리할 수 있다.


패키지 검색

  • 내가 원하는 패키지가 어디에 존재하는 지, 정확한 패키지명이 무엇인지에 대한 정보를 확인할 수 있다.
  • 이미 설치된 패키지는, 패키지명 옆에 초록색 체크 표시된다.
  • mas의 경우 패키지번호를 앞에 노출하는데, 이 번호가 설치 명령어의 키가 된다.
# brew, cask
brew search <패키지명>

# mas
mas search <패키지명>


패키지 설치

  • 패키지 검색으로 내가 원하는 패키지이름(번호)를 찾았다면, 아래 명령어를 통해 설치할 수 있다.
# brew (search >> Formulae)
brew install <패키지명>

# cask (search >> Casks)
brew install --cask <패키지명>

# mas (패키지번호 = mas search에서 확인)
# 최초 한번은 앱스토어에서 받은 앱만 설치가능하다.
mas install <패키지번호>

패키지 확인

# 현재 설치된 패키지 목록을 조회
brew list
mas list

# 패키지에 대한 자세한 정보확인 (저장소의 경로 등...)
brew info <패키지명>
mas info <패키지번호>

패키지 업데이트

  • 패키지 업데이트 전 Homebrew 부터 최신화 하는 것을 권장 (패키지 업데이트 시 오류나는 경우가 있음)
# Homebrew 패키지매니저 업데이트
brew update

# 업데이트가 필요한 패키지 목록을 조회
brew outdated
mas outdated

# 개별 패키지 업그레이드
brew upgrade <패키지명>
mas upgrade <패키지번호>

# 모든 패키지 업그레이드
brew upgrade
mas upgrade

패키지 삭제

# brew, cask
brew uninstall <패키지명>

# mas는 앱스토어에서 직접 삭제



brewFile 작성을 통해 패키지 한방에 설치하기

설치 명령어를 통해 패키지를 일일히 설치할 수도 있지만, brewFile에 설치목록을 미리 작성해 놓고 일괄실행하는 방법도 있다.
brewFile을 한번 잘 작성해놓으면, 언제든지 개인이나 팀 개발 환경을 빠르게 구성할 수 있다.


1. brewFile 생성

  • touch를 통해 처음부터 작성해 나가는 방법이 있고, 현재 본인의 패키지를 백업받을 수도 있다.
#brewFile 생성 (새로 생성)
touch Brewfile

#brewFile 생성 (Mac에 설치된 항목들을 BrewFile로 저장한 채로 )
brew bundle dump

#brewFile 덮어쓰기
brew bundle -f dump

#brewFile 확인
cat Brewfile

2. brewFile 작성

아래 brewFile은 참고만 하세요. 설치가 안되는 패키지가 몇 개 있을 수도 있습니다.

  • tap : 기본 저장소가 아닌 서드 파티 저장소를 설치
  • brew : Homebrew가 제공하는 패키지 (개발 패키지)
  • cask : 웹 어플리케이션
  • mas : 앱 어플리케이션
# tab install
tap "adoptopenjdk/openjdk"
tap "homebrew/bundle"
tap "homebrew/cask"
tap "homebrew/core"
tap "homebrew/cask-fonts"

# brew install
brew "asciinema" # terminal record
brew "awscli"
brew "cask"
brew "curl"
brew "git"
brew "gradle"
brew "mas"
brew "maven"
brew "mysql"
brew "neovim" # Linux Editor
brew "node" 
brew "yarn" # npm replacement yarn 
brew "zsh" # zsh Shell

# cask install
cask "adoptopenjdk8" #openJdk + version
#cask "Alfred" # 빠른 검색과 실행
cask "cyberduck"
cask "google-chrome"
cask "intellij-idea" # 무료버젼은 intellij-idea-ce
cask "iterm2"
cask "jetbrains-toolbox"
cask "notion"
cask "postman"
cask "querypie"
cask "simplenote" # 마크다운 노트 (Win,Mac,Linux,Mobile 공통)
cask "sourcetree"
#cask "zoomus"

# mas install
mas "KakaoTalk", id: 869223134
#mas "Keka", id: 470158793
mas "Magnet", id: 441258766
mas "Numbers", id: 409203825
mas "Pages", id: 409201541
mas "Slack", id: 803453959
#mas "Unicorn Blocker", id: 1231935892

# fonts
cask 'font-awesome-terminal-fonts'
cask 'font-d2coding'
#cask 'font-fira-code'
cask 'font-fontawesome'
cask 'font-hack'
#cask 'font-meslo-lg-nerd-font'
#cask 'font-nanum-gothic'
#cask 'font-nanum-gothic-coding'
#cask 'font-nanum-myeongjo'
cask 'font-source-code-pro'

3. brewFile 실행

  • 아래 명령어로 brewFile이 실행되며, 설치목록들이 모두 설치된다.
brew bundle
profile
안녕하세요~

0개의 댓글