|
|
@@ -343,35 +343,55 @@ export class Builder {
|
|
|
const fromDir = resolve(this.dir, config.output, (await versionInfo.getVersion(fromVersion)).source);
|
|
|
const toDir = resolve(this.dir, config.output, (await versionInfo.getVersion(toVersion)).source);
|
|
|
|
|
|
- const data = await (new NsisDiffer(fromDir, toDir, {
|
|
|
+ if(config.nsis.customUpdaterScript) {
|
|
|
+
|
|
|
+ await nsisBuild(toDir, config.nsis.customUpdaterScript, {
|
|
|
+ defines: {
|
|
|
+ NW_APPNAME: config.win.versionStrings.ProductName,
|
|
|
+ NW_COMPANYNAME: config.win.versionStrings.CompanyName,
|
|
|
+ NW_DESCRIPTION: config.win.versionStrings.FileDescription,
|
|
|
+ NW_VERSION: config.win.productVersion,
|
|
|
+ NW_COPYRIGHT: config.win.versionStrings.LegalCopyright,
|
|
|
+ NW_OUTPUT: diffNsis,
|
|
|
+ },
|
|
|
+ mute: false,
|
|
|
+ });
|
|
|
|
|
|
- // Basic.
|
|
|
- appName: config.win.versionStrings.ProductName,
|
|
|
- companyName: config.win.versionStrings.CompanyName,
|
|
|
- description: config.win.versionStrings.FileDescription,
|
|
|
- version: config.win.productVersion,
|
|
|
- copyright: config.win.versionStrings.LegalCopyright,
|
|
|
+ }
|
|
|
+ else {
|
|
|
|
|
|
- // Compression.
|
|
|
- compression: 'lzma',
|
|
|
- solid: true,
|
|
|
+ const data = await (new NsisDiffer(fromDir, toDir, {
|
|
|
|
|
|
- modern: config.nsis.modern,
|
|
|
- languages: config.nsis.languages,
|
|
|
+ // Basic.
|
|
|
+ appName: config.win.versionStrings.ProductName,
|
|
|
+ companyName: config.win.versionStrings.CompanyName,
|
|
|
+ description: config.win.versionStrings.FileDescription,
|
|
|
+ version: config.win.productVersion,
|
|
|
+ copyright: config.win.versionStrings.LegalCopyright,
|
|
|
|
|
|
- // Output.
|
|
|
- output: diffNsis,
|
|
|
+ // Compression.
|
|
|
+ compression: 'lzma',
|
|
|
+ solid: true,
|
|
|
|
|
|
- })).make();
|
|
|
+ modern: config.nsis.modern,
|
|
|
+ languages: config.nsis.languages,
|
|
|
|
|
|
- const script = await tmpName();
|
|
|
- await writeFileAsync(script, data);
|
|
|
+ // Output.
|
|
|
+ output: diffNsis,
|
|
|
|
|
|
- await nsisBuild(toDir, script, {
|
|
|
- mute: false,
|
|
|
- });
|
|
|
+ })).make();
|
|
|
+
|
|
|
+ const script = await tmpName();
|
|
|
+ await writeFileAsync(script, data);
|
|
|
|
|
|
- await removeAsync(script);
|
|
|
+ await nsisBuild(toDir, script, {
|
|
|
+ defines: {},
|
|
|
+ mute: false,
|
|
|
+ });
|
|
|
+
|
|
|
+ await removeAsync(script);
|
|
|
+
|
|
|
+ }
|
|
|
|
|
|
await versionInfo.addUpdater(toVersion, fromVersion, arch, diffNsis);
|
|
|
|
|
|
@@ -464,35 +484,55 @@ export class Builder {
|
|
|
|
|
|
const targetNsis = resolve(dirname(targetDir), `${ basename(targetDir) }-Setup.exe`);
|
|
|
|
|
|
- const data = await (new NsisComposer({
|
|
|
+ if(config.nsis.customInstallerScript) {
|
|
|
+
|
|
|
+ await nsisBuild(targetDir, config.nsis.customUpdaterScript, {
|
|
|
+ defines: {
|
|
|
+ NW_APPNAME: config.win.versionStrings.ProductName,
|
|
|
+ NW_COMPANYNAME: config.win.versionStrings.CompanyName,
|
|
|
+ NW_DESCRIPTION: config.win.versionStrings.FileDescription,
|
|
|
+ NW_VERSION: config.win.productVersion,
|
|
|
+ NW_COPYRIGHT: config.win.versionStrings.LegalCopyright,
|
|
|
+ NW_OUTPUT: targetNsis,
|
|
|
+ },
|
|
|
+ mute: false,
|
|
|
+ });
|
|
|
|
|
|
- // Basic.
|
|
|
- appName: config.win.versionStrings.ProductName,
|
|
|
- companyName: config.win.versionStrings.CompanyName,
|
|
|
- description: config.win.versionStrings.FileDescription,
|
|
|
- version: config.win.productVersion,
|
|
|
- copyright: config.win.versionStrings.LegalCopyright,
|
|
|
+ }
|
|
|
+ else {
|
|
|
|
|
|
- // Compression.
|
|
|
- compression: 'lzma',
|
|
|
- solid: true,
|
|
|
+ const data = await (new NsisComposer({
|
|
|
|
|
|
- modern: config.nsis.modern,
|
|
|
- languages: config.nsis.languages,
|
|
|
+ // Basic.
|
|
|
+ appName: config.win.versionStrings.ProductName,
|
|
|
+ companyName: config.win.versionStrings.CompanyName,
|
|
|
+ description: config.win.versionStrings.FileDescription,
|
|
|
+ version: config.win.productVersion,
|
|
|
+ copyright: config.win.versionStrings.LegalCopyright,
|
|
|
|
|
|
- // Output.
|
|
|
- output: targetNsis,
|
|
|
+ // Compression.
|
|
|
+ compression: 'lzma',
|
|
|
+ solid: true,
|
|
|
|
|
|
- })).make();
|
|
|
+ modern: config.nsis.modern,
|
|
|
+ languages: config.nsis.languages,
|
|
|
|
|
|
- const script = await tmpName();
|
|
|
- await writeFileAsync(script, data);
|
|
|
+ // Output.
|
|
|
+ output: targetNsis,
|
|
|
|
|
|
- await nsisBuild(targetDir, script, {
|
|
|
- mute: false,
|
|
|
- });
|
|
|
+ })).make();
|
|
|
+
|
|
|
+ const script = await tmpName();
|
|
|
+ await writeFileAsync(script, data);
|
|
|
|
|
|
- await removeAsync(script);
|
|
|
+ await nsisBuild(targetDir, script, {
|
|
|
+ defines: {},
|
|
|
+ mute: false,
|
|
|
+ });
|
|
|
+
|
|
|
+ await removeAsync(script);
|
|
|
+
|
|
|
+ }
|
|
|
|
|
|
await versionInfo.addVersion(pkg.version, '', targetDir);
|
|
|
await versionInfo.addInstaller(pkg.version, arch, targetNsis);
|