diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 75b31290e5..0503f4faeb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -96,6 +96,7 @@ jobs: name: ${{ matrix.os }} path: | out/make/**/*.dmg + out/make/**/*.zip out/make/**/*.exe out/make/**/*.AppImage out/make/**/*.yml @@ -115,6 +116,7 @@ jobs: tag_name: v${{ steps.version.outputs.APP_VERSION }} files: | out/make/**/*.dmg + out/make/**/*.zip out/make/**/*.exe out/make/**/*.AppImage out/make/**/*.yml diff --git a/forge.config.ts b/forge.config.ts index 757e74a89e..24172a3e75 100644 --- a/forge.config.ts +++ b/forge.config.ts @@ -6,12 +6,13 @@ import path from "node:path" import { FuseV1Options, FuseVersion } from "@electron/fuses" import { MakerDMG } from "@electron-forge/maker-dmg" import { MakerSquirrel } from "@electron-forge/maker-squirrel" +import { MakerZIP } from "@electron-forge/maker-zip" import { FusesPlugin } from "@electron-forge/plugin-fuses" import type { ForgeConfig } from "@electron-forge/shared-types" import MakerAppImage from "@pengx17/electron-forge-maker-appimage" import { rimraf } from "rimraf" -const artifactRegex = /.*\.(?:exe|dmg|AppImage)$/ +const artifactRegex = /.*\.(?:exe|dmg|AppImage|zip)$/ const platformNamesMap = { darwin: "macos", linux: "linux", @@ -83,7 +84,7 @@ const config: ForgeConfig = { }, rebuildConfig: {}, makers: [ - new MakerSquirrel({}), + new MakerZIP({}, ["darwin"]), new MakerDMG({ background: "resources/dmg-background.png", icon: "resources/dmg-icon.icns", @@ -111,6 +112,7 @@ const config: ForgeConfig = { }, ], }), + new MakerSquirrel({}), new MakerAppImage({ options: { icon: "resources/icon.png", diff --git a/package.json b/package.json index 129fa64f89..b4639ecbf0 100644 --- a/package.json +++ b/package.json @@ -122,6 +122,7 @@ "@electron-forge/cli": "7.4.0", "@electron-forge/maker-dmg": "7.4.0", "@electron-forge/maker-squirrel": "7.4.0", + "@electron-forge/maker-zip": "7.4.0", "@electron-forge/plugin-fuses": "7.4.0", "@electron-forge/publisher-github": "7.4.0", "@electron-toolkit/tsconfig": "^1.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5a6b354e28..8a44030313 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -293,6 +293,9 @@ importers: '@electron-forge/maker-squirrel': specifier: 7.4.0 version: 7.4.0 + '@electron-forge/maker-zip': + specifier: 7.4.0 + version: 7.4.0 '@electron-forge/plugin-fuses': specifier: 7.4.0 version: 7.4.0(@electron/fuses@1.8.0) @@ -810,6 +813,10 @@ packages: resolution: {integrity: sha512-mCQyufnSNfjffiKho59ZqVg4W601zGOl6h01OyfDwjOU/G4iQtpnnDEOXGe26q7OVT5ORb1WDnfyGgBeJ6Ge7g==} engines: {node: '>= 16.4.0'} + '@electron-forge/maker-zip@7.4.0': + resolution: {integrity: sha512-UGbMdpuK/P29x1FFRWNOs3bNz+7QNFWVWyTM5hcWqib66cNuUmoaPifQyuwW2POIrIohrxlzLK87/i9Zc8g4dA==} + engines: {node: '>= 16.4.0'} + '@electron-forge/plugin-base@7.4.0': resolution: {integrity: sha512-LcTNtEc2YaWvhhqWVIfdJ+J0/krSgc2dqYAHhOH2aLUSm9End3dKO/PZ1Y6DPsiPiJKHnSLBJ/XBN/16NY4Sjw==} engines: {node: '>= 16.4.0'} @@ -3297,6 +3304,10 @@ packages: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} + cross-zip@4.0.1: + resolution: {integrity: sha512-n63i0lZ0rvQ6FXiGQ+/JFCKAUyPFhLQYJIqKaa+tSJtfKeULF/IDNDAbdnSIxgS4NTuw2b0+lj8LzfITuq+ZxQ==} + engines: {node: '>=12.10'} + cspell-config-lib@8.9.1: resolution: {integrity: sha512-gSXAazmeX+CCpFCsNQQqHRO/nn01kMnCoB0v+7AM0Bip2iDXRl+LmUEJGNcnFaiJG3liaZ8+S5/qCDbza010VQ==} engines: {node: '>=18'} @@ -7245,6 +7256,17 @@ snapshots: - bluebird - supports-color + '@electron-forge/maker-zip@7.4.0': + dependencies: + '@electron-forge/maker-base': 7.4.0 + '@electron-forge/shared-types': 7.4.0 + cross-zip: 4.0.1 + fs-extra: 10.1.0 + got: 11.8.6 + transitivePeerDependencies: + - bluebird + - supports-color + '@electron-forge/plugin-base@7.4.0': dependencies: '@electron-forge/shared-types': 7.4.0 @@ -10290,6 +10312,8 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 + cross-zip@4.0.1: {} + cspell-config-lib@8.9.1: dependencies: '@cspell/cspell-types': 8.9.1