diff --git a/application/holder/src/env/os/platform.ts b/application/holder/src/env/os/platform.ts index d72e0dc4f..eb5b93302 100644 --- a/application/holder/src/env/os/platform.ts +++ b/application/holder/src/env/os/platform.ts @@ -16,6 +16,8 @@ export enum Platform { } export function getPlatform(win32Only = false): Platform { + const { execSync } = require('child_process'); + const result = execSync('sysctl -n machdep.cpu.brand_string').toString(); switch (os.platform()) { case Platform.aix: case Platform.freebsd: @@ -29,7 +31,7 @@ export function getPlatform(win32Only = false): Platform { case Platform.openbsd: return Platform.linux; case Platform.darwin: - if (os.arch() === 'arm64') { + if (os.arch() === 'arm64' || !result.includes("Intel")) { return Platform.darwinaarch64; } else { return Platform.darwin;