macのクリーンインストール @ansibleで自動インスコ付き【2018/01版】
雑なメモ書きですが
クリーンインストールメモ
参考サイト
Macbookクリーンインストールでやった事(Homebrew+Ansible)
https://qiita.com/decobisu/items/661eb3fb1faa14a2a76d
OSのクリーンアップ
- 必要なファイル等は外付けHDDなどに退避する。
今回は新規のMBPにインストールしたのでディスク消去はしていない
- 今は情報の転送はしないを選択
- Macを探すは許可する
- コンピュータアカウントを作成(iCloudアカウントは使わなかった)
- FileVaultディスク暗号化を有効にする
- 診断と使用状況はチェックした
- クリーンインストールが終わったらApp storeからシステムアップデートをかける。
最新のOSをインストール
- 新規で購入したMBPなのにHighSierraが入っていなかったのでインストール
Xcodeをインストール
Dock
セキュリティとプライバシー
- スリープとスクリーンセーバの解除を15分後に
- Apple WatchでこのMacのロックを解除できるようにする → チェック入れても動かなかったので未設定
キーボード
- キーのリピートを速く(最速)
- リピート入力時間を短く(最短)
トラックパッド
- タップでクリックにチェック
- 軌跡の速さを速くする(最速)
サウンド
- メニューバーに音量を表示にチェック
共有
- コンピュータ名をかわいいのに変える
日付のオプション
- 曜日を表示
- 日付を表示
表示オプション
- デスクトップを右クリック → 表示オプションを表示
- アイコンサイズ 16x16
- ラベルの位置 右側
- 表示順序 名前
Homebrewをインストールする
Homebrewのインストール
xcode-select --install ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/insta
参考サイトの情報のままだと上手く行かないのでanacondaインストールする
brew install python ---> 2.7系が入るので嫌。3系のanaconda入れたい brew install ansible ---> pythonのフォルダにインストールしようとする brew install caskroom/cask/brew-cask ---> エラー出る
anacondaは以下からダウンロード
https://www.anaconda.com/download/#macos
chmod 755 ./Anaconda3-5.0.1-MacOSX-x86_64.sh ./Anaconda3-5.0.1-MacOSX-x86_64.sh
確認
Python -V Python 3.6.3 :: Anaconda, Inc.
ansibleインストール
brew install ansible
どうもこれ↓は入れなくて良い様子
brew install caskroom/cask/brew-cask ---> エラー出る
Ansibleの実行
プロビジョニング用のディレクトリ作成。
mkdir .macbook-provisioning cd .macbook-provisioning/
ansible用のinventoryファイル作成
echo 'localhost' > hosts
テキストを開き、以下をlocalhost.ymlとして保存
- hosts: localhost connection: local gather_facts: no sudo: no vars: homebrew_taps: - homebrew/binary - homebrew/dupes - caskroom/cask - homebrew/services homebrew_packages: - { name: readline } - { name: openssl } - { name: openssl, state: linked, install_options: force } - { name: git } - { name: wget } - { name: curl } - { name: go } - { name: rbenv } - { name: ruby-build } - { name: vim } - { name: mysql } - { name: redis } homebrew_enabled_services: - mysql - redis homebrew_cask_packages: - { name: iterm2 } - { name: firefox } - { name: google-chrome } - { name: google-japanese-ime } - { name: atom } - { name: skype } - { name: slack } - { name: vagrant } - { name: virtualbox } - { name: phpstorm } - { name: pycharm } - { name: datagrip } - { name: sequel-pro } - { name: postman } - { name: cyberduck } - { name: gimp } - { name: marp } - { name: vmware-fusion } - { name: sourcetree } tasks: - name: homebrew の tap リポジトリを追加 homebrew_tap: tap={{ item }} state=present with_items: "{{ homebrew_taps }}" - name: homebrew update確認 homebrew: update_homebrew=yes # brew - name: brew packageのインストール homebrew: > name={{ item.name }} state={{ item.state | default('latest') }} install_options={{ item.install_options | default() | join(',') if item.install_options is not string else item.install_options }} with_items: "{{ homebrew_packages }}" register: brew_result - name: brew パッケージの情報保存先ディレクトリを作成 file: path=brew_info state=directory - name: brew パッケージの情報を保存 shell: brew info {{ item }} > brew_info/{{ item }} with_items: "{{ brew_result.results | selectattr('changed') | map(attribute='item') | map(attribute='name') | list }}" # brew services - name: Get currently available brew services. shell: "brew services list | sed '1 d' | cut -d ' ' -f 1" register: brew_services - name: Enable brew services. command: "brew services start {{ item }}" with_items: "{{ homebrew_enabled_services }}" when: "'{{ item }}' in brew_services.stdout_lines" # - name: Install bundler(インストールは成功するが、Projectによってはうまく動作しなかった) # gem: # name: bundler # user_install: no # executable: /usr/local/bin/gem handlers: - name: run fc-cache shell: fc-cache -vf
Homebrew Caskオプションを設定
echo 'export HOMEBREW_CASK_OPTS="--appdir=/Applications"' >> ~/.bash_profile source ~/.bash_profile
作成したPlaybookを実行する
ansible-playbook -i hosts -vv localhost.yml
※MacBookPro 2017 Mid 15インチ (High Sierra)で動作確認済み