Installing Node.js with nvm to Linux & macOS & WSL
Previous versions of these install instructions had been tested with:
Install nvm for managing Node.js versions
The reason for using nvm instead of other install types is mainly in how easy it is to have multiple versions of Node.js (if needed) without too much of extra complexity. Sometimes applications might require a certain version of Node.js to work, so having the flexibility of using specific versions can save a lot of time from you.
- Open new Terminal window.
- Run nvm installer
- ...with either curl or wget.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
- The script clones the nvm repository to
~/.nvm
and adds the source line to your profile (~/.bash_profile
, ~/.zshrc,
~/.profile,
or ~/.bashrc
). (You might want/need to add the source loading line by yourself, if the automated install tool does not add it for you.)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
- If everything went well, you should now be able to reload the shell by running
source ~/.bashrc
- (Another option is to open a new Terminal window/tab.)
- Verify installation
- To verify that nvm has been installed, do:
command -v nvm
- List what versions of Node are currently installed (probably none).
nvm ls
- Install latest Node.js LTS release (recommended for production usage).
nvm install v10.16.0
- Install Current Node.js Current release with latest features (for testing new feature improvements).
nvm install v12.3.1
- If you want to change the default Node version later, you can run a command to adjust it.
It is also possible to select what Node.js version is used per project basis, by running nvm use v10.15.3
(or another version number) on the directory where the individual project is located. One way to do that is to create small Bash shell script for enabling the right environment when needed, so you would not have to remember what exact version was needed.
You can find a lot of packages from the npm website. Have a good time with the tools.
- ...with either curl or wget.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
- The script clones the nvm repository to
~/.nvm
and adds the source line to your profile (~/.bash_profile
,~/.zshrc,
~/.profile,
or~/.bashrc
). (You might want/need to add the source loading line by yourself, if the automated install tool does not add it for you.)export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
source ~/.bashrc
- (Another option is to open a new Terminal window/tab.)
- To verify that nvm has been installed, do:
command -v nvm
nvm ls
nvm install v10.16.0
nvm install v12.3.1
nvm use v10.15.3
(or another version number) on the directory where the individual project is located. One way to do that is to create small Bash shell script for enabling the right environment when needed, so you would not have to remember what exact version was needed.Upgrading from previous version of Node.js
If you already have previous version of Node.js installed with nvm, you can upgrade to a different version with these steps.
- Open new Terminal window (to make sure you have latest Node.js version active in your command line environment).
- Linking global packages from previous version:
nvm reinstall-packages v10.15.3
nvm reinstall-packages v12.3.0
nvm reinstall-packages v10.15.3
nvm reinstall-packages v12.3.0
Updating outdated packages
List what (top level) packages are installed globally
npm ls -g --depth=0.
npm ls -g --depth=0.
List what packages are outdated
npm outdated -g --depth=0.
npm outdated -g --depth=0.
Update outdated globally installed npm packages
npm update -g
npm update -g
Fixing old package versions
After installation of Node v10.x (or similar), it can be a good idea to recompile old packages (that have compiled native extensions) to make sure that they work with the new version of Node. That can be done easily by going to a project’s root directory, and running npm rebuild
:
cd PROJECT_NAME
npm rebuild
npm rebuild
:cd PROJECT_NAME
npm rebuild
Deleting old Node.js versions
- Look what versions are installed:
nvm ls
- Delete an older version (if it is no longer used in some of your projects):
nvm uninstall v10.15.3
nvm uninstall v12.3.0
nvm ls
nvm uninstall v10.15.3
nvm uninstall v12.3.0
This comment has been removed by a blog administrator.
ReplyDelete