diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 9b42a846..f91c5f45 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -147,11 +147,18 @@ jobs:
           dest: geode-${{ steps.ref.outputs.hash }}-win.zip
 
       # TODO change in 2.0.0
-      - name: Zip Resources
+      - name: Zip Windows Resources
         uses: vimtor/action-zip@v1.1
         with:
           files: geode-win/resources
-          dest: resources.zip
+          dest: resources-win.zip
+
+      # This is basically a hack because of line endings. Blame windows.
+      - name: Zip MacOS Resources
+        uses: vimtor/action-zip@v1.1
+        with:
+          files: geode-mac/resources
+          dest: resources-mac.zip
 
       - name: Update Nightly Release
         uses: andelf/nightly-release@main
@@ -167,4 +174,5 @@ jobs:
             ./geode-installer-${{ steps.ref.outputs.hash }}-win.exe
             ./geode-${{ steps.ref.outputs.hash }}-mac.zip
             ./geode-${{ steps.ref.outputs.hash }}-win.zip
-            ./resources.zip
+            ./resources-win.zip
+            ./resources-mac.zip
diff --git a/.github/workflows/draft.yml b/.github/workflows/draft.yml
index d6051f79..34f757d2 100644
--- a/.github/workflows/draft.yml
+++ b/.github/workflows/draft.yml
@@ -28,7 +28,8 @@ jobs:
           mv dev/geode-installer-*-win.exe geode-installer-v${{ steps.ref.outputs.version }}-win.exe
           mv dev/geode-*-mac.zip geode-v${{ steps.ref.outputs.version }}-mac.zip
           mv dev/geode-*-win.zip geode-v${{ steps.ref.outputs.version }}-win.zip
-          mv dev/resources.zip resources.zip
+          mv dev/resources-win.zip resources-win.zip
+          mv dev/resources-mac.zip resources-mac.zip
 
       - name: Create Draft Release
         uses: softprops/action-gh-release@v1
@@ -48,4 +49,5 @@ jobs:
             ./geode-installer-v${{ steps.ref.outputs.version }}-win.exe
             ./geode-v${{ steps.ref.outputs.version }}-mac.zip
             ./geode-v${{ steps.ref.outputs.version }}-win.zip
-            ./resources.zip
+            ./resources-win.zip
+            ./resources-mac.zip
diff --git a/loader/src/loader/LoaderImpl.cpp b/loader/src/loader/LoaderImpl.cpp
index fea23f90..44fa2f6c 100644
--- a/loader/src/loader/LoaderImpl.cpp
+++ b/loader/src/loader/LoaderImpl.cpp
@@ -577,7 +577,7 @@ void Loader::Impl::downloadLoaderResources(bool useLatestRelease) {
             .json()
             .then([this](json::Value const& json) {
                 this->tryDownloadLoaderResources(fmt::format(
-                    "https://github.com/geode-sdk/geode/releases/download/{}/resources.zip",
+                    "https://github.com/geode-sdk/geode/releases/download/{}/resources-" GEODE_PLATFORM_SHORT_IDENTIFIER ".zip",
                     this->getVersion().toString()
                 ), true);  
             })
@@ -605,7 +605,7 @@ void Loader::Impl::downloadLoaderResources(bool useLatestRelease) {
                 // find release asset
                 for (auto asset : root.needs("assets").iterate()) {
                     auto obj = asset.obj();
-                    if (obj.needs("name").template get<std::string>() == "resources.zip") {
+                    if (obj.needs("name").template get<std::string>() == "resources-" GEODE_PLATFORM_SHORT_IDENTIFIER ".zip") {
                         this->tryDownloadLoaderResources(
                             obj.needs("browser_download_url").template get<std::string>(),
                             false