Skip to content

Commit

Permalink
Clean up 0.x if installing 1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
isaacs committed Apr 30, 2011
1 parent 8542b72 commit 7f6728c
Showing 1 changed file with 36 additions and 4 deletions.
40 changes: 36 additions & 4 deletions scripts/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,21 @@ if ! [ "x$NPM_DEBUG" = "x" ]; then
set +x
fi


# make sure that node exists
node=`which node 2>&1`
ret=$?
if [ $ret -ne 0 ] || ! [ -x $node ]; then
echo "npm cannot be installed without nodejs." >&2
echo "Install node first, and then try again." >&2
echo "" >&2
echo "Maybe node is installed, but not in the PATH?" >&2
echo "Note that running as sudo can change envs." >&2
echo ""
echo "PATH=$PATH" >&2
exit $ret
fi

# set the temp dir
TMP="${TMPDIR}"
if [ "x$TMP" = "x" ]; then
TMP="/tmp"
Expand Down Expand Up @@ -74,18 +80,44 @@ cd "$TMP" \
if [ $ret -eq 0 ]; then
req=`$node bin/read-package-json.js package.json engines.node`
if [ -e node_modules ]; then
$node node_modules/semver/bin/semver -v "$node_version" -r "$req"
$node node_modules/semver/bin/semver -v "$node_version" -r "$req"
ret=$?
else
$node bin/semver.js -v "$node_version" -r "$req"
$node bin/semver.js -v "$node_version" -r "$req"
ret=$?
fi
ret=$?
fi
if [ $ret -ne 0 ]; then
echo "You need node $req to run this program." >&2
echo "node --version reports: $node_version" >&2
echo "Please upgrade node before continuing."
exit $ret
fi) \
&& (ver=`$node bin/read-package-json.js package.json version`
isnpm10=0
if [ $ret -eq 0 ]; then
req=`$node bin/read-package-json.js package.json engines.node`
if [ -e node_modules ]; then
if $node node_modules/semver/bin/semver -v "$ver" -r "1"
then
isnpm10=1
fi
else
if $node bin/semver -v "$ver" -r ">=1.0"; then
isnpm10=1
fi
fi
fi

ret=0
if [ $isnpm10 -eq 1 ] && [ -f "scripts/clean-old.sh" ]; then
NODE=$node /bin/sh "scripts/clean-old.sh"
ret=$?
fi
if [ $ret -ne 0 ]; then
echo "Aborted 0.x cleanup. Exiting." >&2
exit $ret
fi) \
&& (if [ "$make" = "NOMAKE" ] || ! $make clean install; then
$node cli.js cache clean
$node cli.js rm npm --force --global
Expand Down

0 comments on commit 7f6728c

Please sign in to comment.