penguins-eggs 9.1.31 → 9.1.34

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.
Files changed (89) hide show
  1. package/README.md +59 -18
  2. package/conf/distros/buster/calamares/modules/locale.yml +3 -3
  3. package/conf/eggs.yaml +2 -2
  4. package/lib/classes/compressors.d.ts +7 -0
  5. package/lib/classes/compressors.js +38 -1
  6. package/lib/classes/daddy.js +6 -29
  7. package/lib/classes/distro.js +12 -4
  8. package/lib/classes/incubation/fisherman-helper/packages.js +6 -3
  9. package/lib/classes/keyboards.d.ts +10 -12
  10. package/lib/classes/keyboards.js +19 -23
  11. package/lib/classes/locales.js +15 -10
  12. package/lib/classes/ovary.js +9 -4
  13. package/lib/classes/utils.js +19 -6
  14. package/lib/commands/{install.d.ts → krill.d.ts} +1 -0
  15. package/lib/commands/{install.js → krill.js} +2 -2
  16. package/lib/commands/produce.js +8 -30
  17. package/lib/{classes/krill_prepare.d.ts → krill/krill-prepare.d.ts} +9 -2
  18. package/lib/{classes/krill_prepare.js → krill/krill-prepare.js} +62 -12
  19. package/lib/krill/krill-sequence.d.ts +148 -0
  20. package/lib/krill/krill-sequence.js +533 -0
  21. package/lib/krill/modules/add-user.d.ts +15 -0
  22. package/lib/krill/modules/add-user.js +41 -0
  23. package/lib/krill/modules/bootloader-config-arch.d.ts +9 -0
  24. package/lib/krill/modules/bootloader-config-arch.js +13 -0
  25. package/lib/krill/modules/bootloader-config-ubuntu.d.ts +9 -0
  26. package/lib/krill/modules/bootloader-config-ubuntu.js +93 -0
  27. package/lib/krill/modules/bootloader-config.d.ts +9 -0
  28. package/lib/krill/modules/bootloader-config.js +23 -0
  29. package/lib/krill/modules/bootloader.d.ts +10 -0
  30. package/lib/krill/modules/bootloader.js +17 -0
  31. package/lib/krill/modules/change-password.d.ts +10 -0
  32. package/lib/krill/modules/change-password.js +16 -0
  33. package/lib/krill/modules/del-live-user.d.ts +9 -0
  34. package/lib/krill/modules/del-live-user.js +37 -0
  35. package/lib/krill/modules/fstab.d.ts +9 -0
  36. package/lib/krill/modules/fstab.js +93 -0
  37. package/lib/krill/modules/grubcfg.d.ts +12 -0
  38. package/lib/krill/modules/grubcfg.js +33 -0
  39. package/lib/krill/modules/hostname.d.ts +8 -0
  40. package/lib/krill/modules/hostname.js +13 -0
  41. package/lib/krill/modules/hosts.d.ts +9 -0
  42. package/lib/krill/modules/hosts.js +30 -0
  43. package/lib/krill/modules/initramfs-cfg.d.ts +9 -0
  44. package/lib/krill/modules/initramfs-cfg.js +29 -0
  45. package/lib/krill/modules/initramfs.d.ts +8 -0
  46. package/lib/krill/modules/initramfs.js +30 -0
  47. package/lib/krill/modules/locale.d.ts +8 -0
  48. package/lib/krill/modules/locale.js +47 -0
  49. package/lib/krill/modules/l/303/262cale-cfg.d.ts +5 -0
  50. package/lib/krill/modules/l/303/262cale-cfg.js +58 -0
  51. package/lib/krill/modules/machine-id.d.ts +10 -0
  52. package/lib/krill/modules/machine-id.js +21 -0
  53. package/lib/krill/modules/mkfs.d.ts +8 -0
  54. package/lib/krill/modules/mkfs.js +33 -0
  55. package/lib/krill/modules/mount-fs.d.ts +12 -0
  56. package/lib/krill/modules/mount-fs.js +63 -0
  57. package/lib/krill/modules/mount-vfs.d.ts +12 -0
  58. package/lib/krill/modules/mount-vfs.js +40 -0
  59. package/lib/krill/modules/network-cfg.d.ts +14 -0
  60. package/lib/krill/modules/network-cfg.js +49 -0
  61. package/lib/krill/modules/partitions.d.ts +15 -0
  62. package/lib/krill/modules/partitions.js +307 -0
  63. package/lib/krill/modules/remove-installer-link.d.ts +8 -0
  64. package/lib/krill/modules/remove-installer-link.js +34 -0
  65. package/lib/krill/modules/set-keyboard.d.ts +5 -0
  66. package/lib/krill/modules/set-keyboard.js +50 -0
  67. package/lib/krill/modules/set-timezone.d.ts +9 -0
  68. package/lib/krill/modules/set-timezone.js +21 -0
  69. package/lib/krill/modules/umount.d.ts +9 -0
  70. package/lib/krill/modules/umount.js +26 -0
  71. package/lib/krill/modules/unpackfs.d.ts +8 -0
  72. package/lib/krill/modules/unpackfs.js +17 -0
  73. package/lib/lib/cli-autologin.js +3 -3
  74. package/lib/lib/select_keyboard_variant.js +1 -0
  75. package/manpages/doc/man/eggs.html +122 -90
  76. package/mkinitcpio/README.md +8 -1
  77. package/mkinitcpio/archlinux/mkinitcpio-install.conf +5 -0
  78. package/mkinitcpio/archlinux/mkinitcpio-produce.conf +13 -0
  79. package/mkinitcpio/manjaro/README.md +27 -11
  80. package/mkinitcpio/manjaro/mkinitcpio-install.conf +7 -0
  81. package/mkinitcpio/manjaro/{mkinitcpio.conf → mkinitcpio-produce.conf} +1 -1
  82. package/package.json +1 -1
  83. package/scripts/_eggs +8 -8
  84. package/scripts/eggs.bash +1 -1
  85. package/scripts/mom-cli.sh +8 -8
  86. package/lib/classes/i18n.d.ts +0 -34
  87. package/lib/classes/i18n.js +0 -126
  88. package/lib/classes/krill_install.d.ts +0 -227
  89. package/lib/classes/krill_install.js +0 -1370
@@ -18,6 +18,7 @@ const chalk_1 = tslib_1.__importDefault(require("chalk"));
18
18
  const pacman_1 = tslib_1.__importDefault(require("./pacman"));
19
19
  // import { green, whiteBright } from 'chalk'
20
20
  const child_process_1 = require("child_process");
21
+ const distro_1 = tslib_1.__importDefault(require("./distro"));
21
22
  const pjson = require('../../package.json');
22
23
  /**
23
24
  * Utils: general porpourse utils
@@ -81,15 +82,19 @@ class Utils {
81
82
  }
82
83
  });
83
84
  }
84
- // if vmlinuz exist in /boot
85
85
  if (!fs_1.default.existsSync(vmlinuz)) {
86
+ // check if vmlinuz exist in /boot
86
87
  if (fs_1.default.existsSync('/boot' + vmlinuz)) {
87
88
  vmlinuz = '/boot' + vmlinuz;
88
89
  }
90
+ else {
91
+ vmlinuz = '/path/to/vmlinuz';
92
+ }
89
93
  }
90
- // if vmlinux don't exist
91
- if (!fs_1.default.existsSync(vmlinuz)) {
92
- vmlinuz = '/path/to/vmlinuz';
94
+ // Arch
95
+ let distro = new distro_1.default();
96
+ if (distro.distroId === 'Arch') {
97
+ vmlinuz = '/boot/vmlinuz-linux';
93
98
  }
94
99
  // btrfs
95
100
  if (vmlinuz.indexOf('@') > 0) {
@@ -121,7 +126,14 @@ class Utils {
121
126
  initrd = 'initrd';
122
127
  version = vmlinuz.substring(vmlinuz.indexOf('-'));
123
128
  }
124
- return path + initrd + version;
129
+ let distro = new distro_1.default();
130
+ if (distro.distroId === 'Arch') {
131
+ initrd = '/boot/initramfs-linux.img';
132
+ }
133
+ else {
134
+ initrd = path + initrd + version;
135
+ }
136
+ return initrd;
125
137
  }
126
138
  /**
127
139
  * Occore vedere un modo per creare machine-id dove non esiste
@@ -482,7 +494,8 @@ class Utils {
482
494
  const paths = [
483
495
  '/lib/live/mount',
484
496
  '/lib/live/mount/rootfs/filesystem.squashfs',
485
- '/live/aufs' // mx-linux
497
+ '/live/aufs',
498
+ '/run/miso/sfs/livefs' // manjaro qonos
486
499
  ];
487
500
  for (let i = 0; i < paths.length; i++) {
488
501
  if (Utils.isMountpoint(paths[i])) {
@@ -16,6 +16,7 @@ export default class Install extends Command {
16
16
  help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
17
17
  verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
18
18
  };
19
+ static aliases: string[];
19
20
  static description: string;
20
21
  static examples: string[];
21
22
  /**
@@ -10,7 +10,7 @@ const tslib_1 = require("tslib");
10
10
  const core_1 = require("@oclif/core");
11
11
  const shelljs_1 = tslib_1.__importDefault(require("shelljs"));
12
12
  const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
13
- const krill_prepare_1 = tslib_1.__importDefault(require("../classes/krill_prepare"));
13
+ const krill_prepare_1 = tslib_1.__importDefault(require("../krill/krill-prepare"));
14
14
  const pacman_1 = tslib_1.__importDefault(require("../classes/pacman"));
15
15
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
16
16
  /**
@@ -72,6 +72,6 @@ Install.flags = {
72
72
  help: core_1.Flags.help({ char: 'h' }),
73
73
  verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' })
74
74
  };
75
+ Install.aliases = [`install`];
75
76
  Install.description = 'command-line system installer - the egg became a penguin!';
76
- // static aliases = ['krill']
77
77
  Install.examples = ['$ eggs install\nInstall the system using GUI or CLI installer\n'];
@@ -18,7 +18,6 @@ const config_1 = tslib_1.__importDefault(require("./config"));
18
18
  const chalk_1 = tslib_1.__importDefault(require("chalk"));
19
19
  const node_fs_1 = tslib_1.__importDefault(require("node:fs"));
20
20
  const node_path_1 = tslib_1.__importDefault(require("node:path"));
21
- const settings_1 = tslib_1.__importDefault(require("../classes/settings"));
22
21
  class Produce extends core_1.Command {
23
22
  async run() {
24
23
  utils_1.default.titles(this.id + ' ' + this.argv);
@@ -60,44 +59,23 @@ class Produce extends core_1.Command {
60
59
  if (flags.basename !== undefined) {
61
60
  basename = flags.basename;
62
61
  }
63
- /**
64
- * Analisi del tipo di compressione del kernel
65
- *
66
- */
67
62
  const compressors = new compressors_1.default();
68
63
  await compressors.populate();
69
- let fastest = 'gzip';
70
- if (compressors.isEnabled.zstd) {
71
- fastest = 'zstd -Xcompression-level 1 -b 262144';
72
- }
73
- else if (compressors.isEnabled.lz4) {
74
- fastest = 'lz4';
75
- }
76
- /**
77
- * jessie e stretch will use gzip for fastest
78
- */
79
- const settings = new settings_1.default();
80
- if (settings.distro.codenameLikeId === 'jessie' || settings.distro.codenameLikeId === 'stretch') {
81
- fastest = 'gzip';
82
- }
83
- let compression = ''; // se vuota, compression viene definita da loadsettings, default xz
84
- if (flags.fast) {
85
- compression = fastest;
64
+ let compression = compressors.normal();
65
+ if (flags.max) {
66
+ compression = compressors.max();
86
67
  }
87
- else if (flags.normal) {
88
- compression = 'xz';
68
+ else if (flags.fast) {
69
+ compression = compressors.fast();
89
70
  }
90
- else if (flags.max) {
91
- compression = 'xz -Xbcj x86';
71
+ const release = flags.release;
72
+ if (release) {
73
+ compression = compressors.max();
92
74
  }
93
75
  const backup = flags.backup;
94
76
  const verbose = flags.verbose;
95
77
  const scriptOnly = flags.script;
96
78
  const yolkRenew = flags.yolk;
97
- const release = flags.release;
98
- if (release) {
99
- compression = 'xz -Xbcj x86';
100
- }
101
79
  /**
102
80
  * theme: if not defined will use eggs
103
81
  */
@@ -1,5 +1,12 @@
1
- import Locales from './locales';
2
- import Keyboards from './keyboards';
1
+ /**
2
+ * penguins-eggs: krill
3
+ *
4
+ * author: Piero Proietti
5
+ * mail: piero.proietti@gmail.com
6
+ *
7
+ */
8
+ import Locales from '../classes/locales';
9
+ import Keyboards from '../classes/keyboards';
3
10
  import { INet } from '../interfaces';
4
11
  import { IWelcome, ILocation, IKeyboard, IPartitions, IUsers } from '../interfaces/i-krill';
5
12
  export default class Krill {
@@ -1,14 +1,42 @@
1
1
  "use strict";
2
+ /**
3
+ * penguins-eggs: krill
4
+ *
5
+ * author: Piero Proietti
6
+ * mail: piero.proietti@gmail.com
7
+ *
8
+ */
2
9
  Object.defineProperty(exports, "__esModule", { value: true });
3
10
  const tslib_1 = require("tslib");
11
+ /**
12
+ * Ideally, I want to respect calamares way, remplementing the same (SEMPLIFIED) steps
13
+ * for CLI
14
+ *
15
+ * Phase 1 - prepare.
16
+ * View modules are shown as UI pages, jobs from job modules
17
+ * are executed immediately in the background.
18
+ * - welcome
19
+ * - locale
20
+ * - keyboard
21
+ * - partition
22
+ * - keyboard
23
+ * - users
24
+ * - network
25
+ * - summary
26
+ */
27
+ /**
28
+ * problems:
29
+ *
30
+ */
4
31
  const react_1 = tslib_1.__importDefault(require("react"));
5
32
  const ink_1 = require("ink");
6
- const utils_1 = tslib_1.__importDefault(require("./utils"));
33
+ const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
34
+ const axios_1 = tslib_1.__importDefault(require("axios"));
7
35
  const shelljs_1 = tslib_1.__importDefault(require("shelljs"));
8
36
  const fs_1 = tslib_1.__importDefault(require("fs"));
9
- const systemctl_1 = tslib_1.__importDefault(require("./systemctl"));
10
- const locales_1 = tslib_1.__importDefault(require("./locales"));
11
- const keyboards_1 = tslib_1.__importDefault(require("./keyboards"));
37
+ const systemctl_1 = tslib_1.__importDefault(require("../classes/systemctl"));
38
+ const locales_1 = tslib_1.__importDefault(require("../classes/locales"));
39
+ const keyboards_1 = tslib_1.__importDefault(require("../classes/keyboards"));
12
40
  // libraries
13
41
  const exec = require('../lib/utils').exec;
14
42
  const welcome_1 = tslib_1.__importDefault(require("../components/welcome"));
@@ -40,7 +68,7 @@ const get_netmask_1 = tslib_1.__importDefault(require("../lib/get_netmask"));
40
68
  const get_gateway_1 = tslib_1.__importDefault(require("../lib/get_gateway"));
41
69
  const get_domain_1 = tslib_1.__importDefault(require("../lib/get_domain"));
42
70
  const get_dns_1 = tslib_1.__importDefault(require("../lib/get_dns"));
43
- const krill_install_1 = tslib_1.__importDefault(require("./krill_install"));
71
+ const krill_sequence_1 = tslib_1.__importDefault(require("./krill-sequence"));
44
72
  class Krill {
45
73
  constructor() {
46
74
  this.locales = new locales_1.default();
@@ -78,13 +106,14 @@ class Krill {
78
106
  const oUsers = await this.users();
79
107
  const oNetwork = await this.network();
80
108
  await this.summary(oLocation, oKeyboard, oPartitions);
109
+ // installation
81
110
  await this.install(oLocation, oKeyboard, oPartitions, oUsers, oNetwork, verbose);
82
111
  }
83
112
  /**
84
113
  * WELCOME
85
114
  */
86
115
  async welcome() {
87
- let language = await this.locales.getDefault();
116
+ let language = 'en_US.UTF-8'; // await this.locales.getDefault()
88
117
  let welcomeElem;
89
118
  while (true) {
90
119
  welcomeElem = react_1.default.createElement(welcome_1.default, { language: language });
@@ -99,8 +128,23 @@ class Krill {
99
128
  * LOCATION
100
129
  */
101
130
  async location(language) {
131
+ // get timezone local
102
132
  let region = shelljs_1.default.exec('cut -f1 -d/ < /etc/timezone', { silent: true }).stdout.trim();
103
133
  let zone = shelljs_1.default.exec('cut -f2 -d/ < /etc/timezone', { silent: true }).stdout.trim();
134
+ // Try to auto-configure timezone by internet
135
+ const url = `https://geoip.kde.org/v1/calamares`;
136
+ try {
137
+ const response = await axios_1.default.get(url);
138
+ if (response.statusText === 'OK') {
139
+ const data = JSON.stringify(response.data);
140
+ const obj = JSON.parse(data);
141
+ region = obj.time_zone.substring(0, obj.time_zone.indexOf('/'));
142
+ zone = obj.time_zone.substring(obj.time_zone.indexOf('/') + 1);
143
+ }
144
+ }
145
+ catch (error) {
146
+ console.error('error: ' + error);
147
+ }
104
148
  let locationElem;
105
149
  while (true) {
106
150
  locationElem = react_1.default.createElement(location_1.default, { language: language, region: region, zone: zone });
@@ -132,11 +176,17 @@ class Krill {
132
176
  }
133
177
  else {
134
178
  keyboardModel = 'pc105';
179
+ keyboardModel = await (0, select_keyboard_model_1.default)(keyboardModel);
180
+ keyboardLayout = 'us';
181
+ keyboardLayout = await (0, select_keyboard_layout_1.default)(keyboardLayout);
182
+ keyboardVariant = '';
183
+ keyboardVariant = await (0, select_keyboard_variant_1.default)(keyboardLayout);
184
+ keyboardOption = '';
185
+ keyboardOption = await (0, select_keyboard_option_1.default)(keyboardOption);
186
+ if (keyboardModel === '') {
187
+ keyboardModel = 'pc105';
188
+ }
135
189
  }
136
- keyboardModel = await (0, select_keyboard_model_1.default)(keyboardModel);
137
- keyboardLayout = await (0, select_keyboard_layout_1.default)(keyboardLayout);
138
- keyboardVariant = await (0, select_keyboard_variant_1.default)(keyboardLayout);
139
- keyboardOption = await (0, select_keyboard_option_1.default)(keyboardOption);
140
190
  }
141
191
  return {
142
192
  keyboardModel: keyboardModel,
@@ -286,8 +336,8 @@ class Krill {
286
336
  * INSTALL
287
337
  */
288
338
  async install(location, keyboard, partitions, users, network, verbose = false) {
289
- const hatching = new krill_install_1.default(location, keyboard, partitions, users, network);
290
- hatching.install(verbose);
339
+ const sequence = new krill_sequence_1.default(location, keyboard, partitions, users, network);
340
+ sequence.install(verbose);
291
341
  }
292
342
  /**
293
343
  * return true if pv exist
@@ -0,0 +1,148 @@
1
+ /**
2
+ * penguins-eggs: krill_sequence
3
+ *
4
+ * author: Piero Proietti
5
+ * mail: piero.proietti@gmail.com
6
+ *
7
+ */
8
+ /**
9
+ * Note: I'm using REACT here to get a TUI,
10
+ * via ink library https://github.com/vadimdemedes/ink
11
+ */
12
+ /**
13
+ * Ideally, I want to respect calamares way, remplementing the same (SEMPLIFIED) steps for CLI
14
+ *
15
+ * Phase 2 - install.
16
+ *
17
+ * - partition: partitions
18
+ * - mount: mountFs, mountVfs
19
+ * - unpackfs: unpackfs
20
+ * - _restore: eggs syncfrom --rootdir /tmp/calamares-krill-root/
21
+ * - sources-yolk: execCalamaresModule('sources-yolk')
22
+ * - machineid: machineid
23
+ * - fstab: fstab
24
+ * - locale locale
25
+ * - keyboard: keyboard
26
+ * - localecfg: localecfg
27
+ * - users: users
28
+ * - displaymanager: autologin
29
+ * - networkcfg: networkcfg
30
+ * - hwclock:
31
+ * - services-systemd:
32
+ * - bootloader-config: execCalamaresModule('bootloader-config')
33
+ * - grubcfg: grubcfg
34
+ * - bootloader: bootloaded
35
+ * - packages: removeInstaller
36
+ * - luksbootkeyfile:
37
+ * - plymouthcfg;
38
+ * - initramfscfg: initramfscfg
39
+ * - initramfs: initramfs
40
+ * - removeuser: removeuser
41
+ * - sources-yolk-unmount: execCalamaresModule('sources-yolk-unmount')
42
+ * - umount: umountVfs, this.umountFs
43
+ */
44
+ import { IRemix, IDistro, INet } from '../interfaces';
45
+ import Settings from '../classes/settings';
46
+ import { IInstaller, IDevices } from '../interfaces';
47
+ import { ILocation, IKeyboard, IPartitions, IUsers } from '../interfaces/i-krill';
48
+ import partition from './modules/partitions';
49
+ import { mountFs, umountFs } from './modules/mount-fs';
50
+ import { mountVfs, umountVfs } from './modules/mount-vfs';
51
+ import unpackfs from './modules/unpackfs';
52
+ import machineId from './modules/machine-id';
53
+ import fstab from './modules/fstab';
54
+ import locale from './modules/locale';
55
+ import setKeyboard from './modules/set-keyboard';
56
+ import localeCfg from './modules/lòcale-cfg';
57
+ import addUser from './modules/add-user';
58
+ import changePassword from './modules/change-password';
59
+ import networkCfg from './modules/network-cfg';
60
+ import bootloaderConfig from './modules/bootloader-config';
61
+ import bootloaderConfigArch from './modules/bootloader-config-arch';
62
+ import bootloaderConfigUbuntu from './modules/bootloader-config-ubuntu';
63
+ import grubcfg from './modules/grubcfg';
64
+ import bootloader from './modules/bootloader';
65
+ import removeInstallerLink from './modules/remove-installer-link';
66
+ import initramfsCfg from './modules/initramfs-cfg';
67
+ import initramfs from './modules/initramfs';
68
+ import delLiveUser from './modules/del-live-user';
69
+ import setTimezone from './modules/set-timezone';
70
+ import umount from './modules/umount';
71
+ import mkfs from './modules/mkfs';
72
+ import hostname from './modules/hostname';
73
+ import hosts from './modules/hosts';
74
+ /**
75
+ * hatching: installazione o cova!!!
76
+ */
77
+ export default class Sequence {
78
+ partition: typeof partition;
79
+ mountFs: typeof mountFs;
80
+ mountVfs: typeof mountVfs;
81
+ unpackfs: typeof unpackfs;
82
+ machineId: typeof machineId;
83
+ fstab: typeof fstab;
84
+ locale: typeof locale;
85
+ setKeyboard: typeof setKeyboard;
86
+ localeCfg: typeof localeCfg;
87
+ addUser: typeof addUser;
88
+ changePassword: typeof changePassword;
89
+ networkCfg: typeof networkCfg;
90
+ bootloaderConfig: typeof bootloaderConfig;
91
+ bootloaderConfigArch: typeof bootloaderConfigArch;
92
+ bootloaderConfigUbuntu: typeof bootloaderConfigUbuntu;
93
+ grubcfg: typeof grubcfg;
94
+ bootloader: typeof bootloader;
95
+ removeInstallerLink: typeof removeInstallerLink;
96
+ initramfsCfg: typeof initramfsCfg;
97
+ initramfs: typeof initramfs;
98
+ delLiveUser: typeof delLiveUser;
99
+ umountFs: typeof umountFs;
100
+ umountVfs: typeof umountVfs;
101
+ setTimezone: typeof setTimezone;
102
+ umount: typeof umount;
103
+ mkfs: typeof mkfs;
104
+ hostname: typeof hostname;
105
+ hosts: typeof hosts;
106
+ installer: IInstaller;
107
+ installTarget: string;
108
+ verbose: boolean;
109
+ echo: {};
110
+ efi: boolean;
111
+ devices: IDevices;
112
+ users: IUsers;
113
+ network: INet;
114
+ partitions: IPartitions;
115
+ language: string;
116
+ region: string;
117
+ zone: string;
118
+ keyboardModel: string;
119
+ keyboardLayout: string;
120
+ keyboardVariant: string;
121
+ toNull: string;
122
+ settings: Settings;
123
+ remix: IRemix;
124
+ distro: IDistro;
125
+ luksName: string;
126
+ luksFile: string;
127
+ luksDevice: string;
128
+ luksMountpoint: string;
129
+ /**
130
+ * constructor
131
+ */
132
+ constructor(location: ILocation, keyboard: IKeyboard, partitions: IPartitions, users: IUsers, network: INet);
133
+ /**
134
+ * install
135
+ * @param verbose
136
+ * @param umount
137
+ * @returns
138
+ */
139
+ install(verbose?: boolean): Promise<void>;
140
+ /**
141
+ *
142
+ */
143
+ execCalamaresModule(name: string): Promise<void>;
144
+ /**
145
+ * only show the result
146
+ */
147
+ finished(): Promise<void>;
148
+ }