feat(desktop): build Windows arm64 alongside x64
Multi-arch Windows build in one electron-builder pass, with the website
self-healing across the rename. Asset names go from
`Paseo-Setup-${version}.exe` to `Paseo-Setup-${version}-{x64,arm64}.exe`.
The website now reads the actual installer filename off the latest
GitHub release, so legacy single-arch releases keep rendering a single
"Download" pill while dual-arch releases promote to "Intel / x64" +
"ARM64" automatically. No homepage code change needed when ARM ships.
This commit is contained in:
@@ -6,13 +6,19 @@ import { getStarCount } from "~/stars";
|
||||
|
||||
interface ReleaseContext {
|
||||
version: string;
|
||||
windowsX64Asset: string | null;
|
||||
windowsArm64Asset: string | null;
|
||||
}
|
||||
|
||||
interface StarsContext {
|
||||
stars: string;
|
||||
}
|
||||
|
||||
const ReleaseCtx = createContext<ReleaseContext>({ version: "" });
|
||||
const ReleaseCtx = createContext<ReleaseContext>({
|
||||
version: "",
|
||||
windowsX64Asset: null,
|
||||
windowsArm64Asset: null,
|
||||
});
|
||||
const StarsCtx = createContext<StarsContext>({ stars: "" });
|
||||
|
||||
const PLAUSIBLE_INIT_SCRIPT = {
|
||||
|
||||
@@ -33,8 +33,9 @@ const homebrewTrigger = (
|
||||
);
|
||||
|
||||
function Download() {
|
||||
const { version } = useRelease();
|
||||
const urls = downloadUrls(version);
|
||||
const release = useRelease();
|
||||
const { version } = release;
|
||||
const urls = downloadUrls(release);
|
||||
|
||||
return (
|
||||
<div className="min-h-screen bg-background">
|
||||
@@ -130,7 +131,11 @@ function Download() {
|
||||
<span className="font-medium">Windows</span>
|
||||
</div>
|
||||
<div className="flex flex-wrap gap-2">
|
||||
<DownloadPill href={urls.windowsExe} label="Download" />
|
||||
<DownloadPill
|
||||
href={urls.windowsExeX64}
|
||||
label={urls.windowsExeArm64 ? "Intel / x64" : "Download"}
|
||||
/>
|
||||
{urls.windowsExeArm64 && <DownloadPill href={urls.windowsExeArm64} label="ARM64" />}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user