penguins-eggs 25.10.6 → 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 (474) hide show
  1. package/.oclif.manifest.json +51 -145
  2. package/README.md +59 -120
  3. package/README.pdf +1723 -1731
  4. package/addons/eggs/theme/livecd/isolinux.main.simple.cfg +2 -3
  5. package/conf/distros/trixie/calamares/modules/shellprocess@boot_deploy.yml +3 -4
  6. package/conf/love.yaml +1 -1
  7. package/dracut/create-symlink +71 -0
  8. package/dracut/dracut-log.txt +3 -0
  9. package/dracut/dracut.conf.d/50-live.conf +24 -6
  10. package/dracut/dracut.conf.d/README.md +10 -0
  11. package/dracut/export +4 -0
  12. package/dracut/export-dracut-analysis +51 -0
  13. package/dracut/export-dracut-log +2 -0
  14. package/dracut/mkisofs +10 -0
  15. package/dracut/modules.d/00debug-shell/debug-hook.sh +13 -0
  16. package/dracut/modules.d/00debug-shell/module-setup.sh +20 -0
  17. package/dracut/modules.d/90block/README.md +7 -0
  18. package/dracut/modules.d/90block/block-cmdline.sh +3 -0
  19. package/dracut/modules.d/90block/module-setup.sh +15 -0
  20. package/dracut/modules.d/95iso-scan/README.md +3 -0
  21. package/dracut/modules.d/95iso-scan/iso-scan-fallback.sh +12 -0
  22. package/dracut/modules.d/95iso-scan/iso-scan.sh +92 -0
  23. package/dracut/modules.d/95iso-scan/module-setup.sh +18 -0
  24. package/dracut/modules.d/95luks-loop/README.md +9 -0
  25. package/dracut/modules.d/95luks-loop/luks-loop.sh +90 -0
  26. package/dracut/modules.d/95luks-loop/module-setup.sh +17 -0
  27. package/dracut/renew-initramfs +17 -0
  28. package/dracut/sbin2bin +10 -0
  29. package/dracut/update-dracut-conf-d +2 -0
  30. package/dracut/update-dracut-modules +62 -0
  31. package/manpages/doc/man/eggs.1.gz +0 -0
  32. package/manpages/doc/man/eggs.html +7 -661
  33. package/package.json +10 -9
  34. package/perrisbrewery/template/dependencies.yaml +6 -5
  35. package/scripts/_eggs +16 -31
  36. package/scripts/boot-encrypted-root.sh +177 -0
  37. package/scripts/eggs.bash +4 -6
  38. package/scripts/mount-encrypted-home.sh +259 -0
  39. package/dist/classes/bleach.d.ts +0 -37
  40. package/dist/classes/bleach.js +0 -148
  41. package/dist/classes/cli-autologin.d.ts +0 -52
  42. package/dist/classes/cli-autologin.js +0 -252
  43. package/dist/classes/compressors.d.ts +0 -54
  44. package/dist/classes/compressors.js +0 -109
  45. package/dist/classes/daddy.d.ts +0 -26
  46. package/dist/classes/daddy.js +0 -175
  47. package/dist/classes/distro.d.ts +0 -32
  48. package/dist/classes/distro.js +0 -356
  49. package/dist/classes/diversions.d.ts +0 -53
  50. package/dist/classes/diversions.js +0 -133
  51. package/dist/classes/incubation/branding.d.ts +0 -17
  52. package/dist/classes/incubation/branding.js +0 -85
  53. package/dist/classes/incubation/customize/customize-partitions.d.ts +0 -4
  54. package/dist/classes/incubation/customize/customize-partitions.js +0 -29
  55. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +0 -1
  56. package/dist/classes/incubation/fisherman-helper/initcpio.js +0 -69
  57. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  58. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  59. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  60. package/dist/classes/incubation/fisherman-helper/settings.js +0 -116
  61. package/dist/classes/incubation/fisherman.d.ts +0 -71
  62. package/dist/classes/incubation/fisherman.js +0 -281
  63. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  64. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  65. package/dist/classes/incubation/incubator.d/archlinux.d.ts +0 -32
  66. package/dist/classes/incubation/incubator.d/archlinux.js +0 -81
  67. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  68. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  69. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  70. package/dist/classes/incubation/incubator.d/buster.js +0 -101
  71. package/dist/classes/incubation/incubator.d/fedora.d.ts +0 -32
  72. package/dist/classes/incubation/incubator.d/fedora.js +0 -81
  73. package/dist/classes/incubation/incubator.d/focal.d.ts +0 -32
  74. package/dist/classes/incubation/incubator.d/focal.js +0 -85
  75. package/dist/classes/incubation/incubator.d/manjaro.d.ts +0 -32
  76. package/dist/classes/incubation/incubator.d/manjaro.js +0 -82
  77. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  78. package/dist/classes/incubation/incubator.d/noble.js +0 -102
  79. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  80. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  81. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  82. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  83. package/dist/classes/incubation/incubator.d/trixie.d.ts +0 -32
  84. package/dist/classes/incubation/incubator.d/trixie.js +0 -101
  85. package/dist/classes/incubation/incubator.d.ts +0 -48
  86. package/dist/classes/incubation/incubator.js +0 -378
  87. package/dist/classes/incubation/installer.d.ts +0 -13
  88. package/dist/classes/incubation/installer.js +0 -52
  89. package/dist/classes/keyboards.d.ts +0 -50
  90. package/dist/classes/keyboards.js +0 -287
  91. package/dist/classes/locales.d.ts +0 -21
  92. package/dist/classes/locales.js +0 -77
  93. package/dist/classes/network.d.ts +0 -37
  94. package/dist/classes/network.js +0 -98
  95. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  96. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  97. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  98. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  99. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  100. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  101. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -20
  102. package/dist/classes/ovary.d/edit-live-fs.js +0 -245
  103. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  104. package/dist/classes/ovary.d/fertilization.js +0 -52
  105. package/dist/classes/ovary.d/finished.d.ts +0 -13
  106. package/dist/classes/ovary.d/finished.js +0 -44
  107. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  108. package/dist/classes/ovary.d/initrd.js +0 -97
  109. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  110. package/dist/classes/ovary.d/kernel-copy.js +0 -22
  111. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  112. package/dist/classes/ovary.d/live-create-structure.js +0 -73
  113. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  114. package/dist/classes/ovary.d/make-dot-disk.js +0 -62
  115. package/dist/classes/ovary.d/make-efi.d.ts +0 -14
  116. package/dist/classes/ovary.d/make-efi.js +0 -274
  117. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  118. package/dist/classes/ovary.d/make-iso.js +0 -45
  119. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  120. package/dist/classes/ovary.d/make-squashfs.js +0 -110
  121. package/dist/classes/ovary.d/merged.d.ts +0 -27
  122. package/dist/classes/ovary.d/merged.js +0 -78
  123. package/dist/classes/ovary.d/produce.d.ts +0 -23
  124. package/dist/classes/ovary.d/produce.js +0 -319
  125. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  126. package/dist/classes/ovary.d/rexec.js +0 -34
  127. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  128. package/dist/classes/ovary.d/syslinux.js +0 -82
  129. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  130. package/dist/classes/ovary.d/user-create-live.js +0 -97
  131. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  132. package/dist/classes/ovary.d/users-remove.js +0 -38
  133. package/dist/classes/ovary.d/xorriso-command.d.ts +0 -14
  134. package/dist/classes/ovary.d/xorriso-command.js +0 -123
  135. package/dist/classes/ovary.d.ts +0 -87
  136. package/dist/classes/ovary.js +0 -90
  137. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  138. package/dist/classes/pacman.d/alpine.js +0 -167
  139. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  140. package/dist/classes/pacman.d/archlinux.js +0 -128
  141. package/dist/classes/pacman.d/debian.d.ts +0 -65
  142. package/dist/classes/pacman.d/debian.js +0 -143
  143. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  144. package/dist/classes/pacman.d/fedora.js +0 -107
  145. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  146. package/dist/classes/pacman.d/openmamba.js +0 -106
  147. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  148. package/dist/classes/pacman.d/opensuse.js +0 -109
  149. package/dist/classes/pacman.d.ts +0 -139
  150. package/dist/classes/pacman.js +0 -683
  151. package/dist/classes/pve-live.d.ts +0 -17
  152. package/dist/classes/pve-live.js +0 -52
  153. package/dist/classes/pxe.d.ts +0 -76
  154. package/dist/classes/pxe.js +0 -353
  155. package/dist/classes/settings.d.ts +0 -52
  156. package/dist/classes/settings.js +0 -185
  157. package/dist/classes/sources_list.d.ts +0 -28
  158. package/dist/classes/sources_list.js +0 -89
  159. package/dist/classes/systemctl.d.ts +0 -47
  160. package/dist/classes/systemctl.js +0 -86
  161. package/dist/classes/tailor.d.ts +0 -50
  162. package/dist/classes/tailor.js +0 -563
  163. package/dist/classes/tools.d.ts +0 -26
  164. package/dist/classes/tools.js +0 -50
  165. package/dist/classes/users.d.ts +0 -28
  166. package/dist/classes/users.js +0 -143
  167. package/dist/classes/utils.d/kernel.d.ts +0 -39
  168. package/dist/classes/utils.d/kernel.js +0 -206
  169. package/dist/classes/utils.d.ts +0 -327
  170. package/dist/classes/utils.js +0 -955
  171. package/dist/classes/xdg.d.ts +0 -45
  172. package/dist/classes/xdg.js +0 -337
  173. package/dist/classes/yolk.d.ts +0 -33
  174. package/dist/classes/yolk.js +0 -114
  175. package/dist/commands/adapt.d.ts +0 -17
  176. package/dist/commands/adapt.js +0 -33
  177. package/dist/commands/analyze.d.ts +0 -26
  178. package/dist/commands/analyze.js +0 -95
  179. package/dist/commands/calamares.d.ts +0 -29
  180. package/dist/commands/calamares.js +0 -112
  181. package/dist/commands/config.d.ts +0 -35
  182. package/dist/commands/config.js +0 -120
  183. package/dist/commands/cuckoo.d.ts +0 -17
  184. package/dist/commands/cuckoo.js +0 -61
  185. package/dist/commands/dad.d.ts +0 -21
  186. package/dist/commands/dad.js +0 -47
  187. package/dist/commands/export/iso.d.ts +0 -19
  188. package/dist/commands/export/iso.js +0 -55
  189. package/dist/commands/export/pkg.d.ts +0 -29
  190. package/dist/commands/export/pkg.js +0 -173
  191. package/dist/commands/export/tarballs.d.ts +0 -27
  192. package/dist/commands/export/tarballs.js +0 -79
  193. package/dist/commands/install.d.ts +0 -39
  194. package/dist/commands/install.js +0 -113
  195. package/dist/commands/kill.d.ts +0 -24
  196. package/dist/commands/kill.js +0 -50
  197. package/dist/commands/love.d.ts +0 -21
  198. package/dist/commands/love.js +0 -73
  199. package/dist/commands/mom.d.ts +0 -16
  200. package/dist/commands/mom.js +0 -30
  201. package/dist/commands/pods.d.ts +0 -22
  202. package/dist/commands/pods.js +0 -92
  203. package/dist/commands/produce.d.ts +0 -35
  204. package/dist/commands/produce.js +0 -221
  205. package/dist/commands/status.d.ts +0 -23
  206. package/dist/commands/status.js +0 -31
  207. package/dist/commands/syncfrom.d.ts +0 -45
  208. package/dist/commands/syncfrom.js +0 -152
  209. package/dist/commands/syncto.d.ts +0 -40
  210. package/dist/commands/syncto.js +0 -175
  211. package/dist/commands/tools/clean.d.ts +0 -18
  212. package/dist/commands/tools/clean.js +0 -37
  213. package/dist/commands/tools/ppa.d.ts +0 -31
  214. package/dist/commands/tools/ppa.js +0 -244
  215. package/dist/commands/tools/skel.d.ts +0 -18
  216. package/dist/commands/tools/skel.js +0 -44
  217. package/dist/commands/tools/stat.d.ts +0 -31
  218. package/dist/commands/tools/stat.js +0 -70
  219. package/dist/commands/tools/yolk.d.ts +0 -24
  220. package/dist/commands/tools/yolk.js +0 -45
  221. package/dist/commands/update.d.ts +0 -46
  222. package/dist/commands/update.js +0 -238
  223. package/dist/commands/wardrobe/get.d.ts +0 -23
  224. package/dist/commands/wardrobe/get.js +0 -52
  225. package/dist/commands/wardrobe/list.d.ts +0 -24
  226. package/dist/commands/wardrobe/list.js +0 -125
  227. package/dist/commands/wardrobe/show.d.ts +0 -25
  228. package/dist/commands/wardrobe/show.js +0 -97
  229. package/dist/commands/wardrobe/wear.d.ts +0 -26
  230. package/dist/commands/wardrobe/wear.js +0 -84
  231. package/dist/dhcpd-proxy/classes/packet.d.ts +0 -36
  232. package/dist/dhcpd-proxy/classes/packet.js +0 -124
  233. package/dist/dhcpd-proxy/index.d.ts +0 -4
  234. package/dist/dhcpd-proxy/index.js +0 -4
  235. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +0 -45
  236. package/dist/dhcpd-proxy/interfaces/i-pxe.js +0 -1
  237. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +0 -11
  238. package/dist/dhcpd-proxy/lib/packet/converters.js +0 -395
  239. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +0 -10
  240. package/dist/dhcpd-proxy/lib/packet/message-types.js +0 -12
  241. package/dist/dhcpd-proxy/lib/packet/options.d.ts +0 -8
  242. package/dist/dhcpd-proxy/lib/packet/options.js +0 -264
  243. package/dist/dhcpd-proxy/lib/sprintf.d.ts +0 -6
  244. package/dist/dhcpd-proxy/lib/sprintf.js +0 -130
  245. package/dist/dhcpd-proxy/lib/utils.d.ts +0 -126
  246. package/dist/dhcpd-proxy/lib/utils.js +0 -255
  247. package/dist/dhcpd-proxy/simple-proxy.d.ts +0 -11
  248. package/dist/dhcpd-proxy/simple-proxy.js +0 -118
  249. package/dist/index.d.ts +0 -8
  250. package/dist/index.js +0 -8
  251. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +0 -23
  252. package/dist/interfaces/calamares/i-calamares-bootloader.js +0 -7
  253. package/dist/interfaces/calamares/i-calamares-branding.d.ts +0 -46
  254. package/dist/interfaces/calamares/i-calamares-branding.js +0 -1
  255. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +0 -34
  256. package/dist/interfaces/calamares/i-calamares-displaymanager.js +0 -1
  257. package/dist/interfaces/calamares/i-calamares-finished.d.ts +0 -14
  258. package/dist/interfaces/calamares/i-calamares-finished.js +0 -1
  259. package/dist/interfaces/calamares/i-calamares-packages.d.ts +0 -26
  260. package/dist/interfaces/calamares/i-calamares-packages.js +0 -1
  261. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +0 -39
  262. package/dist/interfaces/calamares/i-calamares-partitions.js +0 -1
  263. package/dist/interfaces/calamares/i-calamares-settings.d.ts +0 -36
  264. package/dist/interfaces/calamares/i-calamares-settings.js +0 -1
  265. package/dist/interfaces/i-addons.d.ts +0 -12
  266. package/dist/interfaces/i-addons.js +0 -8
  267. package/dist/interfaces/i-analyze.d.ts +0 -17
  268. package/dist/interfaces/i-analyze.js +0 -17
  269. package/dist/interfaces/i-app.d.ts +0 -14
  270. package/dist/interfaces/i-app.js +0 -8
  271. package/dist/interfaces/i-config-tools.d.ts +0 -15
  272. package/dist/interfaces/i-config-tools.js +0 -8
  273. package/dist/interfaces/i-devices.d.ts +0 -20
  274. package/dist/interfaces/i-devices.js +0 -8
  275. package/dist/interfaces/i-distro.d.ts +0 -23
  276. package/dist/interfaces/i-distro.js +0 -8
  277. package/dist/interfaces/i-drive-list.d.ts +0 -33
  278. package/dist/interfaces/i-drive-list.js +0 -8
  279. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  280. package/dist/interfaces/i-eggs-config.js +0 -8
  281. package/dist/interfaces/i-excludes.d.ts +0 -14
  282. package/dist/interfaces/i-excludes.js +0 -8
  283. package/dist/interfaces/i-exec.d.ts +0 -11
  284. package/dist/interfaces/i-exec.js +0 -8
  285. package/dist/interfaces/i-initrd.d.ts +0 -13
  286. package/dist/interfaces/i-initrd.js +0 -8
  287. package/dist/interfaces/i-install.d.ts +0 -16
  288. package/dist/interfaces/i-install.js +0 -8
  289. package/dist/interfaces/i-installer.d.ts +0 -17
  290. package/dist/interfaces/i-installer.js +0 -8
  291. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  292. package/dist/interfaces/i-luks-passphrase.js +0 -8
  293. package/dist/interfaces/i-materia.d.ts +0 -36
  294. package/dist/interfaces/i-materia.js +0 -8
  295. package/dist/interfaces/i-net.d.ts +0 -16
  296. package/dist/interfaces/i-net.js +0 -8
  297. package/dist/interfaces/i-os-release.d.ts +0 -5
  298. package/dist/interfaces/i-os-release.js +0 -1
  299. package/dist/interfaces/i-packages.d.ts +0 -16
  300. package/dist/interfaces/i-packages.js +0 -8
  301. package/dist/interfaces/i-partitions.d.ts +0 -16
  302. package/dist/interfaces/i-partitions.js +0 -8
  303. package/dist/interfaces/i-pxe.d.ts +0 -45
  304. package/dist/interfaces/i-pxe.js +0 -1
  305. package/dist/interfaces/i-remix.d.ts +0 -21
  306. package/dist/interfaces/i-remix.js +0 -8
  307. package/dist/interfaces/i-settings.d.ts +0 -33
  308. package/dist/interfaces/i-settings.js +0 -8
  309. package/dist/interfaces/i-user.d.ts +0 -14
  310. package/dist/interfaces/i-user.js +0 -8
  311. package/dist/interfaces/i-workdir.d.ts +0 -14
  312. package/dist/interfaces/i-workdir.js +0 -8
  313. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  314. package/dist/interfaces/i-xkb-model.js +0 -8
  315. package/dist/interfaces/index.d.ts +0 -26
  316. package/dist/interfaces/index.js +0 -8
  317. package/dist/krill/classes/cfs.d.ts +0 -17
  318. package/dist/krill/classes/cfs.js +0 -39
  319. package/dist/krill/classes/krill_enums.d.ts +0 -37
  320. package/dist/krill/classes/krill_enums.js +0 -41
  321. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  322. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  323. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  324. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  325. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  326. package/dist/krill/classes/prepare.d/location.js +0 -59
  327. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  328. package/dist/krill/classes/prepare.d/network.js +0 -68
  329. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  330. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  331. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  332. package/dist/krill/classes/prepare.d/summary.js +0 -72
  333. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  334. package/dist/krill/classes/prepare.d/users.js +0 -63
  335. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  336. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  337. package/dist/krill/classes/prepare.d.ts +0 -89
  338. package/dist/krill/classes/prepare.js +0 -319
  339. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  340. package/dist/krill/classes/sequence.d/add_user.js +0 -77
  341. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  342. package/dist/krill/classes/sequence.d/bootloader.js +0 -117
  343. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  344. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -192
  345. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  346. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  347. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  348. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  349. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  350. package/dist/krill/classes/sequence.d/fstab.js +0 -177
  351. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  352. package/dist/krill/classes/sequence.d/grubcfg.js +0 -35
  353. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  354. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  355. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  356. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  357. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  358. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  359. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  360. package/dist/krill/classes/sequence.d/locale.js +0 -91
  361. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  362. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  363. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  364. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  365. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  366. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  367. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  368. package/dist/krill/classes/sequence.d/mkfs.js +0 -88
  369. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  370. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  371. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  372. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -59
  373. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  374. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  375. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  376. package/dist/krill/classes/sequence.d/packages.js +0 -111
  377. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  378. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  379. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -16
  380. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -51
  381. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  382. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -77
  383. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  384. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -33
  385. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  386. package/dist/krill/classes/sequence.d/partition.js +0 -84
  387. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  388. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  389. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  390. package/dist/krill/classes/sequence.d/umount.js +0 -28
  391. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  392. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  393. package/dist/krill/classes/sequence.d.ts +0 -134
  394. package/dist/krill/classes/sequence.js +0 -400
  395. package/dist/krill/components/finished.d.ts +0 -16
  396. package/dist/krill/components/finished.js +0 -56
  397. package/dist/krill/components/information.d.ts +0 -8
  398. package/dist/krill/components/information.js +0 -162
  399. package/dist/krill/components/install.d.ts +0 -15
  400. package/dist/krill/components/install.js +0 -60
  401. package/dist/krill/components/keyboard.d.ts +0 -16
  402. package/dist/krill/components/keyboard.js +0 -54
  403. package/dist/krill/components/location.d.ts +0 -16
  404. package/dist/krill/components/location.js +0 -59
  405. package/dist/krill/components/network.d.ts +0 -19
  406. package/dist/krill/components/network.js +0 -65
  407. package/dist/krill/components/partitions.d.ts +0 -18
  408. package/dist/krill/components/partitions.js +0 -89
  409. package/dist/krill/components/steps.d.ts +0 -13
  410. package/dist/krill/components/steps.js +0 -148
  411. package/dist/krill/components/summary.d.ts +0 -25
  412. package/dist/krill/components/summary.js +0 -77
  413. package/dist/krill/components/title.d.ts +0 -11
  414. package/dist/krill/components/title.js +0 -35
  415. package/dist/krill/components/users.d.ts +0 -24
  416. package/dist/krill/components/users.js +0 -80
  417. package/dist/krill/components/welcome.d.ts +0 -13
  418. package/dist/krill/components/welcome.js +0 -63
  419. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  420. package/dist/krill/interfaces/i_krill.js +0 -8
  421. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  422. package/dist/krill/interfaces/i_krill_config.js +0 -8
  423. package/dist/krill/lib/get_address.d.ts +0 -8
  424. package/dist/krill/lib/get_address.js +0 -23
  425. package/dist/krill/lib/get_dns.d.ts +0 -8
  426. package/dist/krill/lib/get_dns.js +0 -23
  427. package/dist/krill/lib/get_domain.d.ts +0 -8
  428. package/dist/krill/lib/get_domain.js +0 -23
  429. package/dist/krill/lib/get_gateway.d.ts +0 -8
  430. package/dist/krill/lib/get_gateway.js +0 -23
  431. package/dist/krill/lib/get_hostname.d.ts +0 -8
  432. package/dist/krill/lib/get_hostname.js +0 -23
  433. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  434. package/dist/krill/lib/get_luks_passphrase.js +0 -32
  435. package/dist/krill/lib/get_netmask.d.ts +0 -8
  436. package/dist/krill/lib/get_netmask.js +0 -23
  437. package/dist/krill/lib/get_password.d.ts +0 -8
  438. package/dist/krill/lib/get_password.js +0 -36
  439. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  440. package/dist/krill/lib/get_userfullname.js +0 -23
  441. package/dist/krill/lib/get_username.d.ts +0 -8
  442. package/dist/krill/lib/get_username.js +0 -23
  443. package/dist/krill/lib/select_address_type.d.ts +0 -8
  444. package/dist/krill/lib/select_address_type.js +0 -24
  445. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  446. package/dist/krill/lib/select_filesystem_type.js +0 -40
  447. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  448. package/dist/krill/lib/select_installation_device.js +0 -40
  449. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  450. package/dist/krill/lib/select_installation_mode.js +0 -25
  451. package/dist/krill/lib/select_interface.d.ts +0 -8
  452. package/dist/krill/lib/select_interface.js +0 -24
  453. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  454. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  455. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  456. package/dist/krill/lib/select_keyboard_model.js +0 -34
  457. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  458. package/dist/krill/lib/select_keyboard_option.js +0 -34
  459. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  460. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  461. package/dist/krill/lib/select_languages.d.ts +0 -8
  462. package/dist/krill/lib/select_languages.js +0 -28
  463. package/dist/krill/lib/select_regions.d.ts +0 -8
  464. package/dist/krill/lib/select_regions.js +0 -24
  465. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  466. package/dist/krill/lib/select_replaced_partition.js +0 -31
  467. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  468. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  469. package/dist/krill/lib/select_zones.d.ts +0 -8
  470. package/dist/krill/lib/select_zones.js +0 -518
  471. package/dist/lib/kill_me_softly.d.ts +0 -11
  472. package/dist/lib/kill_me_softly.js +0 -61
  473. package/dist/lib/utils.d.ts +0 -19
  474. package/dist/lib/utils.js +0 -65
@@ -1,245 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/edit-live-fs.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
- // packages
9
- import fs from 'fs';
10
- import os from 'os';
11
- import path from 'node:path';
12
- import shx from 'shelljs';
13
- import Utils from '../utils.js';
14
- import Pacman from '../pacman.js';
15
- import Systemctl from '../systemctl.js';
16
- import { exec } from '../../lib/utils.js';
17
- // _dirname
18
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
19
- /**
20
- * editLiveFs
21
- * - Mark if is_clone or is_clone_crypted
22
- * - Truncate logs, remove archived log
23
- * - Allow all fixed drives to be mounted with pmount
24
- * - Enable or disable password login trhough ssh for users (not root)
25
- * - Create an empty /etc/fstab
26
- * - Blanck /etc/machine-id
27
- * - Add some basic files to /dev
28
- * - Clear configs from /etc/network/interfaces, wicd and NetworkManager and netman
29
- */
30
- export async function editLiveFs(clone = false, cryptedclone = false) {
31
- if (this.verbose) {
32
- console.log('Ovary: editLiveFs');
33
- }
34
- /**
35
- * /etc/penguins-eggs.d/is_clone file created on live
36
- */
37
- if (clone) {
38
- await exec(`touch ${this.settings.work_dir.merged}/etc/penguins-eggs.d/is_clone`, this.echo);
39
- }
40
- /**
41
- * /etc/penguins-eggs.d/is_crypted_clone file created on live
42
- */
43
- if (cryptedclone) {
44
- await exec(`touch ${this.settings.work_dir.merged}/etc/penguins-eggs.d/is_crypted_clone`, this.echo);
45
- }
46
- /**
47
- * /etc/default/epoptes-client created on live
48
- */
49
- if (Pacman.packageIsInstalled('epoptes')) {
50
- const file = `${this.settings.work_dir.merged}/etc/default/epoptes-client`;
51
- const text = `SERVER=${os.hostname}.local\n`;
52
- fs.writeFileSync(file, text);
53
- }
54
- if (this.familyId === 'debian') {
55
- // Aggiungo UMASK=0077 in /etc/initramfs-tools/conf.d/calamares-safe-initramfs.conf
56
- const text = 'UMASK=0077\n';
57
- const file = '/etc/initramfs-tools/conf.d/eggs-safe-initramfs.conf';
58
- Utils.write(file, text);
59
- }
60
- // Truncate logs, remove archived logs.
61
- let cmd = `find ${this.settings.work_dir.merged}/var/log -name "*gz" -print0 | xargs -0r rm -f`;
62
- await exec(cmd, this.echo);
63
- cmd = `find ${this.settings.work_dir.merged}/var/log/ -type f -exec truncate -s 0 {} \\;`;
64
- await exec(cmd, this.echo);
65
- // Allow all fixed drives to be mounted with pmount
66
- if (this.settings.config.pmount_fixed && fs.existsSync(`${this.settings.work_dir.merged}/etc/pmount.allow`)) {
67
- // MX aggiunto /etc
68
- await exec(`sed -i 's:#/dev/sd\[a-z\]:/dev/sd\[a-z\]:' ${this.settings.work_dir.merged}/etc/pmount.allow`, this.echo);
69
- }
70
- // Remove obsolete live-config file
71
- if (fs.existsSync(`${this.settings.work_dir.merged}lib/live/config/1161-openssh-server`)) {
72
- await exec(`rm -f ${this.settings.work_dir.merged}/lib/live/config/1161-openssh-server`, this.echo);
73
- }
74
- if (fs.existsSync(`${this.settings.work_dir.merged}/etc/ssh/sshd_config`)) {
75
- /**
76
- * enable/disable SSH root/users password login
77
- */
78
- await exec(`sed -i '/PermitRootLogin/d' ${this.settings.work_dir.merged}/etc/ssh/sshd_config`);
79
- await exec(`sed -i '/PasswordAuthentication/d' ${this.settings.work_dir.merged}/etc/ssh/sshd_config`);
80
- if (this.settings.config.ssh_pass) {
81
- await exec(`echo 'PasswordAuthentication yes' | tee -a ${this.settings.work_dir.merged}/etc/ssh/sshd_config`, this.echo);
82
- }
83
- else {
84
- await exec(`echo 'PermitRootLogin prohibit-password' | tee -a ${this.settings.work_dir.merged}/etc/ssh/sshd_config`, this.echo);
85
- await exec(`echo 'PasswordAuthentication no' | tee -a ${this.settings.work_dir.merged}/etc/ssh/sshd_config`, this.echo);
86
- }
87
- }
88
- /**
89
- * ufw --force reset
90
- */
91
- // if (Pacman.packageIsInstalled('ufw')) {
92
- // await exec('ufw --force reset')
93
- // }
94
- /**
95
- * /etc/fstab should exist, even if it's empty,
96
- * to prevent error messages at boot
97
- */
98
- await exec(`rm ${this.settings.work_dir.merged}/etc/fstab`, this.echo);
99
- await exec(`touch ${this.settings.work_dir.merged}/etc/fstab`, this.echo);
100
- /**
101
- * Remove crypttab if exists
102
- * this is crucial for tpm systems.
103
- */
104
- if (fs.existsSync(`${this.settings.work_dir.merged}/etc/crypttab`)) {
105
- await exec(`rm ${this.settings.work_dir.merged}/etc/crypttab`, this.echo);
106
- }
107
- /**
108
- * Blank out systemd machine id.
109
- * If it does not exist, systemd-journald will fail,
110
- * but if it exists and is empty, systemd will automatically
111
- * set up a new unique ID.
112
- */
113
- if (fs.existsSync(`${this.settings.work_dir.merged}/etc/machine-id`)) {
114
- await exec(`rm ${this.settings.work_dir.merged}/etc/machine-id`, this.echo);
115
- await exec(`touch ${this.settings.work_dir.merged}/etc/machine-id`, this.echo);
116
- Utils.write(`${this.settings.work_dir.merged}/etc/machine-id`, ':');
117
- }
118
- /**
119
- * LMDE4: utilizza UbuntuMono16.pf2
120
- * aggiungo un link a /boot/grub/fonts/UbuntuMono16.pf2
121
- */
122
- if (fs.existsSync(`${this.settings.work_dir.merged}/boot/grub/fonts/unicode.pf2`)) {
123
- shx.cp(`${this.settings.work_dir.merged}/boot/grub/fonts/unicode.pf2`, `${this.settings.work_dir.merged}/boot/grub/fonts/UbuntuMono16.pf2`);
124
- }
125
- /**
126
- * cleaning /etc/resolv.conf
127
- */
128
- const resolvFile = `${this.settings.work_dir.merged}/etc/resolv.conf`;
129
- shx.rm(resolvFile);
130
- /**
131
- * Per tutte le distro systemd
132
- */
133
- if (Utils.isSystemd()) {
134
- const systemdctl = new Systemctl(this.verbose);
135
- /*
136
- * Arch: /ci/minimal/arch-minimal.sh:
137
- * systemctl set-default multi-user.target
138
- * systemctl enable getty@tty1.service
139
- * systemctl enable systemd-networkd.service
140
- * systemctl enable 'systemd-resolved.service
141
- */
142
- if (await systemdctl.isEnabled('remote-cryptsetup.target')) {
143
- await systemdctl.disable('remote-cryptsetup.target', this.settings.work_dir.merged, true);
144
- }
145
- if (await systemdctl.isEnabled('speech-dispatcherd.service')) {
146
- await systemdctl.disable('speech-dispatcherd.service', this.settings.work_dir.merged, true);
147
- }
148
- if (await systemdctl.isEnabled('wpa_supplicant-nl80211@.service')) {
149
- await systemdctl.disable('wpa_supplicant-nl80211@.service', this.settings.work_dir.merged, true);
150
- }
151
- if (await systemdctl.isEnabled('wpa_supplicant@.service')) {
152
- await systemdctl.disable('wpa_supplicant@.service', this.settings.work_dir.merged, true);
153
- }
154
- if (await systemdctl.isEnabled('wpa_supplicant-wired@.service')) {
155
- await systemdctl.disable('wpa_supplicant-wired@.service', this.settings.work_dir.merged, true);
156
- }
157
- /**
158
- * All systemd distros
159
- */
160
- await exec(`rm -f ${this.settings.work_dir.merged}/var/lib/wicd/configurations/*`, this.echo);
161
- await exec(`rm -f ${this.settings.work_dir.merged}/etc/wicd/wireless-settings.conf`, this.echo);
162
- await exec(`rm -f ${this.settings.work_dir.merged}/etc/NetworkManager/system-connections/*`, this.echo);
163
- await exec(`rm -f ${this.settings.work_dir.merged}/etc/network/wifi/*`, this.echo);
164
- /**
165
- * removing from /etc/network/:
166
- * if-down.d if-post-down.d if-pre-up.d if-up.d interfaces interfaces.d
167
- */
168
- const cleanDirs = ['if-down.d', 'if-post-down.d', 'if-pre-up.d', 'if-up.d', 'interfaces.d'];
169
- let cleanDir = '';
170
- for (cleanDir of cleanDirs) {
171
- await exec(`rm -f ${this.settings.work_dir.merged}/etc/network/${cleanDir}/wpasupplicant`, this.echo);
172
- }
173
- }
174
- /**
175
- * Clear configs from /etc/network/interfaces, wicd and NetworkManager
176
- * and netman, so they aren't stealthily included in the snapshot.
177
- */
178
- if (this.familyId === 'debian') {
179
- if (fs.existsSync(`${this.settings.work_dir.merged}/etc/network/interfaces`)) {
180
- await exec(`rm -f ${this.settings.work_dir.merged}/etc/network/interfaces`, this.echo);
181
- Utils.write(`${this.settings.work_dir.merged}/etc/network/interfaces`, 'auto lo\niface lo inet loopback');
182
- }
183
- /**
184
- * add some basic files to /dev
185
- */
186
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/console`)) {
187
- await exec(`mknod -m 622 ${this.settings.work_dir.merged}/dev/console c 5 1`, this.echo);
188
- }
189
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/null`)) {
190
- await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/null c 1 3`, this.echo);
191
- }
192
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/zero`)) {
193
- await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/zero c 1 5`, this.echo);
194
- }
195
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/ptmx`)) {
196
- await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/ptmx c 5 2`, this.echo);
197
- }
198
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/tty`)) {
199
- await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/tty c 5 0`, this.echo);
200
- }
201
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/random`)) {
202
- await exec(`mknod -m 444 ${this.settings.work_dir.merged}/dev/random c 1 8`, this.echo);
203
- }
204
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/urandom`)) {
205
- await exec(`mknod -m 444 ${this.settings.work_dir.merged}/dev/urandom c 1 9`, this.echo);
206
- }
207
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/{console,ptmx,tty}`)) {
208
- await exec(`chown -v root:tty ${this.settings.work_dir.merged}/dev/{console,ptmx,tty}`, this.echo);
209
- }
210
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/fd`)) {
211
- await exec(`ln -sv /proc/self/fd ${this.settings.work_dir.merged}/dev/fd`, this.echo);
212
- }
213
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/stdin`)) {
214
- await exec(`ln -sv /proc/self/fd/0 ${this.settings.work_dir.merged}/dev/stdin`, this.echo);
215
- }
216
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/stdout`)) {
217
- await exec(`ln -sv /proc/self/fd/1 ${this.settings.work_dir.merged}/dev/stdout`, this.echo);
218
- }
219
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/stderr`)) {
220
- await exec(`ln -sv /proc/self/fd/2 ${this.settings.work_dir.merged}/dev/stderr`, this.echo);
221
- }
222
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/core`)) {
223
- await exec(`ln -sv /proc/kcore ${this.settings.work_dir.merged}/dev/core`, this.echo);
224
- }
225
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/shm`)) {
226
- await exec(`mkdir -v ${this.settings.work_dir.merged}/dev/shm`, this.echo);
227
- }
228
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/pts`)) {
229
- await exec(`mkdir -v ${this.settings.work_dir.merged}/dev/pts`, this.echo);
230
- }
231
- if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/shm`)) {
232
- await exec(`chmod 1777 ${this.settings.work_dir.merged}/dev/shm`, this.echo);
233
- }
234
- /**
235
- * creo /tmp
236
- */
237
- if (!fs.existsSync(`${this.settings.work_dir.merged}/tmp`)) {
238
- await exec(`mkdir ${this.settings.work_dir.merged}/tmp`, this.echo);
239
- }
240
- /**
241
- * Assegno 1777 a /tmp creava problemi con MXLINUX
242
- */
243
- await exec(`chmod 1777 ${this.settings.work_dir.merged}/tmp`, this.echo);
244
- }
245
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * ./src/classes/xorriso-command.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 Ovary from '../ovary.js';
9
- /**
10
- * @returns {boolean} success
11
- */
12
- export declare function fertilization(this: Ovary, snapshot_prefix?: string, snapshot_basename?: string, theme?: string, compression?: string, nointeratctive?: boolean): Promise<boolean>;
@@ -1,52 +0,0 @@
1
- /**
2
- * ./src/classes/xorriso-command.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
- // packages
9
- import path from 'node:path';
10
- import Settings from '../settings.js';
11
- import Utils from '../utils.js';
12
- import Distro from '../distro.js';
13
- // _dirname
14
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
15
- /**
16
- * @returns {boolean} success
17
- */
18
- export async function fertilization(snapshot_prefix = '', snapshot_basename = '', theme = '', compression = '', nointeratctive = false) {
19
- // familyId, distroId from Distro
20
- const distro = new Distro();
21
- this.familyId = distro.familyId;
22
- this.distroId = distro.distroId;
23
- this.distroLike = distro.distroLike;
24
- this.settings = new Settings();
25
- if (await this.settings.load()) {
26
- await this.settings.loadRemix(this.theme);
27
- this.volid = Utils.getVolid(this.settings.remix.name);
28
- this.uuid = Utils.uuidGen();
29
- //this.familyId = this.settings.distro.familyId
30
- this.nest = this.settings.config.snapshot_mnt;
31
- if (snapshot_prefix !== '') {
32
- this.settings.config.snapshot_prefix = snapshot_prefix;
33
- }
34
- if (snapshot_basename !== '') {
35
- this.settings.config.snapshot_basename = snapshot_basename;
36
- }
37
- if (theme !== '') {
38
- this.theme = theme;
39
- }
40
- if (compression !== '') {
41
- this.settings.config.compression = compression;
42
- }
43
- if (!nointeratctive) {
44
- return true;
45
- }
46
- this.settings.listFreeSpace();
47
- if (await Utils.customConfirm('Select yes to continue...')) {
48
- return true;
49
- }
50
- }
51
- return false;
52
- }
@@ -1,13 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/finished.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 Ovary from './../ovary.js';
9
- /**
10
- * finished = show the results
11
- * @param scriptOnly
12
- */
13
- export declare function finished(this: Ovary, scriptOnly?: boolean): void;
@@ -1,44 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/finished.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 chalk from 'chalk';
9
- // packages
10
- import path from 'path';
11
- // interfaces
12
- // libraries
13
- // classes
14
- import Utils from './../utils.js';
15
- // _dirname
16
- /**
17
- * finished = show the results
18
- * @param scriptOnly
19
- */
20
- export function finished(scriptOnly = false) {
21
- Utils.titles('produce');
22
- if (scriptOnly) {
23
- const pathOvarium = path.join(this.settings.config.snapshot_dir, 'ovarium');
24
- console.log('eggs is finished!\n\nYou can find the scripts to build iso: ' + chalk.cyanBright(this.settings.isoFilename) + '\nin the ovarium: ' + chalk.cyanBright(pathOvarium) + '.');
25
- console.log('usage');
26
- console.log(chalk.cyanBright(`cd ${pathOvarium}`));
27
- console.log(chalk.cyanBright('sudo ./bind'));
28
- console.log('Make all yours modifications in the directories filesystem.squashfs and iso.');
29
- console.log('After when you are ready:');
30
- console.log(chalk.cyanBright('sudo ./mksquashfs'));
31
- console.log(chalk.cyanBright('sudo ./mkisofs'));
32
- console.log(chalk.cyanBright('sudo ./ubind'));
33
- console.log('happy hacking!');
34
- }
35
- else {
36
- console.log('eggs is finished!\n\nYou can find the file iso: ' + chalk.cyanBright(this.settings.isoFilename) + '\nin the nest: ' + chalk.cyanBright(this.settings.config.snapshot_dir) + '.');
37
- }
38
- console.log();
39
- console.log('Remember, on liveCD user = ' + chalk.cyanBright(this.settings.config.user_opt) + '/' + chalk.cyanBright(this.settings.config.user_opt_passwd));
40
- console.log(' root = ' + chalk.cyanBright('root') + '/' + chalk.cyanBright(this.settings.config.root_passwd));
41
- if (this.genisoimage) {
42
- console.log(`Note: format UDF, generated by ${chalk.cyanBright('genisoimage')}`);
43
- }
44
- }
@@ -1,21 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/initrd-arch.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 Ovary from '../ovary.js';
9
- /**
10
- * initrdAlpine
11
- */
12
- export declare function initrdAlpine(this: Ovary): Promise<void>;
13
- /**
14
- * initrdArch
15
- */
16
- export declare function initrdArch(this: Ovary): Promise<void>;
17
- /**
18
- * initrdDebian
19
- */
20
- export declare function initrdDebian(this: Ovary, verbose?: boolean): Promise<void>;
21
- export declare function initrdDracut(this: Ovary): Promise<void>;
@@ -1,97 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/initrd-arch.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 fs from 'fs';
9
- import path from 'node:path';
10
- // classes
11
- import { exec } from '../../lib/utils.js';
12
- import Utils from '../utils.js';
13
- import Diversions from '../diversions.js';
14
- // _dirname
15
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
16
- /**
17
- * initrdAlpine
18
- */
19
- export async function initrdAlpine() {
20
- Utils.warning(`creating ${path.basename(this.initrd)} Alpine on (ISO)/live`);
21
- let initrdImg = Utils.initrdImg();
22
- initrdImg = initrdImg.slice(Math.max(0, initrdImg.lastIndexOf('/') + 1));
23
- const pathConf = path.resolve(__dirname, `../../../mkinitfs/live.conf`);
24
- await exec(`mkinitfs -c ${pathConf} -o ${this.settings.iso_work}live/${initrdImg} ${this.kernel}`, this.echo);
25
- }
26
- /**
27
- * initrdArch
28
- */
29
- export async function initrdArch() {
30
- Utils.warning(`creating ${path.basename(this.initrd)} using mkinitcpio on (ISO)/live`);
31
- let dirConf = 'arch';
32
- let tool = 'archiso';
33
- let hookSrc = '/usr/lib/initcpio/hooks/archiso_pxe_http';
34
- let hookDest = '/etc/initcpio/hooks/archiso_pxe_http';
35
- let edit = `sed -i 's/export copytoram="y"/# export copytoram="y"/' ${hookDest}`;
36
- if (Diversions.isManjaroBased(this.distroId)) {
37
- dirConf = 'manjaro';
38
- tool = 'miso';
39
- hookSrc = `/etc/initcpio/hooks/miso_pxe_http`;
40
- hookDest = hookSrc;
41
- edit = `sed -i 's/copytoram="y"/# copytoram="y"/' ${hookDest}`;
42
- if (this.distroId === "Biglinux" || this.distroId === "Bigcommunity") {
43
- dirConf = 'biglinux';
44
- }
45
- }
46
- const restore = fs.existsSync(hookDest);
47
- const pathConf = path.resolve(__dirname, `../../../mkinitcpio/${dirConf}`);
48
- const fileConf = pathConf + '/live.conf';
49
- let hookSaved = `/tmp/${path.basename(hookSrc)}`;
50
- if (hookSrc !== hookDest) {
51
- await exec(`cp ${hookSrc} ${hookDest}`);
52
- }
53
- await exec(`cp ${hookSrc} ${hookSaved}`);
54
- await exec(edit, this.echo);
55
- let cmd = `mkinitcpio -c ${fileConf} -g ${this.settings.iso_work}live/${path.basename(this.initrd)} -k ${this.kernel}`;
56
- await exec(cmd, this.echo);
57
- await exec(`rm -f ${hookDest}`);
58
- if (restore) {
59
- await exec(`cp ${hookSaved} ${hookDest}`);
60
- }
61
- await exec(`rm -f ${hookSaved}`);
62
- }
63
- /**
64
- * initrdDebian
65
- */
66
- export async function initrdDebian(verbose = false) {
67
- Utils.warning(`creating ${this.initrd} using mkinitramfs on (ISO)/live`);
68
- let isCrypted = false;
69
- if (fs.existsSync('/etc/crypttab')) {
70
- isCrypted = true;
71
- await exec('mv /etc/crypttab /etc/crypttab.saved', this.echo);
72
- }
73
- await exec(`mkinitramfs -o ${this.settings.iso_work}live/${path.basename(this.initrd)} ${this.kernel} ${this.toNull}`, this.echo);
74
- if (isCrypted) {
75
- await exec('mv /etc/crypttab.saved /etc/crypttab', this.echo);
76
- }
77
- }
78
- /*
79
- * initrdDracut) Almalinux/Fedora/Openmamba/Opensuse/Rocky/Voidlinux
80
- */
81
- export async function initrdDracut() {
82
- Utils.warning(`creating ${path.basename(this.initrd)} using dracut on (ISO)/live`);
83
- const prefix = this.settings.config.snapshot_prefix;
84
- const confdir = '--confdir ' + path.resolve(__dirname, `../../../dracut/dracut.conf.d`);
85
- // const dracutdir='--dracutdir /opt/penguins-eggs/dracut'
86
- const dracutdir = '';
87
- const dest = `${this.settings.iso_work}live/${path.basename(this.initrd)}`;
88
- const log = `> ${this.settings.iso_work}${prefix}dracut.log.txt 2>&1`;
89
- const kmoddir = `--kmoddir /lib/modules/${this.kernel}`;
90
- const cmd = `dracut --force --debug --no-hostonly ${confdir} ${kmoddir} ${dest} ${this.kernel} ${log}`;
91
- //const cmd=`ls -la /lib /lib/modules ${log}`
92
- console.log(cmd);
93
- await exec(cmd, this.echo);
94
- // clean per btrfs
95
- let clean = `../../../scripts/99clean ${this.kernel}`;
96
- await exec(clean, this.echo);
97
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/produce.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 Ovary from './../ovary.js';
9
- /**
10
- * kernelCopy
11
- */
12
- export declare function kernelCopy(this: Ovary): Promise<void>;
@@ -1,22 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/produce.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 path from 'path';
9
- // interfaces
10
- // libraries
11
- import { exec } from '../../lib/utils.js';
12
- // classes
13
- import Utils from './../utils.js';
14
- // _dirname
15
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
16
- /**
17
- * kernelCopy
18
- */
19
- export async function kernelCopy() {
20
- Utils.warning(`copying ${path.basename(this.vmlinuz)} on (ISO)/live`);
21
- await exec(`cp ${this.vmlinuz} ${this.settings.iso_work}live/`, this.echo);
22
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/live-create-structure.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 Ovary from './../ovary.js';
9
- /**
10
- * Crea la struttura della workdir
11
- */
12
- export declare function liveCreateStructure(this: Ovary): Promise<void>;
@@ -1,73 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/live-create-structure.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 path from 'path';
9
- // interfaces
10
- // libraries
11
- import { exec } from '../../lib/utils.js';
12
- // classes
13
- import Utils from './../utils.js';
14
- // _dirname
15
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
16
- /**
17
- * Crea la struttura della workdir
18
- */
19
- export async function liveCreateStructure() {
20
- if (this.verbose) {
21
- console.log('Ovary: liveCreateStructure');
22
- }
23
- Utils.warning(`creating egg in ${this.nest}`);
24
- let cmd = '';
25
- cmd = `# create nest\n`;
26
- cmd += `mkdir -p ${this.nest}\n`;
27
- cmd += `# README.md\n`;
28
- cmd += `cp ${path.resolve(__dirname, '../../../conf/README.md')} ${this.nest}README.md\n`;
29
- cmd += `# cleaning dotMnt\n`;
30
- cmd += `rm -rf ${this.dotMnt}efi\n`;
31
- cmd += `rm -rf ${this.dotMnt}filesystem.squashfs\n`;
32
- cmd += `rm -rf ${this.dotMnt}/iso\n`;
33
- cmd += `mkdir -p ${this.dotMnt}/iso/live\n`;
34
- cmd += `mkdir -p ${this.dotMnt}/iso/boot/grub/${Utils.uefiFormat()}\n`;
35
- cmd += `mkdir -p ${this.dotMnt}/iso/isolinux\n`;
36
- cmd += `# cleaning (nest).overlay\n`;
37
- cmd += `umount ${this.dotLivefs}/* > /dev/null 2>&1\n`;
38
- cmd += `umount ${this.dotOverlay.lowerdir}/* > /dev/null 2>&1\n`;
39
- cmd += `umount ${this.dotOverlay.upperdir}/* > /dev/null 2>&1\n`;
40
- cmd += `umount ${this.dotOverlay.workdir}/* > /dev/null 2>&1\n`;
41
- cmd += `rm -rf ${this.nest}.overlay\n`;
42
- cmd += `mkdir -p ${this.dotOverlay.lowerdir}\n`;
43
- cmd += `mkdir -p ${this.dotOverlay.upperdir}\n`;
44
- cmd += `mkdir -p ${this.dotOverlay.workdir}\n`;
45
- cmd += `sleep 1\n`;
46
- cmd += `# cleaning dotLivefs\n`;
47
- cmd += `rm -rf ${this.dotLivefs}\n`;
48
- cmd += `mkdir -p ${this.dotLivefs}\n`;
49
- cmd += `# cleaning (nest)/ovarium\n`;
50
- cmd += `rm -rf ${this.nest}ovarium\n`;
51
- cmd += `mkdir -p ${this.nest}ovarium\n`;
52
- cmd += `# cleaning (nest)/links\n`;
53
- cmd += `rm -f ${this.nest}iso\n`;
54
- cmd += `ln -s ${this.nest}.mnt/iso ${this.nest}/iso\n`;
55
- cmd += `rm -f ${this.nest}livefs\n`;
56
- cmd += `ln -s ${this.dotLivefs} ${this.nest}livefs\n`;
57
- tryCatch(cmd, this.verbose);
58
- }
59
- /**
60
- *
61
- * @param cmd
62
- */
63
- async function tryCatch(cmd = '', verbose = false) {
64
- try {
65
- let echo = Utils.setEcho(verbose);
66
- // console.log(cmd)
67
- await exec(cmd, echo);
68
- }
69
- catch (error) {
70
- console.log(`Error: ${error}`);
71
- await Utils.pressKeyToExit(cmd);
72
- }
73
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * ./src/classes/ovary.d/produce.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 Ovary from './../ovary.js';
9
- /**
10
- * makeDotDisk
11
- */
12
- export declare function makeDotDisk(this: Ovary, info?: string, mksquashfs?: string, mkisofs?: string): void;