Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
arch,
'prune': true,
'app-version': pkg.version || DEFAULT_OPTS.version,
'out': `release/${ plat }-${ arch }`,
})
if (`${ plat }-${ arch }` === 'darwin-x64') {
opts['osx-sign'] = {
app: '/release/darwin-x64/Felony-darwin-x64/Felony.app',
identity: 'xxxxxxxxx', // Developer ID Application: * (*)
}
}
console.log('opts', opts)
packager(opts, cb)
}
'use strict';
const assert = require('assert');
const childProcess = require('child_process');
const electronPackager = require('electron-packager');
const fs = require('fs-extra');
const hostArch = require('electron-packager/targets').hostArch;
const includePathInPackagedApp = require('./include-path-in-packaged-app');
const getLicenseText = require('./get-license-text');
const path = require('path');
const spawnSync = require('./spawn-sync');
const template = require('lodash.template');
const CONFIG = require('../config');
const HOST_ARCH = hostArch();
module.exports = function() {
const appName = getAppName();
console.log(
`Running electron-packager on ${
CONFIG.intermediateAppPath
} with app name "${appName}"`
);
return runPackager({
appBundleId: 'com.github.atom',
appCopyright: `Copyright © 2014-${new Date().getFullYear()} GitHub, Inc. All rights reserved.`,
appVersion: CONFIG.appMetadata.version,
arch: process.platform === 'darwin' ? 'x64' : HOST_ARCH, // OS X is 64-bit only
asar: { unpack: buildAsarUnpackGlobExpression() },
buildVersion: CONFIG.appMetadata.version,
derefSymlinks: false,
if (!packageJSON.version && !packageOpts.appVersion) {
// eslint-disable-next-line max-len
warn(interactive, 'Please set "version" or "config.forge.packagerConfig.appVersion" in your application\'s package.json so auto-updates work properly'.yellow);
}
if (packageOpts.prebuiltAsar) {
throw new Error('config.forge.packagerConfig.prebuiltAsar is not supported by Electron Forge');
}
await runHook(forgeConfig, 'generateAssets');
await runHook(forgeConfig, 'prePackage');
d('packaging with options', packageOpts);
await packager(packageOpts);
await runHook(forgeConfig, 'postPackage');
if (packagerSpinner) packagerSpinner!.succeed();
};
async function packageAppAsync(signed) {
await checkNativeModulesVersionAsync();
let [xdeVersion, electronVersion] = await Promise.all([
JsonFile.getAsync(path.join(XDE_ROOT, 'package.json'), 'version'),
getElectronVersionAsync(),
]);
let iconPath = path.join(XDE_ROOT, 'dev/xde.icns');
let appPath = await electronPackager.promise({
dir: path.resolve(__dirname, '..'),
name: APP_NAME,
platform: PLATFORM,
arch: ARCH,
version: electronVersion,
'app-bundle-id': APP_BUNDLE_ID,
'app-copyright': `Copyright (c) ${new Date().getFullYear()} Exponent`,
'build-version': xdeVersion,
icon: iconPath,
ignore: [/^\/src(\/|$)/, /^\/\.babelrc$/],
overwrite: true,
prune: true,
'osx-sign': signed ? { identity: CODE_SIGNING_IDENTITY } : null,
// sign: signed ? CODE_SIGNING_IDENTITY : null,
});
["linux", "win32", "darwin"].forEach(plat => {
packager(assign({}, DEFAULT_OPTS, {
platform: plat,
arch: "x64",
out: config.tempDirectory + "/" + plat
}), () => console.log(plat + " finished!"));
});
})
}).then(() => {
return packager(packagerOptions)
}).then(appPaths => {
let dirName: string | string[] = path.basename(appPaths[0]).split('-')
export default function parseArchs(
platform: ForgePlatform | string,
declaredArch: ForgeArch | 'all' | string,
electronVersion: string,
): ForgeArch[] {
if (declaredArch === 'all') {
return allOfficialArchsForPlatformAndVersion(platform, electronVersion) || ['x64'];
}
return declaredArch.split(',') as ForgeArch[];
}
export default function parseArchs(platform, declaredArch, electronVersion) {
if (declaredArch === 'all') {
return allOfficialArchsForPlatformAndVersion(platform, electronVersion) || ['x64'];
}
return declaredArch.split(',');
}
function runElectronPackager (settings) {
log.log('Electron packager settings:')
log.log(settings)
packager(settings, (err, appPath) => {
if (err) {
return error(err)
}
log.ok(`Application packaged successfully to '${appPath}'`)
})
}