Update Build Process
|
@ -123,7 +123,7 @@ You need to `App Name` in the following places:
|
||||||
Also, in the `electron-builder.yml` file, place update the App ID. As an example, if your company was called BunnyJet and your domain was BunnyJet.net, you would use `net.bunnyjet.bunnyjetdesktop`. Avoid using `-` in the app name as AppX seems to dislike it.
|
Also, in the `electron-builder.yml` file, place update the App ID. As an example, if your company was called BunnyJet and your domain was BunnyJet.net, you would use `net.bunnyjet.bunnyjetdesktop`. Avoid using `-` in the app name as AppX seems to dislike it.
|
||||||
|
|
||||||
**Logo**
|
**Logo**
|
||||||
I highly recommend using the template file provided in the `/build` folder as it will help you follow the Apple and GNOME Human Interface Guidelines. The anme of file is `Nexus Polestsar - App Icon.penpot`, it's designed in [Penpot](https://penpot.app).
|
I highly recommend using the template file provided in the `/build` folder as it will help you follow the Apple and GNOME Human Interface Guidelines. The anme of file is `Nexus Polestsar - Assets.penpot`, it's designed in [Penpot](https://penpot.app).
|
||||||
|
|
||||||
This template also provides the backgrounds for the DMG installer and the EXE setup. ([macOS Preview](https://i.imgur.com/t1oQFgd.png) / [Windows Preview](https://i.imgur.com/ftiXdoR.png))
|
This template also provides the backgrounds for the DMG installer and the EXE setup. ([macOS Preview](https://i.imgur.com/t1oQFgd.png) / [Windows Preview](https://i.imgur.com/ftiXdoR.png))
|
||||||
|
|
||||||
|
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
BIN
build/assets/backgrounds/EXE-Setup-Sidebar.bmp
Normal file
After Width: | Height: | Size: 201 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
BIN
build/assets/icons/Windows.png
Normal file
After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 4.2 KiB |
|
@ -6,17 +6,17 @@ asar: true # Some things may not work on Windows if this is disabled
|
||||||
mac:
|
mac:
|
||||||
darkModeSupport: true
|
darkModeSupport: true
|
||||||
category: "public.app-category.utilities"
|
category: "public.app-category.utilities"
|
||||||
icon: "build/icons/macOS/icon.icns"
|
icon: "build/assets/icons/macOS.icns"
|
||||||
target:
|
target:
|
||||||
- "dmg"
|
- "dmg"
|
||||||
|
|
||||||
dmg:
|
dmg:
|
||||||
background: "build/macOS/background-installer.png"
|
background: "build/assets/backgrounds/DMG-Installer.png"
|
||||||
icon: "build/icons/macOS/icon.icns"
|
icon: "build/assets/icons/macOS.icns"
|
||||||
|
|
||||||
# Windows
|
# Windows
|
||||||
win:
|
win:
|
||||||
icon: "build/Windows/icon.ico"
|
icon: "build/assets/icons/Windows.png"
|
||||||
target:
|
target:
|
||||||
- "appx" # Microsoft Store
|
- "appx" # Microsoft Store
|
||||||
- "nsis" # Executable Setup
|
- "nsis" # Executable Setup
|
||||||
|
@ -33,6 +33,7 @@ nsis:
|
||||||
uninstallDisplayName: "App Name"
|
uninstallDisplayName: "App Name"
|
||||||
artifactName: "App Name - Setup.exe"
|
artifactName: "App Name - Setup.exe"
|
||||||
oneClick: false # If you want a silent installer, enable this and ignore options below
|
oneClick: false # If you want a silent installer, enable this and ignore options below
|
||||||
|
installerSidebar: "build/assets/backgrounds/EXE-Setup-Sidebar.bmp" # Must be a BMP: https://cloudconvert.com/png-to-bmp
|
||||||
displayLanguageSelector: true
|
displayLanguageSelector: true
|
||||||
allowElevation: false
|
allowElevation: false
|
||||||
allowToChangeInstallationDirectory: true
|
allowToChangeInstallationDirectory: true
|
||||||
|
@ -41,7 +42,7 @@ nsis:
|
||||||
|
|
||||||
# Linux
|
# Linux
|
||||||
linux:
|
linux:
|
||||||
icon: "build/Linux/icon.png"
|
icon: "build/assets/icons/Linux.png"
|
||||||
category: Network
|
category: Network
|
||||||
maintainer: "net.company.appname"
|
maintainer: "net.company.appname"
|
||||||
vendor: "Full Company Name"
|
vendor: "Full Company Name"
|
|
@ -6,9 +6,9 @@ const path = require('path')
|
||||||
|
|
||||||
|
|
||||||
// Use the correct icon depending on the operating system
|
// Use the correct icon depending on the operating system
|
||||||
if /* If macOS */ (process.platform == 'darwin') {global.AppIcon = 'public/images/icons/app/icon.icns' }
|
if /* If macOS */ (process.platform == 'darwin') {global.AppIcon = 'public/images/icons/app/macOS.icns' }
|
||||||
else if /* If Windows */ (process.platform == 'win32') {global.AppIcon = 'public/images/icons/app/icon.ico' }
|
else if /* If Windows */ (process.platform == 'win32') {global.AppIcon = 'public/images/icons/app/Windows.png' }
|
||||||
else /* If Linux */ {global.AppIcon = 'public/images/icons/app/icon.png' }
|
else /* If Linux */ {global.AppIcon = 'public/images/icons/app/Linux.png' }
|
||||||
|
|
||||||
|
|
||||||
function createWindow () {
|
function createWindow () {
|
||||||
|
@ -26,9 +26,9 @@ function createWindow () {
|
||||||
icon: path.join(global.AppIcon),
|
icon: path.join(global.AppIcon),
|
||||||
trafficLightPosition: { x: 25, y: 25 }, // Position of Traffic Light buttons on macOS
|
trafficLightPosition: { x: 25, y: 25 }, // Position of Traffic Light buttons on macOS
|
||||||
titleBarOverlay: { // Background and Height of Windows titlebar buttons
|
titleBarOverlay: { // Background and Height of Windows titlebar buttons
|
||||||
color: '#191919', // Background
|
color: '#232323', // Background
|
||||||
symbolColor: 'white', // Icon
|
symbolColor: 'white', // Icon
|
||||||
height: '40px',
|
height: 44,
|
||||||
},
|
},
|
||||||
webPreferences: {
|
webPreferences: {
|
||||||
webviewTag: true
|
webviewTag: true
|
||||||
|
|
1489
package-lock.json
generated
27
yarn.lock
|
@ -350,9 +350,9 @@
|
||||||
"resolved" "https://registry.npmjs.org/@emmetio/scanner/-/scanner-1.0.0.tgz"
|
"resolved" "https://registry.npmjs.org/@emmetio/scanner/-/scanner-1.0.0.tgz"
|
||||||
"version" "1.0.0"
|
"version" "1.0.0"
|
||||||
|
|
||||||
"@esbuild/linux-x64@0.16.17":
|
"@esbuild/win32-x64@0.16.17":
|
||||||
"integrity" "sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw=="
|
"integrity" "sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q=="
|
||||||
"resolved" "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz"
|
"resolved" "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz"
|
||||||
"version" "0.16.17"
|
"version" "0.16.17"
|
||||||
|
|
||||||
"@jridgewell/gen-mapping@^0.1.0":
|
"@jridgewell/gen-mapping@^0.1.0":
|
||||||
|
@ -1747,7 +1747,16 @@
|
||||||
"combined-stream" "^1.0.8"
|
"combined-stream" "^1.0.8"
|
||||||
"mime-types" "^2.1.12"
|
"mime-types" "^2.1.12"
|
||||||
|
|
||||||
"fs-extra@^10.0.0", "fs-extra@^10.1.0":
|
"fs-extra@^10.0.0":
|
||||||
|
"integrity" "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ=="
|
||||||
|
"resolved" "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz"
|
||||||
|
"version" "10.1.0"
|
||||||
|
dependencies:
|
||||||
|
"graceful-fs" "^4.2.0"
|
||||||
|
"jsonfile" "^6.0.1"
|
||||||
|
"universalify" "^2.0.0"
|
||||||
|
|
||||||
|
"fs-extra@^10.1.0":
|
||||||
"integrity" "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ=="
|
"integrity" "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ=="
|
||||||
"resolved" "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz"
|
"resolved" "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz"
|
||||||
"version" "10.1.0"
|
"version" "10.1.0"
|
||||||
|
@ -2267,15 +2276,7 @@
|
||||||
"resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"
|
"resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz"
|
||||||
"version" "4.0.0"
|
"version" "4.0.0"
|
||||||
|
|
||||||
"js-yaml@^3.13.0":
|
"js-yaml@^3.13.0", "js-yaml@^3.13.1":
|
||||||
"integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g=="
|
|
||||||
"resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz"
|
|
||||||
"version" "3.14.1"
|
|
||||||
dependencies:
|
|
||||||
"argparse" "^1.0.7"
|
|
||||||
"esprima" "^4.0.0"
|
|
||||||
|
|
||||||
"js-yaml@^3.13.1":
|
|
||||||
"integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g=="
|
"integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g=="
|
||||||
"resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz"
|
"resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz"
|
||||||
"version" "3.14.1"
|
"version" "3.14.1"
|
||||||
|
|