penguins-eggs 9.2.2 → 9.2.4

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 (87) hide show
  1. package/README.md +145 -130
  2. package/addons/eggs/theme/livecd/isolinux.theme.cfg +36 -41
  3. package/conf/eggs.yaml +41 -73
  4. package/conf/exclude.list +1 -0
  5. package/conf/krill.yaml +38 -0
  6. package/lib/classes/daddy.d.ts +2 -2
  7. package/lib/classes/distro.d.ts +2 -0
  8. package/lib/classes/distro.js +6 -0
  9. package/lib/classes/incubation/fisherman.js +1 -1
  10. package/lib/classes/pacman.js +3 -2
  11. package/lib/classes/pxe.d.ts +42 -0
  12. package/lib/classes/pxe.js +242 -0
  13. package/lib/classes/settings.d.ts +3 -3
  14. package/lib/classes/settings.js +2 -1
  15. package/lib/classes/tools.d.ts +2 -2
  16. package/lib/classes/utils.d.ts +1 -1
  17. package/lib/classes/utils.js +1 -1
  18. package/lib/commands/cuckoo.d.ts +24 -0
  19. package/lib/commands/cuckoo.js +69 -0
  20. package/lib/commands/install.d.ts +2 -2
  21. package/lib/commands/install.js +8 -14
  22. package/lib/commands/produce.js +3 -3
  23. package/lib/commands/{info.d.ts → status.d.ts} +1 -1
  24. package/lib/commands/{info.js → status.js} +5 -5
  25. package/lib/components/summary.d.ts +6 -1
  26. package/lib/components/summary.js +25 -8
  27. package/lib/components/users.js +3 -4
  28. package/lib/interfaces/i-config-tools.d.ts +1 -1
  29. package/lib/interfaces/i-distro.d.ts +2 -0
  30. package/lib/interfaces/{i-config.d.ts → i-eggs-config.d.ts} +2 -4
  31. package/lib/interfaces/{i-config.js → i-eggs-config.js} +0 -0
  32. package/lib/interfaces/i-krill-config.d.ts +26 -0
  33. package/lib/interfaces/i-krill-config.js +2 -0
  34. package/lib/interfaces/i-packages.d.ts +6 -9
  35. package/lib/interfaces/i-packages.js +3 -0
  36. package/lib/interfaces/index.d.ts +1 -1
  37. package/lib/krill/krill-prepare.d.ts +5 -3
  38. package/lib/krill/krill-prepare.js +159 -35
  39. package/lib/krill/krill-sequence.d.ts +5 -3
  40. package/lib/krill/krill-sequence.js +26 -12
  41. package/lib/krill/modules/fstab.d.ts +5 -0
  42. package/lib/krill/modules/fstab.js +5 -0
  43. package/lib/krill/modules/grubcfg.d.ts +5 -0
  44. package/lib/krill/modules/grubcfg.js +5 -0
  45. package/lib/krill/modules/hostname.d.ts +5 -0
  46. package/lib/krill/modules/hostname.js +5 -0
  47. package/lib/krill/modules/hosts.d.ts +5 -0
  48. package/lib/krill/modules/hosts.js +5 -0
  49. package/lib/krill/modules/initramfs-cfg.d.ts +5 -0
  50. package/lib/krill/modules/initramfs-cfg.js +5 -0
  51. package/lib/krill/modules/initramfs.d.ts +5 -0
  52. package/lib/krill/modules/initramfs.js +5 -0
  53. package/lib/krill/modules/locale-cfg.d.ts +5 -0
  54. package/lib/krill/modules/locale-cfg.js +5 -0
  55. package/lib/krill/modules/locale.d.ts +5 -0
  56. package/lib/krill/modules/locale.js +5 -0
  57. package/lib/krill/modules/machine-id.d.ts +5 -0
  58. package/lib/krill/modules/machine-id.js +5 -0
  59. package/lib/krill/modules/mkfs.d.ts +5 -0
  60. package/lib/krill/modules/mkfs.js +5 -0
  61. package/lib/krill/modules/mount-fs.d.ts +5 -0
  62. package/lib/krill/modules/mount-fs.js +5 -0
  63. package/lib/krill/modules/mount-vfs.d.ts +5 -0
  64. package/lib/krill/modules/mount-vfs.js +5 -0
  65. package/lib/krill/modules/network-cfg.d.ts +5 -0
  66. package/lib/krill/modules/network-cfg.js +5 -0
  67. package/lib/krill/modules/packages.d.ts +14 -0
  68. package/lib/krill/modules/packages.js +65 -0
  69. package/lib/krill/modules/{partitions.d.ts → partition.d.ts} +5 -0
  70. package/lib/krill/modules/{partitions.js → partition.js} +5 -0
  71. package/lib/krill/modules/remove-installer-link.d.ts +5 -0
  72. package/lib/krill/modules/remove-installer-link.js +5 -0
  73. package/lib/krill/modules/set-keyboard.d.ts +5 -0
  74. package/lib/krill/modules/set-keyboard.js +37 -18
  75. package/lib/krill/modules/set-timezone.d.ts +5 -0
  76. package/lib/krill/modules/set-timezone.js +5 -0
  77. package/lib/krill/modules/umount.d.ts +5 -0
  78. package/lib/krill/modules/umount.js +5 -0
  79. package/lib/krill/modules/unpackfs.d.ts +5 -0
  80. package/lib/krill/modules/unpackfs.js +5 -0
  81. package/manpages/doc/man/eggs.1.gz +0 -0
  82. package/manpages/doc/man/eggs.html +72 -83
  83. package/package.json +6 -2
  84. package/scripts/_eggs +23 -24
  85. package/scripts/eggs.bash +4 -4
  86. package/scripts/mom-cli.sh +11 -11
  87. package/manpages/doc/man/eggs.roll.gz +0 -0
@@ -0,0 +1,24 @@
1
+ /**
2
+ * penguins-eggs-v7 based on Debian live
3
+ * author: Piero Proietti
4
+ * email: piero.proietti@gmail.com
5
+ * license: MIT
6
+ */
7
+ import { Command } from '@oclif/core';
8
+ import { IWorkDir } from '../interfaces/i-workdir';
9
+ /**
10
+ *
11
+ */
12
+ export default class Cuckoo extends Command {
13
+ config_file: string;
14
+ snapshot_dir: string;
15
+ work_dir: IWorkDir;
16
+ static description: string;
17
+ static flags: {
18
+ full: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
19
+ help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
20
+ verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
21
+ };
22
+ static examples: string[];
23
+ run(): Promise<void>;
24
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ /**
5
+ * penguins-eggs-v7 based on Debian live
6
+ * author: Piero Proietti
7
+ * email: piero.proietti@gmail.com
8
+ * license: MIT
9
+ */
10
+ const core_1 = require("@oclif/core");
11
+ const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
12
+ const pacman_1 = tslib_1.__importDefault(require("../classes/pacman"));
13
+ const pxe_1 = tslib_1.__importDefault(require("../classes/pxe"));
14
+ const utils_2 = require("../lib/utils");
15
+ const distro_1 = tslib_1.__importDefault(require("../classes/distro"));
16
+ /**
17
+ *
18
+ */
19
+ class Cuckoo extends core_1.Command {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.config_file = '/etc/penguins-eggs.d/eggs.yaml';
23
+ this.snapshot_dir = '';
24
+ this.work_dir = {};
25
+ }
26
+ async run() {
27
+ utils_1.default.titles(this.id + ' ' + this.argv);
28
+ const { flags } = await this.parse(Cuckoo);
29
+ let verbose = flags.verbose;
30
+ const echo = utils_1.default.setEcho(verbose);
31
+ let full = flags.full;
32
+ const distro = new distro_1.default();
33
+ if (distro.familyId === 'debian') {
34
+ if (utils_1.default.isRoot()) {
35
+ if (!pacman_1.default.packageIsInstalled('dnsmasq') ||
36
+ (!pacman_1.default.packageIsInstalled("pxelinux"))) {
37
+ console.log('eggs cuckoo need to nstall dnsmasq and pxelinux.');
38
+ if (await utils_1.default.customConfirm()) {
39
+ console.log('Installing dnsmasq and pxelinux... wait a moment');
40
+ await (0, utils_2.exec)('sudo apt-get update -y', utils_1.default.setEcho(false));
41
+ await (0, utils_2.exec)('sudo apt-get install dnsmasq pxelinux -y', utils_1.default.setEcho(false));
42
+ }
43
+ else {
44
+ console.log('You need to install dnsmasq to start cuckoo PXE server');
45
+ process.exit();
46
+ }
47
+ }
48
+ const pxe = new pxe_1.default();
49
+ await pxe.fertilization();
50
+ await pxe.structure();
51
+ await pxe.dnsMasq(full);
52
+ await pxe.httpStart();
53
+ console.log(`Serving PXE boot, read more at: http://${utils_1.default.address()}`);
54
+ console.log(`CTRL-c to quit`);
55
+ }
56
+ }
57
+ else {
58
+ console.log(`Sorry: actually cuckoo is enabled just for debian family!`);
59
+ }
60
+ }
61
+ }
62
+ exports.default = Cuckoo;
63
+ Cuckoo.description = 'cuckoo start a PXE boot server serving the live image';
64
+ Cuckoo.flags = {
65
+ full: core_1.Flags.boolean({ char: 'f' }),
66
+ help: core_1.Flags.help({ char: 'h' }),
67
+ verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' })
68
+ };
69
+ Cuckoo.examples = ['$ sudo eggs cuckoo\nstart a PXE boot server'];
@@ -6,16 +6,16 @@
6
6
  */
7
7
  import { Command } from '@oclif/core';
8
8
  /**
9
- * Class Install
9
+ * Class Krill
10
10
  */
11
11
  export default class Install extends Command {
12
12
  static flags: {
13
+ unattended: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
14
  crypted: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
15
  pve: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
16
  help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
16
17
  verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
17
18
  };
18
- static aliases: string[];
19
19
  static description: string;
20
20
  static examples: string[];
21
21
  /**
@@ -11,7 +11,7 @@ const core_1 = require("@oclif/core");
11
11
  const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
12
12
  const krill_prepare_1 = tslib_1.__importDefault(require("../krill/krill-prepare"));
13
13
  /**
14
- * Class Install
14
+ * Class Krill
15
15
  */
16
16
  class Install extends core_1.Command {
17
17
  /**
@@ -20,23 +20,17 @@ class Install extends core_1.Command {
20
20
  async run() {
21
21
  utils_1.default.titles(this.id + ' ' + this.argv);
22
22
  const { flags } = await this.parse(Install);
23
- let crypted = false;
24
- if (flags.crypted) {
25
- crypted = true;
26
- }
27
- let pve = false;
28
- if (flags.pve) {
29
- pve = true;
23
+ let unattended = flags.unattended;
24
+ let crypted = flags.crypted;
25
+ let pve = flags.pve;
26
+ if (pve) {
30
27
  crypted = false;
31
28
  }
32
- let verbose = false;
33
- if (flags.verbose) {
34
- verbose = true;
35
- }
29
+ let verbose = flags.verbose;
36
30
  if (utils_1.default.isRoot()) {
37
31
  if (utils_1.default.isLive()) {
38
32
  const krill = new krill_prepare_1.default();
39
- await krill.prepare(crypted, pve, verbose);
33
+ await krill.prepare(unattended, crypted, pve, verbose);
40
34
  }
41
35
  else {
42
36
  utils_1.default.warning('You are in an installed system!');
@@ -49,11 +43,11 @@ class Install extends core_1.Command {
49
43
  }
50
44
  exports.default = Install;
51
45
  Install.flags = {
46
+ unattended: core_1.Flags.boolean({ char: 'u', description: 'unattended CLI installation' }),
52
47
  crypted: core_1.Flags.boolean({ char: 'k', description: 'crypted CLI installation' }),
53
48
  pve: core_1.Flags.boolean({ char: 'p', description: 'Proxmox VE install' }),
54
49
  help: core_1.Flags.help({ char: 'h' }),
55
50
  verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' })
56
51
  };
57
- Install.aliases = [`krill`];
58
52
  Install.description = 'command-line system installer - the egg became a penguin!';
59
53
  Install.examples = ['$ eggs install\nInstall the system using krill installer\n'];
@@ -66,9 +66,9 @@ class Produce extends core_1.Command {
66
66
  compression = compressors.fast();
67
67
  }
68
68
  const release = flags.release;
69
- if (release) {
70
- compression = compressors.max();
71
- }
69
+ // if (release) {
70
+ // compression = compressors.max()
71
+ // }
72
72
  const backup = flags.backup;
73
73
  const clone = flags.clone;
74
74
  const verbose = flags.verbose;
@@ -5,7 +5,7 @@ import { Command } from '@oclif/core';
5
5
  /**
6
6
  *
7
7
  */
8
- export default class Info extends Command {
8
+ export default class Status extends Command {
9
9
  static description: string;
10
10
  static flags: {
11
11
  verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
@@ -9,12 +9,12 @@ const information_1 = tslib_1.__importDefault(require("../components/elements/in
9
9
  /**
10
10
  *
11
11
  */
12
- class Info extends core_1.Command {
12
+ class Status extends core_1.Command {
13
13
  /**
14
14
  *
15
15
  */
16
16
  async run() {
17
- const { flags } = await this.parse(Info);
17
+ const { flags } = await this.parse(Status);
18
18
  let verbose = false;
19
19
  if (flags.verbose) {
20
20
  verbose = true;
@@ -22,9 +22,9 @@ class Info extends core_1.Command {
22
22
  await (0, information_1.default)(verbose);
23
23
  }
24
24
  }
25
- exports.default = Info;
26
- Info.description = 'informations about eggs configuration';
27
- Info.flags = {
25
+ exports.default = Status;
26
+ Status.description = 'informations about eggs status';
27
+ Status.flags = {
28
28
  verbose: core_1.Flags.boolean({ char: 'v' }),
29
29
  help: core_1.Flags.help({ char: 'h' })
30
30
  };
@@ -6,6 +6,11 @@ declare type SummaryProps = {
6
6
  keyboardModel: string;
7
7
  keyboardLayout: string;
8
8
  installationDevice: string;
9
+ name: string;
10
+ password: string;
11
+ rootPassword: string;
12
+ hostname: string;
13
+ message: string;
9
14
  };
10
- export default function Summary({ region, zone, language, keyboardModel, keyboardLayout, installationDevice }: SummaryProps): JSX.Element;
15
+ export default function Summary({ name, password, rootPassword, hostname, region, zone, language, keyboardModel, keyboardLayout, installationDevice, message }: SummaryProps): JSX.Element;
11
16
  export {};
@@ -10,7 +10,7 @@ const title_1 = tslib_1.__importDefault(require("./elements/title"));
10
10
  const steps_1 = tslib_1.__importDefault(require("./elements/steps"));
11
11
  const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
12
12
  const fs_1 = tslib_1.__importDefault(require("fs"));
13
- function Summary({ region, zone, language, keyboardModel, keyboardLayout, installationDevice }) {
13
+ function Summary({ name, password, rootPassword, hostname, region, zone, language, keyboardModel, keyboardLayout, installationDevice, message }) {
14
14
  let productName = 'unknown';
15
15
  let version = 'x.x.x';
16
16
  let configRoot = '/etc/penguins-eggs.d/krill/';
@@ -34,6 +34,22 @@ function Summary({ region, zone, language, keyboardModel, keyboardLayout, instal
34
34
  react_1.default.createElement(ink_1.Box, { flexDirection: "row" },
35
35
  react_1.default.createElement(steps_1.default, { step: 7 }),
36
36
  react_1.default.createElement(ink_1.Box, { flexDirection: "column" },
37
+ react_1.default.createElement(ink_1.Box, null,
38
+ react_1.default.createElement(ink_1.Text, null, "Installing "),
39
+ react_1.default.createElement(ink_1.Text, { color: "green" }, productName)),
40
+ react_1.default.createElement(ink_1.Box, null,
41
+ react_1.default.createElement(ink_1.Text, null, "User "),
42
+ react_1.default.createElement(ink_1.Text, { color: "green" }, name),
43
+ react_1.default.createElement(ink_1.Text, null, "/"),
44
+ react_1.default.createElement(ink_1.Text, { color: "green" },
45
+ password,
46
+ " "),
47
+ react_1.default.createElement(ink_1.Text, null, "root pwd "),
48
+ react_1.default.createElement(ink_1.Text, { color: "green" },
49
+ rootPassword,
50
+ " "),
51
+ react_1.default.createElement(ink_1.Text, null, "hostname "),
52
+ react_1.default.createElement(ink_1.Text, { color: "green" }, hostname)),
37
53
  react_1.default.createElement(ink_1.Box, null,
38
54
  react_1.default.createElement(ink_1.Text, null, "Set timezone to "),
39
55
  react_1.default.createElement(ink_1.Text, { color: "green" },
@@ -44,18 +60,19 @@ function Summary({ region, zone, language, keyboardModel, keyboardLayout, instal
44
60
  react_1.default.createElement(ink_1.Text, null, "The system language will be set to "),
45
61
  react_1.default.createElement(ink_1.Text, { color: "green" }, language)),
46
62
  react_1.default.createElement(ink_1.Box, null,
47
- react_1.default.createElement(ink_1.Text, null, "The numbers and date locale will be set to "),
63
+ react_1.default.createElement(ink_1.Text, null, "Numbers and date locale will be set to "),
48
64
  react_1.default.createElement(ink_1.Text, { color: "green" }, language)),
49
65
  react_1.default.createElement(ink_1.Box, null,
50
66
  react_1.default.createElement(ink_1.Text, null, "Set keyboard model to "),
51
- react_1.default.createElement(ink_1.Text, { color: "green" }, keyboardModel)),
52
- react_1.default.createElement(ink_1.Box, null,
53
- react_1.default.createElement(ink_1.Text, null, "Set keyboard layout to "),
67
+ react_1.default.createElement(ink_1.Text, { color: "green" },
68
+ keyboardModel,
69
+ " "),
70
+ react_1.default.createElement(ink_1.Text, null, "layout "),
54
71
  react_1.default.createElement(ink_1.Text, { color: "green" }, keyboardLayout)),
55
72
  react_1.default.createElement(ink_1.Box, null,
56
73
  react_1.default.createElement(ink_1.Text, { bold: true }, "Erase disk "),
57
- react_1.default.createElement(ink_1.Text, { color: "green" }, installationDevice),
58
- react_1.default.createElement(ink_1.Text, null, ", install "),
59
- react_1.default.createElement(ink_1.Text, { color: "green" }, productName))))))));
74
+ react_1.default.createElement(ink_1.Text, { color: "green" }, installationDevice)),
75
+ react_1.default.createElement(ink_1.Box, null,
76
+ react_1.default.createElement(ink_1.Text, { color: "red" }, message))))))));
60
77
  }
61
78
  exports.default = Summary;
@@ -6,12 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const tslib_1 = require("tslib");
7
7
  const react_1 = tslib_1.__importStar(require("react"));
8
8
  const ink_1 = require("ink");
9
- // import Spinner from 'ink-spinner';
10
9
  const title_1 = tslib_1.__importDefault(require("./elements/title"));
11
10
  const steps_1 = tslib_1.__importDefault(require("./elements/steps"));
12
11
  const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
13
12
  const fs_1 = tslib_1.__importDefault(require("fs"));
14
- //create your forceUpdate hook
13
+ // create your forceUpdate hook
15
14
  function useForceUpdate() {
16
15
  const [value, setValue] = (0, react_1.useState)(0); // integer state
17
16
  return () => setValue((value) => value + 1); // update the state to force render
@@ -38,9 +37,9 @@ function Users({ name, fullname, password, rootPassword, hostname, autologin, sa
38
37
  * step width=15
39
38
  * finestra with=59
40
39
  */
41
- let charAutologin = " ";
40
+ let charAutologin = "[x] ";
42
41
  if (autologin) {
43
- charAutologin = "x";
42
+ charAutologin = "[ ]";
44
43
  }
45
44
  if (sameUserPassword) {
46
45
  rootPassword = password;
@@ -1,4 +1,4 @@
1
- export interface IConfigTools {
1
+ export interface IEggsConfigTools {
2
2
  remoteHost: string;
3
3
  remoteUser: string;
4
4
  remotePathDeb: string;
@@ -9,6 +9,8 @@ export interface IDistro {
9
9
  usrLibPath: string;
10
10
  isolinuxPath: string;
11
11
  syslinuxPath: string;
12
+ pxelinuxPath: string;
13
+ liveMediumPath: string;
12
14
  mountpointSquashFs: string;
13
15
  homeUrl: string;
14
16
  supportUrl: string;
@@ -1,4 +1,4 @@
1
- export interface IConfig {
1
+ export interface IEggsConfig {
2
2
  version: string;
3
3
  snapshot_dir: string;
4
4
  snapshot_basename: string;
@@ -15,11 +15,9 @@ export interface IConfig {
15
15
  compression: string;
16
16
  ssh_pass: boolean;
17
17
  timezone: string;
18
- locales: string[];
19
18
  locales_default: string;
19
+ locales: string[];
20
20
  pmount_fixed: boolean;
21
- netconfig_opt: string;
22
- ifnames_opt: string;
23
21
  machine_id: string;
24
22
  vmlinuz: string;
25
23
  initrd_img: string;
File without changes
@@ -0,0 +1,26 @@
1
+ export interface IKrillConfig {
2
+ language: string;
3
+ region: string;
4
+ zone: string;
5
+ keyboardModel: string;
6
+ keyboardLayout: string;
7
+ keyboardVariant: string;
8
+ keyboardOption: string;
9
+ installationDevice: string;
10
+ installationMode: string;
11
+ filesystemType: string;
12
+ userSwapChoice: string;
13
+ name: string;
14
+ fullname: string;
15
+ password: string;
16
+ rootPassword: string;
17
+ autologin: boolean;
18
+ hostname: string;
19
+ iface: string;
20
+ addressType: string;
21
+ address: string;
22
+ netmask: string;
23
+ gateway: string;
24
+ domain: string;
25
+ dns: string;
26
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,13 +1,10 @@
1
1
  /**
2
- * packages.ts
2
+ * calamares module packages
3
3
  */
4
- export interface Packages {
5
- name: string;
6
- version: string;
7
- mantainer: string;
8
- architecture: string;
9
- description: string;
10
- binaryDependencies: {
11
- depends: string[];
4
+ export interface IPackages {
5
+ backend: string;
6
+ operations: {
7
+ remove: string[];
8
+ try_install: string[];
12
9
  };
13
10
  }
@@ -1,2 +1,5 @@
1
1
  "use strict";
2
+ /**
3
+ * calamares module packages
4
+ */
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -9,8 +9,8 @@ export { IInitrd } from './i-initrd';
9
9
  export { IWorkDir } from './i-workdir';
10
10
  export { IInstall } from './i-install';
11
11
  export { IExec } from './i-exec';
12
- export { IConfig } from './i-config';
13
12
  export { IInstaller } from './i-installer';
13
+ export { IEggsConfig } from './i-eggs-config';
14
14
  export { IBranding } from './i-branding';
15
15
  export { ISettings } from './i-settings';
16
16
  export { IPartitions } from './i-partitions';
@@ -5,6 +5,7 @@
5
5
  * mail: piero.proietti@gmail.com
6
6
  *
7
7
  */
8
+ import { IKrillConfig } from '../interfaces/i-krill-config';
8
9
  import Locales from '../classes/locales';
9
10
  import Keyboards from '../classes/keyboards';
10
11
  import { INet } from '../interfaces';
@@ -13,12 +14,13 @@ import { IWelcome, ILocation, IKeyboard, IPartitions, IUsers } from '../interfac
13
14
  *
14
15
  */
15
16
  export default class Krill {
17
+ krillConfig: IKrillConfig;
16
18
  locales: Locales;
17
19
  keyboards: Keyboards;
18
20
  /**
19
21
  * @param cryped
20
22
  */
21
- prepare(cryped?: boolean, pve?: boolean, verbose?: boolean): Promise<void>;
23
+ prepare(unattended?: boolean, cryped?: boolean, pve?: boolean, verbose?: boolean): Promise<void>;
22
24
  /**
23
25
  * WELCOME
24
26
  */
@@ -46,11 +48,11 @@ export default class Krill {
46
48
  /**
47
49
  * SUMMARY
48
50
  */
49
- summary(location: ILocation, keyboard: IKeyboard, partitions: IPartitions): Promise<void>;
51
+ summary(location: ILocation, keyboard: IKeyboard, partitions: IPartitions, users: IUsers, unattended?: boolean): Promise<void>;
50
52
  /**
51
53
  * INSTALL
52
54
  */
53
- install(location: ILocation, keyboard: IKeyboard, partitions: IPartitions, users: IUsers, network: INet, verbose?: boolean): Promise<void>;
55
+ install(location: ILocation, keyboard: IKeyboard, partitions: IPartitions, users: IUsers, network: INet, unattended?: boolean, verbose?: boolean): Promise<void>;
54
56
  /**
55
57
  * return true if pv exist
56
58
  */