<mohammadrony>

Nodejs and NPM

TL;DR

version=$(curl https://api.github.com/repos/nvm-sh/nvm/releases/latest | jq -r .tag_name)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/$version/install.sh | bash
source ~/.bashrc
nvm install node
nvm install 24

NVM Install

Install nvm

Latest version of NVM

version=$(curl https://api.github.com/repos/nvm-sh/nvm/releases/latest | jq -r .tag_name)
curl -O https://raw.githubusercontent.com/nvm-sh/nvm/$version/install.sh

bash install.sh
rm -f install.sh
vi ~/.bashrc
for FILE in ~/.bashrc ~/.zshrc; do
tee -a "$FILE" << 'EOF'
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
EOF
done
case "$SHELL" in
  */zsh) source ~/.zshrc ;;
  */bash) source ~/.bashrc ;;
esac

Check version

nvm --version

Install node using nvm

List available versions

nvm ls
nvm ls-remote

Install Node and NPM

nvm install node
nvm install stable
nvm install --lts
nvm install 26

Use specific version

nvm alias default 26
nvm use default
nvm use --lts
nvm use 26
nvm use node

Uninstall node

Uninstall Node

nvm uninstall <version>

Uninstall nvm

rm -rf .nvm

Remove nvm entry from login file

vi .bashrc

Package Install

NodeSource install

version=lts # 26 24
curl -fsSL "https://deb.nodesource.com/setup_${version}.x" -o nodesource_setup.sh
sudo bash nodesource_setup.sh

Install nodejs

sudo apt install -y nodejs

Hold apt package

sudo apt-mark hold nodejs npm

Uninstall nodejs

sudo apt remove -y nodejs