From 61cc6541e8e1289c7050101b5324c0b52cb59d5c Mon Sep 17 00:00:00 2001 From: Jacob Williams Date: Wed, 14 Oct 2015 01:01:41 -0500 Subject: [PATCH] set NVM_DIR to real path to avoid symlink issues --- nvm.sh | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/nvm.sh b/nvm.sh index 4dd189a..c2bfb6c 100755 --- a/nvm.sh +++ b/nvm.sh @@ -82,6 +82,28 @@ if [ -z "$NVM_DIR" ]; then fi unset NVM_SCRIPT_SOURCE 2> /dev/null +nvm_real_dir() { + local nvm_dir + nvm_dir="$1" + + if [ "@$nvm_dir@" = "@@" ]; then + >&2 echo "NVM_DIR cannot be empty" + return 2 + fi + + local real_dir + real_dir=$(cd $nvm_dir && pwd -P) + + if [ "@$real_dir@" = "@@" ] || [ ! -d $real_dir ]; then + >&2 echo "NVM_DIR is not a valid path" + return 2 + fi + + echo $real_dir +} + +# Convert NVM_DIR to actual path if symlinked +export NVM_DIR=$(nvm_real_dir $NVM_DIR) # Setup mirror location if not already set if [ -z "$NVM_NODEJS_ORG_MIRROR" ]; then