鱒身(Masu_mi)のブログ

知った事をメモする場所。

新しいMBP を快適に使うための準備

前に注文したMBP13 が届いた。基本的な設定をしたのでメモする。

目標はLinux, Darwin 環境の設定を素早く完了する。 そのためにまずMBPの環境設定・コマンド導入をAnsible で可能な範囲で自動化した。 Linuxの開発環境を自動構築するのは見送っている。

設定手順

キーボード設定を修正する

  • CapsLock <-> Contrl の入れ替え

    USキーボードはCapsLockが扱いづらいのでCtrlと入れ替える

  • クォートの自動変換を切る

    デフォルトのOSXは入力時ににダブルクォート(”)やシングルクォート(‘)を勝手にマルチバイトに変換する

SSH秘密鍵を設定(Githubアカウント用)

これがないと始まらないので既存の鍵をコピーするなり再作成するなりする。可能な限り再作成が良い。

自動セットアップコマンドの実行

実際にはローカルに落としてきて実行したが、流行りの $(curl URL) コマンドで実行可能にしてみた。動くはず。

$ sh -c $(curl -fsSL https://raw.githubusercontent.com/masu-mi/dotfiles/master/setupscript/setup.sh)

HOMEBREWがgithubを沢山叩ける様にトークンを設定する

この記事 を真似すればOK。 自分の場合は~/.bash_tokens にサービストークン用の環境変数をまとめる様にしている。

AppStore 経由でアプリをインストールする

EvernoteとかAppStoreでインストールするアプリをポチポチとインストールする。

Alfred の設定を変更する

以下の様にhomebrew cask/opt/homebrew-cask/Caskroom 以下に配置されるのでAlfred の探索パスに追加する。

../../../_images/Alfred-for-homebrew_cask.png

Ansible で自動化したこと

設定スクリプトはここ にある。

./dotfiles/setupscript/
  | -- setup.sh        # 設定スクリプトトップ
  | -- setup.hosts     # Ansible 用のホストファイル
  | -- setup-mac.yml   # Ansible 用Playbook
  | -- setpu.vim       # NeoBundleInstall するだけのvim スクリプト

ini 形式でホスト一覧を準備して、yaml 形式で実施するタスク・メタ情報を記述しておいて以下のコマンドを実行すると勝手に動く。 実行すべきタスクはAnsible 自身が実行せずモジュールが実行する。 モジュール一覧 は眺めておくと良い。

$ ansible-playbook -i ./host.ini ./playbook.yaml --syntax-check
$ ansible-playbook -i ./host.ini ./playbook.yaml

今回はfile, fileinline モジュールを使って設定ファイルを準備し、 homebrew, homebrew_tap, homebrew_cask モジュールを使って パッケージ・アプリケーションをインストールした。詳しくは今回書いた Playbook を読んでください。

自動化を見送った事

Yahoo!ボックスアプリの自動インストール

homebrew cask にFormulaが無かった。 dmg形式で配布されているのでFormulaを書けば解決する。

キーボードのCapsLock/Ctrl入れ替え

コマンドラインから実行できると良いのだけど方法が見つからなかった。defaults コマンドあたりで実現できそうだと思っているけど、 ドメインが見つからない。

Alfred 探索パスに /opt/homebrew-cask/Caskroom を追加

AppleScript なりAutomator なりで自動化してshell モジュールから呼べば解決するかも知れない。

AppStore 経由でインストールするアプリケーションもAnsibleで管理

AppStore 経由で新規アプリをinstallできるコマンドを見つけられなかった。 どうにかしてAppStore経由のインストールをコマンドラインから呼べればansibleモジュールを作れば楽になる。