From fb4238b0359adf24fff1180defe6fb147338bc19 Mon Sep 17 00:00:00 2001 From: Susmitha Girumala Date: Sat, 22 May 2021 16:53:56 -0400 Subject: [PATCH] chore: Refactor windows electron config to use new generator --- ui/desktop/electron-app/config/forge.js | 15 +++++++--- ui/desktop/electron-app/package.json | 3 +- ui/desktop/electron-app/src/config/menu.js | 34 +++++++++++++--------- ui/desktop/package.json | 2 +- 4 files changed, 33 insertions(+), 21 deletions(-) diff --git a/ui/desktop/electron-app/config/forge.js b/ui/desktop/electron-app/config/forge.js index 1b6aab69f..47b2f06ce 100644 --- a/ui/desktop/electron-app/config/forge.js +++ b/ui/desktop/electron-app/config/forge.js @@ -29,6 +29,10 @@ const createConfig = () => { } }); + // Version + if (config.RELEASE_VERSION) + config.packagerConfig.version = config.RELEASE_VERSION; + if (os.platform().match(/(darwin)/i)) { config.packagerConfig.icon = './config/macos/icon.icns'; config.packagerConfig.osxSign = { @@ -38,10 +42,6 @@ const createConfig = () => { 'signature-flags': 'library', }; - // Version - if (config.RELEASE_VERSION) - config.packagerConfig.version = config.RELEASE_VERSION; - // Signing identity const signingIdentity = process.env.BOUNDARY_DESKTOP_SIGNING_IDENTITY; if (signingIdentity) { @@ -64,6 +64,13 @@ const createConfig = () => { }); } + if (os.platform().match(/(win32)/i)) { + // Generate EXE file + config.makers.push({ + name: '@electron-forge/maker-squirrel' + }); + } + return config; }; diff --git a/ui/desktop/electron-app/package.json b/ui/desktop/electron-app/package.json index c6dc8f01f..a505cf927 100644 --- a/ui/desktop/electron-app/package.json +++ b/ui/desktop/electron-app/package.json @@ -9,12 +9,11 @@ "main": "src/index.js", "scripts": { "build:cli": "node -e \"require('./config/cli.js').setup()\"", - "build:config": "node -e 'require(\"./config/forge.js\").setup()'", + "build:config": "node -e \"require('./config/forge.js').setup()\"", "start": "electron-forge start", "package": "electron-forge package", "premake": "yarn build:cli && yarn build:config", "make": "electron-forge make", - "make:windows": "electron-forge make --targets @electron-forge/maker-squirrel", "publish": "electron-forge publish", "lint": "echo \"No linting configured\"" }, diff --git a/ui/desktop/electron-app/src/config/menu.js b/ui/desktop/electron-app/src/config/menu.js index c1540e3f7..7f74a2508 100644 --- a/ui/desktop/electron-app/src/config/menu.js +++ b/ui/desktop/electron-app/src/config/menu.js @@ -5,6 +5,20 @@ const forgeConfig = require('../../config/forge.config.js'); const { version } = require('../cli/index.js'); const generateMenuTemplate = () => { + const aboutDialog = () => { + const appVersion = `Version: ${forgeConfig.RELEASE_VERSION}`; + const appCommit = `Commit: ${forgeConfig.RELEASE_COMMIT}`; + const cliVersion = version().formatted; + const copyright = forgeConfig.packagerConfig.appCopyright; + + const dialogOpts = { + type: 'none', + message: app.getName(), + detail: `${appVersion}\n${appCommit}\n\n${cliVersion}\n\n${copyright}`, + }; + dialog.showMessageBox(dialogOpts); + } + return [ // { role: 'appMenu' } ...(isMac() ? [{ @@ -13,19 +27,7 @@ const generateMenuTemplate = () => { // { role: 'about' }, { label: `About ${app.getName()}`, - click: () => { - const appVersion = `Version: ${forgeConfig.RELEASE_VERSION}`; - const appCommit = `Commit: ${forgeConfig.RELEASE_COMMIT}`; - const cliVersion = version().formatted; - const copyright = forgeConfig.packagerConfig.appCopyright; - - const dialogOpts = { - type: 'none', - message: app.getName(), - detail: `${appVersion}\n${appCommit}\n\n${cliVersion}\n\n${copyright}`, - }; - dialog.showMessageBox(dialogOpts); - }, + click: aboutDialog, }, { id: 'update', @@ -114,7 +116,11 @@ const generateMenuTemplate = () => { click: () => shell.openExternal('https://www.boundaryproject.io'), }, ...(isWindows() ? [ - { role: 'about' }, + // { role: 'about' }, + { + label: `About ${app.getName()}`, + click: aboutDialog, + }, ] : []) ], }, diff --git a/ui/desktop/package.json b/ui/desktop/package.json index c88ebd846..5bdb4f869 100644 --- a/ui/desktop/package.json +++ b/ui/desktop/package.json @@ -13,7 +13,7 @@ "doc:toc": "doctoc README.md", "build": "set EMBER_CLI_ELECTRON=true && ember build --environment=production && yarn build:desktop", "build:development": "ember build", - "prebuild:desktop": "robocopy dist electron-app\\ember-dist /MIR", + "prebuild:desktop": "(robocopy dist electron-app\\ember-dist /MIR) ^& exit 0", "build:desktop": "cd electron-app && yarn make", "lint": "npm-run-all --aggregate-output --continue-on-error --parallel 'lint:!(fix)'", "lint:fix": "npm-run-all --aggregate-output --continue-on-error --parallel lint:*:fix",