mirror of
https://github.com/signalapp/Signal-Desktop.git
synced 2025-12-24 12:19:41 +00:00
Windows: No longer rely on electron-builder for code-signing
This commit is contained in:
31
ts/scripts/sign-windows.ts
Normal file
31
ts/scripts/sign-windows.ts
Normal file
@@ -0,0 +1,31 @@
|
||||
// Copyright 2019 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
import { execSync } from 'child_process';
|
||||
|
||||
import { realpath } from 'fs-extra';
|
||||
|
||||
import type { CustomWindowsSignTaskConfiguration } from 'electron-builder';
|
||||
|
||||
export async function sign(
|
||||
configuration: CustomWindowsSignTaskConfiguration
|
||||
): Promise<void> {
|
||||
// In CI, we remove certificate information from package.json to disable signing
|
||||
if (!configuration.options.certificateSha1) {
|
||||
return;
|
||||
}
|
||||
|
||||
const scriptPath = process.env.SIGN_WINDOWS_SCRIPT;
|
||||
if (!scriptPath) {
|
||||
throw new Error(
|
||||
'path to windows sign script must be provided in environment variable SIGN_WINDOWS_SCRIPT'
|
||||
);
|
||||
}
|
||||
|
||||
const target = realpath(configuration.path);
|
||||
|
||||
// The script will update the file in-place
|
||||
execSync(`bash ${scriptPath} ${target}`, {
|
||||
stdio: [null, process.stdout, process.stderr],
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user