[Node.js] Node.js: nodebrew で node.js をインストールする

フロントエンドの開発環境を整えていきます。

node.js 公式のインストーラは使わず、パッケージ管理ツールを利用してCliインストールしてみます。

バージョン管理ができそうなツールとして、少し調べたところではこんな選択肢があるようです。

Mac のパッケージ管理ツールの Homebrew が楽そうですが、nodebrew で入れるのが最近のトレンドでしょうか。これに習います。

node.js のバージョンアップが速いそうで、このためにバージョン管理をする必要があるようです。

Contents

nodebrew をインストールする

node.js をすでに利用しているならば、アンインストールが必要。

nodebrew の公式を確認しながら進めます。

ワンライナーでダウンロードする

% curl -L git.io/nodebrew | perl - setup
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 18593  100 18593    0     0  11983      0  0:00:01  0:00:01 --:--:-- 83376
fetching nodebrew...
install nodebrew in $HOME/.nodebrew
========================================
Add path:
export PATH=$HOME/.nodebrew/current/bin:$PATH
========================================

パスを追加する

指示通り、.zshrc などにパスを追加する。

% subl ~/.zshrc

動作確認。

% source ~/.zshrc
% nodebrew help
nodebrew 0.6.4
Usage:
    nodebrew help                       Show this message
    nodebrew install <version>          Download and install a <version> (compile from source)
    nodebrew install-binary <version>   Download and install a <version> (binary file)
    nodebrew uninstall <version>        Uninstall a version
    nodebrew use <version>              Use <version>
    nodebrew list                       List installed versions
    nodebrew ls                         Alias for `list`
    nodebrew ls-remote                  List remote versions
    nodebrew ls-all                     List remote and installed versions
    nodebrew alias <key> <version>      Set alias to version
    nodebrew unalias <key>              Remove alias
    nodebrew clean <version> | all      Remove source file
    nodebrew selfupdate                 Update nodebrew
    nodebrew migrate-package <version>  Install global NPM packages contained in <version> to current version
Example:
    nodebrew install v0.6.0     Install a specific version number
    nodebrew use v0.6.0         Use a specific version number

nodejs をダウンロードする

インストール可能なバージョンを確認するといっぱい出てきますね。

% nodebrew ls-remote

安定版をインストールします。

% nodebrew install stable
fetch: http://nodejs.org/dist/v0.10.21/node-v0.10.21.tar.gz
:
Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.
:

Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo.

はい。エラーが出ました!
アップデート後、Xcode のライセンス承認が済んでませんでした。
Xcode を立ち上げて承認しました。

再度試すと下記が表示されましたが、

% nodebrew install stable
v0.10.21 is already installed

インストール時にエラーがずらすらと出ていたので、アンインストールしてみます。

% nodebrew uninstall v0.10.21
v0.10.21 uninstalled
% nodebrew ls
not installed
current: none
% nodebrew install stable
fetch: http://nodejs.org/dist/v0.10.21/node-v0.10.21.tar.gz
:
:
symlinking ../lib/node_modules/npm/bin/npm-cli.js -> /Users/****/.nodebrew/node/v0.10.21/bin/npm
updating shebang of /Users/****/.nodebrew/node/v0.10.21/bin/npm to /Users/****/.nodebrew/node/v0.10.21/bin/node

結構時間がかかりますね。
大量のログが表示されてまったく追えませんが、無事に終わったのだと思います。
ローカルを確認して、今落としたバージョンを使うよう設定します。

% nodebrew ls
v0.10.21
current: none
% nodebrew use v0.10.21
use v0.10.21
% node -v
v0.10.21

nodebrew の update

必要になったら下記を実行する。

% nodebrew selfupdate

npm

npm は、node.js の package を管理するツール。
既に入っていました。

% npm -v
1.3.11

例えばこんな感じでインストールするようです。

% npm install -g coffee-script

npm については、別途確認していきます。

別バージョンで利用していたモジュールの移行

すでに node.js で利用していた npm を移行するコマンドがあるそうです。

% nodebrew migrate-package v0.10.11

migrate-packageはnpm install -gでグローバル環境にインストールされているモジュールを、カレントバージョンにも適用してくれるものです。

上記ではv0.10.11でグローバルにインストールされているモジュールを、カレントのバージョンにもnpm install -gでインストールしてくれます。
機会が来たら実際に試してみたいですね。