From 750617a04ab525c772a8f852450a10fa73ac4a8a Mon Sep 17 00:00:00 2001 From: Zac Gaetano Date: Wed, 8 Apr 2026 08:06:44 -0400 Subject: [PATCH 1/4] =?UTF-8?q?ci:=20add=20GitHub=20Actions=20workflow=20?= =?UTF-8?q?=E2=80=94=20Windows=20.exe=20and=20macOS=20.dmg=20builds?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 91 +++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..a21c659 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,91 @@ +name: Build Dragon Wind Desktop + +on: + push: + branches: [main] + tags: + - 'v*' + workflow_dispatch: + +jobs: + # ── Windows .exe ───────────────────────────────────────────────────────── + build-windows: + name: Windows (.exe) + runs-on: windows-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up Node.js 20 + uses: actions/setup-node@v4 + with: + node-version: '20' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Build Windows installer + run: npm run build:win + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + CSC_IDENTITY_AUTO_DISCOVERY: false + + - name: Upload .exe artifact + uses: actions/upload-artifact@v4 + with: + name: dragon-wind-windows + path: dist/*.exe + retention-days: 30 + + # ── macOS .dmg ──────────────────────────────────────────────────────────── + build-mac: + name: macOS (.dmg) + runs-on: macos-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set up Node.js 20 + uses: actions/setup-node@v4 + with: + node-version: '20' + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Build macOS DMG + run: npm run build:mac + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + CSC_IDENTITY_AUTO_DISCOVERY: false + + - name: Upload .dmg artifact + uses: actions/upload-artifact@v4 + with: + name: dragon-wind-mac + path: dist/*.dmg + retention-days: 30 + + # ── Release (on tag push only) ──────────────────────────────────────────── + release: + name: Create Release + needs: [build-windows, build-mac] + runs-on: ubuntu-latest + if: startsWith(github.ref, 'refs/tags/v') + permissions: + contents: write + steps: + - name: Download all artifacts + uses: actions/download-artifact@v4 + with: + path: artifacts/ + + - name: Create GitHub Release + uses: softprops/action-gh-release@v2 + with: + files: artifacts/**/* + generate_release_notes: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 89fc8a714638d413871f12e6cd224e0a34b6ce4f Mon Sep 17 00:00:00 2001 From: Zac Gaetano Date: Wed, 8 Apr 2026 08:07:54 -0400 Subject: [PATCH 2/4] =?UTF-8?q?ci:=20fix=20=E2=80=94=20use=20npm=20install?= =?UTF-8?q?=20instead=20of=20npm=20ci=20(no=20lockfile)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a21c659..abf5c30 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,10 +20,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: '20' - cache: 'npm' - name: Install dependencies - run: npm ci + run: npm install - name: Build Windows installer run: npm run build:win @@ -50,10 +49,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: '20' - cache: 'npm' - name: Install dependencies - run: npm ci + run: npm install - name: Build macOS DMG run: npm run build:mac From 93d1df6582dc1aefd0fb625e243bd509dcf3ed3e Mon Sep 17 00:00:00 2001 From: Zac Gaetano Date: Wed, 8 Apr 2026 08:17:19 -0400 Subject: [PATCH 3/4] fix: downgrade electron-store to v8 (ESM-only v10 breaks CommonJS require) --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index df385ff..e59c180 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "dependencies": { "@aws-sdk/client-s3": "^3.600.0", "@aws-sdk/s3-request-presigner": "^3.600.0", - "electron-store": "^10.0.0" + "electron-store": "^8.2.0" }, "build": { "appId": "net.wilddragon.dragon-wind-desktop", From a3b2f8b4d77f36b9c7c8fd81773e51397e783da2 Mon Sep 17 00:00:00 2001 From: Zac Gaetano Date: Wed, 8 Apr 2026 08:30:16 -0400 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20remove=20unused=20@aws-sdk=20deps=20?= =?UTF-8?q?=E2=80=94=20ESM=20incompatible,=20not=20needed=20(raw=20HTTP=20?= =?UTF-8?q?used=20instead)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/package.json b/package.json index e59c180..5f6aaa0 100644 --- a/package.json +++ b/package.json @@ -19,8 +19,6 @@ "electron-builder": "^24.0.0" }, "dependencies": { - "@aws-sdk/client-s3": "^3.600.0", - "@aws-sdk/s3-request-presigner": "^3.600.0", "electron-store": "^8.2.0" }, "build": {