|
1 | | -diff --git a/out/targets/nsis/NsisTarget.js b/out/targets/nsis/NsisTarget.js |
2 | | -index 8336c600a45fb843e0c88f3c7673b30f435c5aab..746569c20e4c9e32abf040e9c722e3eb97d53c62 100644 |
3 | | ---- a/out/targets/nsis/NsisTarget.js |
4 | | -+++ b/out/targets/nsis/NsisTarget.js |
5 | | -@@ -7,7 +7,6 @@ const debug_1 = require("debug"); |
6 | | - const fs = require("fs"); |
7 | | - const fs_extra_1 = require("fs-extra"); |
8 | | - const path = require("path"); |
9 | | --const binDownload_1 = require("../../binDownload"); |
10 | | - const core_1 = require("../../core"); |
11 | | - const CommonWindowsInstallerConfiguration_1 = require("../../options/CommonWindowsInstallerConfiguration"); |
12 | | - const platformPackager_1 = require("../../platformPackager"); |
13 | | -@@ -25,8 +24,6 @@ const nsisUtil_1 = require("./nsisUtil"); |
14 | | - const debug = (0, debug_1.default)("electron-builder:nsis"); |
15 | | - // noinspection SpellCheckingInspection |
16 | | - const ELECTRON_BUILDER_NS_UUID = builder_util_runtime_1.UUID.parse("50e065bc-3134-11e6-9bab-38c9862bdaf3"); |
17 | | --// noinspection SpellCheckingInspection |
18 | | --const nsisResourcePathPromise = () => (0, binDownload_1.getBinFromUrl)("nsis-resources", "3.4.1", "Dqd6g+2buwwvoG1Vyf6BHR1b+25QMmPcwZx40atOT57gH27rkjOei1L0JTldxZu4NFoEmW4kJgZ3DlSWVON3+Q=="); |
19 | | - const USE_NSIS_BUILT_IN_COMPRESSOR = false; |
20 | | - class NsisTarget extends core_1.Target { |
21 | | - constructor(packager, outDir, targetName, packageHelper) { |
22 | | -@@ -546,7 +543,7 @@ class NsisTarget extends core_1.Target { |
23 | | - const taskManager = new builder_util_1.AsyncTaskManager(packager.info.cancellationToken); |
24 | | - const pluginArch = this.isUnicodeEnabled ? "x86-unicode" : "x86-ansi"; |
25 | | - taskManager.add(async () => { |
26 | | -- scriptGenerator.addPluginDir(pluginArch, path.join(await nsisResourcePathPromise(), "plugins", pluginArch)); |
27 | | -+ scriptGenerator.addPluginDir(pluginArch, path.join(await (0, nsisUtil_1.NSIS_RESOURCES_PATH)(), "plugins", pluginArch)); |
28 | | - }); |
29 | | - taskManager.add(async () => { |
30 | | - const userPluginDir = path.join(packager.info.buildResourcesDir, pluginArch); |
31 | | -diff --git a/out/targets/nsis/nsisUtil.js b/out/targets/nsis/nsisUtil.js |
32 | | -index 693d39c95f23b6ba890a560a4ce925c6400a45f4..5ce1e38bf9bb237b2e44f65186a3ca405b42fd26 100644 |
33 | | ---- a/out/targets/nsis/nsisUtil.js |
34 | | -+++ b/out/targets/nsis/nsisUtil.js |
35 | | -@@ -35,6 +35,19 @@ const NSIS_PATH = () => { |
36 | | - }); |
37 | | - }; |
38 | | - exports.NSIS_PATH = NSIS_PATH; |
39 | | -+const NSIS_RESOURCES_PATH = () => { |
40 | | -+ return exports.NsisTargetOptions.then((options) => { |
41 | | -+ if (options.customNsisResources) { |
42 | | -+ const { checksum, url, version } = options.customNsisResources; |
43 | | -+ if (checksum && url) { |
44 | | -+ const binaryVersion = version || checksum.substr(0, 8); |
45 | | -+ return (0, binDownload_1.getBinFromCustomLoc)("nsis-resources", binaryVersion, url, checksum); |
46 | | -+ } |
47 | | -+ } |
48 | | -+ return (0, binDownload_1.getBinFromUrl)("nsis-resources", "3.4.1", "Dqd6g+2buwwvoG1Vyf6BHR1b+25QMmPcwZx40atOT57gH27rkjOei1L0JTldxZu4NFoEmW4kJgZ3DlSWVON3+Q=="); |
49 | | -+ }); |
50 | | -+}; |
51 | | -+exports.NSIS_RESOURCES_PATH = NSIS_RESOURCES_PATH; |
52 | | - class AppPackageHelper { |
53 | | - constructor(elevateHelper) { |
54 | | - this.elevateHelper = elevateHelper; |
55 | | -diff --git a/scheme.json b/scheme.json |
56 | | -index a4fc2517768ac5dac24c1dbdec0315d85e4c1bad..d738fab1d4983fea664972b59c0cd837f6c7c2b6 100644 |
57 | | ---- a/scheme.json |
58 | | -+++ b/scheme.json |
59 | | -@@ -465,6 +465,36 @@ |
60 | | - ], |
61 | | - "type": "object" |
62 | | - }, |
63 | | -+ "CustomNsisResources": { |
64 | | -+ "additionalProperties": false, |
65 | | -+ "properties": { |
66 | | -+ "checksum": { |
67 | | -+ "default": "Dqd6g+2buwwvoG1Vyf6BHR1b+25QMmPcwZx40atOT57gH27rkjOei1L0JTldxZu4NFoEmW4kJgZ3DlSWVON3+Q==", |
68 | | -+ "type": [ |
69 | | -+ "null", |
70 | | -+ "string" |
71 | | -+ ] |
72 | | -+ }, |
73 | | -+ "url": { |
74 | | -+ "default": "https://github.com/electron-userland/electron-builder-binaries/releases/download/nsis-resources-3.4.1/nsis-resources-3.4.1.7z", |
75 | | -+ "type": [ |
76 | | -+ "null", |
77 | | -+ "string" |
78 | | -+ ] |
79 | | -+ }, |
80 | | -+ "version": { |
81 | | -+ "default": "3.4.1", |
82 | | -+ "type": [ |
83 | | -+ "null", |
84 | | -+ "string" |
85 | | -+ ] |
86 | | -+ } |
87 | | -+ }, |
88 | | -+ "required": [ |
89 | | -+ "url" |
90 | | -+ ], |
91 | | -+ "type": "object" |
92 | | -+ }, |
93 | | - "CustomPublishOptions": { |
94 | | - "additionalProperties": {}, |
95 | | - "properties": { |
96 | | -@@ -3900,6 +3930,17 @@ |
97 | | - ], |
98 | | - "description": "Allows you to provide your own `makensis`, such as one with support for debug logging via LogSet and LogText. (Logging also requires option `debugLogging = true`)" |
99 | | - }, |
100 | | -+ "customNsisResources": { |
101 | | -+ "anyOf": [ |
102 | | -+ { |
103 | | -+ "$ref": "#/definitions/CustomNsisResources" |
104 | | -+ }, |
105 | | -+ { |
106 | | -+ "type": "null" |
107 | | -+ } |
108 | | -+ ], |
109 | | -+ "description": "Allows you to provide your own `nsis-resources`" |
110 | | -+ }, |
111 | | - "deleteAppDataOnUninstall": { |
112 | | - "default": false, |
113 | | - "description": "*one-click installer only.* Whether to delete app data on uninstall.", |
114 | 1 | diff --git a/templates/nsis/include/installer.nsh b/templates/nsis/include/installer.nsh |
115 | 2 | index 34e91dfe82fdbb2e929820f2e8deb771b7f7893c..73bfffc6c227a018cbbeb690d6d7b882ed142fc8 100644 |
116 | 3 | --- a/templates/nsis/include/installer.nsh |
|
0 commit comments