90 lines
No EOL
3.1 KiB
TypeScript
90 lines
No EOL
3.1 KiB
TypeScript
import { Configuration } from 'electron-builder'
|
|
import {info, splash, update, macos, linux, windows} from '../configuration'
|
|
|
|
///////////////////////////////////////////////////////////////
|
|
// Please configure the "configuration/app.ts" file instead. //
|
|
///////////////////////////////////////////////////////////////
|
|
|
|
const config: Configuration = {
|
|
directories: {output: ".build/output/distribution/${platform}/${arch}"},
|
|
productName: info.name,
|
|
appId: info.id,
|
|
|
|
// Auto Update
|
|
publish: {
|
|
provider: "generic",
|
|
url: update.url,
|
|
channel: update.channel
|
|
},
|
|
|
|
// Operating Systems
|
|
/// macOS
|
|
mac: {
|
|
icon: ".build/assets/icons/macOS.icns",
|
|
target: "dmg",
|
|
darkModeSupport: true,
|
|
category: macos.category
|
|
},
|
|
dmg: {
|
|
background: ".build/assets/backgrounds/DMG-Background.png",
|
|
icon: ".build/assets/icons/macos/icon.icns"
|
|
},
|
|
|
|
/// Windows
|
|
win: {
|
|
icon: ".build/assets/icons/windows/icon.png",
|
|
target: [
|
|
{target: "appx", arch: "x64"},
|
|
{target: "nsis", arch: "x64"},
|
|
{target: "nsis", arch: "arm64"}
|
|
]
|
|
},
|
|
appx: {
|
|
backgroundColor: splash.backgroundColor,
|
|
applicationId: info.id,
|
|
identityName: windows.identityName,
|
|
publisher: windows.publisher,
|
|
publisherDisplayName: info.company
|
|
},
|
|
nsis: {
|
|
installerSidebar: ".build/assets/backgrounds/NSIS-Sidebar.bmp",
|
|
uninstallDisplayName: info.name + ' - Uninstall.exe',
|
|
artifactName: info.name + ' - Install.exe',
|
|
shortcutName: info.name,
|
|
allowElevation: windows.requireAdmin,
|
|
oneClick: windows.silent,
|
|
allowToChangeInstallationDirectory: windows.allowToChangeInstallationDirectory,
|
|
displayLanguageSelector: windows.displayLanguageSelector,
|
|
createDesktopShortcut: windows.createDesktopShortcut,
|
|
deleteAppDataOnUninstall: windows.deleteAppDataOnUninstall
|
|
},
|
|
|
|
/// Linux
|
|
linux: {
|
|
icon: ".build/assets/icons/linux/icon.png",
|
|
category: linux.category,
|
|
maintainer: info.id,
|
|
vendor: info.company,
|
|
description: info.description,
|
|
target: [
|
|
{ target: 'AppImage', arch: 'x64' }, // Universal - x86_64
|
|
{ target: 'AppImage', arch: 'arm64' }, // Universal - arm64
|
|
{ target: 'snap', arch: 'x64' }, // Snap Store - x86_64
|
|
{ target: 'deb', arch: 'x64' }, // Debian/Ubuntu - x86_64
|
|
{ target: 'deb', arch: 'arm64' }, // Debian/Ubuntu - arm64
|
|
{ target: 'rpm', arch: 'x64' }, // RHEL/Fedora - x86_64
|
|
{ target: 'rpm', arch: 'arm64' }, // RHEL/Fedora - arm64
|
|
{ target: 'freebsd', arch: 'x64' }, // BSD - x86_64
|
|
{ target: 'freebsd', arch: 'arm64' }, // BSD - arm64
|
|
{ target: 'pacman', arch: 'x64' }, // Arch - x86_64
|
|
{ target: 'pacman', arch: 'arm64' }, // Arch - arm64
|
|
]
|
|
},
|
|
snap: {
|
|
title: info.name,
|
|
allowNativeWayland: true,
|
|
confinement: "strict"
|
|
}
|
|
}
|
|
|
|
export default config |