From 4d13677ebd92d9358f691fe149595e6d86803cb1 Mon Sep 17 00:00:00 2001 From: Aaron Sherwood <69980784+asherwoodcnet@users.noreply.github.com> Date: Mon, 7 Oct 2024 14:24:18 -0700 Subject: [PATCH] chore: add Devuan OS fallback to Debian (#32990) --- packages/playwright-core/src/utils/hostPlatform.ts | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/playwright-core/src/utils/hostPlatform.ts b/packages/playwright-core/src/utils/hostPlatform.ts index 9664418e3d..8c20d65cce 100644 --- a/packages/playwright-core/src/utils/hostPlatform.ts +++ b/packages/playwright-core/src/utils/hostPlatform.ts @@ -86,15 +86,20 @@ function calculatePlatform(): { hostPlatform: HostPlatform, isOfficiallySupporte return { hostPlatform: ('ubuntu22.04' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: false }; return { hostPlatform: ('ubuntu24.04' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: false }; } - if (distroInfo?.id === 'debian' || distroInfo?.id === 'raspbian') { + if (distroInfo?.id === 'debian' || distroInfo?.id === 'raspbian' || distroInfo?.id === 'devuan') { const isOfficiallySupportedPlatform = distroInfo?.id === 'debian'; - if (distroInfo?.version === '11') + let debianVersion = distroInfo?.version; + if (distroInfo.id === 'devuan') { + // Devuan is debian-based but it's always 7 versions behind + debianVersion = String(parseInt(distroInfo.version, 10) + 7); + } + if (debianVersion === '11') return { hostPlatform: ('debian11' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform }; - if (distroInfo?.version === '12') + if (debianVersion === '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 === '') + if (debianVersion === '') return { hostPlatform: ('debian12' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform }; } return { hostPlatform: ('ubuntu20.04' + archSuffix) as HostPlatform, isOfficiallySupportedPlatform: false };