@electron-forge/maker-deb 7.10.1 → 7.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,140 @@
1
+ export interface MakerDebConfigOptions {
2
+ /**
3
+ * Name of the package (e.g. atom), used in the Package field of the control
4
+ * specification.
5
+ *
6
+ * Package names [...] must consist only of lower case letters (a-z), digits
7
+ * (0-9), plus (+) and minus (-) signs, and periods (.). They must be at
8
+ * least two characters long and must start with an alphanumeric character.
9
+ */
10
+ name?: string;
11
+ /**
12
+ * Name of the application (e.g. Atom), used in the Name field of the desktop specification.
13
+ */
14
+ productName?: string;
15
+ /**
16
+ * Generic name of the application (e.g. Text Editor), used in the GenericName field of the
17
+ * desktop specification.
18
+ */
19
+ genericName?: string;
20
+ /**
21
+ * Short description of the application, used in the Description field of the control
22
+ * specification.
23
+ */
24
+ description?: string;
25
+ /**
26
+ * Long description of the application, used in the Description field of the control
27
+ * specification.
28
+ */
29
+ productDescription?: string;
30
+ /**
31
+ * Version number of the package, used in the Version field of the control specification.
32
+ */
33
+ version?: string;
34
+ /**
35
+ * Revision number of the package, used in the Version field of the control specification.
36
+ */
37
+ revision?: string;
38
+ /**
39
+ * Application area into which the package has been classified.
40
+ *
41
+ * Possible sections. Generated on https://packages.debian.org/unstable/ with:
42
+ *
43
+ * ```javascript
44
+ * $$('#content dt a').map(n => {
45
+ * const ss = n.href.split('/');
46
+ * return `'${ss[ss.length - 2]}'`;
47
+ * }).sort().join(' | ')
48
+ * ```
49
+ */
50
+ section?: 'admin' | 'cli-mono' | 'comm' | 'database' | 'debian-installer' | 'debug' | 'devel' | 'doc' | 'editors' | 'education' | 'electronics' | 'embedded' | 'fonts' | 'games' | 'gnome' | 'gnu-r' | 'gnustep' | 'graphics' | 'hamradio' | 'haskell' | 'httpd' | 'interpreters' | 'introspection' | 'java' | 'javascript' | 'kde' | 'kernel' | 'libdevel' | 'libs' | 'lisp' | 'localization' | 'mail' | 'math' | 'metapackages' | 'misc' | 'net' | 'news' | 'ocaml' | 'oldlibs' | 'otherosfs' | 'perl' | 'php' | 'python' | 'ruby' | 'rust' | 'science' | 'shells' | 'sound' | 'tasks' | 'tex' | 'text' | 'utils' | 'vcs' | 'video' | 'virtual' | 'web' | 'x11' | 'xfce' | 'zope';
51
+ /**
52
+ * How important is it to have the package installed.
53
+ *
54
+ * You can read more: https://www.debian.org/doc/debian-policy/#priorities
55
+ */
56
+ priority?: 'required' | 'important' | 'standard' | 'optional';
57
+ /**
58
+ * Estimate of the total amount of disk space required to install the named package,
59
+ * used in the Installed-Size field of the control specification.
60
+ */
61
+ size?: number;
62
+ /**
63
+ * Relationships to other packages, used in the Depends field of the control specification.
64
+ */
65
+ depends?: string[];
66
+ /**
67
+ * Relationships to other packages, used in the Recommends field of the control specification.
68
+ */
69
+ recommends?: string[];
70
+ /**
71
+ * Relationships to other packages, used in the Suggests field of the control specification.
72
+ */
73
+ suggests?: string[];
74
+ /**
75
+ * Relationships to other packages, used in the Enhances field of the control specification.
76
+ */
77
+ enhances?: string[];
78
+ /**
79
+ * Relationships to other packages, used in the Pre-Depends field of the control specification.
80
+ */
81
+ preDepends?: string[];
82
+ /**
83
+ * Maintainer of the package, used in the Maintainer field of the control specification.
84
+ */
85
+ maintainer?: string;
86
+ /**
87
+ * URL of the homepage for the package, used in the Homepage field of the control specification.
88
+ */
89
+ homepage?: string;
90
+ /**
91
+ * Relative path to the executable that will act as binary for the application, used in the Exec
92
+ * field of the desktop specification.
93
+ *
94
+ * Defaults to options.name
95
+ */
96
+ bin?: string;
97
+ /**
98
+ * Path to a single image that will act as icon for the application:
99
+ */
100
+ icon?: string;
101
+ /**
102
+ * Categories in which the application should be shown in a menu, used in the Categories field
103
+ * of the desktop specification.
104
+ *
105
+ * Generated on https://specifications.freedesktop.org/menu-spec/latest/apa.html with:
106
+ *
107
+ * `(${$$('.informaltable tr td:first-child').map(td => `'$\{td.innerText\}'`).join(' | ')})[]`
108
+ */
109
+ categories?: ('AudioVideo' | 'Audio' | 'Video' | 'Development' | 'Education' | 'Game' | 'Graphics' | 'Network' | 'Office' | 'Science' | 'Settings' | 'System' | 'Utility')[];
110
+ /**
111
+ * MIME types the application is able to open, used in the MimeType field of the desktop
112
+ * specification.
113
+ */
114
+ mimeType?: string[];
115
+ /**
116
+ * You can use these to quieten lintian.
117
+ */
118
+ lintianOverrides?: string[];
119
+ /**
120
+ * Path to package maintainer scripts with their corresponding name, used in the installation
121
+ * procedure.
122
+ *
123
+ * Read More:
124
+ * https://www.debian.org/doc/debian-policy/#package-maintainer-scripts-and-installation-procedure
125
+ */
126
+ scripts?: {
127
+ preinst?: string;
128
+ postinst?: string;
129
+ prerm?: string;
130
+ postrm?: string;
131
+ };
132
+ /**
133
+ * The absolute path to a custom template for the generated FreeDesktop.org desktop entry file.
134
+ */
135
+ desktopTemplate?: string;
136
+ }
137
+ export interface MakerDebConfig {
138
+ options?: MakerDebConfigOptions;
139
+ }
140
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"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"}
package/dist/Config.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,13 @@
1
+ import { MakerBase, MakerOptions } from '@electron-forge/maker-base';
2
+ import { ForgeArch, ForgePlatform } from '@electron-forge/shared-types';
3
+ import { MakerDebConfig } from './Config';
4
+ export declare function debianArch(nodeArch: ForgeArch): string;
5
+ export default class MakerDeb extends MakerBase<MakerDebConfig> {
6
+ name: string;
7
+ defaultPlatforms: ForgePlatform[];
8
+ requiredExternalBinaries: string[];
9
+ isSupportedOnCurrentPlatform(): boolean;
10
+ make({ dir, makeDir, targetArch }: MakerOptions): Promise<string[]>;
11
+ }
12
+ export { MakerDeb, MakerDebConfig };
13
+ //# sourceMappingURL=MakerDeb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakerDeb.d.ts","sourceRoot":"","sources":["../src/MakerDeb.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAExE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,wBAAgB,UAAU,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM,CAatD;AAED,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC7D,IAAI,SAAS;IAEb,gBAAgB,EAAE,aAAa,EAAE,CAAa;IAE9C,wBAAwB,EAAE,MAAM,EAAE,CAAwB;IAE1D,4BAA4B,IAAI,OAAO;IAIjC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAkB1E;AAED,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MakerDeb = exports.debianArch = void 0;
7
+ const node_path_1 = __importDefault(require("node:path"));
8
+ const maker_base_1 = require("@electron-forge/maker-base");
9
+ function debianArch(nodeArch) {
10
+ switch (nodeArch) {
11
+ case 'ia32':
12
+ return 'i386';
13
+ case 'x64':
14
+ return 'amd64';
15
+ case 'armv7l':
16
+ return 'armhf';
17
+ case 'arm':
18
+ return 'armel';
19
+ default:
20
+ return nodeArch;
21
+ }
22
+ }
23
+ exports.debianArch = debianArch;
24
+ class MakerDeb extends maker_base_1.MakerBase {
25
+ constructor() {
26
+ super(...arguments);
27
+ this.name = 'deb';
28
+ this.defaultPlatforms = ['linux'];
29
+ this.requiredExternalBinaries = ['dpkg', 'fakeroot'];
30
+ }
31
+ isSupportedOnCurrentPlatform() {
32
+ return this.isInstalled('electron-installer-debian');
33
+ }
34
+ async make({ dir, makeDir, targetArch }) {
35
+ // eslint-disable-next-line n/no-missing-require
36
+ const installer = require('electron-installer-debian');
37
+ const outDir = node_path_1.default.resolve(makeDir, 'deb', targetArch);
38
+ await this.ensureDirectory(outDir);
39
+ const { packagePaths } = await installer({
40
+ options: {},
41
+ ...this.config,
42
+ arch: debianArch(targetArch),
43
+ src: dir,
44
+ dest: outDir,
45
+ rename: undefined,
46
+ });
47
+ return packagePaths;
48
+ }
49
+ }
50
+ exports.default = MakerDeb;
51
+ exports.MakerDeb = MakerDeb;
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFrZXJEZWIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvTWFrZXJEZWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsMERBQTZCO0FBRTdCLDJEQUFxRTtBQUtyRSxTQUFnQixVQUFVLENBQUMsUUFBbUI7SUFDNUMsUUFBUSxRQUFRLEVBQUUsQ0FBQztRQUNqQixLQUFLLE1BQU07WUFDVCxPQUFPLE1BQU0sQ0FBQztRQUNoQixLQUFLLEtBQUs7WUFDUixPQUFPLE9BQU8sQ0FBQztRQUNqQixLQUFLLFFBQVE7WUFDWCxPQUFPLE9BQU8sQ0FBQztRQUNqQixLQUFLLEtBQUs7WUFDUixPQUFPLE9BQU8sQ0FBQztRQUNqQjtZQUNFLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7QUFDSCxDQUFDO0FBYkQsZ0NBYUM7QUFFRCxNQUFxQixRQUFTLFNBQVEsc0JBQXlCO0lBQS9EOztRQUNFLFNBQUksR0FBRyxLQUFLLENBQUM7UUFFYixxQkFBZ0IsR0FBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU5Qyw2QkFBd0IsR0FBYSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztJQXdCNUQsQ0FBQztJQXRCQyw0QkFBNEI7UUFDMUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBZ0I7UUFDbkQsZ0RBQWdEO1FBQ2hELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBRXZELE1BQU0sTUFBTSxHQUFHLG1CQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFeEQsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQztZQUN2QyxPQUFPLEVBQUUsRUFBRTtZQUNYLEdBQUcsSUFBSSxDQUFDLE1BQU07WUFDZCxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQztZQUM1QixHQUFHLEVBQUUsR0FBRztZQUNSLElBQUksRUFBRSxNQUFNO1lBQ1osTUFBTSxFQUFFLFNBQVM7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBN0JELDJCQTZCQztBQUVRLDRCQUFRIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@electron-forge/maker-deb",
3
- "version": "7.10.1",
3
+ "version": "7.10.2",
4
4
  "description": "Deb maker for Electron Forge",
5
5
  "repository": "https://github.com/electron/forge",
6
6
  "author": "Samuel Attard",
@@ -8,15 +8,15 @@
8
8
  "main": "dist/MakerDeb.js",
9
9
  "typings": "dist/MakerDeb.d.ts",
10
10
  "devDependencies": {
11
- "@electron-forge/test-utils": "7.10.1",
11
+ "@electron-forge/test-utils": "7.10.2",
12
12
  "vitest": "^3.1.3"
13
13
  },
14
14
  "engines": {
15
15
  "node": ">= 16.4.0"
16
16
  },
17
17
  "dependencies": {
18
- "@electron-forge/maker-base": "7.10.1",
19
- "@electron-forge/shared-types": "7.10.1"
18
+ "@electron-forge/maker-base": "7.10.2",
19
+ "@electron-forge/shared-types": "7.10.2"
20
20
  },
21
21
  "optionalDependencies": {
22
22
  "electron-installer-debian": "^3.2.0"
@@ -28,5 +28,5 @@
28
28
  "dist",
29
29
  "src"
30
30
  ],
31
- "gitHead": "a9c9eb7b8476e9c4bbcc4ef80f0ac16166effe94"
31
+ "gitHead": "af12ba0c7b0a43c272ada44c73cc377ee768f4fe"
32
32
  }