astro-ghostcms/.pnpm-store/v3/files/8f/5f8abb7ad151648ab6facea1300...

59 lines
1.4 KiB
Plaintext

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."
);
}