File: //usr/bin/install_nvm_and_node.sh
#!/bin/bash
set -euo pipefail
export NVM_DIR="$HOME/.nvm"
if [ -s "$NVM_DIR/nvm.sh" ]; then
echo "NVM already installed"
exit 0
fi
echo "🔍 Fetching latest nvm release version..."
NVM_VERSION=$(curl -s https://api.github.com/repos/nvm-sh/nvm/releases/latest \
| grep '"tag_name":' \
| sed -E 's/.*"v([^"]+)".*/\1/')
echo "➡️ Latest nvm version is v$NVM_VERSION"
echo "📥 Downloading and installing nvm v$NVM_VERSION..."
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v${NVM_VERSION}/install.sh | bash
echo "🔄 Loading nvm into current shell..."
# shellcheck disable=SC1091
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
echo "📦 Installing stable Node.js..."
nvm install stable
echo "✅ Installation complete!"
node -v
npm -v