penguins-eggs 10.0.57 → 10.0.60

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 (238) hide show
  1. package/.oclif.manifest.json +8 -1
  2. package/README.md +35 -34
  3. package/addons/eggs/theme/livecd/grub.main.full.cfg +0 -6
  4. package/assets/config.cfg +30 -0
  5. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +8 -1
  6. package/conf/distros/buster/calamares/modules/partition.yml +159 -23
  7. package/conf/distros/buster/calamares/modules/removeuser.yml +1 -1
  8. package/conf/exclude.list.d/master.list +1 -0
  9. package/conf/krill.yaml +8 -0
  10. package/dist/classes/distro.js +1 -1
  11. package/dist/classes/incubation/incubator.d/alpine.js +1 -1
  12. package/dist/classes/incubation/incubator.d/bionic.js +1 -1
  13. package/dist/classes/incubation/incubator.d/buster.js +1 -1
  14. package/dist/classes/incubation/incubator.d/noble.js +1 -1
  15. package/dist/classes/incubation/incubator.d/openmamba.js +1 -1
  16. package/dist/classes/incubation/incubator.d/opensuse.js +1 -1
  17. package/dist/classes/incubation/incubator.d/rolling.js +1 -1
  18. package/dist/classes/ovary.d/bind-live-fs.d.ts +18 -0
  19. package/dist/classes/ovary.d/bind-live-fs.js +185 -0
  20. package/dist/classes/ovary.d/bind-vfs.d.ts +17 -0
  21. package/dist/classes/ovary.d/bind-vfs.js +37 -0
  22. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +13 -0
  23. package/dist/classes/ovary.d/create-xdg-autostart.js +194 -0
  24. package/dist/classes/ovary.d/edit-live-fs.d.ts +19 -0
  25. package/dist/classes/ovary.d/edit-live-fs.js +249 -0
  26. package/dist/classes/ovary.d/fertilization.d.ts +12 -0
  27. package/dist/classes/ovary.d/fertilization.js +46 -0
  28. package/dist/classes/ovary.d/finished.d.ts +13 -0
  29. package/dist/classes/ovary.d/finished.js +41 -0
  30. package/dist/classes/ovary.d/initrd.d.ts +21 -0
  31. package/dist/classes/ovary.d/initrd.js +72 -0
  32. package/dist/classes/ovary.d/kernel-copy.d.ts +12 -0
  33. package/dist/classes/ovary.d/kernel-copy.js +36 -0
  34. package/dist/classes/ovary.d/live-create-structure.d.ts +12 -0
  35. package/dist/classes/ovary.d/live-create-structure.js +90 -0
  36. package/dist/classes/ovary.d/make-dot-disk.d.ts +12 -0
  37. package/dist/classes/ovary.d/make-dot-disk.js +40 -0
  38. package/dist/classes/ovary.d/make-efi.d.ts +12 -0
  39. package/dist/classes/ovary.d/make-efi.js +268 -0
  40. package/dist/classes/ovary.d/make-iso.d.ts +13 -0
  41. package/dist/classes/ovary.d/make-iso.js +45 -0
  42. package/dist/classes/ovary.d/make-squashfs.d.ts +18 -0
  43. package/dist/classes/ovary.d/make-squashfs.js +117 -0
  44. package/dist/classes/ovary.d/merged.d.ts +31 -0
  45. package/dist/classes/ovary.d/merged.js +87 -0
  46. package/dist/classes/ovary.d/produce.d.ts +23 -0
  47. package/dist/classes/ovary.d/produce.js +287 -0
  48. package/dist/classes/ovary.d/rexec.d.ts +13 -0
  49. package/dist/classes/ovary.d/rexec.js +34 -0
  50. package/dist/classes/ovary.d/syslinux.d.ts +12 -0
  51. package/dist/classes/ovary.d/syslinux.js +79 -0
  52. package/dist/classes/ovary.d/user-create-live.d.ts +14 -0
  53. package/dist/classes/ovary.d/user-create-live.js +86 -0
  54. package/dist/classes/ovary.d/users-remove.d.ts +9 -0
  55. package/dist/classes/ovary.d/users-remove.js +38 -0
  56. package/dist/classes/ovary.d/xorriso-commend.d.ts +14 -0
  57. package/dist/classes/ovary.d/xorriso-commend.js +119 -0
  58. package/dist/classes/ovary.d.ts +46 -167
  59. package/dist/classes/ovary.js +49 -1818
  60. package/dist/classes/pacman.d/archlinux.js +2 -1
  61. package/dist/classes/settings.d.ts +0 -1
  62. package/dist/classes/settings.js +2 -2
  63. package/dist/classes/utils.d.ts +6 -5
  64. package/dist/classes/utils.js +10 -16
  65. package/dist/commands/install.d.ts +1 -0
  66. package/dist/commands/install.js +7 -4
  67. package/dist/commands/kill.js +1 -1
  68. package/dist/commands/status.js +1 -1
  69. package/dist/commands/update.js +3 -3
  70. package/dist/interfaces/i-luks-passphrase.d.ts +11 -0
  71. package/dist/interfaces/i-luks-passphrase.js +8 -0
  72. package/dist/interfaces/index.d.ts +1 -0
  73. package/dist/{classes → krill/classes}/cfs.js +1 -1
  74. package/dist/krill/classes/krill_enums.d.ts +24 -0
  75. package/dist/krill/classes/krill_enums.js +26 -0
  76. package/dist/krill/classes/prepare.d/confirm.d.ts +5 -0
  77. package/dist/krill/classes/prepare.d/confirm.js +30 -0
  78. package/dist/krill/classes/prepare.d/keyboard.d.ts +14 -0
  79. package/dist/krill/classes/prepare.d/keyboard.js +62 -0
  80. package/dist/krill/classes/prepare.d/location.d.ts +17 -0
  81. package/dist/krill/classes/prepare.d/location.js +59 -0
  82. package/dist/krill/classes/prepare.d/network.d.ts +14 -0
  83. package/dist/krill/classes/prepare.d/network.js +68 -0
  84. package/dist/krill/classes/prepare.d/partitions.d.ts +14 -0
  85. package/dist/krill/classes/prepare.d/partitions.js +86 -0
  86. package/dist/krill/classes/prepare.d/summary.d.ts +15 -0
  87. package/dist/krill/classes/prepare.d/summary.js +69 -0
  88. package/dist/krill/classes/prepare.d/users.d.ts +6 -0
  89. package/dist/krill/classes/prepare.d/users.js +63 -0
  90. package/dist/krill/classes/prepare.d/welcome.d.ts +6 -0
  91. package/dist/krill/classes/prepare.d/welcome.js +30 -0
  92. package/dist/krill/{prepare.d.ts → classes/prepare.d.ts} +21 -35
  93. package/dist/krill/classes/prepare.js +314 -0
  94. package/dist/krill/{modules/add-user.js → classes/sequence.d/add_user.js} +1 -1
  95. package/dist/krill/{modules → classes/sequence.d}/bootloader.d.ts +1 -1
  96. package/dist/krill/{modules → classes/sequence.d}/bootloader.js +3 -3
  97. package/dist/krill/{modules/bootloader-config.js → classes/sequence.d/bootloader_config.js} +2 -2
  98. package/dist/krill/{modules/change-password.js → classes/sequence.d/change_password.js} +1 -1
  99. package/dist/krill/{modules/del-live-user.js → classes/sequence.d/del_live_user.js} +2 -2
  100. package/dist/krill/{modules → classes/sequence.d}/fstab.d.ts +1 -1
  101. package/dist/krill/{modules → classes/sequence.d}/fstab.js +75 -14
  102. package/dist/krill/{modules → classes/sequence.d}/grubcfg.d.ts +1 -1
  103. package/dist/krill/{modules → classes/sequence.d}/grubcfg.js +6 -2
  104. package/dist/krill/{modules → classes/sequence.d}/hostname.d.ts +1 -1
  105. package/dist/krill/{modules → classes/sequence.d}/initramfs.d.ts +1 -1
  106. package/dist/krill/{modules → classes/sequence.d}/initramfs.js +2 -2
  107. package/dist/krill/classes/sequence.d/initramfs_cfg.js +35 -0
  108. package/dist/krill/{modules → classes/sequence.d}/locale.d.ts +1 -1
  109. package/dist/krill/{modules → classes/sequence.d}/locale.js +2 -2
  110. package/dist/krill/{modules/m-keyboard.js → classes/sequence.d/m_keyboard.js} +2 -2
  111. package/dist/krill/{modules/machine-id.js → classes/sequence.d/machine_id.js} +2 -2
  112. package/dist/krill/{modules → classes/sequence.d}/mkfs.d.ts +1 -1
  113. package/dist/krill/{modules → classes/sequence.d}/mkfs.js +24 -2
  114. package/dist/krill/{modules/mount-fs.js → classes/sequence.d/mount_fs.js} +9 -3
  115. package/dist/krill/{modules/mount-vfs.js → classes/sequence.d/mount_vfs.js} +1 -1
  116. package/dist/krill/{modules/network-cfg.js → classes/sequence.d/network_cfg.js} +15 -6
  117. package/dist/krill/{modules → classes/sequence.d}/packages.d.ts +1 -1
  118. package/dist/krill/{modules → classes/sequence.d}/packages.js +3 -3
  119. package/dist/krill/{modules/partition.d.ts → classes/sequence.d/partition.d/bios_luks.d.ts} +4 -7
  120. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +73 -0
  121. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +17 -0
  122. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +36 -0
  123. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +17 -0
  124. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +78 -0
  125. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +10 -0
  126. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +32 -0
  127. package/dist/krill/classes/sequence.d/partition.d.ts +14 -0
  128. package/dist/krill/classes/sequence.d/partition.js +84 -0
  129. package/dist/krill/{modules → classes/sequence.d}/umount.d.ts +1 -1
  130. package/dist/krill/{modules → classes/sequence.d}/umount.js +2 -2
  131. package/dist/krill/{modules → classes/sequence.d}/unpackfs.d.ts +1 -1
  132. package/dist/krill/{modules → classes/sequence.d}/unpackfs.js +2 -2
  133. package/dist/krill/{sequence.d.ts → classes/sequence.d.ts} +40 -58
  134. package/dist/krill/{sequence.js → classes/sequence.js} +43 -32
  135. package/dist/{components → krill/components}/information.js +3 -3
  136. package/dist/{components → krill/components}/keyboard.js +1 -1
  137. package/dist/{components → krill/components}/location.js +1 -1
  138. package/dist/{components → krill/components}/network.js +1 -1
  139. package/dist/{components → krill/components}/partitions.d.ts +4 -2
  140. package/dist/{components → krill/components}/partitions.js +36 -20
  141. package/dist/{components → krill/components}/summary.d.ts +2 -1
  142. package/dist/{components → krill/components}/summary.js +2 -6
  143. package/dist/{components → krill/components}/title.js +1 -1
  144. package/dist/{components → krill/components}/users.js +1 -1
  145. package/dist/{components → krill/components}/welcome.js +1 -1
  146. package/dist/{interfaces/i-krill.d.ts → krill/interfaces/i_krill.d.ts} +3 -1
  147. package/dist/{interfaces/i-krill-config.d.ts → krill/interfaces/i_krill_config.d.ts} +3 -1
  148. package/dist/krill/lib/get_luks_passphrase.d.ts +8 -0
  149. package/dist/krill/lib/get_luks_passphrase.js +40 -0
  150. package/dist/{lib → krill/lib}/kill_me_softly.js +2 -2
  151. package/dist/{lib → krill/lib}/select_filesystem_type.js +2 -9
  152. package/dist/{lib → krill/lib}/select_installation_device.js +10 -4
  153. package/dist/{lib → krill/lib}/select_installation_mode.d.ts +2 -1
  154. package/dist/{lib → krill/lib}/select_installation_mode.js +2 -1
  155. package/dist/{lib → krill/lib}/select_keyboard_layout.js +1 -1
  156. package/dist/{lib → krill/lib}/select_keyboard_model.js +1 -1
  157. package/dist/{lib → krill/lib}/select_keyboard_option.js +1 -1
  158. package/dist/{lib → krill/lib}/select_keyboard_variant.js +1 -1
  159. package/dist/{lib → krill/lib}/select_languages.js +1 -1
  160. package/dist/krill/lib/select_replaced_partition.d.ts +8 -0
  161. package/dist/krill/lib/select_replaced_partition.js +31 -0
  162. package/dist/{lib → krill/lib}/select_user_swap_choice.d.ts +2 -1
  163. package/dist/{lib → krill/lib}/select_user_swap_choice.js +4 -3
  164. package/dist/lib/utils.d.ts +8 -0
  165. package/dist/lib/utils.js +8 -0
  166. package/package.json +25 -24
  167. package/scripts/_eggs +7 -5
  168. package/scripts/eggs.bash +3 -3
  169. package/dist/krill/modules/initramfs-cfg.js +0 -22
  170. package/dist/krill/modules/partition.js +0 -345
  171. package/dist/krill/prepare.js +0 -626
  172. /package/dist/{index-old.d.ts → index_old.d.ts} +0 -0
  173. /package/dist/{index-old.js → index_old.js} +0 -0
  174. /package/dist/{classes → krill/classes}/cfs.d.ts +0 -0
  175. /package/dist/krill/{modules/add-user.d.ts → classes/sequence.d/add_user.d.ts} +0 -0
  176. /package/dist/krill/{modules/bootloader-config.d.ts → classes/sequence.d/bootloader_config.d.ts} +0 -0
  177. /package/dist/krill/{modules/change-password.d.ts → classes/sequence.d/change_password.d.ts} +0 -0
  178. /package/dist/krill/{modules/del-live-user.d.ts → classes/sequence.d/del_live_user.d.ts} +0 -0
  179. /package/dist/krill/{modules → classes/sequence.d}/hostname.js +0 -0
  180. /package/dist/krill/{modules/initramfs-cfg.d.ts → classes/sequence.d/initramfs_cfg.d.ts} +0 -0
  181. /package/dist/krill/{modules/locale-cfg.d.ts → classes/sequence.d/locale_cfg.d.ts} +0 -0
  182. /package/dist/krill/{modules/locale-cfg.js → classes/sequence.d/locale_cfg.js} +0 -0
  183. /package/dist/krill/{modules/m-keyboard.d.ts → classes/sequence.d/m_keyboard.d.ts} +0 -0
  184. /package/dist/krill/{modules/machine-id.d.ts → classes/sequence.d/machine_id.d.ts} +0 -0
  185. /package/dist/krill/{modules/mount-fs.d.ts → classes/sequence.d/mount_fs.d.ts} +0 -0
  186. /package/dist/krill/{modules/mount-vfs.d.ts → classes/sequence.d/mount_vfs.d.ts} +0 -0
  187. /package/dist/krill/{modules/network-cfg.d.ts → classes/sequence.d/network_cfg.d.ts} +0 -0
  188. /package/dist/krill/{modules/remove-installer-link.d.ts → classes/sequence.d/remove_installer_link.d.ts} +0 -0
  189. /package/dist/krill/{modules/remove-installer-link.js → classes/sequence.d/remove_installer_link.js} +0 -0
  190. /package/dist/{components → krill/components}/finished.d.ts +0 -0
  191. /package/dist/{components → krill/components}/finished.js +0 -0
  192. /package/dist/{components → krill/components}/information.d.ts +0 -0
  193. /package/dist/{components → krill/components}/install.d.ts +0 -0
  194. /package/dist/{components → krill/components}/install.js +0 -0
  195. /package/dist/{components → krill/components}/keyboard.d.ts +0 -0
  196. /package/dist/{components → krill/components}/location.d.ts +0 -0
  197. /package/dist/{components → krill/components}/network.d.ts +0 -0
  198. /package/dist/{components → krill/components}/steps.d.ts +0 -0
  199. /package/dist/{components → krill/components}/steps.js +0 -0
  200. /package/dist/{components → krill/components}/title.d.ts +0 -0
  201. /package/dist/{components → krill/components}/users.d.ts +0 -0
  202. /package/dist/{components → krill/components}/welcome.d.ts +0 -0
  203. /package/dist/{interfaces/i-krill.js → krill/interfaces/i_krill.js} +0 -0
  204. /package/dist/{interfaces/i-krill-config.js → krill/interfaces/i_krill_config.js} +0 -0
  205. /package/dist/{lib → krill/lib}/get_address.d.ts +0 -0
  206. /package/dist/{lib → krill/lib}/get_address.js +0 -0
  207. /package/dist/{lib → krill/lib}/get_dns.d.ts +0 -0
  208. /package/dist/{lib → krill/lib}/get_dns.js +0 -0
  209. /package/dist/{lib → krill/lib}/get_domain.d.ts +0 -0
  210. /package/dist/{lib → krill/lib}/get_domain.js +0 -0
  211. /package/dist/{lib → krill/lib}/get_gateway.d.ts +0 -0
  212. /package/dist/{lib → krill/lib}/get_gateway.js +0 -0
  213. /package/dist/{lib → krill/lib}/get_hostname.d.ts +0 -0
  214. /package/dist/{lib → krill/lib}/get_hostname.js +0 -0
  215. /package/dist/{lib → krill/lib}/get_netmask.d.ts +0 -0
  216. /package/dist/{lib → krill/lib}/get_netmask.js +0 -0
  217. /package/dist/{lib → krill/lib}/get_password.d.ts +0 -0
  218. /package/dist/{lib → krill/lib}/get_password.js +0 -0
  219. /package/dist/{lib → krill/lib}/get_userfullname.d.ts +0 -0
  220. /package/dist/{lib → krill/lib}/get_userfullname.js +0 -0
  221. /package/dist/{lib → krill/lib}/get_username.d.ts +0 -0
  222. /package/dist/{lib → krill/lib}/get_username.js +0 -0
  223. /package/dist/{lib → krill/lib}/kill_me_softly.d.ts +0 -0
  224. /package/dist/{lib → krill/lib}/select_address_type.d.ts +0 -0
  225. /package/dist/{lib → krill/lib}/select_address_type.js +0 -0
  226. /package/dist/{lib → krill/lib}/select_filesystem_type.d.ts +0 -0
  227. /package/dist/{lib → krill/lib}/select_installation_device.d.ts +0 -0
  228. /package/dist/{lib → krill/lib}/select_interface.d.ts +0 -0
  229. /package/dist/{lib → krill/lib}/select_interface.js +0 -0
  230. /package/dist/{lib → krill/lib}/select_keyboard_layout.d.ts +0 -0
  231. /package/dist/{lib → krill/lib}/select_keyboard_model.d.ts +0 -0
  232. /package/dist/{lib → krill/lib}/select_keyboard_option.d.ts +0 -0
  233. /package/dist/{lib → krill/lib}/select_keyboard_variant.d.ts +0 -0
  234. /package/dist/{lib → krill/lib}/select_languages.d.ts +0 -0
  235. /package/dist/{lib → krill/lib}/select_regions.d.ts +0 -0
  236. /package/dist/{lib → krill/lib}/select_regions.js +0 -0
  237. /package/dist/{lib → krill/lib}/select_zones.d.ts +0 -0
  238. /package/dist/{lib → krill/lib}/select_zones.js +0 -0
@@ -0,0 +1,119 @@
1
+ /**
2
+ * ./src/classes/xorriso-command.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ // packages
9
+ import fs from 'node:fs';
10
+ import path from 'node:path';
11
+ import Pacman from '../pacman.js';
12
+ import Utils from '../utils.js';
13
+ // _dirname
14
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
15
+ /**
16
+ *
17
+ * @param cryptedclone
18
+ * @returns cmd 4 mkiso
19
+ */
20
+ export async function xorrisoCommand(clone = false, cryptedclone = false) {
21
+ if (this.verbose) {
22
+ console.log('Ovary: xorrisoCommand');
23
+ }
24
+ const prefix = this.settings.config.snapshot_prefix;
25
+ let typology = '';
26
+ // typology is applied only with standard egg-of
27
+ if (prefix.slice(0, 7) === 'egg-of_') {
28
+ if (clone) {
29
+ typology = '_clone';
30
+ }
31
+ else if (cryptedclone) {
32
+ typology = '_crypted';
33
+ }
34
+ if (fs.existsSync('/usr/bin/eui-start.sh')) {
35
+ typology += '_EUI';
36
+ }
37
+ }
38
+ const postfix = Utils.getPostfix();
39
+ this.settings.isoFilename = prefix + this.volid + '_' + Utils.uefiArch() + typology + postfix;
40
+ //
41
+ const output = this.settings.config.snapshot_mnt + this.settings.isoFilename;
42
+ let command = '';
43
+ // const appid = `-appid "${this.settings.distro.distroId}" `
44
+ // const publisher = `-publisher "${this.settings.distro.distroId}/${this.settings.distro.codenameId}" `
45
+ // const preparer = '-preparer "prepared by eggs <https://penguins-eggs.net>" '
46
+ let isoHybridMbr = '';
47
+ if (this.settings.config.make_isohybrid) {
48
+ const isolinuxFile = this.settings.distro.syslinuxPath + '/isohdpfx.bin';
49
+ if (fs.existsSync(isolinuxFile)) {
50
+ isoHybridMbr = `-isohybrid-mbr ${isolinuxFile}`;
51
+ }
52
+ else {
53
+ Utils.warning(`Can't create isohybrid image. File: ${isolinuxFile} not found. \nThe resulting image will be a standard iso file`);
54
+ }
55
+ }
56
+ if (Pacman.packageIsInstalled('genisoimage')) {
57
+ this.genisoimage = true;
58
+ command = `genisoimage \
59
+ -iso-level 3 \
60
+ -allow-limited-size \
61
+ -joliet-long \
62
+ -r \
63
+ -V ${this.volid} \
64
+ -cache-inodes \
65
+ -J \
66
+ -l \
67
+ -b isolinux/isolinux.bin \
68
+ -c isolinux/boot.cat \
69
+ -no-emul-boot \
70
+ -boot-load-size 4 \
71
+ -boot-info-table \
72
+ -eltorito-alt-boot \
73
+ -e boot/grub/efi.img \
74
+ -no-emul-boot \
75
+ -o ${output} ${this.settings.iso_work}`;
76
+ return command;
77
+ }
78
+ /**
79
+ * xorriso
80
+ */
81
+ // uefi_opt="-uefi_elToritoAltBoot-alt-boot -e boot/grub/efi.img -isohybrid-gpt-basdat -no-emul-boot"
82
+ let uefi_elToritoAltBoot = '';
83
+ let uefi_e = '';
84
+ let uefi_isohybridGptBasdat = '';
85
+ let uefi_noEmulBoot = '';
86
+ if (this.settings.config.make_efi) {
87
+ uefi_elToritoAltBoot = '-eltorito-alt-boot';
88
+ uefi_e = '-e boot/grub/efi.img';
89
+ uefi_isohybridGptBasdat = '-isohybrid-gpt-basdat';
90
+ uefi_noEmulBoot = '-no-emul-boot';
91
+ }
92
+ /**
93
+ * L'immagine efi è efi.img ed è
94
+ * presente in boot/grub/efi.img
95
+ * per cui:
96
+ * -append_partition 2 0xef efi.img
97
+ * --efi-boot efi.img
98
+ * non sono necessari
99
+ */
100
+ command = `xorriso -as mkisofs \
101
+ -J \
102
+ -joliet-long \
103
+ -l \
104
+ -iso-level 3 \
105
+ ${isoHybridMbr} \
106
+ -partition_offset 16 \
107
+ -V ${this.volid} \
108
+ -b isolinux/isolinux.bin \
109
+ -c isolinux/boot.cat \
110
+ -no-emul-boot \
111
+ -boot-load-size 4 \
112
+ -boot-info-table \
113
+ ${uefi_elToritoAltBoot} \
114
+ ${uefi_e} \
115
+ ${uefi_isohybridGptBasdat} \
116
+ ${uefi_noEmulBoot} \
117
+ -o ${output} ${this.settings.iso_work}`;
118
+ return command;
119
+ }
@@ -5,11 +5,28 @@
5
5
  * email: piero.proietti@gmail.com
6
6
  * license: MIT
7
7
  */
8
- import { IAddons, IExcludes } from '../interfaces/index.js';
9
8
  import CliAutologin from './cli-autologin.js';
10
9
  import Incubator from './incubation/incubator.js';
11
10
  import Settings from './settings.js';
12
- import Users from './users.js';
11
+ import { fertilization } from './ovary.d/fertilization.js';
12
+ import { produce } from './ovary.d/produce.js';
13
+ import { bindLiveFs, uBindLiveFs } from './ovary.d/bind-live-fs.js';
14
+ import { bindVfs, ubindVfs } from './ovary.d/bind-vfs.js';
15
+ import { editLiveFs } from './ovary.d/edit-live-fs.js';
16
+ import { makeSquashfs, addRemoveExclusion } from './ovary.d/make-squashfs.js';
17
+ import { makeEfi } from './ovary.d/make-efi.js';
18
+ import { xorrisoCommand } from './ovary.d/xorriso-commend.js';
19
+ import { createXdgAutostart } from './ovary.d/create-xdg-autostart.js';
20
+ import { merged, mergedAndOverlay } from './ovary.d/merged.js';
21
+ import { makeIso } from './ovary.d/make-iso.js';
22
+ import { initrdAlpine, initrdArch, initrdDebian, initrdDracut } from './ovary.d/initrd.js';
23
+ import { userCreateLive } from './ovary.d/user-create-live.js';
24
+ import { syslinux } from './ovary.d/syslinux.js';
25
+ import { usersRemove } from './ovary.d/users-remove.js';
26
+ import { makeDotDisk } from './ovary.d/make-dot-disk.js';
27
+ import { kernelCopy } from './ovary.d/kernel-copy.js';
28
+ import { liveCreateStructure } from './ovary.d/live-create-structure.js';
29
+ import { finished } from './ovary.d/finished.js';
13
30
  /**
14
31
  * Ovary:
15
32
  */
@@ -30,169 +47,31 @@ export default class Ovary {
30
47
  toNull: string;
31
48
  verbose: boolean;
32
49
  volid: string;
33
- /**
34
- * Add or remove exclusion
35
- * @param add {boolean} true = add, false remove
36
- * @param exclusion {string} path to add/remove
37
- */
38
- addRemoveExclusion(add: boolean, exclusion: string): void;
39
- /**
40
- * Esegue il bind del fs live e
41
- * crea lo script bind
42
- *
43
- * @param verbose
44
- */
45
- bindLiveFs(): Promise<void>;
46
- /**
47
- * bind dei virtual file system
48
- */
49
- bindVfs(): Promise<void>;
50
- /**
51
- *
52
- * @param verbose
53
- */
54
- cleanUsersAccounts(): Promise<void>;
55
- /**
56
- * list degli utenti: grep -E 1[0-9]{3} /etc/passwd | sed s/:/\ / | awk '{print $1}'
57
- * create la home per user_opt
58
- * @param verbose
59
- */
60
- createUserLive(): Promise<void>;
61
- /**
62
- *
63
- */
64
- createXdgAutostart(theme: string | undefined, myAddons: IAddons, myLinks?: string[], noicons?: boolean): Promise<void>;
65
- /**
66
- * editLiveFs
67
- * - Truncate logs, remove archived log
68
- * - Allow all fixed drives to be mounted with pmount
69
- * - Enable or disable password login trhough ssh for users (not root)
70
- * - Create an empty /etc/fstab
71
- * - Blanck /etc/machine-id
72
- * - Add some basic files to /dev
73
- * - Clear configs from /etc/network/interfaces, wicd and NetworkManager and netman
74
- */
75
- editLiveFs(clone?: boolean, cryptedclone?: boolean): Promise<void>;
76
- /**
77
- * @returns {boolean} success
78
- */
79
- fertilization(snapshot_prefix?: string, snapshot_basename?: string, theme?: string, compression?: string, nointeratctive?: boolean): Promise<boolean>;
80
- /**
81
- * finished = show the results
82
- * @param scriptOnly
83
- */
84
- finished(scriptOnly?: boolean): void;
85
- /**
86
- * mkinitfs()
87
- */
88
- initrdAlpine(): Promise<void>;
89
- /**
90
- * mkinitcpio()
91
- */
92
- initrdArch(): Promise<void>;
93
- /**
94
- * mkinitramfs() Debian
95
- */
96
- initrdDebian(verbose?: boolean): Promise<void>;
97
- /**
98
- * dracut() Fedora/Openmamba/Opensuse/Voidlinux
99
- */
100
- initrdDracut(): Promise<void>;
101
- /**
102
- * syslinux: da syspath
103
- */
104
- syslinux(theme?: string): Promise<void>;
105
- /**
106
- * kernelCopy
107
- */
108
- kernelCopy(): Promise<void>;
109
- /**
110
- * Crea la struttura della workdir
111
- */
112
- liveCreateStructure(): Promise<void>;
113
- /**
114
- * makeDotDisk
115
- */
116
- makeDotDisk(info?: string, mksquashfs?: string, mkisofs?: string): void;
117
- /**
118
- * makeEFI
119
- */
120
- makeEfi(theme?: string): Promise<void>;
121
- /**
122
- * makeIso
123
- * cmd: cmd 4 xorriso
124
- */
125
- makeIso(cmd: string, scriptOnly?: boolean): Promise<void>;
126
- /**
127
- * squashFs: crea in live filesystem.squashfs
128
- */
129
- makeSquashfs(scriptOnly?: boolean, unsecure?: boolean): Promise<string>;
130
- /**
131
- * Ritorna true se c'è bisogno del mount --bind
132
- *
133
- * Ci sono tre tipologie:
134
- *
135
- * - normal solo la creazione della directory, nessun mount
136
- * - merged creazione della directory e mount ro
137
- * - mergedAndOverlay creazione directory, overlay e mount rw
138
- * - copied: creazione directory e copia
139
- */
140
- merged(dir: string): boolean;
141
- /**
142
- * Restituisce true per le direcory da montare con overlay
143
- *
144
- * Ci sono tre tipologie:
145
- *
146
- * - normal solo la creazione della directory, nessun mount
147
- * - merged creazione della directory e mount ro
148
- * - mergedAndOverlay creazione directory, overlay e mount rw
149
- *
150
- * @param dir
151
- */
152
- mergedAndOverlay(dir: string): boolean;
153
- /**
154
- * produce
155
- * @param clone
156
- * @param cryptedclone
157
- * @param scriptOnly
158
- * @param yolkRenew
159
- * @param release
160
- * @param myAddons
161
- * @param nointeractive
162
- * @param noicons
163
- * @param unsecure
164
- * @param verbose
165
- */
166
- produce(clone: boolean | undefined, cryptedclone: boolean | undefined, scriptOnly: boolean | undefined, yolkRenew: boolean | undefined, release: boolean | undefined, myAddons: IAddons, myLinks: string[], excludes: IExcludes, nointeractive?: boolean, noicons?: boolean, unsecure?: boolean, verbose?: boolean): Promise<void>;
167
- /**
168
- *
169
- * @param cmd
170
- */
171
- tryCatch(cmd?: string): Promise<void>;
172
- /**
173
- * ubind del fs live
174
- * @param verbose
175
- */
176
- uBindLiveFs(): Promise<void>;
177
- /**
178
- *
179
- * @param verbose
180
- */
181
- ubindVfs(): Promise<void>;
182
- /**
183
- * fill
184
- */
185
- usersFill(): Promise<Users[]>;
186
- /**
187
- *
188
- * @param cryptedclone
189
- * @returns cmd 4 mkiso
190
- */
191
- xorrisoCommand(clone?: boolean, cryptedclone?: boolean): Promise<string>;
192
- /**
193
- * Creazione link desktop per lxde
194
- * @param name
195
- * @param icon
196
- */
197
- private lxdeLink;
50
+ uuid: string;
51
+ fertilization: typeof fertilization;
52
+ produce: typeof produce;
53
+ bindLiveFs: typeof bindLiveFs;
54
+ bindVfs: typeof bindVfs;
55
+ editLiveFs: typeof editLiveFs;
56
+ makeEfi: typeof makeEfi;
57
+ makeSquashfs: typeof makeSquashfs;
58
+ addRemoveExclusion: typeof addRemoveExclusion;
59
+ xorrisoCommand: typeof xorrisoCommand;
60
+ createXdgAutostart: typeof createXdgAutostart;
61
+ merged: typeof merged;
62
+ mergedAndOverlay: typeof mergedAndOverlay;
63
+ makeIso: typeof makeIso;
64
+ initrdAlpine: typeof initrdAlpine;
65
+ initrdArch: typeof initrdArch;
66
+ initrdDebian: typeof initrdDebian;
67
+ initrdDracut: typeof initrdDracut;
68
+ userCreateLive: typeof userCreateLive;
69
+ syslinux: typeof syslinux;
70
+ uBindLiveFs: typeof uBindLiveFs;
71
+ ubindVfs: typeof ubindVfs;
72
+ usersRemove: typeof usersRemove;
73
+ makeDotDisk: typeof makeDotDisk;
74
+ kernelCopy: typeof kernelCopy;
75
+ liveCreateStructure: typeof liveCreateStructure;
76
+ finished: typeof finished;
198
77
  }