update postinstall to download aria2 linux binary

This commit is contained in:
Zamitto 2024-05-29 18:57:02 -03:00
parent 0751d6093f
commit 0a7ebc5c78

View file

@ -13,26 +13,36 @@ const downloadAria2 = async () => {
const file =
process.platform === "win32"
? "aria2-1.37.0-win-64bit-build1.zip"
: "aria2-1.37.0-aarch64-linux-android-build1.zip";
: "aria2-1.37.0-1-x86_64.pkg.tar.zst";
const downloadUrl =
process.platform === "win32"
? `https://github.com/aria2/aria2/releases/download/release-1.37.0/${file}`
: "https://archlinux.org/packages/extra/x86_64/aria2/download/";
console.log(`Downloading ${file}...`);
const response = await axios.get(
`https://github.com/aria2/aria2/releases/download/release-1.37.0/${file}`,
{ responseType: "stream" }
);
const response = await axios.get(downloadUrl, { responseType: "stream" });
const stream = response.data.pipe(fs.createWriteStream(file));
stream.on("finish", async () => {
console.log(`Downloaded ${file}, extracting...`);
await exec(`npx extract-zip ${file}`);
console.log("Extracted. Renaming folder...");
if (process.platform === "win32") {
await exec(`npx extract-zip ${file}`);
console.log("Extracted. Renaming folder...");
fs.renameSync(file.replace(".zip", ""), "aria2");
fs.renameSync(file.replace(".zip", ""), "aria2");
} else {
await exec(`tar --zstd -xvf ${file} usr/bin/aria2c`);
console.log("Extracted. Copying binary file...");
await exec(`mkdir aria2`);
await exec(`cp ./usr/bin/aria2c ./aria2/aria2c`);
await exec(`rm -r ./usr`);
}
console.log(`Extracted ${file}, removing zip file...`);
console.log(`Extracted ${file}, removing compressed downloaded file...`);
fs.rmSync(file);
});
};