mirror of
https://github.com/signalapp/Signal-Desktop.git
synced 2026-04-17 15:23:36 +01:00
Remove use of __dirname from main process
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
|
||||
import { parse } from 'csv-parse';
|
||||
import fs from 'node:fs/promises';
|
||||
import { join } from 'node:path';
|
||||
import { z } from 'zod';
|
||||
import { _getAvailableLocales } from '../../app/locale.node.js';
|
||||
import { parseUnknown } from '../util/schemas.std.js';
|
||||
@@ -21,8 +22,9 @@ if (!process.argv[4]) {
|
||||
throw new Error('Missing third argument: output json file');
|
||||
}
|
||||
const localeDisplayNamesBuildPath = process.argv[4];
|
||||
const rootDir = join(__dirname, '..', '..');
|
||||
|
||||
const availableLocales = _getAvailableLocales();
|
||||
const availableLocales = _getAvailableLocales(rootDir);
|
||||
|
||||
const LocaleString = z.string().refine(arg => {
|
||||
try {
|
||||
|
||||
@@ -14,7 +14,7 @@ import { Format, NtExecutable } from 'pe-library';
|
||||
import ELECTRON_BINARY from 'electron';
|
||||
|
||||
import { drop } from '../util/drop.std.js';
|
||||
import packageJson from '../util/packageJson.node.js';
|
||||
import { packageJson } from '../util/packageJson.node.js';
|
||||
|
||||
const { ImageDosHeader, ImageNtHeaders, ImageDirectoryEntry } = Format;
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import { execSync } from 'node:child_process';
|
||||
import { writeFileSync } from 'node:fs';
|
||||
|
||||
import { DAY } from '../util/durations/index.std.js';
|
||||
import { version } from '../util/packageJson.node.js';
|
||||
import { packageJson } from '../util/packageJson.node.js';
|
||||
import { isNotUpdatable } from '../util/version.std.js';
|
||||
|
||||
const unixTimestamp = parseInt(
|
||||
@@ -18,7 +18,7 @@ const buildCreation = unixTimestamp * 1000;
|
||||
|
||||
// NB: Build expirations are also determined via users' auto-update settings; see
|
||||
// getExpirationTimestamp
|
||||
const validDuration = isNotUpdatable(version) ? DAY * 30 : DAY * 90;
|
||||
const validDuration = isNotUpdatable(packageJson.version) ? DAY * 30 : DAY * 90;
|
||||
const buildExpiration = buildCreation + validDuration;
|
||||
|
||||
const localProductionPath = join(
|
||||
@@ -29,7 +29,7 @@ const localProductionPath = join(
|
||||
const localProductionConfig = {
|
||||
buildCreation,
|
||||
buildExpiration,
|
||||
...(isNotUpdatable(version) ? { updatesEnabled: false } : {}),
|
||||
...(isNotUpdatable(packageJson.version) ? { updatesEnabled: false } : {}),
|
||||
};
|
||||
|
||||
writeFileSync(
|
||||
|
||||
@@ -5,7 +5,7 @@ import type { BuildResult } from 'electron-builder';
|
||||
|
||||
import { notarize } from '@electron/notarize';
|
||||
|
||||
import { build } from '../util/packageJson.node.js';
|
||||
import { packageJson } from '../util/packageJson.node.js';
|
||||
|
||||
export async function afterAllArtifactBuild({
|
||||
platformToTargets,
|
||||
@@ -24,7 +24,7 @@ export async function afterAllArtifactBuild({
|
||||
return;
|
||||
}
|
||||
|
||||
const appBundleId = build.appId;
|
||||
const appBundleId = packageJson.build.appId;
|
||||
if (!appBundleId) {
|
||||
throw new Error(
|
||||
'appBundleId must be provided in package.json: build.appId'
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { AfterPackContext } from 'electron-builder';
|
||||
|
||||
import { notarize } from '@electron/notarize';
|
||||
|
||||
import { build } from '../util/packageJson.node.js';
|
||||
import { packageJson } from '../util/packageJson.node.js';
|
||||
|
||||
export async function afterSign({
|
||||
appOutDir,
|
||||
@@ -22,7 +22,7 @@ export async function afterSign({
|
||||
|
||||
const appPath = path.join(appOutDir, `${productFilename}.app`);
|
||||
|
||||
const appBundleId = build.appId;
|
||||
const appBundleId = packageJson.build.appId;
|
||||
if (!appBundleId) {
|
||||
throw new Error(
|
||||
'appBundleId must be provided in package.json: build.appId'
|
||||
|
||||
@@ -4,7 +4,10 @@
|
||||
import { stat } from 'node:fs/promises';
|
||||
import { join } from 'node:path';
|
||||
|
||||
import { name as NAME, version as VERSION } from '../util/packageJson.node.js';
|
||||
import { packageJson } from '../util/packageJson.node.js';
|
||||
|
||||
const NAME = packageJson.name;
|
||||
const VERSION = packageJson.version;
|
||||
|
||||
const SUPPORT_CONFIG = new Set([
|
||||
'linux',
|
||||
|
||||
@@ -9,7 +9,7 @@ import { mkdtemp, cp } from 'node:fs/promises';
|
||||
import { constants as fsConstants } from 'node:fs';
|
||||
import { _electron as electron } from 'playwright';
|
||||
|
||||
import { productName, name } from '../util/packageJson.node.js';
|
||||
import { packageJson } from '../util/packageJson.node.js';
|
||||
import { gracefulRmRecursive } from '../util/gracefulFs.node.js';
|
||||
import { consoleLogger } from '../util/consoleLogger.std.js';
|
||||
|
||||
@@ -21,24 +21,24 @@ let exe: string;
|
||||
if (process.platform === 'darwin') {
|
||||
archive = join(
|
||||
'mac-arm64',
|
||||
`${productName}.app`,
|
||||
`${packageJson.productName}.app`,
|
||||
'Contents',
|
||||
'Resources',
|
||||
'app.asar'
|
||||
);
|
||||
exe = join(
|
||||
'mac-arm64',
|
||||
`${productName}.app`,
|
||||
`${packageJson.productName}.app`,
|
||||
'Contents',
|
||||
'MacOS',
|
||||
productName
|
||||
packageJson.productName
|
||||
);
|
||||
} else if (process.platform === 'win32') {
|
||||
archive = join('win-unpacked', 'resources', 'app.asar');
|
||||
exe = join('win-unpacked', `${productName}.exe`);
|
||||
exe = join('win-unpacked', `${packageJson.productName}.exe`);
|
||||
} else if (process.platform === 'linux') {
|
||||
archive = join('linux-unpacked', 'resources', 'app.asar');
|
||||
exe = join('linux-unpacked', name);
|
||||
exe = join('linux-unpacked', packageJson.name);
|
||||
} else {
|
||||
throw new Error(`Unsupported platform: ${process.platform}`);
|
||||
}
|
||||
@@ -87,7 +87,7 @@ const main = async () => {
|
||||
);
|
||||
|
||||
console.log('Checking window title');
|
||||
assert.strictEqual(await window.title(), productName);
|
||||
assert.strictEqual(await window.title(), packageJson.productName);
|
||||
|
||||
await app.close();
|
||||
} finally {
|
||||
|
||||
Reference in New Issue
Block a user