From f670f03bbca57db00781c817350c23803848aa8d Mon Sep 17 00:00:00 2001 From: TuxMonkey <8196772+tuxmonkey@user.noreply.gitee.com> Date: Mon, 3 Aug 2026 21:10:55 +0800 Subject: [PATCH] Add macOS/Linux build targets and update CI for all platforms --- .github/workflows/build.yml | 55 ++++++++++++++++++++++++++++++------- package.json | 27 ++++++++++++++---- 2 files changed, 66 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3ec7e36..b967cd1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,4 @@ -name: Build Windows +name: Build All Platforms on: push: @@ -8,25 +8,60 @@ on: workflow_dispatch: jobs: - build: + build-windows: runs-on: windows-latest - steps: - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 with: node-version: 24 cache: npm - - run: npm ci - - - run: npx electron-builder --win portable + - run: npx electron-builder --win env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - uses: actions/upload-artifact@v4 with: - name: Helix-portable - path: dist/Helix*.exe + name: Helix-Windows + path: | + dist/Helix Setup *.exe + dist/Helix *.exe + if-no-files-found: error + + build-macos: + runs-on: macos-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 24 + cache: npm + - run: npm ci + - run: npx electron-builder --mac + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - uses: actions/upload-artifact@v4 + with: + name: Helix-macOS + path: dist/*.dmg + if-no-files-found: error + + build-linux: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 24 + cache: npm + - run: npm ci + - run: npx electron-builder --linux + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - uses: actions/upload-artifact@v4 + with: + name: Helix-Linux + path: | + dist/*.AppImage + dist/*.deb if-no-files-found: error diff --git a/package.json b/package.json index d2d0cfb..eaf9f5f 100644 --- a/package.json +++ b/package.json @@ -7,8 +7,10 @@ "scripts": { "start": "electron .", "dev": "electron . --dev", - "build": "electron-builder --win", - "build:portable": "electron-builder --win portable" + "build:win": "electron-builder --win", + "build:mac": "electron-builder --mac", + "build:linux": "electron-builder --linux", + "build:all": "electron-builder --win --mac --linux" }, "build": { "appId": "com.helix.git", @@ -24,13 +26,26 @@ ], "win": { "target": [ - { - "target": "nsis", - "arch": ["x64"] - } + { "target": "nsis", "arch": ["x64"] }, + { "target": "portable", "arch": ["x64"] } ], "icon": null }, + "mac": { + "target": [ + { "target": "dmg", "arch": ["x64", "arm64"] } + ], + "category": "public.app-category.developer-tools", + "icon": null + }, + "linux": { + "target": [ + { "target": "AppImage", "arch": ["x64"] }, + { "target": "deb", "arch": ["x64"] } + ], + "category": "Development", + "icon": null + }, "nsis": { "oneClick": false, "perMachine": false,