FreeTube/_scripts/build.js

55 lines
1.1 KiB
JavaScript
Raw Normal View History

2020-02-16 13:30:00 -05:00
const os = require('os')
const builder = require('electron-builder')
const config = require('./ebuilder.config.js')
2020-02-16 13:30:00 -05:00
const Platform = builder.Platform
2020-07-21 17:43:52 -04:00
const Arch = builder.Arch
const args = process.argv
2020-02-16 13:30:00 -05:00
/** @type {Map<import('electron-builder').Platform, Map<import('electron-builder').Arch, Array<string>>>} */
2020-02-16 13:30:00 -05:00
let targets
const platform = os.platform()
2020-02-16 13:30:00 -05:00
if (platform === 'darwin') {
let arch = Arch.x64
if (args[2] === 'arm64') {
arch = Arch.arm64
}
2022-09-26 22:17:04 +02:00
targets = Platform.MAC.createTarget(['DMG', 'zip', '7z'], arch)
} else if (platform === 'win32') {
let arch = Arch.x64
if (args[2] === 'arm64') {
arch = Arch.arm64
}
2022-09-26 22:17:04 +02:00
targets = Platform.WINDOWS.createTarget(['nsis', 'zip', '7z', 'portable'], arch)
} else if (platform === 'linux') {
2020-07-21 17:43:52 -04:00
let arch = Arch.x64
2021-03-06 11:19:54 -05:00
if (args[2] === 'arm64') {
2020-07-21 17:43:52 -04:00
arch = Arch.arm64
}
if (args[2] === 'arm32') {
2021-03-06 11:19:54 -05:00
arch = Arch.armv7l
}
targets = Platform.LINUX.createTarget(['deb', 'zip', '7z', 'apk', 'rpm', 'AppImage', 'pacman'], arch)
2020-02-16 13:30:00 -05:00
}
builder
.build({
targets,
config,
publish: 'never'
2020-02-16 13:30:00 -05:00
})
.then(m => {
console.log(m)
})
.catch(e => {
console.error(e)
})