36 lines
1.0 KiB
Bash
Executable File
36 lines
1.0 KiB
Bash
Executable File
#!/bin/sh
|
|
argv0=$(echo "$0" | sed -e 's,\\,/,g')
|
|
basedir=$(dirname "$(readlink "$0" || echo "$argv0")")
|
|
|
|
case "$(uname -s)" in
|
|
Darwin) basedir="$( cd "$( dirname "$argv0" )" && pwd )";;
|
|
Linux) basedir=$(dirname "$(readlink -f "$0" || echo "$argv0")");;
|
|
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
|
*MSYS*) basedir=`cygpath -w "$basedir"`;;
|
|
esac
|
|
|
|
command_exists() {
|
|
command -v "$1" >/dev/null 2>&1;
|
|
}
|
|
|
|
if command_exists node; then
|
|
if [ "$YARN_FORCE_WINPTY" = 1 ] || command_exists winpty && test -t 1; then
|
|
winpty node "$basedir/yarn.js" "$@"
|
|
else
|
|
exec node "$basedir/yarn.js" "$@"
|
|
fi
|
|
ret=$?
|
|
# Debian and Ubuntu use "nodejs" as the name of the binary, not "node", so we
|
|
# search for that too. See:
|
|
# https://lists.debian.org/debian-devel-announce/2012/07/msg00002.html
|
|
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=614907
|
|
elif command_exists nodejs; then
|
|
exec nodejs "$basedir/yarn.js" "$@"
|
|
ret=$?
|
|
else
|
|
>&2 echo 'Yarn requires Node.js 4.0 or higher to be installed.'
|
|
ret=1
|
|
fi
|
|
|
|
exit $ret
|