mirror of
https://github.com/nvm-sh/nvm.git
synced 2026-07-18 12:58:21 +08:00
[Fix] install: use darwin-x64 for all binary on mac for node < v16
This commit is contained in:
@@ -2438,16 +2438,11 @@ nvm_get_download_slug() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# If running MAC M1 :: Node v14.17.0 was the first version to offer official experimental support:
|
# If running MAC M1 :: ARM64 binaries are not available for Node < 16.0.0
|
||||||
# https://github.com/nodejs/node/issues/40126 (although binary distributions aren't available until v16)
|
# https://github.com/nodejs/node/issues/40126 (binary distributions aren't available until v16)
|
||||||
if \
|
if nvm_version_greater '16.0.0' "${VERSION}" && [ "_${NVM_OS}" = '_darwin' ] && [ "${NVM_ARCH}" = 'arm64' ]; then
|
||||||
nvm_version_greater '14.17.0' "${VERSION}" \
|
|
||||||
|| (nvm_version_greater_than_or_equal_to "${VERSION}" '15.0.0' && nvm_version_greater '16.0.0' "${VERSION}") \
|
|
||||||
; then
|
|
||||||
if [ "_${NVM_OS}" = '_darwin' ] && [ "${NVM_ARCH}" = 'arm64' ]; then
|
|
||||||
NVM_ARCH=x64
|
NVM_ARCH=x64
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${KIND}" = 'binary' ]; then
|
if [ "${KIND}" = 'binary' ]; then
|
||||||
nvm_echo "${FLAVOR}-${VERSION}-${NVM_OS}-${NVM_ARCH}"
|
nvm_echo "${FLAVOR}-${VERSION}-${NVM_OS}-${NVM_ARCH}"
|
||||||
|
|||||||
@@ -110,3 +110,26 @@ ACTUAL="$(nvm_get_download_slug iojs source 15.99.99)"
|
|||||||
EXPECTED="iojs-15.99.99"
|
EXPECTED="iojs-15.99.99"
|
||||||
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
||||||
|
|
||||||
|
|
||||||
|
REAL_OS="$(command uname -s 2>/dev/null || echo '')"
|
||||||
|
REAL_ARCH="$(command uname -m 2>/dev/null || echo '')"
|
||||||
|
if [ "${REAL_OS}" = "Darwin" ] && [ "${REAL_ARCH}" = "arm64" ]; then
|
||||||
|
# Node < 16 uses x64 on darwin-arm64
|
||||||
|
ACTUAL="$(nvm_get_download_slug node binary 14.21.3)"
|
||||||
|
EXPECTED='node-14.21.3-darwin-x64'
|
||||||
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
||||||
|
ACTUAL="$(nvm_get_download_slug node binary 15.99.99)"
|
||||||
|
EXPECTED='node-15.99.99-darwin-x64'
|
||||||
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
||||||
|
ACTUAL="$(nvm_get_download_slug iojs binary 15.99.99)"
|
||||||
|
EXPECTED='iojs-15.99.99-darwin-x64'
|
||||||
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
||||||
|
|
||||||
|
# Test Node >= 16 uses arm64 on darwin-arm64
|
||||||
|
ACTUAL="$(nvm_get_download_slug node binary 16.0.0)"
|
||||||
|
EXPECTED='node-16.0.0-darwin-arm64'
|
||||||
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
||||||
|
ACTUAL="$(nvm_get_download_slug node binary 18.0.0)"
|
||||||
|
EXPECTED='node-18.0.0-darwin-arm64'
|
||||||
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
||||||
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user