自分用Mac環境構築

## アプリ関係

- chrome
- google日本語入力
- xcode
- slack
- sourcetree
- coteditor
- sublimetext
- Atom
- Robomongo
- Mac Java
- Intellij Idea
- P4Merge
- XtraFinder
- BetterTouchTool
- AppCleaner
- shupapan
- Redis Desktop Manager
- CheatSheet
- Todoist
- chatwork
- GIPHY CAPTURE

## chrome拡張系

- Full Page Screen Capture
- Google Mail Checker
- Postman
- 英辞郎 on the WEB 拡張機能
- Gyazo
- WebDeveloper
- PushBullet
- goo.gl URL Shortener

## IntelliJ

### プラグイン
- .ignore
- File Watchers
  - gruntとかgulpに任せてるから無効にした記憶もある
- LiveEdit
- Markdown
- Mongo Plugin
- Open In GitHub
- Tasks
- YAML/Ansible support
- CamelCase
- Codic Plugin

### 設定
- Languages & Frameworks
  - Python Template Languages
    - Template language: 
      - Jinja2にする（TemplateでJinja2使う場合のみ）
- Tools
  - Python Integrated Tools
    - Default test runner:
      - py.testにする（テストランナーがpy.testの場合のみ）
- Editor
  - General
    - Auto Import
      - python
        - Show import popup にチェック
  - File and Code Templates
    - python script
      -  `# coding=utf-8` を頭に入れておく


## 色々入れる

### homebrewのインストール

```
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew install wget
$ brew install git
$ brew install tree
$ brew install git-lfs
$ brew install hub
$ brew install imagemagick
$ brew install pngquant
$ brew install tmux
$ brew install npm
$ brew install coreutils
$ brew install gibo
$ brew install http://git.io/sshpass.rb 
```

### QuickLookの拡充

```
$ brew cask install qlstephen
$ brew cask install qlmarkdown
$ brew cask install quicklook-json
$ brew cask install quicklook-csv
$ brew cask install qlimagesize
```

## npm

```
$ npm install -g coffeelint
$ npm install -g eslint
$ npm install -g grunt-cli
$ npm install -g gulp
$ npm install -g emojipacks
$ npm install -g babel-cli
$ npm install -g eslint-cli
```
## Python2.7関連

```
$ brew install python
$ brew install pyenv
$ brew install pyenv-virtualenv
$ CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install -v 2.7.10
$ easy_install-2.7 pip
```

```sh:venvの有効化 
$ source /path/to/venv/bin/activate
```

参考:
http://qiita.com/maosanhioro/items/47a52f96fefba7126f9b

## mongodb2.4.14関連

当時version指定があったのでbrewで入れていない
参考:
http://qiita.com/n0bisuke/items/9def9f1c5e8d878c0811


### PATHの追加

PATHは自身の環境で異なる場合があるのでよく確認すること

```:.bashrc
export PATH="$(brew --prefix coreutils)/libexec/gnubin:~/.bin:/usr/local/bin:/usr/local/sbin:~/.bin/mongodb:$PATH"
```

### データ保存先のパーミッション直す

データ保存先のパーミッションがおかしいってエラーが出た場合はこれで解決した

```
$ sudo mkdir /data/
$ sudo chmod 777 /data
$ ln -s /usr/local/var/mongodb /data/db
```

参考
http://qiita.com/hidesuke/items/56a87d827708c8c770da
http://kzy52.com/entry/2013/07/15/224721


## memcached関係

```sh
$ brew install memcached
ln -sfv /usr/local/opt/memcached/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.memcached.plist
```

## redis関係

```sh
$ brew install redis
$ ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
```

## Elastic関係

[MacにELK(Elasticsearch, Logstash, Kibana)インストールしてみた](http://qiita.com/HRS_O/items/112a4e001a4599dcf768)


## docker

docker関係はbrewじゃなくてインストーラー使ったほうがよさげ

http://docs.docker.jp/engine/installation/mac.html


## gitを使いやすくする
```
$ vim ~/.bashrc
```

下記を追加

```bash:.bashrc
# gitの補完する
source /usr/local/etc/bash_completion.d/git-prompt.sh
source /usr/local/etc/bash_completion.d/git-completion.bash

# gitのブランチ名表示する
GIT_PS1_SHOWDIRTYSTATE=true
export PS1='\h\[\033[00m\]:\W\[\033[32m\]$(__git_ps1 [%s])\[\033[00m\]\n\$ '

# hubをgitで使えるようにする
eval "$(hub alias -s)"
```

参考元
http://qiita.com/koyopro/items/3fce94537df2be6247a3

## WireShark関係

```
$ brew install wireshark --with-qt
$ sudo wireshark-qt
```

> If your list of available capture interfaces is empty
(default OS X behavior), try the following commands:

>  curl https://bugs.wireshark.org/bugzilla/attachment.cgi?id=3373 -o ChmodBPF.tar.gz
  tar zxvf ChmodBPF.tar.gz
  open ChmodBPF/Install\ ChmodBPF.app

> This adds a launch daemon that changes the permissions of your BPF
devices so that all users in the 'admin' group - all users with
'Allow user to administer this computer' turned on - have both read
and write access to those devices.

> See bug report:
  https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3760


## wercker関係

```sh:
$ docker-machine create --driver virtualbox wercker
$ vim ~/.bashrc
```

bashrcに下記追加

```bash:.bashrc
# wercker
eval "$(docker-machine env wercker)"
```

```sh:
$ brew tap wercker/wercker
$ brew install wercker-cli
$ wercker b
```

### cli用token

werckerにgithubログインしてる場合、cliのログインが死ぬので[ここ](https://skatsuta.github.io/2015/07/21/wercker-github-login/)参照してtokenを保存しておく

> wercker のアカウントページの右上のアイコンから Settings > Personal tokens をたどり、 wercker-cli という名前でトークンを生成し、コピーします。そしてそれを ~/.wercker/token ファイルに貼り付けて保存します。

参照元 : https://skatsuta.github.io/2015/07/21/wercker-github-login/