개요
맥(Mac)에 새롭게 개발 환경을 구축하고 있습니다. 이 블로그에서는 개발 환경을 구성하는 방법에 대해서 정리합니다.
이 블로그는 연재물입니다. 개발 환경에 다른 부분을 확인하고 싶으신 분들은 아래에 내용을 참고하세요.
- 맥(Mac) 개발 환경 구축(1) - iTerm과 zsh
- 맥(Mac) 개발 환경 구축(2) - tools
- 맥(Mac) 개발 환경 구축(3) - 개발 환경
- Homebrew와 Shell Script를 사용하여 맥(Mac) 개발 환경 구축 자동화하기
homebrew
맥(Mac)에서 가장 중요한 패키지 관리자인 homebrew를 아래에 명령어로 설치합니다.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
아래에 명령어로 zsh 설정 파일을 엽니다.
code ~/.zshrc
설정 파일 하단에 아래에 내용을 추가합니다.
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
python3
맥(Mac)에는 기본적으로 python2가 설치되어 있습니다. 개발에 필요한 python3를 설치하고 zsh에 python3을 기본으로 설정하겠습니다.
zsh(iTerm)를 재실행하고 아래에 명령어로 python3를 설치합니다.
brew install python3
zsh 설정 파일 하단에 아래에 내용을 추가하여 python3을 기본으로 설정합니다.
# code ~/.zshrc
alias python=python3
아래에 명령어로 pip
를 설치합니다.
sudo easy_install pip
파이썬(python) 가상환경(Virtual Environment) 관리를 도와주는 모듈인 virtualenv
을 아래에 명령어로 설치합니다.
pip install virtualenv pylint autopep8
zsh 설정 파일에 아래와 같이 설정하여 가상환경(Virtual Environment)에 접속중인지 확인할 수 있게 설정합니다.
# code ~/.zshrc
...
# python virtualenv
plugins=(virtualenv)
...
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(virtualenv dir_writable dir vcs)
...
git flow
아래에 명령어로 git flow를 설치합니다.
brew install git-flow
node / npm
아래에 링크를 눌러 node를 다운로드 및 설치합니다.
react native
이전에 RN(React Native) 설치에 관한 블로그를 작성하였습니다. 아래에 링크를 확인하여 설치합니다.
Laravel
맥(Mac)은 기본적으로 php가 설치되어 있습니다. 아래에 명령어로 composer
를 설치합니다.
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin/
zsh 설정 파일 하단에 아래에 내용을 추가합니다.
# code ~/.zshrc
alias composer="php /usr/local/bin/composer.phar"
아래에 명령어로 권한을 변경합니다.
sudo chmod 755 /Users/$USER/.composer/
아래에 명령어로 Laravel을 설치합니다.
composer global require laravel/installer
zsh 설정 파일을 열고 아래에 내용을 추가합니다.
# code ~/.zshrc
export PATH="$HOME/.composer/vendor/bin:$PATH"
mysql 설치
아래에 명령어로 mysql을 설치합니다.
brew install [email protected]
zsh 설정 파일을 열고 아래에 내용을 추가합니다.
# code ~/.zshrc
export PATH="/usr/local/opt/[email protected]/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/[email protected]/lib"
export CPPFLAGS="-I/usr/local/opt/[email protected]/include"
아래에 명령어로 mysql 서버를 실행합니다.
mysql.server start
아래에 명령어를 통해 mysql 설정을 진행합니다.(패스워드 설정 등)
mysql_secure_installation
jekyll
이전에 jekyll 설치에 관한 블로그를 작성하였습니다. 아래에 링크를 확인하여 설치합니다.
zsh 설정 파일
아래는 zsh 설정 파일의 내용입니다.
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="/Users/dev-yakuza/.oh-my-zsh"
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="powerlevel9k/powerlevel9k"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"
# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_ZSH_DAYS=13
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# You can set one of the optional three formats:
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
# or set a custom format using the strftime function format specifications,
# see 'man strftime' for details.
# HIST_STAMPS="mm/dd/yyyy"
# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder
# Which plugins would you like to load?
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git)
source $ZSH/oh-my-zsh.sh
# python virtualenv
plugins=(virtualenv)
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# ssh
# export SSH_KEY_PATH="~/.ssh/rsa_id"
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
# remove user name in zsh
# prompt_context(){}
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(virtualenv dir_writable dir vcs)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status time battery)
# vscode code command
export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
# brew path
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
# python3 default
alias python=python3
alias pip=pip3
# composer
alias composer="php /usr/local/bin/composer.phar"
# Laravel
export PATH="$HOME/.composer/vendor/bin:$PATH"
# mysql
export PATH="/usr/local/opt/[email protected]/bin:$PATH"
# jekyll
export GEM_HOME=$HOME/gems
export PATH=$HOME/gems/bin:$PATH
# The next line updates PATH for the Google Cloud SDK.
source /Users/dev-yakuza/google-cloud-sdk/path.zsh.inc
# The next line enables zsh completion for gcloud.
source /Users/dev-yakuza/google-cloud-sdk/completion.zsh.inc
# Android path for React Native
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
제 블로그가 도움이 되셨나요? 하단의 댓글을 달아주시면 저에게 큰 힘이 됩니다!
앱 홍보
Deku
가 개발한 앱을 한번 사용해보세요.Deku
가 개발한 앱은 Flutter로 개발되었습니다.관심있으신 분들은 앱을 다운로드하여 사용해 주시면 정말 감사하겠습니다.