Macの容量がなくなったついでにやったこと

備忘録ついでに晒しておきます

### iOSエンジニアなのでまずXcodeの不要ファイルを

```sh:eraseXcodeDerivedFile.sh
#!/bin/sh
rm -rf ~/Library/Developer/Xcode/Archives/*;  \
rm -rf ~/Library/Developer/Xcode/iOS\ DeviceSupport/* ;  \
rm -rf ~/Library/Developer/Xcode/DerivedData/* ;  \
rm -rf ~/Library/Logs/iOS\ Simulator
```

もうこの辺はシェルスクリプトにまとめてしまっています(・∀・)。
参考：[MacOSXの不要ファイル削除] (https://tyfkda.github.io/blog/2016/01/22/remove-dust.html)

[How to make Xcode take up less space](https://www.hackingwithswift.com/articles/18/how-to-make-xcode-take-up-less-space?utm_campaign=iOS%2BDev%2BWeekly&utm_medium=email&utm_source=iOS_Dev_Weekly_Issue_320)

### Homebrewの点検

```sh
$ brew doctor
$ brew update
$ brew upgrade
$ brew cleanup
$ brew doctor
$ brew cleanup -s    #キャッシュ削除
```

### gemもアップデートしとこう

```sh
$ (sudo) gem update --system
(中略)
=== 2.6.13 / 2017-08-27

Security fixes:

* Fix a DNS request hijacking vulnerability.
  Fix by Samuel Giddins.
* Fix an ANSI escape sequence vulnerability.
  Fix by Evan Phoenix.
* Fix a DOS vulernerability in the `query` command.
  Fix by Samuel Giddins.
* Fix a vulnerability in the gem installer that allowed
  a malicious gem to overwrite arbitrary files.
  Fix by Samuel Giddins.
```
3日前に脆弱性の修正が入ってた((((；ﾟДﾟ))))ｶﾞｸｶﾞｸﾌﾞﾙﾌﾞﾙ
続いて

```sh
$ gem outdated

# インストール済み全gemを更新
$ (sudo) gem update

# 指定gemを更新
$ gem update <gem名> 
```

参考：[初心者は覚えておきたいRubygemsのコマンドまとめ](http://qiita.com/muran001/items/14f34b735e0a6b4af98c)

エラーが発生。

```sh
ERROR:  Error installing activesupport:
	activesupport requires Ruby version >= 2.2.2.
```

rubyのバージョンが古いと。

```sh
$ ruby --version
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]
```
ついでなので、`rbenv`を入れてしまおう。

- [MacにrbenvでRubyを簡単にインストールしてみる](http://qiita.com/dtlabo/items/4d5922b6c3e4face35b6)
- [rbenv を利用した Ruby 環境の構築](http://dev.classmethod.jp/server-side/language/build-ruby-environment-by-rbenv/)

を見てやりました。

```sh
# rbenvのインストール
$ brew install rbenv
$ brew install rbenv-gemset
$ rbenv --version
rbenv 1.1.1

#環境設定
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile

#rbenvを使う前のrubyの状態
$ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

#rbenvでインストール出来るバージョンの確認
$ rbenv install -l
Available versions:
  1.8.5-p52
  1.8.5-p113
  1.8.5-p114
  1.8.5-p115
......

#rbenvでrubyをインストールしてバージョンを設定
$ rbenv install 2.4.1
$ rbenv rehash
$
$ rbenv global 2.4.1
$
$ rbenv versions
  system
* 2.4.1

#確認
$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin16]
$ rbenv versions
  system
* 2.4.1 (set by /Users/yogasa/.rbenv/version)
```
となり、最新版をインストール出来ました。

### bundlerも導入

```sh
$ gem install bundler
$ rbenv rehash
$ bundler -v
Bundler version 1.15.4
```

[gem update --system したら gem update bundler もね！](http://tacamy.hatenablog.com/entry/2013/03/31/230553)
を参考に`$ gem update bundler`も。

## Docker

`docker system prune -a`

## 参考

[Homebrewのキャッシュ削除](http://qiita.com/laiso/items/92c9f894bcd68d84c52d)

[brew cleanupでMacを掃除してストレージ容量を確保する方法 - Qiita](https://qiita.com/akameco/items/9e5026e892661b75e7b3)

[Mac の Safari のキャッシュから画像その他を取り出すメモ](http://uasi.hatenablog.com/entry/2015/06/19/110609)

[iOSアプリ開発でのキャッシュ削除方法まとめ - Qiita](https://qiita.com/shtnkgm/items/c96a58579ec406194fa8)

[Dockerで不要なコンテナとイメージを削除する - Qiita](https://qiita.com/kawaz/items/bc46fda6f0c481392c79)