새롭게 맥을 설정할 때 어떻게 개발환경을 설정하는지 공유하는 글입니다. 주로 언어별 설정을 제외한 개발 환경을 다룰 것이고 또 개발환경 설정뿐만 아니라 몇 가지 유용한 유틸리티도 함께 소개할 예정입니다. 여기에 공유된 내용이 쓸만한 레퍼런스가 좋겠네요.
Homebrew
많이 알려진 프로그램입니다. 여러 가지 다른 프로그램을 설치하기 위하여 설치해야 하는 프로그램이기 때문에 가장 먼저 설치해 주면 좋습니다.
설치
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
mas-cli
Mac App Store에 있는 프로그램을 명령어로 설치할 수 있게 해주는 프로그램입니다. 나중에 새로 맥을 설정하는 스크립트를 제작할 때 유용합니다.
설치
brew install mas
사용
mas를 사용하여 설치하고자 하는 프로그램을 찾고 그 결과로 나오는 고유 숫자를 사용하여 실제로 프로그램을 설치할 수 있습니다.
# Search
$ mas search $NAME
00000000 $NAME
# Install
$ mas install 00000000
Terminal
다양한 터미널 후보가 있지만 결국 iterm2를 사용하게 되네요. 혹시 다른 옵션을 찾는 분들을 위하여 후보들과 느낀 점을 간단하게 남겨 둡니다.
- kitty : 단축키가 손에 잘 익지 않고 변경할 수 있지만 기본 아이콘이 별로네요.
- alacritty : 빠릿하여 좋기는 하지만 설정 가이드가 그다지 친절하지 않았습니다.
- tabby : 테스트할때 버벅임이 있어서 제외하였습니다.
- warp : 첫 화면에서 회원가입이 있어서 제외하였습니다. 회원가입후 사용하면 사실 좋은점도 많은 터미널인데 아쉽네요.
설치
brew install --cask iterm2
상세 설정
- 테마 설정 :
Preference
→Appearance
→General
→Theme
→Minimal
- 키 맵핑 설정 :
Preference
→Profiles
→Keys
→Key Mappings
→Presets…
→Natural Text Editing
- 컬럼 테마 설정 :
Preference
→Profiles
→Colors
→Color Presets
→ 마음에 드는 것으로
oh my zsh & powerlevel10k
다양한 shell들이 있지만 oh my zsh, powerleve10k 조합은 커뮤니티가 비교적 크다고 생각하여 계속 사용하고 있습니다.
그리고 powerlevel9k를 사용하시던 분들은 그 프로젝트가 read-only로 변환되었기 때문에 powerlevel10k 사용을 권장합니다.
플러그인은 명령어 히스토리의 내용들을 커멘드 입력 시 힌트로 나오게 해주는 zsh-autosuggestions 이외에 필요성을 느끼지 못하여 zsh-autosuggestions만 설치하여 사용하고 있습니다.
설치
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
p10k 설정 및 플러그인 관련 ~/.zshrc
구성
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
export ZSH="$HOME/.oh-my-zsh"
ZSH_THEME="powerlevel10k/powerlevel10k"
source $ZSH/oh-my-zsh.sh
source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
lsd
ls
를 좀 더 가독성 좋게 할 목적으로 만들어진 프로그램입니다. exa이라는 프로그램도 있지만 개인적으로는 아이콘과 파일명 사이의 공백 처리가 lsd가 더 깔끔하다고 생각하여 lsd를 사용합니다.
설치
brew install lsd
~/.zshrc
alias 추가 (ls
와 동일하게 사용하기 위하여)
alias ls='lsd'
alias ll='ls -alhF'
bat
cat
에서 문법 하이라이트를 추가한 프로그램입니다. 별거 아닌 것 같지만, 많이 유용한 프로그램 중 하나입니다.
다만 아무런 옵션을 사용하지 않으면 파일 용량 이름 등의 부가 정보를 표시해주기 때문에 >
, >>
등 redirection을 할 때 불편한 점이 있어서 -p
옵션을 함께 사용합니다.
설치
brew install bat
~/.zshrc
alias 추가 (cat
와 동일하게 사용하기 위하여)
alias cat='bat -p'
peco
grep
와 비슷한 필터링 툴입니다. 다만 peco
는 interactive하기 때문에 grep
와 다르게 검색 목적으로 사용하면 좋은 툴입니다.
설치
brew install peco
sd
sed
를 대체하는 툴입니다. sed
보다 문법이 간결하고 속도도 빠르다고 하네요.
설치
brew install sd
Editor
- jetbrains-toolbox : jetbrain 제품은 toolbox로 관리하는 게 더 공식적인 느낌이라 toolbox를 설치하여 사용합니다
brew install --cask jetbrains-toolbox
- visual-studio-code : 보조 에디터로 많이 사용합니다.
brew install --cask visual-studio-code
- spf13-vim : 보조 에디터로 사용합니다. 다만 여러 가지 설정에 신경 쓰고 싶지 않아서 best practice가 잘 되어있는 distribution을 사용합니다.
curl https://j.mp/spf13-vim3 -L > spf13-vim.sh && sh spf13-vim.sh
rm -rf spf13-vim.sh
- Xcode : 가끔 iOS 개발을 하므로 설치해두고 사용합니다.
mas install 497799835
Lazydocker
로컬머신에서 돌아가는 docker의 리소스, 로그 등을 모니터링하고 간단한 명령어를 container에 줄 수 있는 프로그램입니다.
설치
brew install lazydocker
bottom
터미널에서 시스템 리소스를 볼 수 있는 툴입니다. 다른 옵션도 많지만, 개인적으로는 다른 옵션에 비하면 안정적이고 리소스마다 상세 뷰 등을 제공합니다.
설치
brew install bottom
다른 옵션
ETC
- rectangle : 윈도우의 이동과 리사이징을 할 수 있는 프로그램, 다양한 프로그램들이 있지만 오픈소스 기반이고 불필요한 UI들이 없어서 사용하는 프로그램입니다.
brew install --cask rectangle
- iina : 오픈소스 동영상 플레이어, 대부분의 단축키가 특별한 학습 없이 생각한 것 같이 적용되어 사용합니다.
brew install --cask iina
- keepingyouawake : 맥이 잠자는 것을 막아주는 프로그램입니다.
brew install --cask keepingyouawake
- vimari safari에서 vim 단축키 기반 브라우징이 가능하게 해주는 프로그램입니다. 키보드만 사용하고 싶을 때 유용하네요.
mas install 1480933944
지금까지 맥을 새로 설치하였을 때 유용할만한 설정을 알아보았습니다. 각 프로그래밍 언어별 설정들도 있을 것 같은데요. 그건 커버할 범위가 넓을 수 있기 때문에 다른 글에서 알아보도록 하겠습니다. 여기에 나온 설치 명령어들을 모아서 한 번에 프로그램이 설치할 수 있는 스크립트를 만들어 봐도 좋을 것 같네요.
Top comments (0)