はじめに
オレオレインストール備忘録です。
既出で今更感満載ではあるんですが、自分用に再構築が必要になった時のために。
なぜかディレクトリのみ存在していて、環境ぐちゃぐちゃでコマンドの実行もできなかったので、これを機にインストールし直すことにしました。
drwxr-xr-x 9 user staff 288B Sep 23 2018 .nodebrew
drwxr-xr-x 453 user staff 14K Sep 23 2018 .npm
事前準備
既存のディレクトリを削除します。
❯rm -rf .nodebrew
❯rm -ef .npm
nodebrew のインストール
自分の環境(Mac)は Homebrew が入ってるので、 Homebrew を使って nodebrew をインストールします。
nodebrew とは
Node.jsの バージョン管理ツール です。
Node.js 自体はソースから入れたり、インストーラー使ったりいろいろインストール方法はあるのですが、Homebrew でパッケージ管理してるし、バージョン切り替えて使う目的があるわけじゃないけど、管理はラクだろうな、という安易な理由から nodebrew を使うことにしました。
素でNode.jsだけインストールしたい場合は、ここから直接取ってきたらいいと思う
Node.js
❯ brew install nodebrew
Updating Homebrew...
==> Downloading https://github.com/hokaccha/nodebrew/archive/v1.0.1.tar.gz
==> Downloading from https://codeload.github.com/hokaccha/nodebrew/tar.gz/v1.0.1
######################################################################## 100.0%
==> Caveats
You need to manually run setup_dirs to create directories required by nodebrew:
/usr/local/opt/nodebrew/bin/nodebrew setup_dirs
Add path:
export PATH=$HOME/.nodebrew/current/bin:$PATH
To use Homebrew's directories rather than ~/.nodebrew add to your profile:
export NODEBREW_ROOT=/usr/local/var/nodebrew
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
zsh completions have been installed to:
/usr/local/share/zsh/site-functions
==> Summary
🍺 /usr/local/Cellar/nodebrew/1.0.1: 8 files, 38.6KB, built in 10 seconds
>>> elapsed time 16s
nodebrewコマンドが使えることを確認します。
❯ nodebrew
nodebrew 1.0.1
Usage:
nodebrew help Show this message
nodebrew install <version> Download and install <version> (from binary)
nodebrew compile <version> Download and install <version> (from source)
nodebrew install-binary <version> Alias of `install` (For backword compatibility)
nodebrew uninstall <version> Uninstall <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> <value> Set alias
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
nodebrew exec <version> -- <command> Execute <command> using specified <version>
Example:
# install
nodebrew install v8.9.4
# use a specific version number
nodebrew use v8.9.4
nodebrew でインストール可能な Node.js のバージョンを確認したい時は以下のコマンドで確認可能です。
❯ nodebrew ls-remote
Node.js のインストール
最新版の Node.js をインストールする時は以下のコマンドを実行します。
❯ nodebrew install-binary latest
Warning (No such file or directory) が出てインストールに失敗する場合
インストール時にこんな Warning が出る場合があります。
❯ nodebrew install-binary latest
Fetching: https://nodejs.org/dist/v12.7.0/node-v12.7.0-darwin-x64.tar.gz
Warning: Failed to create the file
Warning: /Users/userDir/.nodebrew/src/v12.7.0/node-v12.7.0-darwin-x64.tar.gz:
Warning: No such file or directory
この Warning が出た場合は、src ディレクトリを作ったらOK。
❯ mkdir -p ~/.nodebrew/src
ディレクトリを作成したら、正常にインストールできました。
❯ nodebrew install-binary latest
Fetching: https://nodejs.org/dist/v12.7.0/node-v12.7.0-darwin-x64.tar.gz
######################################################################## 100.0%
Installed successfully
>>> elapsed time 17s
Node.js のバージョン確認
インストールされた Node.js のバージョンを確認します。
❯ nodebrew ls
v12.7.0
current: none
"current: none" になっているので、最新版(この時点では v12.7.0 )がインストールされているものの、このバージョンが有効になっていません。
このバージョンで使うために、コマンドを実行して有効化します。
❯ nodebrew use v12.7.0
use v12.7.0
"current: v12.7.0" とセットされたことが確認できます。
❯ nodebrew ls
v12.7.0
current: v12.7.0
パスを追加する (Zsh)
パスを設定して、nodeコマンドが使えるようにします。
パスの追加は、bash用に書かれている記事が多いんですが、わたしはZsh(Prezto)環境で使っているので、以下のファイルにパスを追加します。
[Mac]Zshでoh-my-zshからPreztoに切り替える
❯ ll ~/.zshrc
lrwxr-xr-x 1 user staff 36B May 6 11:03 /Users/userDir/.zshrc -> /Users/userDir/.zprezto/runcoms/zshrc
# Customize to your needs...
## nodebrew
export PATH=$HOME/.nodebrew/current/bin:$PATH
各コマンドが使えることを確認
node コマンドと npm コマンドが通ることを確認します。
*npm = Node.js の パッケージ管理ツール
❯ node -v
v12.7.0
❯ npm -v
6.10.0