Files
blitzkit/scripts/setupDepotDownloader.ts
T

28 lines
784 B
TypeScript

import decompress from 'decompress';
import { existsSync } from 'fs';
import { mkdir, writeFile } from 'fs/promises';
if (!existsSync('temp')) {
console.log('Creating temp directory...');
await mkdir('temp');
}
console.log('Downloading depot downloader...');
await fetch(
'https://api.github.com/repos/SteamRE/DepotDownloader/releases/latest',
)
.then(
(response) =>
response.json() as Promise<{
assets: { browser_download_url: string }[];
}>,
)
.then(({ assets }) => fetch(assets[0].browser_download_url))
.then((response) => response.arrayBuffer())
.then((arrayBuffer) =>
writeFile('temp/depotDownloader.zip', Buffer.from(arrayBuffer)),
);
console.log('Unzipping...');
decompress('temp/depotDownloader.zip', 'temp/depotDownloader');