-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathelectron-builder.config.mjs
More file actions
78 lines (75 loc) · 2.41 KB
/
Copy pathelectron-builder.config.mjs
File metadata and controls
78 lines (75 loc) · 2.41 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
const runtimeExternalDependencies = [
"node_modules/electron-store/**/*",
"node_modules/electron-updater/**/*",
"node_modules/ws/**/*",
];
const signedMacBuild = process.env.T4_MACOS_SIGNED_BUILD === "1";
export const linuxUpdatePublish = {
provider: "github",
owner: "LycaonLLC",
repo: "t4-code",
channel: "latest",
};
/** @type {import("electron-builder").Configuration} */
const config = {
appId: "com.lycaonsolutions.t4code",
productName: "T4 Code",
electronVersion: "41.5.0",
artifactName: "T4-Code-${version}-${os}-${arch}.${ext}",
directories: {
app: "apps/desktop",
output: "release",
},
asar: true,
files: [
"dist-electron/**/*",
"package.json",
...runtimeExternalDependencies,
"!**/*.map",
],
extraResources: [
{ from: "apps/web/dist", to: "web" },
{ from: "packages/host-daemon/dist/t4-host", to: "runtime/t4-host" },
{ from: "LICENSE", to: "LICENSE" },
],
protocols: [{ name: "T4 Code", schemes: ["t4-code"] }],
linux: {
executableName: "t4-code",
category: "Development",
icon: "apps/desktop/build/icons",
publish: [linuxUpdatePublish],
target: [
{ target: "AppImage", arch: ["x64"] },
{ target: "deb", arch: ["x64"] },
],
},
mac: {
category: "public.app-category.developer-tools",
icon: "apps/desktop/build/icon.png",
identity: signedMacBuild ? undefined : null,
hardenedRuntime: signedMacBuild,
gatekeeperAssess: false,
entitlements: signedMacBuild ? "apps/desktop/build/entitlements.mac.plist" : undefined,
entitlementsInherit: signedMacBuild
? "apps/desktop/build/entitlements.mac.plist"
: undefined,
sign: signedMacBuild ? "scripts/sign-macos.mjs" : undefined,
notarize: signedMacBuild,
// The first signed release remains an explicit GitHub download. Keep the
// updater feed disabled until signed-to-signed update migration has its
// own release proof.
publish: [],
extraResources: [
{ from: ".artifacts/omp-runtime", to: "runtime" },
{ from: "scripts/tailnet-gateway.mjs", to: "gateway/tailnet-gateway.mjs" },
{ from: "scripts/tailnet-service.mjs", to: "gateway/tailnet-service.mjs" },
{ from: "apps/desktop/node_modules/ws", to: "node_modules/ws" },
],
target: [
{ target: "dmg", arch: ["arm64"] },
{ target: "zip", arch: ["arm64"] },
],
},
};
export { runtimeExternalDependencies };
export default config;