画像

過去にこんなネタ記事[2011-06-06-1] も書きましたが、Mavericksになって
CLI Toolsからrcsが削除されたのと、今どきRCSもないよねということで、
話題のBoxenを導入してみました。

BoxenはGitHub社が開発した、エンジニアの開発環境を構築するための
ツールです。GitHub社員じゃなくても使えます。

Homebrewやrbenv、plenv等を包括出来るだけでなく、ChromeやSkype等も
コマンド一発でインストールできます。さらにはOSXの設定まで管理できます。

私の場合、HomebrewでインストールしたコマンドやGemはもう分かりません
し、今までインストールしたさまざまなアプリはメモしていました[2011-04-21-1]
それらをコード化できるのが良いと感じました。

Mavericksに対応しきれていないので、まだハマりどころはあります。
そういう意味ではちょっと待ったほうが良いかも。

導入はそこそこ簡単で、ここ のREADMEのとおりに実行するだけです。

% sudo mkdir -p /opt/boxen
% sudo chown ${USER}:staff /opt/boxen
% git clone https://github.com/boxen/our-boxen /opt/boxen/repo
% cd /opt/boxen/repo
% git remote rm origin
% git remote add origin <the location of my new git repository> # (1)
% git push -u origin master

GitHubアカウントが必要です。あらかじめ自分用のリポジトリを作って、
(1)で指定すると良いです。

あとはboxenコマンドを実行すれば、manifests/site.ppで指定されたツー
ルが/opt/boxen以下にインストールされます(暗号化は不要なのでOFFにし
てます)。シンボリックリンク~/src/our-boxenも作られます。

% script/boxen –no-fde

ただ、私のMavericks環境ではgccのビルドに失敗しました。デフォルトは
変更したくありませんでしたが、仕方がないので以下のように変更しまし
た。ついでに必要なさそうなdnsmasqや古いバージョンのNode.jsやRubyも
削除しました。
https://github.com/masutaka/my-boxen/commit/19e66fbdddcdbd2b564eb94c10f5345677d3520f

個人向けの設定はmodules/people/manifests/<GitHubアカウント>.ppに
記載していきます。というわけで私のリポジトリはこちら。

一点、不可解なことがあって、一部のツールが壊れていました。

% wget
zsh: illegal hardware instruction wget

brewからインストールしなおせばOKです。(素のbrew installと、Boxen経
由のbrew installがなにか違うのかなあ。gccをインストールしてないので、
clangでビルドしているのが原因?逆アセンブルしてもあまり違いはなかっ
たので違うか。。)

Boxenをアンインストールしたい時はこれ。手順通りの/opt/boxen/repoに
リポジトリがある状態だと、自分自身を削除しようとしてエラーになるの
で、git cloneしてnukeを実行すると良いかも。

% script/nuke –all –force

以下が参考になりました。ありがとうございます。
Mac - Boxen使わなくても許されるのは2012年までだよね - Qiita [キータ]

追記(2014-01-02):
zsh: illegal hardware instructionの問題は、Core 2 Duo固有の問題かも。。
https://github.com/boxen/puppet-nginx/issues/5