From 9cd2dd0c375d433468b3a23f480d4f2ca0b820bc Mon Sep 17 00:00:00 2001 From: creationix Date: Thu, 15 Apr 2010 09:13:33 -0700 Subject: [PATCH] --- nvm.sh | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 nvm.sh diff --git a/nvm.sh b/nvm.sh new file mode 100644 index 0000000..b0f1df7 --- /dev/null +++ b/nvm.sh @@ -0,0 +1,56 @@ +# Node Version Manager +# Implemented as a bash function +# To use source this file from your bash profile +# +# Implemented by Tim Caswell +# with much bash help from Matthew Ranney + +NVM_DIR=$HOME/.nvm + +nvm() +{ + START=`pwd` + if [ $# -lt 1 ]; then + nvm help + return + fi + case $1 in + "help" ) + echo + echo "Node Version Manager" + echo "Usage:" + echo " nvm install version" + echo " nvm use version" + echo + ;; + "install" ) + if [ $# -lt 2 ]; then + nvm help + return; + fi + echo $START + mkdir -p "$NVM_DIR/src" && \ + cd "$NVM_DIR/src" && \ + wget "http://nodejs.org/dist/node-$2.tar.gz" -N && \ + tar -xzf "node-$2.tar.gz" && \ + cd "node-$2" && \ + ./configure --prefix="$NVM_DIR/$2" && \ + make && \ + make install && \ + nvm use $2 + cd $START + ;; + "use" ) + if [ $# -lt 2 ]; then + nvm help + return; + fi + # TODO: Remove old nvm paths before adding this one + PATH="$NVM_DIR/$2/bin:$PATH" + echo "Now using node $2" + ;; + * ) + nvm help + ;; + esac +} \ No newline at end of file