@electron-forge/maker-deb
Version:
Deb maker for Electron Forge
84 lines (61 loc) • 6.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.debianArch = debianArch;
exports.default = void 0;
require("source-map-support/register");
var _makerBase = _interopRequireDefault(require("@electron-forge/maker-base"));
var _path = _interopRequireDefault(require("path"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function debianArch(nodeArch) {
switch (nodeArch) {
case 'ia32':
return 'i386';
case 'x64':
return 'amd64';
case 'armv7l':
return 'armhf';
case 'arm':
return 'armel';
default:
return nodeArch;
}
}
class MakerDeb extends _makerBase.default {
constructor(...args) {
super(...args);
_defineProperty(this, "name", 'deb');
_defineProperty(this, "defaultPlatforms", ['linux']);
_defineProperty(this, "requiredExternalBinaries", ['dpkg', 'fakeroot']);
}
isSupportedOnCurrentPlatform() {
return this.isInstalled('electron-installer-debian');
}
async make({
dir,
makeDir,
targetArch
}) {
// eslint-disable-next-line global-require, import/no-unresolved
const installer = require('electron-installer-debian');
const outDir = _path.default.resolve(makeDir, 'deb', targetArch);
await this.ensureDirectory(outDir);
const {
packagePaths
} = await installer(_objectSpread({
options: {}
}, this.config, {
arch: debianArch(targetArch),
src: dir,
dest: outDir,
rename: undefined
}));
return packagePaths;
}
}
exports.default = MakerDeb;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9NYWtlckRlYi50cyJdLCJuYW1lcyI6WyJkZWJpYW5BcmNoIiwibm9kZUFyY2giLCJNYWtlckRlYiIsIk1ha2VyQmFzZSIsImlzU3VwcG9ydGVkT25DdXJyZW50UGxhdGZvcm0iLCJpc0luc3RhbGxlZCIsIm1ha2UiLCJkaXIiLCJtYWtlRGlyIiwidGFyZ2V0QXJjaCIsImluc3RhbGxlciIsInJlcXVpcmUiLCJvdXREaXIiLCJwYXRoIiwicmVzb2x2ZSIsImVuc3VyZURpcmVjdG9yeSIsInBhY2thZ2VQYXRocyIsIm9wdGlvbnMiLCJjb25maWciLCJhcmNoIiwic3JjIiwiZGVzdCIsInJlbmFtZSIsInVuZGVmaW5lZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBOztBQUVBOzs7Ozs7Ozs7O0FBSU8sU0FBU0EsVUFBVCxDQUFvQkMsUUFBcEIsRUFBeUM7QUFDOUMsVUFBUUEsUUFBUjtBQUNFLFNBQUssTUFBTDtBQUFhLGFBQU8sTUFBUDs7QUFDYixTQUFLLEtBQUw7QUFBWSxhQUFPLE9BQVA7O0FBQ1osU0FBSyxRQUFMO0FBQWUsYUFBTyxPQUFQOztBQUNmLFNBQUssS0FBTDtBQUFZLGFBQU8sT0FBUDs7QUFDWjtBQUFTLGFBQU9BLFFBQVA7QUFMWDtBQU9EOztBQUVjLE1BQU1DLFFBQU4sU0FBdUJDLGtCQUF2QixDQUFpRDtBQUFBO0FBQUE7O0FBQUEsa0NBQ3ZELEtBRHVEOztBQUFBLDhDQUcxQixDQUFDLE9BQUQsQ0FIMEI7O0FBQUEsc0RBS3pCLENBQUMsTUFBRCxFQUFTLFVBQVQsQ0FMeUI7QUFBQTs7QUFPOURDLEVBQUFBLDRCQUE0QixHQUFHO0FBQzdCLFdBQU8sS0FBS0MsV0FBTCxDQUFpQiwyQkFBakIsQ0FBUDtBQUNEOztBQUVELFFBQU1DLElBQU4sQ0FBVztBQUNUQyxJQUFBQSxHQURTO0FBRVRDLElBQUFBLE9BRlM7QUFHVEMsSUFBQUE7QUFIUyxHQUFYLEVBSWlCO0FBQ2Y7QUFDQSxVQUFNQyxTQUFTLEdBQUdDLE9BQU8sQ0FBQywyQkFBRCxDQUF6Qjs7QUFFQSxVQUFNQyxNQUFNLEdBQUdDLGNBQUtDLE9BQUwsQ0FBYU4sT0FBYixFQUFzQixLQUF0QixFQUE2QkMsVUFBN0IsQ0FBZjs7QUFFQSxVQUFNLEtBQUtNLGVBQUwsQ0FBcUJILE1BQXJCLENBQU47QUFDQSxVQUFNO0FBQUVJLE1BQUFBO0FBQUYsUUFBbUIsTUFBTU4sU0FBUztBQUN0Q08sTUFBQUEsT0FBTyxFQUFFO0FBRDZCLE9BRW5DLEtBQUtDLE1BRjhCO0FBR3RDQyxNQUFBQSxJQUFJLEVBQUVuQixVQUFVLENBQUNTLFVBQUQsQ0FIc0I7QUFJdENXLE1BQUFBLEdBQUcsRUFBRWIsR0FKaUM7QUFLdENjLE1BQUFBLElBQUksRUFBRVQsTUFMZ0M7QUFNdENVLE1BQUFBLE1BQU0sRUFBRUM7QUFOOEIsT0FBeEM7QUFTQSxXQUFPUCxZQUFQO0FBQ0Q7O0FBaEM2RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNYWtlckJhc2UsIHsgTWFrZXJPcHRpb25zIH0gZnJvbSAnQGVsZWN0cm9uLWZvcmdlL21ha2VyLWJhc2UnO1xuaW1wb3J0IHsgRm9yZ2VBcmNoLCBGb3JnZVBsYXRmb3JtIH0gZnJvbSAnQGVsZWN0cm9uLWZvcmdlL3NoYXJlZC10eXBlcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcblxuaW1wb3J0IHsgTWFrZXJEZWJDb25maWcgfSBmcm9tICcuL0NvbmZpZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWJpYW5BcmNoKG5vZGVBcmNoOiBGb3JnZUFyY2gpIHtcbiAgc3dpdGNoIChub2RlQXJjaCkge1xuICAgIGNhc2UgJ2lhMzInOiByZXR1cm4gJ2kzODYnO1xuICAgIGNhc2UgJ3g2NCc6IHJldHVybiAnYW1kNjQnO1xuICAgIGNhc2UgJ2FybXY3bCc6IHJldHVybiAnYXJtaGYnO1xuICAgIGNhc2UgJ2FybSc6IHJldHVybiAnYXJtZWwnO1xuICAgIGRlZmF1bHQ6IHJldHVybiBub2RlQXJjaDtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBNYWtlckRlYiBleHRlbmRzIE1ha2VyQmFzZTxNYWtlckRlYkNvbmZpZz4ge1xuICBuYW1lID0gJ2RlYic7XG5cbiAgZGVmYXVsdFBsYXRmb3JtczogRm9yZ2VQbGF0Zm9ybVtdID0gWydsaW51eCddO1xuXG4gIHJlcXVpcmVkRXh0ZXJuYWxCaW5hcmllczogc3RyaW5nW10gPSBbJ2Rwa2cnLCAnZmFrZXJvb3QnXTtcblxuICBpc1N1cHBvcnRlZE9uQ3VycmVudFBsYXRmb3JtKCkge1xuICAgIHJldHVybiB0aGlzLmlzSW5zdGFsbGVkKCdlbGVjdHJvbi1pbnN0YWxsZXItZGViaWFuJyk7XG4gIH1cblxuICBhc3luYyBtYWtlKHtcbiAgICBkaXIsXG4gICAgbWFrZURpcixcbiAgICB0YXJnZXRBcmNoLFxuICB9OiBNYWtlck9wdGlvbnMpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2xvYmFsLXJlcXVpcmUsIGltcG9ydC9uby11bnJlc29sdmVkXG4gICAgY29uc3QgaW5zdGFsbGVyID0gcmVxdWlyZSgnZWxlY3Ryb24taW5zdGFsbGVyLWRlYmlhbicpO1xuXG4gICAgY29uc3Qgb3V0RGlyID0gcGF0aC5yZXNvbHZlKG1ha2VEaXIsICdkZWInLCB0YXJnZXRBcmNoKTtcblxuICAgIGF3YWl0IHRoaXMuZW5zdXJlRGlyZWN0b3J5KG91dERpcik7XG4gICAgY29uc3QgeyBwYWNrYWdlUGF0aHMgfSA9IGF3YWl0IGluc3RhbGxlcih7XG4gICAgICBvcHRpb25zOiB7fSxcbiAgICAgIC4uLnRoaXMuY29uZmlnLFxuICAgICAgYXJjaDogZGViaWFuQXJjaCh0YXJnZXRBcmNoKSxcbiAgICAgIHNyYzogZGlyLFxuICAgICAgZGVzdDogb3V0RGlyLFxuICAgICAgcmVuYW1lOiB1bmRlZmluZWQsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gcGFja2FnZVBhdGhzO1xuICB9XG59XG4iXX0=