devAlice
← Mac

Mac 개발자 초기 셋업 — 새 맥을 받았을 때 첫 1시간

Apple Silicon Mac을 받자마자 개발 환경 0부터 깔끔하게 만드는 단일 경로. macOS 14+ 기준.

새 맥을 받으면 30분~1시간 정도면 "다른 작업으로 넘어갈 수 있는 상태"까지 만들 수 있다. 이 가이드는 Apple Silicon + macOS 14(Sonoma) 이상 기준으로, 추후 어떤 프로젝트를 시작하든 막히지 않도록 필수 도구만 깐다.

생산성 도구(Raycast/Rectangle 등)는 별도 페이지(준비 중), 에디터·IDE도 별도. 여긴 "터미널을 열어 git push할 수 있는 상태"까지가 목표.

TL;DR

  1. macOS 시스템 설정 5개 (key repeat, 트랙패드, Finder, Dock, screenshot 위치)
  2. Xcode Command Line Tools → Homebrew → 필수 CLI 7개(brew bundle 1줄)
  3. Git 글로벌 설정 + SSH 키(ed25519) 생성 → GitHub 등록 → gh auth login

자동화 스크립트 (선택)

수동 따라가는 대신 한 번에 실행하고 싶다면 — 단, 외부 스크립트는 항상 다운로드 → SHA-256 검증 → 코드 검사 → 실행 순서로.

setup-mac.sh
# 1. 다운로드
curl -fsSL https://devalice.jaceclub.com/assets/mac/initial-setup/setup-mac.sh -o setup-mac.sh
 
# 2. SHA-256 검증 (아래 값과 일치해야 함)
shasum -a 256 setup-mac.sh
# 기대값: d6b501f8fa1986d980c70525d1d4476bef444bc0dd2c62fb13f2e5a9128c63cf
 
# 3. 코드 검사
less setup-mac.sh
 
# 4. 실행
bash setup-mac.sh

스크립트는 idempotent — 부분 진행/실패 후 재실행해도 안전. 본문의 1~6단계를 자동 수행하고, SSH 키 GitHub 등록·gh auth login 등 인증 단계는 수동으로 안내한다.

설치 과정을 직접 이해하고 싶다면 아래 수동 단계를 차례대로 따라가자.

사전 조건

  • macOS 14 (Sonoma) 이상 — 12 (Monterey) 이하는 Homebrew 신규 패키지 일부가 깨진다
  • Apple Silicon (M1~M4) 권장 — Intel Mac은 동작하나 일부 경로(/opt/homebrew vs /usr/local)가 다름. 본문에 표기
  • 관리자 권한 계정 (sudo 가능)
  • 인터넷 연결 + Apple ID 로그인 완료

Intel Mac 사용자: Homebrew prefix가 /usr/local이라는 점만 기억하면 본 가이드 그대로 적용 가능. 필요시 본문 ⚠️ 표기 참고.


1. macOS 시스템 설정 — 5분

System Settings 앱 또는 터미널 명령으로 즉시 적용. 한 번만 하면 매일 누리는 차이가 크다.

1.1 키 반복 속도 — 가장 중요

기본값은 너무 느려서 코드 수정 속도를 갉아먹는다. 최대로 올린다.

# Key Repeat (반복 시작 후 속도) — 최댓값보다 더 빠르게
defaults write -g KeyRepeat -int 1
# Initial Key Repeat (첫 반복까지 지연) — 최댓값보다 더 짧게
defaults write -g InitialKeyRepeat -int 10

로그아웃 후 재로그인해야 적용된다. (재부팅 권장)

1.2 트랙패드 — 탭으로 클릭, 3-finger 드래그

# 탭으로 클릭 활성화
defaults write com.apple.AppleMultitouchTrackpad Clicking -bool true
defaults -currentHost write -g com.apple.mouse.tapBehavior -int 1

3-finger 드래그는 Settings 앱에서 직접: System Settings → Accessibility → Pointer Control → Trackpad Options → "Use trackpad for dragging" → "Three Finger Drag".

1.3 Finder — 숨김 파일·전체 경로·확장자 표시

defaults write com.apple.finder AppleShowAllFiles -bool true
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
defaults write -g AppleShowAllExtensions -bool true
killall Finder

1.4 Dock — 자동 숨김, 애니메이션 제거

화면 공간을 회복하고 등장 속도를 높인다.

defaults write com.apple.dock autohide -bool true
defaults write com.apple.dock autohide-delay -float 0
defaults write com.apple.dock autohide-time-modifier -float 0.15
killall Dock

1.5 스크린샷 저장 위치 — 데스크톱 깨끗하게

기본은 데스크톱이라 금세 어지러워진다. 별도 폴더로 분리.

mkdir -p ~/Pictures/Screenshots
defaults write com.apple.screencapture location ~/Pictures/Screenshots
defaults write com.apple.screencapture type png
killall SystemUIServer

2. Xcode Command Line Tools — 5분

Homebrew, Git, 컴파일러 모두 이게 있어야 동작한다.

xcode-select --install

GUI 다이얼로그가 뜨면 Install → 약관 동의 → 설치 (약 100MB, 5분).

검증

xcode-select -p
# /Library/Developer/CommandLineTools  ← 이렇게 나오면 OK

이미 Xcode.app 전체가 깔려 있다면 /Applications/Xcode.app/Contents/Developer가 출력된다. 그것도 정상 (Xcode CLT 포함).


3. Homebrew + 필수 CLI — 10분

3.1 Homebrew 설치

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

설치 끝나면 화면에 PATH 설정 안내가 나온다. Apple Silicon은 다음 두 줄을 ~/.zprofile에 추가:

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

⚠️ Intel Mac: /opt/homebrew 대신 /usr/local. 안내 메시지에 맞춰 추가하면 된다.

검증

brew --version
# Homebrew 4.x.x  ← 버전 출력되면 OK
brew doctor
# Your system is ready to brew.  ← 권장 메시지

3.2 필수 CLI 7개 한 번에

가장 자주 쓰는 도구만. brew install 한 줄로.

brew install git gh mise jq ripgrep fzf eza
도구용도
gitApple 기본 git보다 최신 버전 + LFS 등 plugin 호환
ghGitHub CLI (PR 생성, repo clone, auth)
miseNode·Python·Ruby 등 런타임 버전 관리 (asdf 후속)
jqJSON 파싱·변환 (CLI 한 줄로 처리)
ripgrepgrep 대체. 빠르고 .gitignore 자동 존중 (rg)
fzf대화형 fuzzy finder (Ctrl+R로 셸 히스토리 검색)
ezals 대체 (exa의 후속). git 상태·트리 뷰 지원

fzf 셸 통합 (선택)

Ctrl+R 히스토리 검색을 활성화한다.

$(brew --prefix)/opt/fzf/install --all

4. Git 초기 설정 + SSH 키 — 10분

4.1 Git 글로벌 설정

본인 정보로 한 번에 설정. 이메일은 GitHub 계정과 같은 것 사용.

git config --global user.name "Your Name"
git config --global user.email "you@example.com"
git config --global init.defaultBranch main
git config --global pull.rebase false
git config --global core.editor "code --wait"  # VS Code 사용 시

code --wait는 VS Code가 깔린 후 동작. 아직이면 일단 비워두고 나중에.

4.2 SSH 키 생성 — ed25519 권장

RSA 4096보다 짧고 안전한 ed25519를 쓴다.

ssh-keygen -t ed25519 -C "you@example.com"
# Enter file in which to save the key (~/.ssh/id_ed25519): [Enter]
# Enter passphrase: [원하면 입력, 없어도 OK]

ssh-agent에 등록 + macOS Keychain 연동:

# ssh-agent 실행
eval "$(ssh-agent -s)"
 
# ~/.ssh/config에 macOS Keychain 사용 설정
cat <<'EOF' >> ~/.ssh/config
Host github.com
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519
EOF
 
# 키 추가 (Keychain에 저장)
ssh-add --apple-use-keychain ~/.ssh/id_ed25519

4.3 GitHub에 공개키 등록 + 인증

공개키를 클립보드로 복사:

pbcopy < ~/.ssh/id_ed25519.pub

브라우저에서 https://github.com/settings/ssh/new 열고 → Title: "Mac (모델명)" → Key: 붙여넣기 → Add SSH key.

gh CLI 인증도 같이 (HTTPS 작업, PR 생성 등에 사용):

gh auth login
# GitHub.com → HTTPS → Y(authenticate Git with GitHub credentials) → Login with a web browser

브라우저가 열리면 표시된 코드 입력 → Authorize.


5. 검증 — 모든 게 잘 깔렸나?

한 줄에 묶어서 한 번에 확인:

echo "--- Versions ---"
sw_vers | head -2
brew --version | head -1
git --version
gh --version | head -1
mise --version
echo "--- GitHub auth ---"
ssh -T git@github.com 2>&1 | head -1
gh auth status 2>&1 | head -3

기대 출력:

--- Versions ---
ProductName: macOS
ProductVersion: 14.5
Homebrew 4.x.x
git version 2.46.x
gh version 2.x.x
mise 2026.x.x
--- GitHub auth ---
Hi <your-username>! You've successfully authenticated, but GitHub does not provide shell access.
github.com
  ✓ Logged in to github.com account <your-username>

전부 정상 출력되면 완료. git clone <repo> 부터 시작할 수 있다.


6. 트러블슈팅

"command not found: brew" — PATH 안 잡힘

~/.zprofileeval "$(/opt/homebrew/bin/brew shellenv)" 가 있는지 확인. 새 터미널 창을 열어서 다시 시도.

"xcrun: error: invalid active developer path"

CLT가 깨진 경우. 재설치:

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

Homebrew install 시 "Permission denied"

/opt/homebrew 또는 /usr/local 권한 문제. 설치 안내가 알려준 chown 명령을 그대로 실행.

SSH "Permission denied (publickey)"

ssh-add -l                              # 키가 ssh-agent에 있는지 확인
ssh -vT git@github.com 2>&1 | tail -20  # 디버그 출력 확인

키가 없으면 ssh-add --apple-use-keychain ~/.ssh/id_ed25519. 그래도 안 되면 GitHub Settings에서 키 등록 여부 재확인.

"git push" 시 매번 비밀번호 물어봄

HTTPS 클론한 경우. SSH로 remote 변경:

git remote set-url origin git@github.com:<user>/<repo>.git

Apple Silicon에서 일부 brew 패키지 안 깔림

극히 일부 패키지(주로 오래된 것)는 Rosetta 2 하에서만 동작:

softwareupdate --install-rosetta --agree-to-license
arch -x86_64 brew install <package>  # x86_64 emulation으로 설치

다음 단계

이 가이드는 "터미널 작업이 가능한 최소 셋업"까지였다. 그다음은:

  • 개발 도구: 에디터/IDE, 언어 런타임(Node·Python·Ruby) — /mac/developer-tools (준비 중)
  • 생산성 도구: Raycast, Rectangle, Karabiner — /mac/productivity (준비 중)
  • AI Agent 환경: Claude Code, Cursor — /ai-agents/claude-code (준비 중)
  • 자동화 스크립트는 위 "자동화 스크립트 (선택)" 섹션 참조

참고 링크

변경 이력

  • 2026-05-10 — 초안 (devAlice M0 첫 시드 컨텐츠)

댓글