Automatically prepare the bundled Navidrome sidecar and replace demo content with real-library scan states and polling
Hop-State: A_06FNEE4FJ502PSGDYQ3272G Hop-Proposal: R_06FNED6AR1ZZM7CJH7ETC9G Hop-Task: T_06FNEAPFW0DYEP35V3BMAHG Hop-Attempt: AT_06FNEAPFW1QY3KAF1QM61N0
This commit is contained in:
@@ -2,11 +2,13 @@ import { createHash } from "node:crypto";
|
||||
import { execFileSync } from "node:child_process";
|
||||
import { chmod, copyFile, mkdir, mkdtemp, readFile, rm, writeFile } from "node:fs/promises";
|
||||
import { tmpdir } from "node:os";
|
||||
import { join, resolve } from "node:path";
|
||||
import { dirname, join, resolve } from "node:path";
|
||||
import { fileURLToPath } from "node:url";
|
||||
|
||||
const VERSION = "0.61.2";
|
||||
const RELEASE_API = `https://api.github.com/repos/navidrome/navidrome/releases/tags/v${VERSION}`;
|
||||
const targetTriple = execFileSync("rustc", ["--print", "host-tuple"], { encoding: "utf8" }).trim();
|
||||
const projectRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
|
||||
|
||||
const archives = {
|
||||
"aarch64-apple-darwin": `navidrome_${VERSION}_darwin_arm64.tar.gz`,
|
||||
@@ -22,9 +24,9 @@ if (!archiveName) {
|
||||
}
|
||||
|
||||
const extension = targetTriple.includes("windows") ? ".exe" : "";
|
||||
const outputDirectory = resolve("src-tauri/binaries");
|
||||
const outputDirectory = join(projectRoot, "src-tauri/binaries");
|
||||
const outputPath = join(outputDirectory, `navidrome-${targetTriple}${extension}`);
|
||||
const resourceDirectory = resolve("src-tauri/resources");
|
||||
const resourceDirectory = join(projectRoot, "src-tauri/resources");
|
||||
const licensePath = join(resourceDirectory, "navidrome-LICENSE");
|
||||
|
||||
await mkdir(outputDirectory, { recursive: true });
|
||||
|
||||
Reference in New Issue
Block a user