| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- const builder = require('electron-builder')
- const Platform = builder.Platform
- function getCurrentPlatform(){
- switch(process.platform){
- case 'win32':
- return Platform.WINDOWS
- case 'darwin':
- return Platform.MAC
- case 'linux':
- return Platform.linux
- default:
- console.error('Cannot resolve current platform!')
- return undefined
- }
- }
- builder.build({
- targets: (process.argv[2] != null && Platform[process.argv[2]] != null ? Platform[process.argv[2]] : getCurrentPlatform()).createTarget(),
- config: {
- appId: 'helioslauncher',
- productName: 'Helios Launcher',
- artifactName: '${productName}-setup-${version}.${ext}',
- copyright: 'Copyright © 2018-2020 Daniel Scalzi',
- directories: {
- buildResources: 'build',
- output: 'dist'
- },
- win: {
- target: [
- {
- target: 'nsis',
- arch: 'x64'
- }
- ]
- },
- nsis: {
- oneClick: false,
- perMachine: false,
- allowElevation: true,
- allowToChangeInstallationDirectory: true
- },
- mac: {
- target: 'dmg',
- category: 'public.app-category.games'
- },
- linux: {
- target: 'AppImage',
- maintainer: 'Daniel Scalzi',
- vendor: 'Daniel Scalzi',
- synopsis: 'Modded Minecraft Launcher',
- description: 'Custom launcher which allows users to join modded servers. All mods, configurations, and updates are handled automatically.',
- category: 'Game'
- },
- compression: 'maximum',
- files: [
- '!{dist,.gitignore,.vscode,docs,dev-app-update.yml,.travis.yml,.nvmrc,.eslintrc.json,build.js}'
- ],
- extraResources: [
- 'libraries',
- 'static'
- ],
- asar: true
- }
- }).then(() => {
- console.log('Build complete!')
- }).catch(err => {
- console.error('Error during build!', err)
- })
|