From 0b380f94c70a7a9819e3d222f56b869f79eb160a Mon Sep 17 00:00:00 2001 From: pengx17 Date: Thu, 25 Apr 2024 03:30:04 +0000 Subject: [PATCH] build(electron): add nsis script for windows installer (#6674) This pr only includes how to bundle the app into an installer after package step. todo (not in this pr) - [ ] make sure updater can work for both nsis & squirrel - [ ] integrate nsis build into github action workflow Advantage over Squirrel: - allowing user to specify the installation location - better uninstaller ![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/b75f1076-62e7-445c-bbf9-d7be00dbfc59.png) ![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/c9ddc58c-512e-487e-80c8-7c4bd51482a8.png) ![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/cfc5c281-e044-4929-a261-b02a4619117b.png) --- packages/frontend/electron/forge.config.mjs | 8 +- packages/frontend/electron/package.json | 3 +- .../electron/resources/icons/nsis-sidebar.bmp | Bin 0 -> 823990 bytes .../frontend/electron/scripts/make-env.ts | 10 ++ .../frontend/electron/scripts/make-nsis.ts | 90 ++++++++++++++++++ .../electron/scripts/nsis-installer.nsh | 1 + 6 files changed, 105 insertions(+), 7 deletions(-) create mode 100644 packages/frontend/electron/resources/icons/nsis-sidebar.bmp create mode 100644 packages/frontend/electron/scripts/make-nsis.ts create mode 100644 packages/frontend/electron/scripts/nsis-installer.nsh diff --git a/packages/frontend/electron/forge.config.mjs b/packages/frontend/electron/forge.config.mjs index 1013a619c4..3f03a274b0 100644 --- a/packages/frontend/electron/forge.config.mjs +++ b/packages/frontend/electron/forge.config.mjs @@ -6,6 +6,7 @@ import { fileURLToPath } from 'node:url'; import { utils } from '@electron-forge/core'; import { + appIdMap, arch, buildType, icnsPath, @@ -96,12 +97,7 @@ export default { buildIdentifier: buildType, packagerConfig: { name: productName, - appBundleId: fromBuildIdentifier({ - internal: 'pro.affine.internal', - canary: 'pro.affine.canary', - beta: 'pro.affine.beta', - stable: 'pro.affine.app', - }), + appBundleId: fromBuildIdentifier(appIdMap), icon: icnsPath, osxSign: { identity: 'Developer ID Application: TOEVERYTHING PTE. LTD.', diff --git a/packages/frontend/electron/package.json b/packages/frontend/electron/package.json index 1e676257b3..1d1f1cd856 100644 --- a/packages/frontend/electron/package.json +++ b/packages/frontend/electron/package.json @@ -18,7 +18,8 @@ "generate-assets": "node --loader ts-node/esm/transpile-only scripts/generate-assets.ts", "package": "cross-env NODE_OPTIONS=\"--loader ts-node/esm/transpile-only\" electron-forge package", "make": "cross-env NODE_OPTIONS=\"--loader ts-node/esm/transpile-only\" electron-forge make", - "make-squirrel": "node --loader ts-node/esm/transpile-only scripts/make-squirrel.ts" + "make-squirrel": "node --loader ts-node/esm/transpile-only scripts/make-squirrel.ts", + "make-nsis": "node --loader ts-node/esm/transpile-only scripts/make-nsis.ts" }, "main": "./dist/main.js", "devDependencies": { diff --git a/packages/frontend/electron/resources/icons/nsis-sidebar.bmp b/packages/frontend/electron/resources/icons/nsis-sidebar.bmp new file mode 100644 index 0000000000000000000000000000000000000000..c4d7697a00cb1328bebe3864c3577cadb8c9a1d8 GIT binary patch literal 823990 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 PcQofGe@5zzC;k5b35mgD literal 0 HcmV?d00001 diff --git a/packages/frontend/electron/scripts/make-env.ts b/packages/frontend/electron/scripts/make-env.ts index 15c474507c..7c05689eab 100644 --- a/packages/frontend/electron/scripts/make-env.ts +++ b/packages/frontend/electron/scripts/make-env.ts @@ -7,6 +7,7 @@ const ReleaseTypeSchema = z.enum(['stable', 'beta', 'canary', 'internal']); const __dirname = fileURLToPath(new URL('.', import.meta.url)); +const REPO_ROOT = path.resolve(__dirname, '..', '..', '..', '..'); const ROOT = path.resolve(__dirname, '..'); const envBuildType = (process.env.BUILD_TYPE || 'canary').trim().toLowerCase(); @@ -45,7 +46,15 @@ const platform = ? process.argv[process.argv.indexOf('--platform') + 1] : process.platform; +const appIdMap = { + internal: 'pro.affine.internal', + canary: 'pro.affine.canary', + beta: 'pro.affine.beta', + stable: 'pro.affine.app', +}; + export { + appIdMap, arch, buildType, icnsPath, @@ -55,6 +64,7 @@ export { icoPath, platform, productName, + REPO_ROOT, ROOT, stableBuild, }; diff --git a/packages/frontend/electron/scripts/make-nsis.ts b/packages/frontend/electron/scripts/make-nsis.ts new file mode 100644 index 0000000000..30dd1bb81e --- /dev/null +++ b/packages/frontend/electron/scripts/make-nsis.ts @@ -0,0 +1,90 @@ +import path from 'node:path'; + +import { buildForge } from 'app-builder-lib'; +import debug from 'debug'; +import fs from 'fs-extra'; + +import { + appIdMap, + arch, + buildType, + iconPngPath, + icoPath, + platform, + productName, + REPO_ROOT, + ROOT, +} from './make-env.js'; + +const log = debug('electron-forge:make-nsis'); + +async function make() { + const appName = productName; + const makeDir = path.resolve(ROOT, 'out', buildType, 'make'); + const outPath = path.resolve(makeDir, `nsis.windows/${arch}`); + const appDirectory = path.resolve( + ROOT, + 'out', + buildType, + `${appName}-${platform}-${arch}` + ); + + await fs.ensureDir(outPath); + await fs.emptyDir(outPath); + + // create tmp dir + const tmpPath = await fs.mkdtemp(appName); + + // copy app to tmp dir + log(`Copying app to ${tmpPath}`); + await fs.copy(appDirectory, tmpPath); + + log(`Calling app-builder-lib's buildForge() with ${tmpPath}`); + const output = await buildForge( + { dir: tmpPath }, + { + win: [`nsis:${arch}`], + config: { + appId: appIdMap[buildType], + productName, + executableName: productName, + icon: iconPngPath, + extraMetadata: { + // do not use package.json's name + name: productName, + }, + nsis: { + differentialPackage: false, + perMachine: false, + oneClick: false, + license: path.resolve(REPO_ROOT, 'LICENSE'), + include: path.resolve(ROOT, 'scripts', 'nsis-installer.nsh'), + installerIcon: icoPath, + allowToChangeInstallationDirectory: true, + installerSidebar: path.resolve( + ROOT, + 'resources', + 'icons', + 'nsis-sidebar.bmp' + ), + }, + }, + } + ); + + // Move the output to the actual output folder, app-builder-lib might get it wrong + log('Received output files', output); + + const result: Array = []; + for (const file of output) { + const filePath = path.resolve(outPath, path.basename(file)); + result.push(filePath); + + await fs.move(file, filePath); + } + + // cleanup + await fs.remove(tmpPath); +} + +make(); diff --git a/packages/frontend/electron/scripts/nsis-installer.nsh b/packages/frontend/electron/scripts/nsis-installer.nsh new file mode 100644 index 0000000000..f669e22eae --- /dev/null +++ b/packages/frontend/electron/scripts/nsis-installer.nsh @@ -0,0 +1 @@ +ManifestDPIAware true