diff --git a/docusaurus.config.js b/docusaurus.config.js
index bb2e68ea..61d42c47 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -77,8 +77,8 @@ const config = {
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
announcementBar: {
- id: "announcementBar-20", // Increment on change
- content: `
Check out November's Progress Report Here!`,
+ id: "announcementBar-21", // Increment on change
+ content: `
Check out December's Progress Report Here!`,
},
algolia: {
// The application ID provided by Algolia
diff --git a/src/components/LatestBlogs/index.js b/src/components/LatestBlogs/index.js
index d4c779e5..84f53d5a 100644
--- a/src/components/LatestBlogs/index.js
+++ b/src/components/LatestBlogs/index.js
@@ -6,6 +6,17 @@ import Typography from "@mui/material/Typography";
import { CardActionArea } from "@mui/material";
const BlogList = [
+ {
+ title: "Progress Report - December 2024",
+ image: require("@site/blog/progress-report-dec-2024/img/poster.png")
+ .default,
+ description: (
+ <>
+ Despite the holiday season, some work was still accomplished.
+ >
+ ),
+ link: "/blog/progress-report-dec-2024",
+ },
{
title: "Progress Report - November 2024",
image: require("@site/blog/progress-report-nov-2024/img/poster.png")
@@ -27,17 +38,6 @@ const BlogList = [
>
),
link: "/blog/progress-report-oct-2024",
- },
- {
- title: "Progress Report - September 2024",
- image: require("@site/blog/progress-report-sept-2024/img/poster.png")
- .default,
- description: (
- <>
- Plenty of small Jak 3 bugfixes and some custom level improvements.
- >
- ),
- link: "/blog/progress-report-sept-2024",
}
];
diff --git a/src/components/LauncherDownloadLink/index.js b/src/components/LauncherDownloadLink/index.js
index c34f1f75..8ecd52a0 100644
--- a/src/components/LauncherDownloadLink/index.js
+++ b/src/components/LauncherDownloadLink/index.js
@@ -10,13 +10,15 @@ export default function LauncherDownloadLink({ hideTutorial = false }) {
const [detectedPlatform, setDetectedPlatform] = useState("");
const [forPlatform, setForPlatform] = useState("");
- const [isArm, setIsArm] = useState(false);
+ const [isUnsupportedArmPlatform, setIsUnsupportedArmPlatform] =
+ useState(false);
const [launcherVersion, setLauncherVersion] = useState("");
const [downloadUrlAutomatic, setDownloadUrlAutomatic] = useState("#");
const [downloadUrlWindows, setDownloadUrlWindows] = useState("#");
const [downloadUrlLinux, setDownloadUrlLinux] = useState("#");
const [downloadUrlMacOS, setDownloadUrlMacOS] = useState("#");
+ const [downloadUrlMacOSARM, setDownloadUrlMacOSARM] = useState("#");
const [deckyPluginVersion, setDeckyPluginVersion] = useState("");
const [deckyPluginDownloadUrl, setDeckyPluginDownloadUrl] = useState("");
@@ -30,6 +32,9 @@ export default function LauncherDownloadLink({ hideTutorial = false }) {
const isWindows = platformLower === "windows";
const isMacOS = platformLower === "mac os";
const isLinux = !isWindows && !isMacOS;
+ const isARM =
+ parser.getCPU().architecture === "arm" ||
+ parser.getCPU().architecture === "arm64";
const response = await fetch(
`https://api.github.com/repos/open-goal/launcher/releases/latest`,
@@ -56,13 +61,20 @@ export default function LauncherDownloadLink({ hideTutorial = false }) {
setForPlatform("Linux");
setDownloadUrlAutomatic(asset.browser_download_url);
}
- } else if (asset.name.match(/^.*\.dmg$/)) {
+ } else if (asset.name.match(/^.*_x64\.dmg$/)) {
setAvailable(true);
setDownloadUrlMacOS(asset.browser_download_url);
- if (isMacOS) {
+ if (isMacOS && !isARM) {
setForPlatform("Intel MacOS");
setDownloadUrlAutomatic(asset.browser_download_url);
}
+ } else if (asset.name.match(/^.*_aarch64\.dmg$/)) {
+ setAvailable(true);
+ setDownloadUrlMacOSARM(asset.browser_download_url);
+ if (isMacOS && isARM) {
+ setForPlatform("Apple Silicon");
+ setDownloadUrlAutomatic(asset.browser_download_url);
+ }
}
}
@@ -83,11 +95,7 @@ export default function LauncherDownloadLink({ hideTutorial = false }) {
}
}
- setIsArm(
- parser.getCPU().architecture === "arm" ||
- parser.getCPU().architecture === "arm64",
- );
-
+ setIsUnsupportedArmPlatform(isARM && !isMacOS);
setLoading(false);
};
@@ -158,12 +166,14 @@ export default function LauncherDownloadLink({ hideTutorial = false }) {
`Windows Launcher @ ${launcherVersion}`,
`Linux Launcher @ ${launcherVersion}`,
`Intel MacOS Launcher @ ${launcherVersion}`,
+ `Apple Silicon Launcher @ ${launcherVersion}`,
`Decky Plugin @ ${deckyPluginVersion}`,
]}
secondaryButtonUrls={[
downloadUrlWindows,
downloadUrlLinux,
downloadUrlMacOS,
+ downloadUrlMacOSARM,
deckyPluginDownloadUrl,
]}
/>
@@ -189,15 +199,15 @@ export default function LauncherDownloadLink({ hideTutorial = false }) {
)}
- {apiError || !available || isArm ? (
+ {apiError || !available || isUnsupportedArmPlatform ? (