nodejs nvm for macos
This commit is contained in:
@@ -1,27 +1,66 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install nodejs + npm via nvm
|
||||
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing nodejs..."
|
||||
echo "==============================================="
|
||||
echo
|
||||
isMac() { uname -s | grep -q "Darwin"; }
|
||||
isLinux() { uname -s | grep -q "Linux"; }
|
||||
|
||||
installed() {
|
||||
command -v "$1" >/dev/null 2>&1
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing nodejs + nvm..."
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
if isMac; then
|
||||
brew install nvm
|
||||
elif isLinux; then
|
||||
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
|
||||
else
|
||||
echo "This OS is not supported yet!"
|
||||
exit
|
||||
fi
|
||||
nvm install-latest-npm
|
||||
nvm install node
|
||||
nvm use node
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && source "$NVM_DIR/nvm.sh"
|
||||
[ -s "$NVM_DIR/bash_completion" ] && source "$NVM_DIR/bash_completion"
|
||||
|
||||
cat << EOF >> "$HOME/.profile"
|
||||
|
||||
# nvm (not nvim!)
|
||||
export NVM_DIR="\$HOME/.nvm" # nvim_autoinstalled
|
||||
[ -s "\$NVM_DIR/nvm.sh" ] && source "\$NVM_DIR/nvm.sh" # nvim_autoinstalled
|
||||
[ -s "\$NVM_DIR/bash_completion" ] && source "\$NVM_DIR/bash_completion" # nvim_autoinstalled
|
||||
|
||||
EOF
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
|
||||
nvm current
|
||||
nvm ls
|
||||
}
|
||||
|
||||
installed "nvm" && sudo apt install -y --autoremove nodejs npm nvm
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing nodejs + nvm..."
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
! installed "nvm" && wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
|
||||
nvm unload
|
||||
rm -rf "$NVM_DIR"
|
||||
# sed -i "/NVM_DIR[=\].+/d" "$HOME/.profile"
|
||||
brew uninstall nvm
|
||||
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
nvm install-latest-npm
|
||||
nvm install node
|
||||
nvm use node
|
||||
echo "Finish!"
|
||||
nvm current
|
||||
nvm ls
|
||||
case "$1" in
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user