1
0
Fork 0
bin/node-update

28 lines
891 B
Bash
Executable File

#!/bin/bash
echo "> Getting latest version number"
VERSION=v${1:-$(curl https://nodejs.org/dist/index.json | sed -e 's/^.*"version":"\([^"]*\)".*$/\1/' | head -n 2 | tail -n -1 | cut -c 2-)}
NODEJS=node-${VERSION}-linux-x64
echo "> Downloading $VERSION of node.js"
curl -s https://nodejs.org/dist/${VERSION}/${NODEJS}.tar.xz | tar xvfJ -
echo "> Setting ownership of /usr/local to $USER"
sudo chown -R ${USER}:${USER} /usr/local
echo "> Moving extracted node.js binaries"
if [ "$(pwd)" != "/usr/local/lib" ]; then
rm -rf /usr/local/lib/${NODEJS} && mv ${NODEJS} /usr/local/lib
fi
echo "> Symlinks"
sudo rm -f /usr/local/bin/{iojs,node,npm,node-gyp}
ln -s /usr/local/lib/${NODEJS}/bin/node /usr/local/bin/node
ln -s /usr/local/lib/${NODEJS}/bin/npm /usr/local/bin/npm
echo "> Global prefix"
npm config set prefix /usr/local
echo "node.js version: $(node -v), npm version: $(npm -v)"