const { platform, arch } = process; const { execSync } = require("child_process"); function isMusl() { let stderr; try { stderr = execSync("ldd --version", { stdio: ['pipe', 'pipe', 'pipe'] }); } catch (err) { stderr = err.stderr; } if (stderr.indexOf("musl") > -1) { return true; } return false; } const PLATFORMS = { win32: { x64: "@biomejs/cli-win32-x64/biome.exe", arm64: "@biomejs/cli-win32-arm64/biome.exe", }, darwin: { x64: "@biomejs/cli-darwin-x64/biome", arm64: "@biomejs/cli-darwin-arm64/biome", }, linux: { x64: "@biomejs/cli-linux-x64/biome", arm64: "@biomejs/cli-linux-arm64/biome", }, "linux-musl": { x64: "@biomejs/cli-linux-x64-musl/biome", arm64: "@biomejs/cli-linux-arm64-musl/biome", }, }; const binName = platform === "linux" && isMusl() ? PLATFORMS?.["linux-musl"]?.[arch] : PLATFORMS?.[platform]?.[arch]; if (binName) { let binPath; try { binPath = require.resolve(binName); } catch { console.warn( `The Biome CLI postinstall script failed to resolve the binary file "${binName}". Running Biome from the npm package will probably not work correctly.` ); } } else { console.warn( "The Biome CLI package doesn't ship with prebuilt binaries for your platform yet. " + "You can still use the CLI by cloning the biomejs/biome repo from GitHub, " + "and follow the instructions there to build the CLI for your platform." ); }