penguins-eggs 25.10.19 → 25.10.23

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 (451) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/README.md +767 -2
  3. package/README.pdf +1723 -1731
  4. package/addons/eggs/theme/livecd/isolinux.main.simple.cfg +0 -1
  5. package/package.json +3 -3
  6. package/scripts/boot-encrypted-root.sh +177 -0
  7. package/scripts/mount-encrypted-home.sh +92 -56
  8. package/dist/classes/bleach.d.ts +0 -37
  9. package/dist/classes/bleach.js +0 -148
  10. package/dist/classes/cli-autologin.d.ts +0 -52
  11. package/dist/classes/cli-autologin.js +0 -252
  12. package/dist/classes/compressors.d.ts +0 -54
  13. package/dist/classes/compressors.js +0 -109
  14. package/dist/classes/daddy.d.ts +0 -26
  15. package/dist/classes/daddy.js +0 -175
  16. package/dist/classes/distro.d.ts +0 -32
  17. package/dist/classes/distro.js +0 -363
  18. package/dist/classes/diversions.d.ts +0 -53
  19. package/dist/classes/diversions.js +0 -152
  20. package/dist/classes/incubation/branding.d.ts +0 -17
  21. package/dist/classes/incubation/branding.js +0 -85
  22. package/dist/classes/incubation/customize/customize-partitions.d.ts +0 -4
  23. package/dist/classes/incubation/customize/customize-partitions.js +0 -29
  24. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +0 -1
  25. package/dist/classes/incubation/fisherman-helper/initcpio.js +0 -69
  26. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  27. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  28. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  29. package/dist/classes/incubation/fisherman-helper/settings.js +0 -116
  30. package/dist/classes/incubation/fisherman.d.ts +0 -71
  31. package/dist/classes/incubation/fisherman.js +0 -281
  32. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  33. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  34. package/dist/classes/incubation/incubator.d/archlinux.d.ts +0 -32
  35. package/dist/classes/incubation/incubator.d/archlinux.js +0 -82
  36. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  37. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  38. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  39. package/dist/classes/incubation/incubator.d/buster.js +0 -101
  40. package/dist/classes/incubation/incubator.d/fedora.d.ts +0 -32
  41. package/dist/classes/incubation/incubator.d/fedora.js +0 -81
  42. package/dist/classes/incubation/incubator.d/focal.d.ts +0 -32
  43. package/dist/classes/incubation/incubator.d/focal.js +0 -85
  44. package/dist/classes/incubation/incubator.d/manjaro.d.ts +0 -32
  45. package/dist/classes/incubation/incubator.d/manjaro.js +0 -82
  46. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  47. package/dist/classes/incubation/incubator.d/noble.js +0 -102
  48. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  49. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  50. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  51. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  52. package/dist/classes/incubation/incubator.d/trixie.d.ts +0 -32
  53. package/dist/classes/incubation/incubator.d/trixie.js +0 -98
  54. package/dist/classes/incubation/incubator.d.ts +0 -48
  55. package/dist/classes/incubation/incubator.js +0 -378
  56. package/dist/classes/incubation/installer.d.ts +0 -13
  57. package/dist/classes/incubation/installer.js +0 -52
  58. package/dist/classes/keyboards.d.ts +0 -50
  59. package/dist/classes/keyboards.js +0 -287
  60. package/dist/classes/locales.d.ts +0 -21
  61. package/dist/classes/locales.js +0 -77
  62. package/dist/classes/network.d.ts +0 -37
  63. package/dist/classes/network.js +0 -98
  64. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  65. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  66. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  67. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  68. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  69. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  70. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -20
  71. package/dist/classes/ovary.d/edit-live-fs.js +0 -239
  72. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  73. package/dist/classes/ovary.d/fertilization.js +0 -53
  74. package/dist/classes/ovary.d/finished.d.ts +0 -13
  75. package/dist/classes/ovary.d/finished.js +0 -40
  76. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  77. package/dist/classes/ovary.d/initrd.js +0 -95
  78. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  79. package/dist/classes/ovary.d/kernel-copy.js +0 -22
  80. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  81. package/dist/classes/ovary.d/live-create-structure.js +0 -70
  82. package/dist/classes/ovary.d/luks-get-password.d.ts +0 -12
  83. package/dist/classes/ovary.d/luks-get-password.js +0 -57
  84. package/dist/classes/ovary.d/luks-home-support.d.ts +0 -12
  85. package/dist/classes/ovary.d/luks-home-support.js +0 -75
  86. package/dist/classes/ovary.d/luks-home.d.ts +0 -15
  87. package/dist/classes/ovary.d/luks-home.js +0 -140
  88. package/dist/classes/ovary.d/luks-root-bootstrap-builder.d.ts +0 -11
  89. package/dist/classes/ovary.d/luks-root-bootstrap-builder.js +0 -45
  90. package/dist/classes/ovary.d/luks-root.d.ts +0 -15
  91. package/dist/classes/ovary.d/luks-root.js +0 -126
  92. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  93. package/dist/classes/ovary.d/make-dot-disk.js +0 -62
  94. package/dist/classes/ovary.d/make-efi.d.ts +0 -14
  95. package/dist/classes/ovary.d/make-efi.js +0 -274
  96. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  97. package/dist/classes/ovary.d/make-iso.js +0 -45
  98. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  99. package/dist/classes/ovary.d/make-squashfs.js +0 -114
  100. package/dist/classes/ovary.d/merged.d.ts +0 -27
  101. package/dist/classes/ovary.d/merged.js +0 -78
  102. package/dist/classes/ovary.d/produce.d.ts +0 -23
  103. package/dist/classes/ovary.d/produce.js +0 -347
  104. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  105. package/dist/classes/ovary.d/rexec.js +0 -34
  106. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  107. package/dist/classes/ovary.d/syslinux.js +0 -82
  108. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  109. package/dist/classes/ovary.d/user-create-live.js +0 -97
  110. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  111. package/dist/classes/ovary.d/users-remove.js +0 -38
  112. package/dist/classes/ovary.d/xorriso-command.d.ts +0 -14
  113. package/dist/classes/ovary.d/xorriso-command.js +0 -121
  114. package/dist/classes/ovary.d.ts +0 -106
  115. package/dist/classes/ovary.js +0 -116
  116. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  117. package/dist/classes/pacman.d/alpine.js +0 -167
  118. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  119. package/dist/classes/pacman.d/archlinux.js +0 -128
  120. package/dist/classes/pacman.d/debian.d.ts +0 -65
  121. package/dist/classes/pacman.d/debian.js +0 -143
  122. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  123. package/dist/classes/pacman.d/fedora.js +0 -107
  124. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  125. package/dist/classes/pacman.d/openmamba.js +0 -106
  126. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  127. package/dist/classes/pacman.d/opensuse.js +0 -109
  128. package/dist/classes/pacman.d.ts +0 -139
  129. package/dist/classes/pacman.js +0 -683
  130. package/dist/classes/pve-live.d.ts +0 -17
  131. package/dist/classes/pve-live.js +0 -52
  132. package/dist/classes/pxe.d.ts +0 -76
  133. package/dist/classes/pxe.js +0 -353
  134. package/dist/classes/settings.d.ts +0 -52
  135. package/dist/classes/settings.js +0 -185
  136. package/dist/classes/sources_list.d.ts +0 -28
  137. package/dist/classes/sources_list.js +0 -89
  138. package/dist/classes/systemctl.d.ts +0 -47
  139. package/dist/classes/systemctl.js +0 -86
  140. package/dist/classes/tailor.d.ts +0 -50
  141. package/dist/classes/tailor.js +0 -563
  142. package/dist/classes/tools.d.ts +0 -26
  143. package/dist/classes/tools.js +0 -50
  144. package/dist/classes/users.d.ts +0 -28
  145. package/dist/classes/users.js +0 -143
  146. package/dist/classes/utils.d/kernel.d.ts +0 -39
  147. package/dist/classes/utils.d/kernel.js +0 -206
  148. package/dist/classes/utils.d.ts +0 -328
  149. package/dist/classes/utils.js +0 -958
  150. package/dist/classes/xdg.d.ts +0 -45
  151. package/dist/classes/xdg.js +0 -337
  152. package/dist/classes/yolk.d.ts +0 -33
  153. package/dist/classes/yolk.js +0 -114
  154. package/dist/commands/adapt.d.ts +0 -17
  155. package/dist/commands/adapt.js +0 -33
  156. package/dist/commands/analyze.d.ts +0 -26
  157. package/dist/commands/analyze.js +0 -95
  158. package/dist/commands/calamares.d.ts +0 -29
  159. package/dist/commands/calamares.js +0 -112
  160. package/dist/commands/config.d.ts +0 -35
  161. package/dist/commands/config.js +0 -120
  162. package/dist/commands/cuckoo.d.ts +0 -17
  163. package/dist/commands/cuckoo.js +0 -61
  164. package/dist/commands/dad.d.ts +0 -21
  165. package/dist/commands/dad.js +0 -47
  166. package/dist/commands/export/iso.d.ts +0 -19
  167. package/dist/commands/export/iso.js +0 -55
  168. package/dist/commands/export/pkg.d.ts +0 -29
  169. package/dist/commands/export/pkg.js +0 -173
  170. package/dist/commands/export/tarballs.d.ts +0 -27
  171. package/dist/commands/export/tarballs.js +0 -79
  172. package/dist/commands/install.d.ts +0 -39
  173. package/dist/commands/install.js +0 -113
  174. package/dist/commands/kill.d.ts +0 -24
  175. package/dist/commands/kill.js +0 -50
  176. package/dist/commands/love.d.ts +0 -24
  177. package/dist/commands/love.js +0 -111
  178. package/dist/commands/mom.d.ts +0 -16
  179. package/dist/commands/mom.js +0 -30
  180. package/dist/commands/pods.d.ts +0 -22
  181. package/dist/commands/pods.js +0 -92
  182. package/dist/commands/produce.d.ts +0 -36
  183. package/dist/commands/produce.js +0 -218
  184. package/dist/commands/status.d.ts +0 -23
  185. package/dist/commands/status.js +0 -31
  186. package/dist/commands/tools/clean.d.ts +0 -18
  187. package/dist/commands/tools/clean.js +0 -37
  188. package/dist/commands/tools/repo.d.ts +0 -31
  189. package/dist/commands/tools/repo.js +0 -246
  190. package/dist/commands/tools/skel.d.ts +0 -18
  191. package/dist/commands/tools/skel.js +0 -44
  192. package/dist/commands/tools/stat.d.ts +0 -31
  193. package/dist/commands/tools/stat.js +0 -70
  194. package/dist/commands/tools/yolk.d.ts +0 -24
  195. package/dist/commands/tools/yolk.js +0 -45
  196. package/dist/commands/update.d.ts +0 -46
  197. package/dist/commands/update.js +0 -238
  198. package/dist/commands/wardrobe/get.d.ts +0 -23
  199. package/dist/commands/wardrobe/get.js +0 -52
  200. package/dist/commands/wardrobe/list.d.ts +0 -24
  201. package/dist/commands/wardrobe/list.js +0 -125
  202. package/dist/commands/wardrobe/show.d.ts +0 -25
  203. package/dist/commands/wardrobe/show.js +0 -97
  204. package/dist/commands/wardrobe/wear.d.ts +0 -26
  205. package/dist/commands/wardrobe/wear.js +0 -84
  206. package/dist/dhcpd-proxy/classes/packet.d.ts +0 -36
  207. package/dist/dhcpd-proxy/classes/packet.js +0 -124
  208. package/dist/dhcpd-proxy/index.d.ts +0 -4
  209. package/dist/dhcpd-proxy/index.js +0 -4
  210. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +0 -45
  211. package/dist/dhcpd-proxy/interfaces/i-pxe.js +0 -1
  212. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +0 -11
  213. package/dist/dhcpd-proxy/lib/packet/converters.js +0 -395
  214. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +0 -10
  215. package/dist/dhcpd-proxy/lib/packet/message-types.js +0 -12
  216. package/dist/dhcpd-proxy/lib/packet/options.d.ts +0 -8
  217. package/dist/dhcpd-proxy/lib/packet/options.js +0 -264
  218. package/dist/dhcpd-proxy/lib/sprintf.d.ts +0 -6
  219. package/dist/dhcpd-proxy/lib/sprintf.js +0 -130
  220. package/dist/dhcpd-proxy/lib/utils.d.ts +0 -126
  221. package/dist/dhcpd-proxy/lib/utils.js +0 -255
  222. package/dist/dhcpd-proxy/simple-proxy.d.ts +0 -11
  223. package/dist/dhcpd-proxy/simple-proxy.js +0 -118
  224. package/dist/index.d.ts +0 -8
  225. package/dist/index.js +0 -8
  226. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +0 -23
  227. package/dist/interfaces/calamares/i-calamares-bootloader.js +0 -7
  228. package/dist/interfaces/calamares/i-calamares-branding.d.ts +0 -46
  229. package/dist/interfaces/calamares/i-calamares-branding.js +0 -1
  230. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +0 -34
  231. package/dist/interfaces/calamares/i-calamares-displaymanager.js +0 -1
  232. package/dist/interfaces/calamares/i-calamares-finished.d.ts +0 -14
  233. package/dist/interfaces/calamares/i-calamares-finished.js +0 -1
  234. package/dist/interfaces/calamares/i-calamares-packages.d.ts +0 -26
  235. package/dist/interfaces/calamares/i-calamares-packages.js +0 -1
  236. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +0 -39
  237. package/dist/interfaces/calamares/i-calamares-partitions.js +0 -1
  238. package/dist/interfaces/calamares/i-calamares-settings.d.ts +0 -36
  239. package/dist/interfaces/calamares/i-calamares-settings.js +0 -1
  240. package/dist/interfaces/i-addons.d.ts +0 -12
  241. package/dist/interfaces/i-addons.js +0 -8
  242. package/dist/interfaces/i-analyze.d.ts +0 -17
  243. package/dist/interfaces/i-analyze.js +0 -17
  244. package/dist/interfaces/i-app.d.ts +0 -14
  245. package/dist/interfaces/i-app.js +0 -8
  246. package/dist/interfaces/i-config-tools.d.ts +0 -15
  247. package/dist/interfaces/i-config-tools.js +0 -8
  248. package/dist/interfaces/i-devices.d.ts +0 -20
  249. package/dist/interfaces/i-devices.js +0 -8
  250. package/dist/interfaces/i-distro.d.ts +0 -23
  251. package/dist/interfaces/i-distro.js +0 -8
  252. package/dist/interfaces/i-drive-list.d.ts +0 -33
  253. package/dist/interfaces/i-drive-list.js +0 -8
  254. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  255. package/dist/interfaces/i-eggs-config.js +0 -8
  256. package/dist/interfaces/i-excludes.d.ts +0 -14
  257. package/dist/interfaces/i-excludes.js +0 -8
  258. package/dist/interfaces/i-exec.d.ts +0 -11
  259. package/dist/interfaces/i-exec.js +0 -8
  260. package/dist/interfaces/i-initrd.d.ts +0 -13
  261. package/dist/interfaces/i-initrd.js +0 -8
  262. package/dist/interfaces/i-install.d.ts +0 -16
  263. package/dist/interfaces/i-install.js +0 -8
  264. package/dist/interfaces/i-installer.d.ts +0 -17
  265. package/dist/interfaces/i-installer.js +0 -8
  266. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  267. package/dist/interfaces/i-luks-passphrase.js +0 -8
  268. package/dist/interfaces/i-materia.d.ts +0 -36
  269. package/dist/interfaces/i-materia.js +0 -8
  270. package/dist/interfaces/i-net.d.ts +0 -16
  271. package/dist/interfaces/i-net.js +0 -8
  272. package/dist/interfaces/i-os-release.d.ts +0 -5
  273. package/dist/interfaces/i-os-release.js +0 -1
  274. package/dist/interfaces/i-packages.d.ts +0 -16
  275. package/dist/interfaces/i-packages.js +0 -8
  276. package/dist/interfaces/i-partitions.d.ts +0 -16
  277. package/dist/interfaces/i-partitions.js +0 -8
  278. package/dist/interfaces/i-pxe.d.ts +0 -45
  279. package/dist/interfaces/i-pxe.js +0 -1
  280. package/dist/interfaces/i-remix.d.ts +0 -21
  281. package/dist/interfaces/i-remix.js +0 -8
  282. package/dist/interfaces/i-settings.d.ts +0 -33
  283. package/dist/interfaces/i-settings.js +0 -8
  284. package/dist/interfaces/i-user.d.ts +0 -14
  285. package/dist/interfaces/i-user.js +0 -8
  286. package/dist/interfaces/i-workdir.d.ts +0 -14
  287. package/dist/interfaces/i-workdir.js +0 -8
  288. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  289. package/dist/interfaces/i-xkb-model.js +0 -8
  290. package/dist/interfaces/index.d.ts +0 -26
  291. package/dist/interfaces/index.js +0 -8
  292. package/dist/krill/classes/cfs.d.ts +0 -17
  293. package/dist/krill/classes/cfs.js +0 -39
  294. package/dist/krill/classes/krill_enums.d.ts +0 -37
  295. package/dist/krill/classes/krill_enums.js +0 -41
  296. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  297. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  298. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  299. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  300. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  301. package/dist/krill/classes/prepare.d/location.js +0 -59
  302. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  303. package/dist/krill/classes/prepare.d/network.js +0 -68
  304. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  305. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  306. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  307. package/dist/krill/classes/prepare.d/summary.js +0 -72
  308. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  309. package/dist/krill/classes/prepare.d/users.js +0 -63
  310. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  311. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  312. package/dist/krill/classes/prepare.d.ts +0 -89
  313. package/dist/krill/classes/prepare.js +0 -319
  314. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  315. package/dist/krill/classes/sequence.d/add_user.js +0 -77
  316. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  317. package/dist/krill/classes/sequence.d/bootloader.js +0 -117
  318. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  319. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -192
  320. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  321. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  322. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  323. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  324. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  325. package/dist/krill/classes/sequence.d/fstab.js +0 -177
  326. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  327. package/dist/krill/classes/sequence.d/grubcfg.js +0 -35
  328. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  329. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  330. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  331. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  332. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  333. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  334. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  335. package/dist/krill/classes/sequence.d/locale.js +0 -91
  336. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  337. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  338. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  339. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  340. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  341. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  342. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  343. package/dist/krill/classes/sequence.d/mkfs.js +0 -88
  344. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  345. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  346. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  347. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -59
  348. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  349. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  350. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  351. package/dist/krill/classes/sequence.d/packages.js +0 -111
  352. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  353. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  354. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -16
  355. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -51
  356. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  357. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -77
  358. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  359. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -33
  360. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  361. package/dist/krill/classes/sequence.d/partition.js +0 -84
  362. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  363. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  364. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  365. package/dist/krill/classes/sequence.d/umount.js +0 -28
  366. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  367. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  368. package/dist/krill/classes/sequence.d.ts +0 -134
  369. package/dist/krill/classes/sequence.js +0 -400
  370. package/dist/krill/components/finished.d.ts +0 -16
  371. package/dist/krill/components/finished.js +0 -56
  372. package/dist/krill/components/information.d.ts +0 -8
  373. package/dist/krill/components/information.js +0 -162
  374. package/dist/krill/components/install.d.ts +0 -15
  375. package/dist/krill/components/install.js +0 -60
  376. package/dist/krill/components/keyboard.d.ts +0 -16
  377. package/dist/krill/components/keyboard.js +0 -54
  378. package/dist/krill/components/location.d.ts +0 -16
  379. package/dist/krill/components/location.js +0 -59
  380. package/dist/krill/components/network.d.ts +0 -19
  381. package/dist/krill/components/network.js +0 -65
  382. package/dist/krill/components/partitions.d.ts +0 -18
  383. package/dist/krill/components/partitions.js +0 -89
  384. package/dist/krill/components/steps.d.ts +0 -13
  385. package/dist/krill/components/steps.js +0 -148
  386. package/dist/krill/components/summary.d.ts +0 -25
  387. package/dist/krill/components/summary.js +0 -77
  388. package/dist/krill/components/title.d.ts +0 -11
  389. package/dist/krill/components/title.js +0 -35
  390. package/dist/krill/components/users.d.ts +0 -24
  391. package/dist/krill/components/users.js +0 -80
  392. package/dist/krill/components/welcome.d.ts +0 -13
  393. package/dist/krill/components/welcome.js +0 -63
  394. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  395. package/dist/krill/interfaces/i_krill.js +0 -8
  396. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  397. package/dist/krill/interfaces/i_krill_config.js +0 -8
  398. package/dist/krill/lib/get_address.d.ts +0 -8
  399. package/dist/krill/lib/get_address.js +0 -23
  400. package/dist/krill/lib/get_dns.d.ts +0 -8
  401. package/dist/krill/lib/get_dns.js +0 -23
  402. package/dist/krill/lib/get_domain.d.ts +0 -8
  403. package/dist/krill/lib/get_domain.js +0 -23
  404. package/dist/krill/lib/get_gateway.d.ts +0 -8
  405. package/dist/krill/lib/get_gateway.js +0 -23
  406. package/dist/krill/lib/get_hostname.d.ts +0 -8
  407. package/dist/krill/lib/get_hostname.js +0 -23
  408. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  409. package/dist/krill/lib/get_luks_passphrase.js +0 -32
  410. package/dist/krill/lib/get_netmask.d.ts +0 -8
  411. package/dist/krill/lib/get_netmask.js +0 -23
  412. package/dist/krill/lib/get_password.d.ts +0 -8
  413. package/dist/krill/lib/get_password.js +0 -36
  414. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  415. package/dist/krill/lib/get_userfullname.js +0 -23
  416. package/dist/krill/lib/get_username.d.ts +0 -8
  417. package/dist/krill/lib/get_username.js +0 -23
  418. package/dist/krill/lib/select_address_type.d.ts +0 -8
  419. package/dist/krill/lib/select_address_type.js +0 -24
  420. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  421. package/dist/krill/lib/select_filesystem_type.js +0 -40
  422. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  423. package/dist/krill/lib/select_installation_device.js +0 -40
  424. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  425. package/dist/krill/lib/select_installation_mode.js +0 -25
  426. package/dist/krill/lib/select_interface.d.ts +0 -8
  427. package/dist/krill/lib/select_interface.js +0 -24
  428. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  429. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  430. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  431. package/dist/krill/lib/select_keyboard_model.js +0 -34
  432. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  433. package/dist/krill/lib/select_keyboard_option.js +0 -34
  434. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  435. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  436. package/dist/krill/lib/select_languages.d.ts +0 -8
  437. package/dist/krill/lib/select_languages.js +0 -28
  438. package/dist/krill/lib/select_regions.d.ts +0 -8
  439. package/dist/krill/lib/select_regions.js +0 -24
  440. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  441. package/dist/krill/lib/select_replaced_partition.js +0 -31
  442. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  443. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  444. package/dist/krill/lib/select_zones.d.ts +0 -8
  445. package/dist/krill/lib/select_zones.js +0 -518
  446. package/dist/lib/kill_me_softly.d.ts +0 -11
  447. package/dist/lib/kill_me_softly.js +0 -61
  448. package/dist/lib/utils.d.ts +0 -19
  449. package/dist/lib/utils.js +0 -65
  450. package/scripts/luks-root-bootstrap-create.sh +0 -235
  451. package/scripts/luks-root-unlock.sh +0 -172
@@ -1,95 +0,0 @@
1
- /**
2
- * ./src/commands/analyze.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import fs, { constants } from 'node:fs';
10
- import { access } from 'node:fs/promises';
11
- import si from 'systeminformation';
12
- import Users from '../classes/users.js';
13
- import Utils from '../classes/utils.js';
14
- export default class Analyze extends Command {
15
- static description = 'analyze for syncto';
16
- static examples = ['sudo eggs analyze'];
17
- static flags = {
18
- help: Flags.help({ char: 'h' }),
19
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
20
- };
21
- config_file = '/etc/penguins-eggs.d/eggs.yaml';
22
- snapshot_dir = '';
23
- work_dir = {};
24
- /**
25
- * fill
26
- */
27
- async fill() {
28
- try {
29
- const usersArray = [];
30
- await access('/etc/passwd', constants.R_OK | constants.W_OK);
31
- const passwd = fs.readFileSync('/etc/passwd', 'utf8').split('\n');
32
- for (const element of passwd) {
33
- const line = element.split(':');
34
- const users = new Users(line[0], line[1], line[2], line[3], line[4], line[5], line[6]);
35
- await users.getValues();
36
- if (users.password !== undefined) {
37
- usersArray.push(users);
38
- }
39
- }
40
- return usersArray;
41
- }
42
- catch {
43
- console.error("can't read /etc/passwd");
44
- process.exit(1);
45
- }
46
- }
47
- async run() {
48
- Utils.titles(this.id + ' ' + this.argv);
49
- const { flags } = await this.parse(Analyze);
50
- let verbose = false;
51
- if (flags.verbose) {
52
- verbose = true;
53
- }
54
- Utils.warning('eggs will analyze your system, and get users data');
55
- const echo = Utils.setEcho(verbose);
56
- let totalSize = 0;
57
- if (Utils.isRoot(this.id)) {
58
- const audio = await si.audio();
59
- const bios = await si.bios();
60
- const blockDevices = await si.blockDevices();
61
- const chassis = await si.chassis();
62
- const cpu = await si.cpu();
63
- const diskLayout = await si.diskLayout();
64
- const mem = await si.mem();
65
- const usb = await si.usb();
66
- console.log(`chassis: ${chassis.manufacturer} model: ${chassis.manufacturer}`);
67
- console.log(`bios vendor: ${bios.vendor} version: ${bios.version} revision: ${bios.revision}`);
68
- console.log(`processor: ${cpu.brand} core: ${cpu.cores} `);
69
- if (diskLayout[0].device !== undefined) {
70
- console.log(`disk0: ${diskLayout[0].device}`);
71
- }
72
- if (diskLayout[1] !== undefined) {
73
- console.log(`disk1: ${diskLayout[1].device}`);
74
- }
75
- if (diskLayout[2] !== undefined) {
76
- console.log(`disk1: ${diskLayout[2].device}`);
77
- }
78
- // console.log(`name: ${blockDevices[0].name} fs: ${blockDevices[0].fsType}`)
79
- // console.log(`name: ${blockDevices[1].name} fs: ${blockDevices[1].fsType}`)
80
- // console.log(`name: ${blockDevices[2].name} fs: ${blockDevices[2].fsType}`)
81
- // console.log(`name: ${blockDevices[3].name} fs: ${blockDevices[3].fsType}`)
82
- // console.log(`usb: ${usb[0].name}`)
83
- const users = await this.fill();
84
- for (let i = 0; i < users.length; i++)
85
- if (users[i].saveIt) {
86
- console.log(`user: ${users[i].login} \thome: ${users[i].home.padEnd(16)} \tsize: ${Utils.formatBytes(users[i].size)} \tBytes: ${users[i].size} `);
87
- totalSize += users[i].size;
88
- }
89
- console.log(`Total\t\t\t\t\tSize: ${Utils.formatBytes(totalSize)} \tBytes: ${totalSize}`);
90
- }
91
- else {
92
- Utils.useRoot(this.id);
93
- }
94
- }
95
- }
@@ -1,29 +0,0 @@
1
- /**
2
- * ./src/commands/calamares.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- import Incubator from '../classes/incubation/incubator.js';
10
- import Settings from '../classes/settings.js';
11
- import { IRemix } from '../interfaces/index.js';
12
- export default class Calamares extends Command {
13
- static description: string;
14
- static examples: string[];
15
- static flags: {
16
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
17
- install: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
- nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
- policies: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
- release: import("@oclif/core/interfaces").BooleanFlag<boolean>;
21
- remove: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
- theme: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
24
- };
25
- incubator: Incubator;
26
- remix: IRemix;
27
- settings: Settings;
28
- run(): Promise<void>;
29
- }
@@ -1,112 +0,0 @@
1
- /**
2
- * ./src/commands/calamares.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import fs from 'node:fs';
10
- import path from 'node:path';
11
- import Incubator from '../classes/incubation/incubator.js';
12
- import Pacman from '../classes/pacman.js';
13
- import Settings from '../classes/settings.js';
14
- import Utils from '../classes/utils.js';
15
- export default class Calamares extends Command {
16
- static description = 'configure calamares or install or configure it';
17
- static examples = ['sudo eggs calamares', 'sudo eggs calamares --install', 'sudo eggs calamares --install --theme=/path/to/theme', 'sudo eggs calamares --remove'];
18
- static flags = {
19
- help: Flags.help({ char: 'h' }),
20
- install: Flags.boolean({ char: 'i', description: 'install calamares and its dependencies' }),
21
- nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
22
- policies: Flags.boolean({ char: 'p', description: 'configure calamares policies' }),
23
- release: Flags.boolean({ char: 'r', description: 'release: remove calamares and all its dependencies after the installation' }),
24
- remove: Flags.boolean({ description: 'remove calamares and its dependencies' }),
25
- theme: Flags.string({ description: 'theme/branding for eggs and calamares' }),
26
- verbose: Flags.boolean({ char: 'v' })
27
- };
28
- incubator = {};
29
- remix = {};
30
- settings = {};
31
- async run() {
32
- Utils.titles(this.id + ' ' + this.argv);
33
- this.settings = new Settings();
34
- const { flags } = await this.parse(Calamares);
35
- const { verbose } = flags;
36
- const { remove } = flags;
37
- const { install } = flags;
38
- const { release } = flags;
39
- const { nointeractive } = flags;
40
- let { policies } = flags;
41
- let theme = 'eggs';
42
- if (flags.theme !== undefined) {
43
- theme = flags.theme;
44
- if (theme.includes('/')) {
45
- if (theme.endsWith('/')) {
46
- theme = theme.slice(0, Math.max(0, theme.length - 1));
47
- }
48
- }
49
- else {
50
- const wpath = `/home/${await Utils.getPrimaryUser()}/.wardrobe/vendors/`;
51
- theme = wpath + flags.theme;
52
- }
53
- theme = path.resolve(theme);
54
- if (!fs.existsSync(theme + '/theme')) {
55
- console.log('Cannot find theme: ' + theme);
56
- process.exit();
57
- }
58
- }
59
- console.log(`theme: ${theme}`);
60
- let installer = 'krill';
61
- if (Pacman.calamaresExists()) {
62
- installer = 'calamares';
63
- }
64
- if (Utils.isRoot(this.id)) {
65
- if (!nointeractive || (await Utils.customConfirm('Select yes to continue...'))) {
66
- if (remove) {
67
- if (Pacman.calamaresExists()) {
68
- await Pacman.calamaresRemove();
69
- if (await this.settings.load()) {
70
- this.settings.config.force_installer = false;
71
- this.settings.save(this.settings.config);
72
- installer = "krill";
73
- }
74
- }
75
- process.exit();
76
- }
77
- /**
78
- * Install
79
- */
80
- if (install) {
81
- Utils.warning('installing package calamares');
82
- await Pacman.calamaresInstall();
83
- if (await this.settings.load()) {
84
- this.settings.config.force_installer = true;
85
- this.settings.save(this.settings.config);
86
- policies = true;
87
- installer = "calamares";
88
- }
89
- }
90
- }
91
- /**
92
- * policies
93
- */
94
- if (policies) {
95
- Utils.warning('configuring calamares policies');
96
- await Pacman.calamaresPolicies();
97
- }
98
- /**
99
- * configure
100
- */
101
- if (await this.settings.load()) {
102
- await this.settings.loadRemix(theme);
103
- const isClone = false;
104
- this.incubator = new Incubator(this.settings.remix, this.settings.distro, this.settings.config.user_opt, theme, isClone, verbose);
105
- await this.incubator.config(release);
106
- }
107
- }
108
- else {
109
- Utils.useRoot(this.id);
110
- }
111
- }
112
- }
@@ -1,35 +0,0 @@
1
- /**
2
- * ./src/commands/config.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- import { IInstall } from '../interfaces/index.js';
10
- /**
11
- *
12
- */
13
- export default class Config extends Command {
14
- static description: string;
15
- static examples: string[];
16
- static flags: {
17
- clean: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
19
- nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
21
- };
22
- /**
23
- *
24
- * @param i
25
- * @param verbose
26
- */
27
- static install(i: IInstall, nointeractive?: boolean, verbose?: boolean): Promise<void>;
28
- /**
29
- *
30
- *
31
- * @param verbose
32
- */
33
- static thatWeNeed(nointeractive?: boolean, verbose?: boolean, homecrypt?: boolean): Promise<IInstall>;
34
- run(): Promise<void>;
35
- }
@@ -1,120 +0,0 @@
1
- /**
2
- * ./src/commands/config.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import Bleach from '../classes/bleach.js';
10
- import Pacman from '../classes/pacman.js';
11
- import Utils from '../classes/utils.js';
12
- import { exec } from '../lib/utils.js';
13
- /**
14
- *
15
- */
16
- export default class Config extends Command {
17
- static description = 'Configure eggs to run it';
18
- static examples = ['sudo eggs config', 'sudo eggs config --clean', 'sudo eggs config --clean --nointeractive'];
19
- static flags = {
20
- clean: Flags.boolean({ char: 'c', description: 'remove old configuration before to create new one' }),
21
- help: Flags.help({ char: 'h' }),
22
- nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
23
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
24
- };
25
- /**
26
- *
27
- * @param i
28
- * @param verbose
29
- */
30
- static async install(i, nointeractive = false, verbose = false) {
31
- const echo = Utils.setEcho(verbose);
32
- Utils.warning("sudo eggs config");
33
- if (i.configurationInstall) {
34
- Utils.warning('- creating configuration...');
35
- await Pacman.configurationInstall(verbose);
36
- }
37
- if (i.configurationRefresh) {
38
- Utils.warning('- refreshing configuration for new machine...');
39
- await Pacman.configurationMachineNew(verbose);
40
- }
41
- if (i.distroTemplate) {
42
- Utils.warning('- copying distro templates...');
43
- await Pacman.distroTemplateInstall(verbose);
44
- }
45
- if (i.needUpdate && !nointeractive && Pacman.distro().familyId === 'debian') {
46
- Utils.warning('- updating system...');
47
- await exec('apt-get update --yes', echo);
48
- }
49
- if (i.calamares) {
50
- let message = "- You are on a graphic system, is suggested\n";
51
- message += " to install the GUI installer calamares.\n";
52
- message += ' just type: "sudo eggs calamares --install"';
53
- Utils.warning(message);
54
- }
55
- if (i.addEfi && Pacman.distro().familyId === 'debian') {
56
- Utils.warning('- installing UEFI support');
57
- await exec('apt-get install grub-efi-' + Utils.uefiArch() + '-bin --yes', echo);
58
- }
59
- if (i.needUpdate && !nointeractive) {
60
- Utils.warning('cleaning the system...');
61
- if (Pacman.distro().familyId === 'debian') {
62
- const bleach = new Bleach();
63
- await bleach.clean(verbose);
64
- }
65
- }
66
- }
67
- /**
68
- *
69
- *
70
- * @param verbose
71
- */
72
- static async thatWeNeed(nointeractive = false, verbose = false, homecrypt = false) {
73
- const i = {};
74
- i.distroTemplate = !Pacman.distroTemplateCheck();
75
- i.addEfi = !Pacman.isUefi();
76
- i.calamares = false;
77
- if (!homecrypt &&
78
- !Pacman.calamaresExists() &&
79
- Pacman.isInstalledGui() &&
80
- Pacman.isCalamaresAvailable()) {
81
- i.calamares = true;
82
- }
83
- i.configurationInstall = !Pacman.configurationCheck();
84
- if (!i.configurationInstall) {
85
- i.configurationRefresh = !Pacman.configurationMachineNew();
86
- }
87
- return i;
88
- }
89
- async run() {
90
- const { flags } = await this.parse(Config);
91
- const { nointeractive } = flags;
92
- const { verbose } = flags;
93
- if (!nointeractive) {
94
- Utils.titles(this.id + ' ' + this.argv);
95
- }
96
- if (Utils.isRoot(this.id)) {
97
- if (flags.clean) {
98
- Utils.warning('removing old configurations');
99
- await exec('rm /etc/penguins-eggs.d -rf');
100
- }
101
- /**
102
- * Se stiamo utilizzando eggs da sorgenti
103
- * Aggiungo autocomplete e manPage
104
- */
105
- if (Utils.isSources()) {
106
- Utils.warning('creating autocomplete...');
107
- await Pacman.autocompleteInstall(verbose);
108
- Utils.warning('creating eggs man page...');
109
- await Pacman.manPageInstall(verbose);
110
- }
111
- const i = await Config.thatWeNeed(nointeractive, verbose);
112
- if (i.needUpdate || i.configurationInstall || i.configurationRefresh || i.distroTemplate) {
113
- await Config.install(i, nointeractive, verbose);
114
- }
115
- }
116
- else {
117
- Utils.useRoot(this.id);
118
- }
119
- }
120
- }
@@ -1,17 +0,0 @@
1
- /**
2
- * ./src/commands/cuckoo.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- export default class Cuckoo extends Command {
10
- static description: string;
11
- static examples: string[];
12
- static flags: {
13
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
14
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- };
16
- run(): Promise<void>;
17
- }
@@ -1,61 +0,0 @@
1
- /**
2
- * ./src/commands/cuckoo.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import network from '../classes/network.js';
10
- import Pxe from '../classes/pxe.js';
11
- import Settings from '../classes/settings.js';
12
- import Utils from '../classes/utils.js';
13
- export default class Cuckoo extends Command {
14
- static description = 'PXE start with proxy-dhcp';
15
- static examples = ['sudo eggs cuckoo'];
16
- static flags = {
17
- help: Flags.help({ char: 'h' }),
18
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
19
- };
20
- async run() {
21
- const { args, flags } = await this.parse(Cuckoo);
22
- Utils.titles(this.id + ' ' + this.argv);
23
- if (Utils.isRoot()) {
24
- const settings = new Settings();
25
- settings.load();
26
- const nest = settings.config.snapshot_mnt;
27
- const pxeRoot = nest + 'pxe';
28
- const pxe = new Pxe(nest, pxeRoot, flags.verbose);
29
- await pxe.fertilization();
30
- await pxe.build();
31
- const n = new network();
32
- /**
33
- * service proxy-dhcp
34
- */
35
- const dhcpOptions = {
36
- bios_filename: 'lpxelinux.0',
37
- efi32_filename: 'ipxe32.efi',
38
- efi64_filename: 'ipxe.pxe', // era ipxe.efi
39
- host: n.address,
40
- subnet: n.cidr,
41
- tftpserver: n.address,
42
- broadcast: n.broadcast()
43
- };
44
- pxe.dhcpdStart(dhcpOptions);
45
- /**
46
- * service tftp
47
- */
48
- const tftpOptions = {
49
- denyPUT: true,
50
- host: n.address,
51
- port: 69,
52
- root: pxeRoot
53
- };
54
- await pxe.tftpStart(tftpOptions);
55
- await pxe.httpStart();
56
- }
57
- else {
58
- Utils.useRoot(this.id);
59
- }
60
- }
61
- }
@@ -1,21 +0,0 @@
1
- /**
2
- * ./src/commands/dad.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- export default class Dad extends Command {
10
- static description: string;
11
- static examples: string[];
12
- static flags: {
13
- clean: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
- default: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- file: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
16
- nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
18
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
- };
20
- run(): Promise<void>;
21
- }
@@ -1,47 +0,0 @@
1
- /**
2
- * ./src/commands/dad.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import chalk from 'chalk';
10
- import fs from 'node:fs';
11
- import Daddy from '../classes/daddy.js';
12
- import Utils from '../classes/utils.js';
13
- import { exec } from '../lib/utils.js';
14
- export default class Dad extends Command {
15
- static description = 'ask help from daddy - TUI configuration helper';
16
- static examples = ['sudo dad', 'sudo dad --clean', 'sudo dad --default'];
17
- static flags = {
18
- clean: Flags.boolean({ char: 'c', description: 'remove old configuration before to create' }),
19
- default: Flags.boolean({ char: 'd', description: 'reset to default values' }),
20
- file: Flags.string({ char: 'f', description: 'use a file configuration custom' }),
21
- nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
22
- help: Flags.help({ char: 'h' }),
23
- verbose: Flags.boolean({ char: 'v' })
24
- };
25
- async run() {
26
- Utils.titles(this.id + ' ' + this.argv);
27
- console.log(chalk.cyan('Daddy, what else did you leave for me?'));
28
- const { flags } = await this.parse(Dad);
29
- const fileCustom = flags.file;
30
- const isCustom = fileCustom !== undefined && fileCustom !== '';
31
- const reset = flags.default;
32
- if (Utils.isRoot(this.id)) {
33
- if (flags.clean || flags.default || flags.mine) {
34
- await exec('rm /etc/penguins-eggs.d -rf');
35
- }
36
- if (isCustom && !fs.existsSync(fileCustom)) {
37
- console.log(chalk.red(`Custom configuration file: ${flags.custom} not found!`));
38
- process.exit(1);
39
- }
40
- const daddy = new Daddy();
41
- daddy.helpMe(reset, isCustom, fileCustom, flags.verbose);
42
- }
43
- else {
44
- Utils.useRoot(this.id);
45
- }
46
- }
47
- }
@@ -1,19 +0,0 @@
1
- /**
2
- * ./src/commands/export/iso.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- export default class ExportIso extends Command {
10
- static description: string;
11
- static examples: string[];
12
- static flags: {
13
- checksum: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
- clean: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
16
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
- };
18
- run(): Promise<void>;
19
- }
@@ -1,55 +0,0 @@
1
- /**
2
- * ./src/commands/export/iso.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command, Flags } from '@oclif/core';
9
- import Tools from '../../classes/tools.js';
10
- import Utils from '../../classes/utils.js';
11
- import { exec } from '../../lib/utils.js';
12
- export default class ExportIso extends Command {
13
- static description = 'export iso in the destination host';
14
- static examples = ['eggs export iso', 'eggs export iso --clean'];
15
- static flags = {
16
- checksum: Flags.boolean({ char: 'C', description: 'export checksums md5 and sha256' }),
17
- clean: Flags.boolean({ char: 'c', description: 'delete old ISOs before to copy' }),
18
- help: Flags.help({ char: 'h' }),
19
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
20
- };
21
- async run() {
22
- const { flags } = await this.parse(ExportIso);
23
- Utils.titles(this.id + ' ' + this.argv);
24
- Utils.warning(ExportIso.description);
25
- const Tu = new Tools();
26
- await Tu.loadSettings();
27
- const echo = Utils.setEcho(flags.verbose);
28
- const rmount = `/tmp/eggs-${(Math.random() + 1).toString(36).slice(7)}`;
29
- let cmd = `rm -f ${rmount}\n`;
30
- const filters = ['*.iso', '*.md5', '*.sha256'];
31
- cmd += `mkdir ${rmount}\n`;
32
- cmd += `sshfs ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso} ${rmount}\n`;
33
- if (flags.clean) {
34
- cmd += `rm -f ${rmount}/${Tu.snapshot_name}*\n`;
35
- }
36
- cmd += `cp ${Tu.snapshot_dir}${Tu.snapshot_name}${filters[0]} ${rmount}\n`;
37
- if (flags.checksum) {
38
- cmd += `cp ${Tu.snapshot_dir}${Tu.snapshot_name}${filters[1]} ${rmount}\n`;
39
- cmd += `cp ${Tu.snapshot_dir}${Tu.snapshot_name}${filters[2]} ${rmount}\n`;
40
- }
41
- cmd += 'sync\n';
42
- cmd += `umount ${rmount}\n`;
43
- cmd += `rm -f ${rmount}\m`;
44
- if (!flags.verbose) {
45
- if (flags.clean) {
46
- console.log(`remove ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso}${Tu.snapshot_name}${filters[0]}`);
47
- }
48
- if (flags.checksum) {
49
- console.log(`export ${Tu.config.localPathIso}/${Tu.snapshot_name}${filters[1]}/${filters[2]} to ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso}`);
50
- }
51
- console.log(`scp ${Tu.config.localPathIso}/${Tu.snapshot_name}${filters[0]} ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathIso}`);
52
- }
53
- await exec(cmd, echo);
54
- }
55
- }
@@ -1,29 +0,0 @@
1
- /**
2
- * ./src/commands/export/deb.ts
3
- * penguins-eggs v.25.7.x / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { Command } from '@oclif/core';
9
- import Tools from '../../classes/tools.js';
10
- export default class ExportPkg extends Command {
11
- static description: string;
12
- static examples: string[];
13
- static flags: {
14
- all: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- clean: import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
17
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
- };
19
- user: string;
20
- all: boolean;
21
- clean: boolean;
22
- verbose: boolean;
23
- echo: {};
24
- Tu: Tools;
25
- /**
26
- *
27
- */
28
- run(): Promise<void>;
29
- }