-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathforge.config.js
More file actions
94 lines (92 loc) · 3 KB
/
Copy pathforge.config.js
File metadata and controls
94 lines (92 loc) · 3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
const { FusesPlugin } = require('@electron-forge/plugin-fuses');
const { FuseV1Options, FuseVersion } = require('@electron/fuses');
const commonLinuxConfig = {
name: 'silvi',
productName: 'SiLVi',
genericName: 'Video Annotation Tool',
title: 'SiLVi',
description: 'Simple Interface for Labeling Video Interactions',
productDescription: 'SiLVi enables researchers to annotate behaviors and interactions directly within video data, generating structured outputs suitable for training and validating computer vision models.',
homepage: 'https://silvi.eckerlab.org',
maintainer: 'Ozan Kanbertay',
icon: 'icons/icon.png',
categories: [ 'Science', 'Video' ],
section: 'science',
};
module.exports = {
packagerConfig: {
asar: true,
icon: 'icons/icon',
// Unanchored regexes matched against the app-relative path, not globs or
// folder names: an unanchored '.github' also matched (and emptied)
// node_modules/github-url-to-object, which update-electron-app requires.
ignore: [
// 'examples',
'^/installers',
'^/docs',
'^/\\.github'
],
osxSign: {
identity: 'Developer ID Application'
},
osxNotarize: {
appleId: process.env.APPLE_ID_EMAIL,
appleIdPassword: process.env.APPLE_ID_PASSWORD,
teamId: process.env.APPLE_TEAM_ID
}
},
rebuildConfig: {},
makers: [
{
name: '@electron-forge/maker-squirrel',
config: (arch) => ({
// An URL to an ICO file to use as the application icon (displayed in Control Panel > Programs and Features).
iconUrl: 'https://raw.githubusercontent.com/ozan-kanbertay/silvi/8ed93440afd5bee3e7e3e75ecfaed5b394bb4015/icons/icon.ico',
// The ICO file to use as the icon for the generated Setup.exe
setupIcon: 'icons/icon.ico',
}),
},
{
name: '@electron-forge/maker-zip',
platforms: ['darwin'],
config: (arch) => ({
// macUpdateManifestBaseUrl: `https://bitbucket.org/kanbertay/ethowatch/downloads`
}),
},
{
name: '@electron-forge/maker-dmg',
config: {
format: 'ULMO',
icon: 'icons/icon.icns'
},
platforms: ['darwin']
},
{
name: '@electron-forge/maker-deb',
config: commonLinuxConfig,
platforms: ['linux'],
},
{
name: '@electron-forge/maker-rpm',
config: commonLinuxConfig,
platforms: ['linux'],
},
],
plugins: [
{
name: '@electron-forge/plugin-auto-unpack-natives',
config: {},
},
// Fuses are used to enable/disable various Electron functionality
// at package time, before code signing the application
new FusesPlugin({
version: FuseVersion.V1,
[FuseV1Options.RunAsNode]: false,
[FuseV1Options.EnableCookieEncryption]: true,
[FuseV1Options.EnableNodeOptionsEnvironmentVariable]: false,
[FuseV1Options.EnableNodeCliInspectArguments]: false,
[FuseV1Options.EnableEmbeddedAsarIntegrityValidation]: true,
[FuseV1Options.OnlyLoadAppFromAsar]: true,
}),
],
};