最近M1チップ搭載のMacBook Airを購入しました。
M1以外のMacも同じ方法でインストールできますが、購入記念(?)で書き残しておきます。
紹介すること
- M1 Macでnvmを利用するときの注意点
- nvmのインストール
- nvmを利用したNode.jsのインストール
検証環境
- macOS Monterey 12.3.1
- MacBook Air(M1, 2020)
nvmとは
Node.jsのバージョン管理ツールです。
https://github.com/nvm-sh/nvm#about
なぜnvmを使うの?
- Node.jsをバージョン管理したいから
- EC2のチュートリアルに紹介されているので信頼性が高そうだから
Node.jsのバージョン管理ツールではnodebrewも有名ですね。こちらもM1 Macに対応しているようです。
【M1 Mac】nodebrew v1.1.0が公式にAppleSiliconに対応したのでNode v16.0.0をインストール
M1 Macはここに注意
インストールするNode.jsのバージョンに注意が必要です。M1 Macでは16.0.0以降のバージョンが勧められています。
https://github.com/nvm-sh/nvm#important-notes
Note For Macs with the M1 chip, node started providing arm64 arch darwin packages since v16.0.0. For earlier versions, there were only darwin_x64 packages available but no darwin_arm64. If you are facing issues installing node using nvm, you may want to update to v16 or later.
ライブラリや環境の都合上あえてバージョンを下げて利用することもあると思います。必要なバージョンの対応可否はその都度公式ドキュメントを確認してください。
今回はLTSバージョン(16.0.0以降)をインストールするので問題ありませんでした。
https://github.com/nodejs/Release#release-schedule
nvmのインストール
インストール実行
公式ドキュメントに従ってインストールします。
https://github.com/nvm-sh/nvm#install--update-script
% curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
ターミナルのリスタート用コマンドを実行します。
https://github.com/nvm-sh/nvm#troubleshooting-on-macos
You might need to restart your terminal instance or run . ~/.nvm/nvm.sh. Restarting your terminal/opening a new tab/window, or running the source command will load the command and the new configuration.
% . ~/.nvm/nvm.sh
nvmのバージョンが確認できればインストール完了です!
% nvm -v
0.39.1
Homebrewではインストールできないの?
Homebrew経由でインストールすることも可能ですが、公式ドキュメントによると現在はサポート対象外のようです。
https://github.com/nvm-sh/nvm#important-notes
Homebrew installation is not supported. If you have issues with homebrew-installed nvm, please brew uninstall it, and install it using the instructions below, before filing an issue.
また、nvmに限らずHomebrewでパッケージをインストールした場合は一部の初期設定が実行されないようです。試しにbrew install nvm
を実行したところ、curlコマンドでは実行される処理が行われていませんでした。
-
~/.zshrc
にパスの設定に必要なexport文が追記されない -
~/.nvm
が生成されない
なお、これらの作業については手動で対応可能です。Homebrewを使用した場合はインストール完了時に説明文が出力されます。
Please note that upstream has asked us to make explicit managing
nvm via Homebrew is unsupported by them and you should check any
problems against the standard nvm install method prior to reporting.
You should create NVM's working directory if it doesn't exist:
mkdir ~/.nvm
Add the following to ~/.zshrc or your desired shell
configuration file:
export NVM_DIR="$HOME/.nvm"
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh" # This loads nvm
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion
Node.jsのインストール
LTSバージョンをインストールします。
https://github.com/nvm-sh/nvm#long-term-support
% nvm install --lts
Node.jsのバージョンが確認できればインストール完了です!
% node -v
v16.14.2
合わせてnpmも使用できるようになりました。
% npm -v
8.5.0
まとめ
最近はM1対応のツールが増えて嬉しいです。M1の環境構築についての情報も増えましたが、現在進行形でツールのアップデートも進んでいるので情報の正確性はその都度判断が必要ですね。
快適なM1 Macライフをお送りください。
採用PR
弊社で一緒に働く仲間を募集しています。
全てのオタクを幸せにしたい方、是非ご覧ください!