Mac OSXの環境構築を半自動化した

そろそろ大学の講義に資料閲覧用としてMacBookPro(非Retina)持って行きたいなぁと思いつつも,5年くらい使い続けている年季物なのでこれを機にクリーンインストールしました.

ついでに,GitHomebrewAnsibleを組み合わせて環境構築を(半)自動化しました.

一応,今回作成した設定ファイルやシェルスクリプトなどはGitHubにあげておきます.


Ansibleとは

Ansibleとは,RedHat社が開発している環境構築ツールです.設定ファイルは構文が明解なYAMLで書くので,初心者にもとっつきやすいです.

さくらのナレッジさんの記事による説明がわかりやすいです.


前提

OSX El Capitanをクリーンインストールした直後のMacを想定しています.

10.11.4で動作したことは確認しました.


Mac環境構築の(半)自動化手順

Xcodeのインストール

次のコマンドでXcodeをインストールします.

Homebrewのインストール

公式が推奨(?)しているワンラインでインストール

Ansibleのインストール

brewでインストール

Ansibleの設定

まずは作業用のディレクトリを作成します.今回ディレクトリ名はmac-provisioningとしました.

次に,環境構築対象ホスト指定ファイル(hosts)を作成します.今回はリモートで構築とかはしないので,localhostだけです.

プロビジョニングファイルを作成します.作成の際はこちらのサイトを参考にさせて頂きました.

2016/9/19追記
HomebrewにおけるHomebrew Caskのパッケージ名がbrew-caskからcaskに変更になったっぽいので,修正してあります.

Ansibleの実行

インストールされたアプリケーションのシンボリックリンクを貼るディレクトリを/Applications以下に固定するよう指定してから,Ansibleを実行します(2回目以降はこの工程だけでOK).

先ほどのlocalhost.ymlの内容によってはかなり時間がかかりますので気をつけてください.ちなみに,-vvオプションや-vvvオプションもつけるとより詳細なログが得られます(詳細はman ansible-playbook).


ゆるふわワンライナー

せっかくなのでGitHubにあげてワンライン化しちゃいましょう.

中身はこんな感じです.

あんまり普段シェルスクリプトを書かないので,お作法的にはかなり汚いと思います.まずそうな記述あったらコメントやpull-req等で教えていただけると幸いです.

やってることとしては,

  1. Mac構築用リポジトリgit clone
  2. 自家製dotfilesリポジトリgit cloneした後,展開
  3. Homebrewを公式推奨のワンラインでインストール
  4. AnsibleHomebrew経由でインストール
  5. ansible-playbookを実行してHomebrew/Homebrew Caskの各パッケージをインストール
  6. zplugをインストール
  7. ログインシェルをzshに変更

って感じです.


これからしたいこと

  • defaultsコマンド使えばキーボードとかの設定もできるっぽいのでそれも自動化しちゃいたい
  • gitのconfigとかiTermのカラーリングとか諸々も自動化しちゃいたい
  • フォント周りも自動化しちゃいたい
  • 設定ファイルを整理したい

参考サイト

kage

A student at Tokyo Institute of Technology. Programmer.

あわせて読みたい

コメントを残す

%d人のブロガーが「いいね」をつけました。