Tips

【Mac用】npmとNode.jsを削除してnodebrewに切り替える方法

nodebrew-eyecatch

npmやNode.jsのバージョンをアップデートし終わった後に、案件によってはバージョンを下げたりしないといけない局面に遭遇したので、「nodebrew use v0.0.0」の魔法の一行でバージョンを切り替えることができるnodebrewをインストールしてみました。

その際に、既にローカルで入っているnpmやNode.jsを除去してまっさらな状態でnodebrewをインストールする方法が体系的にまとまったものがなかった(バラバラ!)ので、今回この記事でまとめてしまいます。

▼Macの環境

  • macOS:sierra 10.13.6
  • homebrew:インストール済
  • npm、node.jsをグローバルインストール済(これを削除したい)
  • iterm(アイターム)でzshを使用(皆さんのデフォルトはbash)

既存のnpmとNode.jsを削除する

まずは、既存のnpmとNode.jsを削除します。

これから記して行くコードを順序通りにコマンドに入れていってもらえば、上手くアンインストール&削除はできます。

sudoはスーパーユーザーや他のユーザーの権限を持ってしてコマンドを実行する言わば、ウルトラC的な呪文です。簡単にいうと絶対的な権限を持ってして実行するコマンドです。今回はそのコマンドを持ってして、uninstallやrm -rfというアンインストールや削除を実施するので、完全に自己責任でお願いします。

会社のPCで実行する時はちゃんとマネジャーに確認とってくださいね。

現在入っているnpmをアンインストールします。

$ sudo npm uninstall npm -g

次にnode.jsをアンインストールしていきます。

$ lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom | while read i; do sudo rm /usr/local/${i}; done
$ sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

npmのアンインストール後もnpmのカケラが残っておったので、これはrm -rfで消し去ります。

$ sudo rm -rf ~/.npm

これでnpmとNode.jsは消え去りました。念のためコマンドで確認して、「command not found」が出て入ればOKです。

npm -v
node -v

※バージョンが表示されたら、消えてないのでもう一度実行してみてください。

nodebrew自体のインストールは簡単1行

npmとNode.jsを削除できたところでいよいよ本丸のnodebrewをインストールしていきます。

まずnodebrewをセットアップします。コピペでOKです。

$ curl -L git.io/nodebrew | perl - setup

すると、以下のようにズラーっとコマンド実行後に表示されれば、最後にパスを入力してくれよと言われるのでパスを追加します。

$ 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
  0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
100 20027  100 20027    0     0   5846      0  0:00:03  0:00:03 --:--:-- 77324
fetching nodebrew...
install nodebrew in $HOME/.nodebrew

========================================
Add path:

export PATH=$HOME/.nodebrew/current/bin:$PATH
========================================

「~/.bashrc」または「~/.zshrc」にPATHの追記

デフォルトのターミナルシェルを使用している方は、大体bashなので大丈夫だと思うのですが念のためご自身のターミナルを開いてbashかzshか表示確認してみましょう。

私はiTermを(補完機能があったり、git statusが天気予報みたいなマークで表示されて非常にわかりやすい!)使っていて、oh my zsh!とかをインストールしていたのでbash/zsh間の罠にハマり、無駄に時間を消費しました。(修行不足です…)

bash/zshの確認ができたら、以下の1行「~/.bashrc」または「~/.zshrc」ファイルを開きテキストエディタで記載しましょう。

export PATH=$HOME/.nodebrew/current/bin:$PATH

ファイルが見つからないという人は、おそらく不可視ファイル系トラップなので、

$ ls -a

とかで炙り出して、Macで不可視が見れるように環境を変更すると後々楽で良いかと。

最後は設定読み込んで終了です。

$ source ~/.zshrc
$ source ~/.bashrc

Node.jsのインストール(推奨:最新版、安定版)

nodebrewが入ればどのバージョンのNode.jsおよび、npmがインストールできるようになりますが、ベーシックなのは最新版と安定版なのでそれらをインストールします。

まずは最新版をインストールします。

$ nodebrew install-binary latest

次に安定版もインストール。

$ nodebrew install-binary stable

これで一通りのNode.jsはインストールできました。
ちゃんとインストールできているかを確認するためには、以下のコマンドでOK。

$ nodebrew list
nodebrew list

上手くインストールできて入れば上記のようにlistが出ます。

※私はすでに案件でいくつか個人的にインストールしたので、若干リストは違います。

使用したいバージョンは以下のようにuseの後にバージョンをつければ切り替わります。常に最新版を使うならv0.0.0の部分をlatestに変えれば一発です。

$ nodebrew use v0.0.0

nodebrewでよく使うコマンドはnodebrewでよく使うコマンドが綺麗にまとまっているので参考になりました。

インストールできているか最終チェック

 

最後に念のため、node -vとnpm -vでそれぞれ入っているかチェックしてみましょう。

npm -v
node -v

Node.jsがuseで指定したバージョンが出て入れば成功です。

これで快適なNode.js生活を満喫できます!お疲れ様でした。

特に参考にさせて頂いた記事はこちらnode.js 入れるなら nodebrew が超簡単、かなり古めの記事ですがこれが一番参考になったです。