mirror of
https://github.com/microsoft/playwright.git
synced 2025-06-26 21:40:17 +00:00
fix(registry): don't download x64 binaries on other platforms (#27462)
On Linux platforms, specifically check that process.arch is x64, rather than treating it as 'not arm64'. Treat Raspbian's /etc/os-release file as Debian. Document the supported platforms somewhat. Fixes #27453
This commit is contained in:
parent
0a49c3dbb9
commit
08bc4fd801
@ -127,7 +127,7 @@ npx playwright --version
|
||||
- Node.js 16+
|
||||
- Windows 10+, Windows Server 2016+ or Windows Subsystem for Linux (WSL).
|
||||
- MacOS 12 Monterey or MacOS 13 Ventura.
|
||||
- Debian 11, Debian 12, Ubuntu 20.04 or Ubuntu 22.04.
|
||||
- Debian 11, Debian 12, Ubuntu 20.04 or Ubuntu 22.04, with x86-64 or arm64 architecture.
|
||||
|
||||
## What's next
|
||||
|
||||
|
@ -77,15 +77,15 @@ type DownloadPaths = Record<HostPlatform, string | undefined>;
|
||||
const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
'chromium': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'ubuntu20.04': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'ubuntu22.04': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'ubuntu18.04-x64': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'ubuntu20.04-x64': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'ubuntu22.04-x64': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'ubuntu18.04-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
|
||||
'ubuntu20.04-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
|
||||
'ubuntu22.04-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
|
||||
'debian11': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'debian11-x64': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'debian11-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
|
||||
'debian12': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'debian12-x64': 'builds/chromium/%s/chromium-linux.zip',
|
||||
'debian12-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
|
||||
'mac10.13': 'builds/chromium/%s/chromium-mac.zip',
|
||||
'mac10.14': 'builds/chromium/%s/chromium-mac.zip',
|
||||
@ -100,15 +100,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'chromium-tip-of-tree': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'ubuntu20.04': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'ubuntu22.04': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'ubuntu18.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'ubuntu20.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'ubuntu22.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'ubuntu18.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
|
||||
'ubuntu20.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
|
||||
'ubuntu22.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
|
||||
'debian11': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'debian11-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'debian11-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
|
||||
'debian12': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'debian12-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
|
||||
'debian12-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
|
||||
'mac10.13': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac.zip',
|
||||
'mac10.14': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac.zip',
|
||||
@ -123,15 +123,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'chromium-with-symbols': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'ubuntu20.04': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'ubuntu22.04': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'ubuntu18.04-x64': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'ubuntu20.04-x64': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'ubuntu22.04-x64': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'ubuntu18.04-arm64': 'builds/chromium/%s/chromium-with-symbols-linux-arm64.zip',
|
||||
'ubuntu20.04-arm64': 'builds/chromium/%s/chromium-with-symbols-linux-arm64.zip',
|
||||
'ubuntu22.04-arm64': 'builds/chromium/%s/chromium-with-symbols-linux-arm64.zip',
|
||||
'debian11': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'debian11-x64': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'debian11-arm64': 'builds/chromium/%s/chromium-with-symbols-linux-arm64.zip',
|
||||
'debian12': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'debian12-x64': 'builds/chromium/%s/chromium-with-symbols-linux.zip',
|
||||
'debian12-arm64': 'builds/chromium/%s/chromium-with-symbols-linux-arm64.zip',
|
||||
'mac10.13': 'builds/chromium/%s/chromium-with-symbols-mac.zip',
|
||||
'mac10.14': 'builds/chromium/%s/chromium-with-symbols-mac.zip',
|
||||
@ -146,15 +146,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'firefox': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/firefox/%s/firefox-ubuntu-18.04.zip',
|
||||
'ubuntu20.04': 'builds/firefox/%s/firefox-ubuntu-20.04.zip',
|
||||
'ubuntu22.04': 'builds/firefox/%s/firefox-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-x64': 'builds/firefox/%s/firefox-ubuntu-18.04.zip',
|
||||
'ubuntu20.04-x64': 'builds/firefox/%s/firefox-ubuntu-20.04.zip',
|
||||
'ubuntu22.04-x64': 'builds/firefox/%s/firefox-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-arm64': undefined,
|
||||
'ubuntu20.04-arm64': 'builds/firefox/%s/firefox-ubuntu-20.04-arm64.zip',
|
||||
'ubuntu22.04-arm64': 'builds/firefox/%s/firefox-ubuntu-22.04-arm64.zip',
|
||||
'debian11': 'builds/firefox/%s/firefox-debian-11.zip',
|
||||
'debian11-x64': 'builds/firefox/%s/firefox-debian-11.zip',
|
||||
'debian11-arm64': 'builds/firefox/%s/firefox-debian-11-arm64.zip',
|
||||
'debian12': 'builds/firefox/%s/firefox-debian-12.zip',
|
||||
'debian12-x64': 'builds/firefox/%s/firefox-debian-12.zip',
|
||||
'debian12-arm64': 'builds/firefox/%s/firefox-debian-12-arm64.zip',
|
||||
'mac10.13': 'builds/firefox/%s/firefox-mac-13.zip',
|
||||
'mac10.14': 'builds/firefox/%s/firefox-mac-13.zip',
|
||||
@ -169,15 +169,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'firefox-beta': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/firefox-beta/%s/firefox-beta-ubuntu-18.04.zip',
|
||||
'ubuntu20.04': 'builds/firefox-beta/%s/firefox-beta-ubuntu-20.04.zip',
|
||||
'ubuntu22.04': 'builds/firefox-beta/%s/firefox-beta-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-x64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-18.04.zip',
|
||||
'ubuntu20.04-x64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-20.04.zip',
|
||||
'ubuntu22.04-x64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-arm64': undefined,
|
||||
'ubuntu20.04-arm64': undefined,
|
||||
'ubuntu22.04-arm64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-22.04-arm64.zip',
|
||||
'debian11': 'builds/firefox-beta/%s/firefox-beta-debian-11.zip',
|
||||
'debian11-x64': 'builds/firefox-beta/%s/firefox-beta-debian-11.zip',
|
||||
'debian11-arm64': 'builds/firefox-beta/%s/firefox-beta-debian-11-arm64.zip',
|
||||
'debian12': 'builds/firefox-beta/%s/firefox-beta-debian-12.zip',
|
||||
'debian12-x64': 'builds/firefox-beta/%s/firefox-beta-debian-12.zip',
|
||||
'debian12-arm64': 'builds/firefox-beta/%s/firefox-beta-debian-12-arm64.zip',
|
||||
'mac10.13': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
|
||||
'mac10.14': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
|
||||
@ -192,15 +192,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'firefox-asan': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': undefined,
|
||||
'ubuntu20.04': undefined,
|
||||
'ubuntu22.04': 'builds/firefox/%s/firefox-asan-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-x64': undefined,
|
||||
'ubuntu20.04-x64': undefined,
|
||||
'ubuntu22.04-x64': 'builds/firefox/%s/firefox-asan-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-arm64': undefined,
|
||||
'ubuntu20.04-arm64': undefined,
|
||||
'ubuntu22.04-arm64': undefined,
|
||||
'debian11': undefined,
|
||||
'debian11-x64': undefined,
|
||||
'debian11-arm64': undefined,
|
||||
'debian12': undefined,
|
||||
'debian12-x64': undefined,
|
||||
'debian12-arm64': undefined,
|
||||
'mac10.13': 'builds/firefox/%s/firefox-asan-mac-13.zip',
|
||||
'mac10.14': 'builds/firefox/%s/firefox-asan-mac-13.zip',
|
||||
@ -215,15 +215,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'webkit': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/deprecated-webkit-ubuntu-18.04/%s/deprecated-webkit-ubuntu-18.04.zip',
|
||||
'ubuntu20.04': 'builds/webkit/%s/webkit-ubuntu-20.04.zip',
|
||||
'ubuntu22.04': 'builds/webkit/%s/webkit-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-x64': 'builds/deprecated-webkit-ubuntu-18.04/%s/deprecated-webkit-ubuntu-18.04.zip',
|
||||
'ubuntu20.04-x64': 'builds/webkit/%s/webkit-ubuntu-20.04.zip',
|
||||
'ubuntu22.04-x64': 'builds/webkit/%s/webkit-ubuntu-22.04.zip',
|
||||
'ubuntu18.04-arm64': undefined,
|
||||
'ubuntu20.04-arm64': 'builds/webkit/%s/webkit-ubuntu-20.04-arm64.zip',
|
||||
'ubuntu22.04-arm64': 'builds/webkit/%s/webkit-ubuntu-22.04-arm64.zip',
|
||||
'debian11': 'builds/webkit/%s/webkit-debian-11.zip',
|
||||
'debian11-x64': 'builds/webkit/%s/webkit-debian-11.zip',
|
||||
'debian11-arm64': 'builds/webkit/%s/webkit-debian-11-arm64.zip',
|
||||
'debian12': 'builds/webkit/%s/webkit-debian-12.zip',
|
||||
'debian12-x64': 'builds/webkit/%s/webkit-debian-12.zip',
|
||||
'debian12-arm64': 'builds/webkit/%s/webkit-debian-12-arm64.zip',
|
||||
'mac10.13': undefined,
|
||||
'mac10.14': 'builds/deprecated-webkit-mac-10.14/%s/deprecated-webkit-mac-10.14.zip',
|
||||
@ -238,15 +238,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'ffmpeg': {
|
||||
'<unknown>': undefined,
|
||||
'ubuntu18.04': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'ubuntu20.04': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'ubuntu22.04': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'ubuntu18.04-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'ubuntu20.04-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'ubuntu22.04-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'ubuntu18.04-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
|
||||
'ubuntu20.04-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
|
||||
'ubuntu22.04-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
|
||||
'debian11': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'debian11-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'debian11-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
|
||||
'debian12': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'debian12-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
|
||||
'debian12-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
|
||||
'mac10.13': 'builds/ffmpeg/%s/ffmpeg-mac.zip',
|
||||
'mac10.14': 'builds/ffmpeg/%s/ffmpeg-mac.zip',
|
||||
@ -261,15 +261,15 @@ const DOWNLOAD_PATHS: Record<BrowserName | InternalTool, DownloadPaths> = {
|
||||
},
|
||||
'android': {
|
||||
'<unknown>': 'builds/android/%s/android.zip',
|
||||
'ubuntu18.04': 'builds/android/%s/android.zip',
|
||||
'ubuntu20.04': 'builds/android/%s/android.zip',
|
||||
'ubuntu22.04': 'builds/android/%s/android.zip',
|
||||
'ubuntu18.04-x64': 'builds/android/%s/android.zip',
|
||||
'ubuntu20.04-x64': 'builds/android/%s/android.zip',
|
||||
'ubuntu22.04-x64': 'builds/android/%s/android.zip',
|
||||
'ubuntu18.04-arm64': 'builds/android/%s/android.zip',
|
||||
'ubuntu20.04-arm64': 'builds/android/%s/android.zip',
|
||||
'ubuntu22.04-arm64': 'builds/android/%s/android.zip',
|
||||
'debian11': 'builds/android/%s/android.zip',
|
||||
'debian11-x64': 'builds/android/%s/android.zip',
|
||||
'debian11-arm64': 'builds/android/%s/android.zip',
|
||||
'debian12': 'builds/android/%s/android.zip',
|
||||
'debian12-x64': 'builds/android/%s/android.zip',
|
||||
'debian12-arm64': 'builds/android/%s/android.zip',
|
||||
'mac10.13': 'builds/android/%s/android.zip',
|
||||
'mac10.14': 'builds/android/%s/android.zip',
|
||||
|
@ -19,7 +19,7 @@
|
||||
// ./utils/linux-browser-dependencies/run.sh ubuntu:20.04
|
||||
|
||||
export const deps: any = {
|
||||
'ubuntu18.04': {
|
||||
'ubuntu18.04-x64': {
|
||||
tools: [
|
||||
'xvfb',
|
||||
'fonts-noto-color-emoji',
|
||||
@ -181,7 +181,7 @@ export const deps: any = {
|
||||
},
|
||||
},
|
||||
|
||||
'ubuntu20.04': {
|
||||
'ubuntu20.04-x64': {
|
||||
tools: [
|
||||
'xvfb',
|
||||
'fonts-noto-color-emoji',
|
||||
@ -396,7 +396,7 @@ export const deps: any = {
|
||||
},
|
||||
},
|
||||
|
||||
'ubuntu22.04': {
|
||||
'ubuntu22.04-x64': {
|
||||
tools: [
|
||||
'xvfb',
|
||||
'fonts-noto-color-emoji',
|
||||
@ -612,7 +612,7 @@ export const deps: any = {
|
||||
'libevent-2.1.so.7': 'libevent-2.1-7',
|
||||
},
|
||||
},
|
||||
'debian11': {
|
||||
'debian11-x64': {
|
||||
tools: [
|
||||
'xvfb',
|
||||
'fonts-noto-color-emoji',
|
||||
@ -822,7 +822,7 @@ export const deps: any = {
|
||||
'libevent-2.1.so.7': 'libevent-2.1-7',
|
||||
}
|
||||
},
|
||||
'debian12': {
|
||||
'debian12-x64': {
|
||||
tools: [
|
||||
'xvfb',
|
||||
'fonts-noto-color-emoji',
|
||||
@ -977,58 +977,58 @@ export const deps: any = {
|
||||
};
|
||||
|
||||
deps['ubuntu20.04-arm64'] = {
|
||||
tools: [...deps['ubuntu20.04'].tools],
|
||||
chromium: [...deps['ubuntu20.04'].chromium],
|
||||
tools: [...deps['ubuntu20.04-x64'].tools],
|
||||
chromium: [...deps['ubuntu20.04-x64'].chromium],
|
||||
firefox: [
|
||||
...deps['ubuntu20.04'].firefox,
|
||||
...deps['ubuntu20.04-x64'].firefox,
|
||||
],
|
||||
webkit: [
|
||||
...deps['ubuntu20.04'].webkit,
|
||||
...deps['ubuntu20.04-x64'].webkit,
|
||||
],
|
||||
lib2package: {
|
||||
...deps['ubuntu20.04'].lib2package,
|
||||
...deps['ubuntu20.04-x64'].lib2package,
|
||||
},
|
||||
};
|
||||
|
||||
deps['ubuntu22.04-arm64'] = {
|
||||
tools: [...deps['ubuntu22.04'].tools],
|
||||
chromium: [...deps['ubuntu22.04'].chromium],
|
||||
tools: [...deps['ubuntu22.04-x64'].tools],
|
||||
chromium: [...deps['ubuntu22.04-x64'].chromium],
|
||||
firefox: [
|
||||
...deps['ubuntu22.04'].firefox,
|
||||
...deps['ubuntu22.04-x64'].firefox,
|
||||
],
|
||||
webkit: [
|
||||
...deps['ubuntu22.04'].webkit,
|
||||
...deps['ubuntu22.04-x64'].webkit,
|
||||
],
|
||||
lib2package: {
|
||||
...deps['ubuntu22.04'].lib2package,
|
||||
...deps['ubuntu22.04-x64'].lib2package,
|
||||
},
|
||||
};
|
||||
|
||||
deps['debian11-arm64'] = {
|
||||
tools: [...deps['debian11'].tools],
|
||||
chromium: [...deps['debian11'].chromium],
|
||||
tools: [...deps['debian11-x64'].tools],
|
||||
chromium: [...deps['debian11-x64'].chromium],
|
||||
firefox: [
|
||||
...deps['debian11'].firefox,
|
||||
...deps['debian11-x64'].firefox,
|
||||
],
|
||||
webkit: [
|
||||
...deps['debian11'].webkit,
|
||||
...deps['debian11-x64'].webkit,
|
||||
],
|
||||
lib2package: {
|
||||
...deps['debian11'].lib2package,
|
||||
...deps['debian11-x64'].lib2package,
|
||||
},
|
||||
};
|
||||
|
||||
deps['debian12-arm64'] = {
|
||||
tools: [...deps['debian12'].tools],
|
||||
chromium: [...deps['debian12'].chromium],
|
||||
tools: [...deps['debian12-x64'].tools],
|
||||
chromium: [...deps['debian12-x64'].chromium],
|
||||
firefox: [
|
||||
...deps['debian12'].firefox,
|
||||
...deps['debian12-x64'].firefox,
|
||||
],
|
||||
webkit: [
|
||||
...deps['debian12'].webkit,
|
||||
...deps['debian12-x64'].webkit,
|
||||
],
|
||||
lib2package: {
|
||||
...deps['debian12'].lib2package,
|
||||
...deps['debian12-x64'].lib2package,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -24,11 +24,11 @@ export type HostPlatform = 'win64' |
|
||||
'mac11' | 'mac11-arm64' |
|
||||
'mac12' | 'mac12-arm64' |
|
||||
'mac13' | 'mac13-arm64' |
|
||||
'ubuntu18.04' | 'ubuntu18.04-arm64' |
|
||||
'ubuntu20.04' | 'ubuntu20.04-arm64' |
|
||||
'ubuntu22.04' | 'ubuntu22.04-arm64' |
|
||||
'debian11' | 'debian11-arm64' |
|
||||
'debian12' | 'debian12-arm64' |
|
||||
'ubuntu18.04-x64' | 'ubuntu18.04-arm64' |
|
||||
'ubuntu20.04-x64' | 'ubuntu20.04-arm64' |
|
||||
'ubuntu22.04-x64' | 'ubuntu22.04-arm64' |
|
||||
'debian11-x64' | 'debian11-arm64' |
|
||||
'debian12-x64' | 'debian12-arm64' |
|
||||
'<unknown>';
|
||||
|
||||
function calculatePlatform(): { hostPlatform: HostPlatform, isOfficiallySupportedPlatform: boolean } {
|
||||
@ -55,7 +55,10 @@ function calculatePlatform(): { hostPlatform: HostPlatform, isOfficiallySupporte
|
||||
return { hostPlatform: macVersion as HostPlatform, isOfficiallySupportedPlatform: true };
|
||||
}
|
||||
if (platform === 'linux') {
|
||||
const archSuffix = os.arch() === 'arm64' ? '-arm64' : '';
|
||||
if (!['x64', 'arm64'].includes(os.arch()))
|
||||
return { hostPlatform: '<unknown>', isOfficiallySupportedPlatform: false };
|
||||
|
||||
const archSuffix = '-' + os.arch();
|
||||
const distroInfo = getLinuxDistributionInfoSync();
|
||||
|
||||
// Pop!_OS is ubuntu-based and has the same versions.
|
||||
@ -69,14 +72,17 @@ function calculatePlatform(): { hostPlatform: HostPlatform, isOfficiallySupporte
|
||||
return { hostPlatform: ('ubuntu20.04' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform };
|
||||
return { hostPlatform: ('ubuntu22.04' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform };
|
||||
}
|
||||
if (distroInfo?.id === 'debian' && distroInfo?.version === '11')
|
||||
return { hostPlatform: ('debian11' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: true };
|
||||
if (distroInfo?.id === 'debian' && distroInfo?.version === '12')
|
||||
return { hostPlatform: ('debian12' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: true };
|
||||
// use most recent supported release for 'debian testing' and 'unstable'.
|
||||
// they never include a numeric version entry in /etc/os-release.
|
||||
if (distroInfo?.id === 'debian' && distroInfo?.version === '')
|
||||
return { hostPlatform: ('debian12' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: true };
|
||||
if (distroInfo?.id === 'debian' || distroInfo?.id === 'raspbian') {
|
||||
const isOfficiallySupportedPlatform = distroInfo?.id === 'debian';
|
||||
if (distroInfo?.version === '11')
|
||||
return { hostPlatform: ('debian11' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform };
|
||||
if (distroInfo?.version === '12')
|
||||
return { hostPlatform: ('debian12' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform };
|
||||
// use most recent supported release for 'debian testing' and 'unstable'.
|
||||
// they never include a numeric version entry in /etc/os-release.
|
||||
if (distroInfo?.version === '')
|
||||
return { hostPlatform: ('debian12' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform };
|
||||
}
|
||||
return { hostPlatform: ('ubuntu20.04' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: false };
|
||||
}
|
||||
if (platform === 'win32')
|
||||
|
Loading…
x
Reference in New Issue
Block a user