diff options
author | isaacs <i@izs.me> | 2012-07-13 22:24:20 +0400 |
---|---|---|
committer | isaacs <i@izs.me> | 2012-07-13 22:24:20 +0400 |
commit | d87712eecb049ed47fbd3a5aa1da505ebcd11a2f (patch) | |
tree | db0d64f0597d505bae224b75059f247654637eb2 /scripts | |
parent | 6589a195c4e5f5e8e1414d21ab286bca52a30b6c (diff) |
Add a script to point the shebang at something else
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/relocate.sh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/scripts/relocate.sh b/scripts/relocate.sh new file mode 100755 index 000000000..39e5d7bc8 --- /dev/null +++ b/scripts/relocate.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +# Change the cli shebang to point at the specified node +# Useful for when the program is moved around after install. +# Also used by the default 'make install' in node to point +# npm at the newly installed node, rather than the first one +# in the PATH, which would be the default otherwise. + +# bash /path/to/npm/scripts/relocate.sh $nodepath +# If $nodepath is blank, then it'll use /usr/bin/env + +dir="$(dirname "$0")" +cli="$dir"/bin/npm-cli.js +tmp="$cli".tmp + +node="$1" +if [ -n "$node" ]; then + node="/usr/bin/env node" +fi +node="#!$node" + +sed -e 1d "$cli" > "$tmp" +echo "$node" > "$cli" +cat "$tmp" >> "$cli" +rm "$tmp" |