99 lines
2.2 KiB
JavaScript
99 lines
2.2 KiB
JavaScript
import packageDetails from '../package.json' with { type: 'json' }
|
|
|
|
/** @type {import('electron-builder').Configuration} */
|
|
export default {
|
|
appId: `io.freetubeapp.${packageDetails.name}`,
|
|
copyright: 'Copyleft © 2020-2025 freetubeapp@protonmail.com',
|
|
// asar: false,
|
|
// compression: 'store',
|
|
productName: packageDetails.productName,
|
|
directories: {
|
|
output: './build/',
|
|
},
|
|
protocols: [
|
|
{
|
|
name: 'FreeTube',
|
|
schemes: [
|
|
'freetube'
|
|
]
|
|
}
|
|
],
|
|
files: [
|
|
'_icons/iconColor.*',
|
|
'icon.svg',
|
|
'./dist/**/*',
|
|
'!dist/web/*',
|
|
'!node_modules/**/*',
|
|
],
|
|
|
|
// As we bundle all dependecies with webpack, the `node_modules` folder is excluded from packaging in the `files` array.
|
|
// electron-builder will however still spend time scanning the `node_modules` folder and building up a list of dependencies,
|
|
// returning `false` from the `beforeBuild` hook skips that.
|
|
beforeBuild: () => Promise.resolve(false),
|
|
dmg: {
|
|
contents: [
|
|
{
|
|
path: '/Applications',
|
|
type: 'link',
|
|
x: 410,
|
|
y: 230,
|
|
},
|
|
{
|
|
type: 'file',
|
|
x: 130,
|
|
y: 230,
|
|
},
|
|
],
|
|
window: {
|
|
height: 380,
|
|
width: 540,
|
|
}
|
|
},
|
|
linux: {
|
|
category: 'Network',
|
|
icon: '_icons/icon.svg',
|
|
target: ['deb', 'zip', '7z', 'rpm', 'AppImage', 'pacman'],
|
|
},
|
|
// See the following issues for more information
|
|
// https://github.com/jordansissel/fpm/issues/1503
|
|
// https://github.com/jgraph/drawio-desktop/issues/259
|
|
rpm: {
|
|
fpm: ['--rpm-rpmbuild-define=_build_id_links none']
|
|
},
|
|
deb: {
|
|
depends: [
|
|
'libgtk-3-0',
|
|
'libnotify4',
|
|
'libnss3',
|
|
'libxss1',
|
|
'libxtst6',
|
|
'xdg-utils',
|
|
'libatspi2.0-0',
|
|
'libuuid1',
|
|
'libsecret-1-0'
|
|
]
|
|
},
|
|
mac: {
|
|
category: 'public.app-category.utilities',
|
|
icon: '_icons/iconMac.icns',
|
|
target: ['dmg', 'zip', '7z'],
|
|
type: 'distribution',
|
|
extendInfo: {
|
|
CFBundleURLTypes: [
|
|
'freetube'
|
|
],
|
|
CFBundleURLSchemes: [
|
|
'freetube'
|
|
]
|
|
}
|
|
},
|
|
win: {
|
|
icon: '_icons/icon.ico',
|
|
target: ['nsis', 'zip', '7z', 'portable'],
|
|
},
|
|
nsis: {
|
|
allowToChangeInstallationDirectory: true,
|
|
oneClick: false,
|
|
},
|
|
}
|