refactor: electron-builder use npm command

This commit is contained in:
草鞋没号 2021-12-15 08:44:09 +08:00
parent 2820bdb760
commit 67f1d00193
4 changed files with 36 additions and 47 deletions

View File

@ -1,33 +0,0 @@
/**
* @type {import('electron-builder').Configuration}
*/
const config = {
appId: '308487730@qq.com',
asar: true,
directories: {
output: 'release/${version}',
buildResources: 'public',
},
files: ['!node_modules', 'dist', 'package.json'],
mac: {
artifactName: '${productName}_${version}.${ext}',
target: ['dmg'],
},
win: {
target: [
{
target: 'nsis',
arch: ['x64'],
},
],
artifactName: '${productName}_${version}.${ext}',
},
nsis: {
oneClick: false,
perMachine: false,
allowToChangeInstallationDirectory: true,
deleteAppDataOnUninstall: false,
},
}
export { config }

35
electron-builder.json Normal file
View File

@ -0,0 +1,35 @@
{
"appId": "308487730@qq.com",
"asar": true,
"directories": {
"output": "release/${version}"
},
"files": [
"!node_modules",
"dist",
"package.json"
],
"mac": {
"artifactName": "${productName}_${version}.${ext}",
"target": [
"dmg"
]
},
"win": {
"target": [
{
"target": "nsis",
"arch": [
"x64"
]
}
],
"artifactName": "${productName}_${version}.${ext}"
},
"nsis": {
"oneClick": false,
"perMachine": false,
"allowToChangeInstallationDirectory": true,
"deleteAppDataOnUninstall": false
}
}

View File

@ -7,7 +7,7 @@
"main": "dist/main/index.cjs",
"scripts": {
"dev": "node scripts/watch.mjs",
"build": "node scripts/build.mjs"
"build": "node scripts/build.mjs && electron-builder"
},
"engines": {
"node": ">=14.17.0"

View File

@ -1,8 +1,6 @@
process.env.NODE_ENV = 'production'
import { build as viteBuild } from 'vite'
import { build as electronBuild, Platform } from 'electron-builder'
import { config as builderConfig } from '../configs/electron-builder.config.mjs'
import chalk from 'chalk'
const TAG = chalk.bgBlue('[build.mjs]')
@ -25,16 +23,5 @@ async function buildElectron() {
}
}
async function packElectron() {
return electronBuild({
config: builderConfig,
// if you want to build windows platform
// targets: Platform.WINDOWS.createTarget(),
}).then(result => {
console.log(TAG, 'files:', chalk.green(result))
})
}
// bootstrap
await buildElectron()
await packElectron()