LoginSignup
35
31

More than 3 years have passed since last update.

nodenvでいつも使うパッケージを自動でインストールする

Posted at

nodenvを使ってnodeバージョン管理していて、それぞれのバージョンでnpm install -gしているとこっちのバージョンではパッケージが入っているがこっちのバージョンでは入っていない!というケースが発生したりすることがあると思います。

nodenvではnodenv-default-packagesというプラグインを利用することでnodeインストール時に自動的に指定したパッケージをインストールすることができます。

インストール

プラグインインストール用のディレクトリがなければ作成します。

mkdir -p "$(nodenv root)/plugins"

プラグインをリポジトリからクローンします。

git clone https://github.com/nodenv/nodenv-default-packages.git "$(nodenv root)/plugins/nodenv-default-packages"

default-packagesファイルの設定

インストールするパッケージ名を記載するdefault-packagesを作成します。

touch $(nodenv root)/default-packages

あとはこのdefault-packagesファイルにインストールしたいパッケージ名を記載しておけばnodenv install時にそのバージョンのnodeに対してパッケージをグローバルインストールしてくれるようになります。

以下記入例です。パッケージ名は改行で区切って記載します。
バージョン指定もなどもできます。

typescript
parcel-bundler <=1.12.0
# #の行はコメント行

ちなみに特定のバージョンにしかインストールされていないコマンドを叩いた場合は以下のようになります。

bash-3.2$ node -v
v8.10.0

bash-3.2$ parcel
nodenv: parcel: command not found

The `parcel' command exists in these Node versions:
  10.15.3

インストール済みのnodeへのインストール

すでにインストールされているnode対してパッケージインストールを行いたい場合は、以下のようにバージョンを指定して実行します。

nodenv default-packages install 8.10

インストールされているすべてのnodeに対して適用する場合は--allオプションを使用します。

nodenv default-packages install --all
35
31
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
35
31