penguins-eggs 25.9.14 → 25.9.25

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 (572) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/README.md +29 -29
  3. package/addons/eggs/adapt/applications/eggs-adapt.desktop +0 -0
  4. package/addons/eggs/pve/applications/eggs-pve.desktop +0 -0
  5. package/addons/eggs/rsupport/applications/eggs-rsupport.desktop +0 -0
  6. package/addons/eggs/theme/applications/install-system.desktop +0 -0
  7. package/addons/eggs/theme/calamares/branding/show.qml +61 -74
  8. package/assets/calamares/install-system.sh +0 -0
  9. package/assets/penguins-eggs.desktop +0 -0
  10. package/assets/penguins-krill.desktop +0 -0
  11. package/assets/penguins-links-add.desktop +0 -0
  12. package/assets/penguins-live-installer.desktop +0 -0
  13. package/bin/dev.js +0 -0
  14. package/conf/derivatives.yaml +2 -2
  15. package/conf/distros/alpine/calamares/calamares-modules/machineid-openrc/machineid-openrc.sh +0 -0
  16. package/conf/distros/alpine/calamares/modules/mount.yml +104 -39
  17. package/conf/distros/alpine/calamares/settings.yml +4 -4
  18. package/conf/distros/bionic/calamares/calamares-modules/after-bootloader/after-bootloader.sh +0 -0
  19. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader/before-bootloader.sh +0 -0
  20. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader-mkdirs/before-bootloader-mkdirs.sh +0 -0
  21. package/conf/distros/bionic/calamares/calamares-modules/bug/bug.sh +0 -0
  22. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/main.py +0 -0
  23. package/conf/distros/bionic/calamares/settings.yml +5 -5
  24. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  25. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  26. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  27. package/conf/distros/buster/calamares/libexec/.keepit +0 -0
  28. package/conf/distros/buster/calamares/libexec/README.md +5 -0
  29. package/conf/distros/{noble/calamares/modules/focal-jammy/mount.yml → buster/calamares/modules/mount.3.2.yml} +3 -6
  30. package/conf/distros/buster/calamares/modules/mount.yml +2 -4
  31. package/conf/distros/buster/calamares/modules/shellprocess@boot_deploy.yml +23 -0
  32. package/conf/distros/buster/calamares/modules/shellprocess@boot_reconfigure.yml +14 -0
  33. package/conf/distros/buster/calamares/modules/shellprocess@mkinitramfs.yml +4 -0
  34. package/conf/distros/buster/calamares/settings.yml +28 -11
  35. package/conf/distros/fedora/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  36. package/conf/distros/fedora/calamares/settings.yml +6 -6
  37. package/conf/distros/jessie/krill/settings.yml +6 -6
  38. package/conf/distros/noble/README.md +8 -1
  39. package/conf/distros/noble/calamares/libexec/.keepit +0 -0
  40. package/conf/distros/noble/calamares/libexec/README.md +5 -0
  41. package/conf/distros/noble/calamares/libexec/calamares-aptsources.sh +15 -0
  42. package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +35 -0
  43. package/conf/distros/noble/calamares/libexec/calamares-logs-helper.sh +34 -0
  44. package/conf/distros/noble/calamares/libexec/calamares-nomodeset.sh +19 -0
  45. package/conf/distros/noble/calamares/modules/after_bootloader_context.yml +26 -0
  46. package/conf/distros/noble/calamares/modules/before_bootloader_context.yml +12 -0
  47. package/conf/distros/noble/calamares/modules/bootloader.yml +67 -14
  48. package/conf/distros/noble/calamares/modules/bootloader.yml.old +35 -0
  49. package/conf/distros/noble/calamares/modules/displaymanager.yml +21 -0
  50. package/conf/distros/noble/calamares/modules/finished.yml +3 -0
  51. package/conf/distros/noble/calamares/modules/fstab.yml +9 -0
  52. package/conf/distros/noble/calamares/modules/grubcfg.yml +49 -1
  53. package/conf/distros/noble/calamares/modules/keyboard.yml +29 -0
  54. package/conf/distros/noble/calamares/modules/locale.yml +5 -6
  55. package/conf/distros/noble/calamares/modules/machineid.yml +3 -1
  56. package/conf/distros/noble/calamares/modules/mount.yml +21 -19
  57. package/conf/distros/noble/calamares/modules/netinstall.yml +5 -0
  58. package/conf/distros/noble/calamares/modules/packages.yml +5 -16
  59. package/conf/distros/noble/calamares/modules/shellprocess@aptsources.yml +11 -0
  60. package/conf/distros/noble/calamares/modules/shellprocess@boot_deploy.yml +18 -0
  61. package/conf/distros/noble/calamares/modules/shellprocess@boot_reconfigure.yml +14 -0
  62. package/conf/distros/noble/calamares/modules/shellprocess@install_translations.yml +7 -0
  63. package/conf/distros/noble/calamares/modules/shellprocess@logs.yml +7 -0
  64. package/conf/distros/noble/calamares/modules/shellprocess@mkinitramfs.yml +4 -0
  65. package/conf/distros/noble/calamares/modules/shellprocess@nomodeset.yml +11 -0
  66. package/conf/distros/noble/calamares/modules/unpackfs.yml +2 -1
  67. package/conf/distros/noble/calamares/modules/users.yml +19 -17
  68. package/conf/distros/noble/calamares/modules/welcome.yml +9 -13
  69. package/conf/distros/noble/calamares/settings.yml +82 -72
  70. package/conf/distros/openmamba/calamares/settings.yml +4 -4
  71. package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  72. package/conf/distros/opensuse/calamares/settings.yml +6 -6
  73. package/conf/distros/opensuse/calamares/zstd2lzo.sh +0 -0
  74. package/conf/distros/rolling/calamares/settings.yml +4 -4
  75. package/conf/distros/stretch/krill/settings.yml +6 -6
  76. package/conf/init/unattended.sh +0 -0
  77. package/eui/eui-autostart-cinnamon.desktop +0 -0
  78. package/eui/eui-autostart-xfce.desktop +0 -0
  79. package/eui/eui-create-image.sh +0 -0
  80. package/eui/eui-start.sh +0 -0
  81. package/package.json +125 -131
  82. package/perrisbrewery/scripts/postinst +0 -0
  83. package/perrisbrewery/scripts/postrm +0 -0
  84. package/perrisbrewery/scripts/preinst +0 -0
  85. package/perrisbrewery/scripts/prerm +0 -0
  86. package/perrisbrewery/template/dependencies.yaml +1 -0
  87. package/pods/almalinux.sh +0 -0
  88. package/pods/archlinux.sh +0 -0
  89. package/pods/ci/kernel-overlay-install.sh +0 -0
  90. package/pods/ci/minimal/almalinux-container2host.sh +0 -0
  91. package/pods/ci/minimal/archlinux-container2host.sh +0 -0
  92. package/pods/ci/minimal/debian-container2host.sh +0 -0
  93. package/pods/ci/minimal/fedora-container2host.sh +0 -0
  94. package/pods/ci/minimal/manjaro-container2host.sh +0 -0
  95. package/pods/ci/minimal/opensuse-container2host.sh +0 -0
  96. package/pods/ci/penguins-eggs-execute.sh +0 -0
  97. package/pods/ci/penguins-eggs-install.sh +0 -0
  98. package/pods/ci/run +0 -0
  99. package/pods/ci/run-on-almalinux.sh +0 -0
  100. package/pods/ci/run-on-archlinux.sh +0 -0
  101. package/pods/ci/run-on-debian.sh +0 -0
  102. package/pods/ci/run-on-devuan.sh +0 -0
  103. package/pods/ci/run-on-fedora.sh +0 -0
  104. package/pods/ci/run-on-manjaro.sh +0 -0
  105. package/pods/ci/run-on-opensuse.sh +0 -0
  106. package/pods/ci/run-on-rockylinux.sh +0 -0
  107. package/pods/ci/run-on-ubuntu.sh +0 -0
  108. package/pods/debian.sh +0 -0
  109. package/pods/devuan.sh +0 -0
  110. package/pods/fedora.sh +0 -0
  111. package/pods/lmde.sh +0 -0
  112. package/pods/manjaro.sh +0 -0
  113. package/pods/opensuse.sh +0 -0
  114. package/pods/podman.command.sh +0 -0
  115. package/pods/rocky.sh +0 -0
  116. package/pods/run-build-packages-debs.sh +0 -0
  117. package/pods/run-create-debs.sh +0 -0
  118. package/pods/ubuntu.sh +0 -0
  119. package/scripts/99clean +0 -0
  120. package/scripts/adapt.sh +0 -0
  121. package/scripts/bros/waydroid-helper.sh +0 -0
  122. package/scripts/lsb_release +0 -0
  123. package/scripts/mom.sh +0 -0
  124. package/scripts/pve-live.service +0 -0
  125. package/scripts/pve-live.sh +0 -0
  126. package/scripts/resy +0 -0
  127. package/conf/distros/noble/calamares/modules/_automirror.yml +0 -6
  128. package/conf/distros/noble/calamares/modules/_before_bootloader_context.yml +0 -18
  129. package/conf/distros/noble/calamares/modules/_before_bootloader_mkdirs_context.yml +0 -10
  130. package/conf/distros/noble/calamares/modules/_displaymanager.yml +0 -9
  131. package/conf/distros/noble/calamares/modules/_oemid.yml +0 -2
  132. package/conf/distros/noble/calamares/modules/_pkgselect_context.yml +0 -19
  133. package/conf/distros/noble/calamares/modules/_pkgselect_snap_context.yml +0 -9
  134. package/conf/distros/noble/calamares/modules/_shellprocess_logs.yml +0 -5
  135. package/conf/distros/noble/calamares/modules/_users.conf.oem +0 -30
  136. package/conf/distros/noble/calamares/modules/focal-jammy/fstab.yml +0 -13
  137. package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +0 -19
  138. package/conf/distros/noble/calamares/modules/shellprocess_add386arch.yml +0 -5
  139. package/conf/distros/noble/calamares/modules/shellprocess_bug-LP#1829805.yml +0 -5
  140. package/conf/distros/noble/calamares/modules/shellprocess_fixconkeys_part1.yml +0 -5
  141. package/conf/distros/noble/calamares/modules/shellprocess_fixconkeys_part2.yml +0 -5
  142. package/conf/distros/noble/calamares/modules/shellprocess_oemprep.yml +0 -5
  143. package/dist/classes/bleach.d.ts +0 -37
  144. package/dist/classes/bleach.js +0 -148
  145. package/dist/classes/cli-autologin.d.ts +0 -52
  146. package/dist/classes/cli-autologin.js +0 -252
  147. package/dist/classes/compressors.d.ts +0 -54
  148. package/dist/classes/compressors.js +0 -109
  149. package/dist/classes/daddy.d.ts +0 -26
  150. package/dist/classes/daddy.js +0 -175
  151. package/dist/classes/distro.d.ts +0 -32
  152. package/dist/classes/distro.js +0 -382
  153. package/dist/classes/diversions.d.ts +0 -53
  154. package/dist/classes/diversions.js +0 -133
  155. package/dist/classes/incubation/branding.d.ts +0 -17
  156. package/dist/classes/incubation/branding.js +0 -85
  157. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +0 -11
  158. package/dist/classes/incubation/fisherman-helper/displaymanager.js +0 -40
  159. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  160. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  161. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  162. package/dist/classes/incubation/fisherman-helper/settings.js +0 -83
  163. package/dist/classes/incubation/fisherman.d.ts +0 -74
  164. package/dist/classes/incubation/fisherman.js +0 -271
  165. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  166. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  167. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  168. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  169. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  170. package/dist/classes/incubation/incubator.d/buster.js +0 -85
  171. package/dist/classes/incubation/incubator.d/fedora.d.ts +0 -32
  172. package/dist/classes/incubation/incubator.d/fedora.js +0 -80
  173. package/dist/classes/incubation/incubator.d/jessie.d.ts +0 -31
  174. package/dist/classes/incubation/incubator.d/jessie.js +0 -44
  175. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  176. package/dist/classes/incubation/incubator.d/noble.js +0 -85
  177. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  178. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  179. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  180. package/dist/classes/incubation/incubator.d/opensuse.js +0 -78
  181. package/dist/classes/incubation/incubator.d/rolling.d.ts +0 -32
  182. package/dist/classes/incubation/incubator.d/rolling.js +0 -78
  183. package/dist/classes/incubation/incubator.d.ts +0 -48
  184. package/dist/classes/incubation/incubator.js +0 -404
  185. package/dist/classes/incubation/installer.d.ts +0 -13
  186. package/dist/classes/incubation/installer.js +0 -52
  187. package/dist/classes/keyboards.d.ts +0 -50
  188. package/dist/classes/keyboards.js +0 -287
  189. package/dist/classes/locales.d.ts +0 -21
  190. package/dist/classes/locales.js +0 -77
  191. package/dist/classes/network.d.ts +0 -37
  192. package/dist/classes/network.js +0 -98
  193. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  194. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  195. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  196. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  197. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  198. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  199. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -20
  200. package/dist/classes/ovary.d/edit-live-fs.js +0 -245
  201. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  202. package/dist/classes/ovary.d/fertilization.js +0 -52
  203. package/dist/classes/ovary.d/finished.d.ts +0 -13
  204. package/dist/classes/ovary.d/finished.js +0 -44
  205. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  206. package/dist/classes/ovary.d/initrd.js +0 -97
  207. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  208. package/dist/classes/ovary.d/kernel-copy.js +0 -22
  209. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  210. package/dist/classes/ovary.d/live-create-structure.js +0 -73
  211. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  212. package/dist/classes/ovary.d/make-dot-disk.js +0 -62
  213. package/dist/classes/ovary.d/make-efi.d.ts +0 -14
  214. package/dist/classes/ovary.d/make-efi.js +0 -274
  215. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  216. package/dist/classes/ovary.d/make-iso.js +0 -45
  217. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  218. package/dist/classes/ovary.d/make-squashfs.js +0 -110
  219. package/dist/classes/ovary.d/merged.d.ts +0 -27
  220. package/dist/classes/ovary.d/merged.js +0 -78
  221. package/dist/classes/ovary.d/produce.d.ts +0 -23
  222. package/dist/classes/ovary.d/produce.js +0 -319
  223. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  224. package/dist/classes/ovary.d/rexec.js +0 -34
  225. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  226. package/dist/classes/ovary.d/syslinux.js +0 -82
  227. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  228. package/dist/classes/ovary.d/user-create-live.js +0 -97
  229. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  230. package/dist/classes/ovary.d/users-remove.js +0 -38
  231. package/dist/classes/ovary.d/xorriso-command.d.ts +0 -14
  232. package/dist/classes/ovary.d/xorriso-command.js +0 -123
  233. package/dist/classes/ovary.d.ts +0 -87
  234. package/dist/classes/ovary.js +0 -90
  235. package/dist/classes/pacman.d/aldos.d.ts +0 -52
  236. package/dist/classes/pacman.d/aldos.js +0 -100
  237. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  238. package/dist/classes/pacman.d/alpine.js +0 -167
  239. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  240. package/dist/classes/pacman.d/archlinux.js +0 -136
  241. package/dist/classes/pacman.d/debian.d.ts +0 -65
  242. package/dist/classes/pacman.d/debian.js +0 -143
  243. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  244. package/dist/classes/pacman.d/fedora.js +0 -101
  245. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  246. package/dist/classes/pacman.d/openmamba.js +0 -100
  247. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  248. package/dist/classes/pacman.d/opensuse.js +0 -103
  249. package/dist/classes/pacman.d/voidlinux.d.ts +0 -52
  250. package/dist/classes/pacman.d/voidlinux.js +0 -90
  251. package/dist/classes/pacman.d.ts +0 -139
  252. package/dist/classes/pacman.js +0 -774
  253. package/dist/classes/pve-live.d.ts +0 -17
  254. package/dist/classes/pve-live.js +0 -52
  255. package/dist/classes/pxe.d.ts +0 -76
  256. package/dist/classes/pxe.js +0 -353
  257. package/dist/classes/settings.d.ts +0 -52
  258. package/dist/classes/settings.js +0 -185
  259. package/dist/classes/sources_list.d.ts +0 -28
  260. package/dist/classes/sources_list.js +0 -89
  261. package/dist/classes/systemctl.d.ts +0 -47
  262. package/dist/classes/systemctl.js +0 -86
  263. package/dist/classes/tailor.d.ts +0 -50
  264. package/dist/classes/tailor.js +0 -563
  265. package/dist/classes/tools.d.ts +0 -26
  266. package/dist/classes/tools.js +0 -50
  267. package/dist/classes/users.d.ts +0 -28
  268. package/dist/classes/users.js +0 -143
  269. package/dist/classes/utils.d/kernel.d.ts +0 -38
  270. package/dist/classes/utils.d/kernel.js +0 -184
  271. package/dist/classes/utils.d.ts +0 -327
  272. package/dist/classes/utils.js +0 -955
  273. package/dist/classes/xdg.d.ts +0 -45
  274. package/dist/classes/xdg.js +0 -337
  275. package/dist/classes/yolk.d.ts +0 -33
  276. package/dist/classes/yolk.js +0 -114
  277. package/dist/commands/adapt.d.ts +0 -17
  278. package/dist/commands/adapt.js +0 -33
  279. package/dist/commands/analyze.d.ts +0 -26
  280. package/dist/commands/analyze.js +0 -95
  281. package/dist/commands/calamares.d.ts +0 -29
  282. package/dist/commands/calamares.js +0 -112
  283. package/dist/commands/config.d.ts +0 -35
  284. package/dist/commands/config.js +0 -120
  285. package/dist/commands/cuckoo.d.ts +0 -17
  286. package/dist/commands/cuckoo.js +0 -61
  287. package/dist/commands/dad.d.ts +0 -21
  288. package/dist/commands/dad.js +0 -47
  289. package/dist/commands/export/iso.d.ts +0 -19
  290. package/dist/commands/export/iso.js +0 -55
  291. package/dist/commands/export/pkg.d.ts +0 -29
  292. package/dist/commands/export/pkg.js +0 -173
  293. package/dist/commands/export/tarballs.d.ts +0 -27
  294. package/dist/commands/export/tarballs.js +0 -79
  295. package/dist/commands/install.d.ts +0 -38
  296. package/dist/commands/install.js +0 -91
  297. package/dist/commands/kill.d.ts +0 -24
  298. package/dist/commands/kill.js +0 -50
  299. package/dist/commands/love.d.ts +0 -21
  300. package/dist/commands/love.js +0 -73
  301. package/dist/commands/mom.d.ts +0 -16
  302. package/dist/commands/mom.js +0 -30
  303. package/dist/commands/pods.d.ts +0 -22
  304. package/dist/commands/pods.js +0 -92
  305. package/dist/commands/produce.d.ts +0 -35
  306. package/dist/commands/produce.js +0 -221
  307. package/dist/commands/status.d.ts +0 -23
  308. package/dist/commands/status.js +0 -31
  309. package/dist/commands/syncfrom.d.ts +0 -45
  310. package/dist/commands/syncfrom.js +0 -152
  311. package/dist/commands/syncto.d.ts +0 -40
  312. package/dist/commands/syncto.js +0 -175
  313. package/dist/commands/tools/clean.d.ts +0 -18
  314. package/dist/commands/tools/clean.js +0 -37
  315. package/dist/commands/tools/ppa.d.ts +0 -31
  316. package/dist/commands/tools/ppa.js +0 -176
  317. package/dist/commands/tools/skel.d.ts +0 -18
  318. package/dist/commands/tools/skel.js +0 -44
  319. package/dist/commands/tools/stat.d.ts +0 -31
  320. package/dist/commands/tools/stat.js +0 -70
  321. package/dist/commands/tools/yolk.d.ts +0 -24
  322. package/dist/commands/tools/yolk.js +0 -45
  323. package/dist/commands/update.d.ts +0 -46
  324. package/dist/commands/update.js +0 -238
  325. package/dist/commands/wardrobe/get.d.ts +0 -23
  326. package/dist/commands/wardrobe/get.js +0 -52
  327. package/dist/commands/wardrobe/list.d.ts +0 -24
  328. package/dist/commands/wardrobe/list.js +0 -125
  329. package/dist/commands/wardrobe/show.d.ts +0 -25
  330. package/dist/commands/wardrobe/show.js +0 -97
  331. package/dist/commands/wardrobe/wear.d.ts +0 -26
  332. package/dist/commands/wardrobe/wear.js +0 -84
  333. package/dist/dhcpd-proxy/classes/packet.d.ts +0 -36
  334. package/dist/dhcpd-proxy/classes/packet.js +0 -124
  335. package/dist/dhcpd-proxy/index.d.ts +0 -4
  336. package/dist/dhcpd-proxy/index.js +0 -4
  337. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +0 -45
  338. package/dist/dhcpd-proxy/interfaces/i-pxe.js +0 -1
  339. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +0 -11
  340. package/dist/dhcpd-proxy/lib/packet/converters.js +0 -395
  341. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +0 -10
  342. package/dist/dhcpd-proxy/lib/packet/message-types.js +0 -12
  343. package/dist/dhcpd-proxy/lib/packet/options.d.ts +0 -8
  344. package/dist/dhcpd-proxy/lib/packet/options.js +0 -264
  345. package/dist/dhcpd-proxy/lib/sprintf.d.ts +0 -6
  346. package/dist/dhcpd-proxy/lib/sprintf.js +0 -130
  347. package/dist/dhcpd-proxy/lib/utils.d.ts +0 -126
  348. package/dist/dhcpd-proxy/lib/utils.js +0 -255
  349. package/dist/dhcpd-proxy/simple-proxy.d.ts +0 -11
  350. package/dist/dhcpd-proxy/simple-proxy.js +0 -118
  351. package/dist/index.d.ts +0 -8
  352. package/dist/index.js +0 -8
  353. package/dist/interfaces/i-addons.d.ts +0 -12
  354. package/dist/interfaces/i-addons.js +0 -8
  355. package/dist/interfaces/i-analyze.d.ts +0 -17
  356. package/dist/interfaces/i-analyze.js +0 -17
  357. package/dist/interfaces/i-app.d.ts +0 -14
  358. package/dist/interfaces/i-app.js +0 -8
  359. package/dist/interfaces/i-branding.d.ts +0 -36
  360. package/dist/interfaces/i-branding.js +0 -8
  361. package/dist/interfaces/i-calamares-displaymanager.d.ts +0 -17
  362. package/dist/interfaces/i-calamares-displaymanager.js +0 -1
  363. package/dist/interfaces/i-calamares-finished.d.ts +0 -12
  364. package/dist/interfaces/i-calamares-finished.js +0 -1
  365. package/dist/interfaces/i-calamares-packages.d.ts +0 -28
  366. package/dist/interfaces/i-calamares-packages.js +0 -1
  367. package/dist/interfaces/i-calamares-partition.d.ts +0 -40
  368. package/dist/interfaces/i-calamares-partition.js +0 -1
  369. package/dist/interfaces/i-config-tools.d.ts +0 -15
  370. package/dist/interfaces/i-config-tools.js +0 -8
  371. package/dist/interfaces/i-devices.d.ts +0 -20
  372. package/dist/interfaces/i-devices.js +0 -8
  373. package/dist/interfaces/i-distro.d.ts +0 -23
  374. package/dist/interfaces/i-distro.js +0 -8
  375. package/dist/interfaces/i-drive-list.d.ts +0 -33
  376. package/dist/interfaces/i-drive-list.js +0 -8
  377. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  378. package/dist/interfaces/i-eggs-config.js +0 -8
  379. package/dist/interfaces/i-excludes.d.ts +0 -14
  380. package/dist/interfaces/i-excludes.js +0 -8
  381. package/dist/interfaces/i-exec.d.ts +0 -11
  382. package/dist/interfaces/i-exec.js +0 -8
  383. package/dist/interfaces/i-initrd.d.ts +0 -13
  384. package/dist/interfaces/i-initrd.js +0 -8
  385. package/dist/interfaces/i-install.d.ts +0 -16
  386. package/dist/interfaces/i-install.js +0 -8
  387. package/dist/interfaces/i-installer.d.ts +0 -17
  388. package/dist/interfaces/i-installer.js +0 -8
  389. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  390. package/dist/interfaces/i-luks-passphrase.js +0 -8
  391. package/dist/interfaces/i-materia.d.ts +0 -36
  392. package/dist/interfaces/i-materia.js +0 -8
  393. package/dist/interfaces/i-net.d.ts +0 -16
  394. package/dist/interfaces/i-net.js +0 -8
  395. package/dist/interfaces/i-os-release.d.ts +0 -5
  396. package/dist/interfaces/i-os-release.js +0 -1
  397. package/dist/interfaces/i-packages.d.ts +0 -16
  398. package/dist/interfaces/i-packages.js +0 -8
  399. package/dist/interfaces/i-partitions.d.ts +0 -16
  400. package/dist/interfaces/i-partitions.js +0 -8
  401. package/dist/interfaces/i-pxe.d.ts +0 -45
  402. package/dist/interfaces/i-pxe.js +0 -1
  403. package/dist/interfaces/i-remix.d.ts +0 -21
  404. package/dist/interfaces/i-remix.js +0 -8
  405. package/dist/interfaces/i-settings.d.ts +0 -33
  406. package/dist/interfaces/i-settings.js +0 -8
  407. package/dist/interfaces/i-user.d.ts +0 -14
  408. package/dist/interfaces/i-user.js +0 -8
  409. package/dist/interfaces/i-workdir.d.ts +0 -14
  410. package/dist/interfaces/i-workdir.js +0 -8
  411. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  412. package/dist/interfaces/i-xkb-model.js +0 -8
  413. package/dist/interfaces/index.d.ts +0 -26
  414. package/dist/interfaces/index.js +0 -8
  415. package/dist/krill/classes/cfs.d.ts +0 -17
  416. package/dist/krill/classes/cfs.js +0 -39
  417. package/dist/krill/classes/krill_enums.d.ts +0 -37
  418. package/dist/krill/classes/krill_enums.js +0 -41
  419. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  420. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  421. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  422. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  423. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  424. package/dist/krill/classes/prepare.d/location.js +0 -59
  425. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  426. package/dist/krill/classes/prepare.d/network.js +0 -68
  427. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  428. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  429. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  430. package/dist/krill/classes/prepare.d/summary.js +0 -69
  431. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  432. package/dist/krill/classes/prepare.d/users.js +0 -63
  433. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  434. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  435. package/dist/krill/classes/prepare.d.ts +0 -89
  436. package/dist/krill/classes/prepare.js +0 -314
  437. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  438. package/dist/krill/classes/sequence.d/add_user.js +0 -77
  439. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  440. package/dist/krill/classes/sequence.d/bootloader.js +0 -117
  441. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  442. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -192
  443. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  444. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  445. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  446. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  447. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  448. package/dist/krill/classes/sequence.d/fstab.js +0 -177
  449. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  450. package/dist/krill/classes/sequence.d/grubcfg.js +0 -35
  451. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  452. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  453. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  454. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  455. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  456. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  457. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  458. package/dist/krill/classes/sequence.d/locale.js +0 -91
  459. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  460. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  461. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  462. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  463. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  464. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  465. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  466. package/dist/krill/classes/sequence.d/mkfs.js +0 -75
  467. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  468. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  469. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  470. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -59
  471. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  472. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  473. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  474. package/dist/krill/classes/sequence.d/packages.js +0 -111
  475. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  476. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  477. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -16
  478. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -51
  479. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  480. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -78
  481. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  482. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -33
  483. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  484. package/dist/krill/classes/sequence.d/partition.js +0 -84
  485. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  486. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  487. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  488. package/dist/krill/classes/sequence.d/umount.js +0 -28
  489. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  490. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  491. package/dist/krill/classes/sequence.d.ts +0 -133
  492. package/dist/krill/classes/sequence.js +0 -396
  493. package/dist/krill/components/finished.d.ts +0 -16
  494. package/dist/krill/components/finished.js +0 -56
  495. package/dist/krill/components/information.d.ts +0 -8
  496. package/dist/krill/components/information.js +0 -162
  497. package/dist/krill/components/install.d.ts +0 -15
  498. package/dist/krill/components/install.js +0 -60
  499. package/dist/krill/components/keyboard.d.ts +0 -16
  500. package/dist/krill/components/keyboard.js +0 -54
  501. package/dist/krill/components/location.d.ts +0 -16
  502. package/dist/krill/components/location.js +0 -59
  503. package/dist/krill/components/network.d.ts +0 -19
  504. package/dist/krill/components/network.js +0 -65
  505. package/dist/krill/components/partitions.d.ts +0 -18
  506. package/dist/krill/components/partitions.js +0 -89
  507. package/dist/krill/components/steps.d.ts +0 -13
  508. package/dist/krill/components/steps.js +0 -148
  509. package/dist/krill/components/summary.d.ts +0 -25
  510. package/dist/krill/components/summary.js +0 -77
  511. package/dist/krill/components/title.d.ts +0 -11
  512. package/dist/krill/components/title.js +0 -35
  513. package/dist/krill/components/users.d.ts +0 -24
  514. package/dist/krill/components/users.js +0 -80
  515. package/dist/krill/components/welcome.d.ts +0 -13
  516. package/dist/krill/components/welcome.js +0 -63
  517. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  518. package/dist/krill/interfaces/i_krill.js +0 -8
  519. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  520. package/dist/krill/interfaces/i_krill_config.js +0 -8
  521. package/dist/krill/lib/get_address.d.ts +0 -8
  522. package/dist/krill/lib/get_address.js +0 -23
  523. package/dist/krill/lib/get_dns.d.ts +0 -8
  524. package/dist/krill/lib/get_dns.js +0 -23
  525. package/dist/krill/lib/get_domain.d.ts +0 -8
  526. package/dist/krill/lib/get_domain.js +0 -23
  527. package/dist/krill/lib/get_gateway.d.ts +0 -8
  528. package/dist/krill/lib/get_gateway.js +0 -23
  529. package/dist/krill/lib/get_hostname.d.ts +0 -8
  530. package/dist/krill/lib/get_hostname.js +0 -23
  531. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  532. package/dist/krill/lib/get_luks_passphrase.js +0 -40
  533. package/dist/krill/lib/get_netmask.d.ts +0 -8
  534. package/dist/krill/lib/get_netmask.js +0 -23
  535. package/dist/krill/lib/get_password.d.ts +0 -8
  536. package/dist/krill/lib/get_password.js +0 -36
  537. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  538. package/dist/krill/lib/get_userfullname.js +0 -23
  539. package/dist/krill/lib/get_username.d.ts +0 -8
  540. package/dist/krill/lib/get_username.js +0 -23
  541. package/dist/krill/lib/select_address_type.d.ts +0 -8
  542. package/dist/krill/lib/select_address_type.js +0 -24
  543. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  544. package/dist/krill/lib/select_filesystem_type.js +0 -40
  545. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  546. package/dist/krill/lib/select_installation_device.js +0 -40
  547. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  548. package/dist/krill/lib/select_installation_mode.js +0 -25
  549. package/dist/krill/lib/select_interface.d.ts +0 -8
  550. package/dist/krill/lib/select_interface.js +0 -24
  551. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  552. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  553. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  554. package/dist/krill/lib/select_keyboard_model.js +0 -34
  555. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  556. package/dist/krill/lib/select_keyboard_option.js +0 -34
  557. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  558. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  559. package/dist/krill/lib/select_languages.d.ts +0 -8
  560. package/dist/krill/lib/select_languages.js +0 -28
  561. package/dist/krill/lib/select_regions.d.ts +0 -8
  562. package/dist/krill/lib/select_regions.js +0 -24
  563. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  564. package/dist/krill/lib/select_replaced_partition.js +0 -31
  565. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  566. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  567. package/dist/krill/lib/select_zones.d.ts +0 -8
  568. package/dist/krill/lib/select_zones.js +0 -518
  569. package/dist/lib/kill_me_softly.d.ts +0 -11
  570. package/dist/lib/kill_me_softly.js +0 -61
  571. package/dist/lib/utils.d.ts +0 -19
  572. package/dist/lib/utils.js +0 -65
@@ -1,563 +0,0 @@
1
- /**
2
- * ./src/classes/tailor.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
- import fs from 'node:fs';
10
- import yaml from 'js-yaml';
11
- import path from 'node:path';
12
- import { exec } from '../lib/utils.js';
13
- import Distro from './distro.js';
14
- import Pacman from './pacman.js';
15
- import SourcesList from './sources_list.js';
16
- import Utils from './utils.js';
17
- /**
18
- *
19
- */
20
- export default class Tailor {
21
- materials = {};
22
- category = 'costume';
23
- costume = '';
24
- echo = {};
25
- toNull = ' > /dev/null 2>&1';
26
- verbose = false;
27
- wardrobe = '';
28
- log = '';
29
- /**
30
- * @param wardrobe
31
- * @param costume
32
- */
33
- constructor(costume, category = 'costume') {
34
- this.costume = costume;
35
- this.wardrobe = path.dirname(path.dirname(costume));
36
- this.log = path.dirname(this.wardrobe) + "/wardrobe.log";
37
- this.category = category;
38
- }
39
- /**
40
- *
41
- */
42
- async prepare(verbose = true, no_accessories = false, no_firmwares = false) {
43
- if (verbose) {
44
- this.verbose = true;
45
- this.toNull = '';
46
- }
47
- this.echo = Utils.setEcho(verbose);
48
- Utils.warning(`preparing ${this.costume}`);
49
- if (!fs.existsSync(this.log)) {
50
- fs.writeFileSync(this.log, "# eggs wardrobe wear\n\n");
51
- }
52
- fs.appendFileSync(this.log, `## ${this.costume}\n`);
53
- fs.appendFileSync(this.log, `Packages not found:\n`);
54
- /**
55
- * check curl presence
56
- */
57
- if (!Pacman.packageIsInstalled('curl')) {
58
- Utils.pressKeyToExit('In this tailoring shop we use curl. Install it with your package manager');
59
- process.exit();
60
- }
61
- // Analyze distro
62
- const distro = new Distro();
63
- let tailorList = '';
64
- switch (distro.distroLike) {
65
- case 'Debian': {
66
- tailorList = `${this.costume}/debian.yml`;
67
- if (!fs.existsSync(tailorList)) {
68
- tailorList = `${this.costume}/devuan.yml`;
69
- if (!fs.existsSync(tailorList)) {
70
- tailorList = `${this.costume}/ubuntu.yml`;
71
- if (!fs.existsSync(tailorList)) {
72
- console.log(`no costume definition found compatible Debian`);
73
- process.exit();
74
- }
75
- }
76
- }
77
- break;
78
- }
79
- case 'Devuan': {
80
- tailorList = `${this.costume}/devuan.yml`;
81
- if (!fs.existsSync(tailorList)) {
82
- tailorList = `${this.costume}/debian.yml`;
83
- if (!fs.existsSync(tailorList)) {
84
- tailorList = `${this.costume}/ubuntu.yml`;
85
- if (!fs.existsSync(tailorList)) {
86
- console.log(`no costume definition found compatible Devuan`);
87
- process.exit();
88
- }
89
- }
90
- }
91
- break;
92
- }
93
- case 'Ubuntu': {
94
- tailorList = `${this.costume}/ubuntu.yml`;
95
- if (!fs.existsSync(tailorList)) {
96
- tailorList = `${this.costume}/debian.yml`;
97
- console.log(`trying ` + tailorList);
98
- if (!fs.existsSync(tailorList)) {
99
- tailorList = `${this.costume}/devuan.yml`;
100
- console.log(`trying ` + tailorList);
101
- if (!fs.existsSync(tailorList)) {
102
- console.log(`no costume definition found compatible Ubuntu`);
103
- process.exit();
104
- }
105
- }
106
- }
107
- break;
108
- }
109
- case 'Alpine': {
110
- tailorList = `${this.costume}/alpine.yml`;
111
- if (!fs.existsSync(tailorList)) {
112
- tailorList = `${this.costume}/debian.yml`;
113
- if (!fs.existsSync(tailorList)) {
114
- console.log(`no costume definition found compatible Alpine`);
115
- process.exit();
116
- }
117
- }
118
- break;
119
- }
120
- case 'Arch': {
121
- tailorList = `${this.costume}/arch.yml`;
122
- if (!fs.existsSync(tailorList)) {
123
- tailorList = `${this.costume}/debian.yml`;
124
- if (!fs.existsSync(tailorList)) {
125
- console.log(`no costume definition found compatible Arch`);
126
- process.exit();
127
- }
128
- }
129
- break;
130
- }
131
- case 'Fedora':
132
- case 'Almalinux':
133
- case 'Rocky': {
134
- tailorList = `${this.costume}/fedora.yml`;
135
- if (!fs.existsSync(tailorList)) {
136
- tailorList = `${this.costume}/debian.yml`;
137
- if (!fs.existsSync(tailorList)) {
138
- console.log(`no costume definition found compatible Fedora`);
139
- process.exit();
140
- }
141
- }
142
- break;
143
- }
144
- case 'Opensuse': {
145
- tailorList = `${this.costume}/opensuse.yml`;
146
- if (!fs.existsSync(tailorList)) {
147
- tailorList = `${this.costume}/debian.yml`;
148
- if (!fs.existsSync(tailorList)) {
149
- console.log(`no costume definition found compatible opensuse`);
150
- process.exit();
151
- }
152
- }
153
- break;
154
- }
155
- } // end analyze
156
- /**
157
- * find materials
158
- */
159
- if (fs.existsSync(tailorList)) {
160
- this.materials = yaml.load(fs.readFileSync(tailorList, 'utf8'));
161
- }
162
- else {
163
- switch (this.category) {
164
- case 'costume': {
165
- Utils.titles(`${this.category}: ${this.costume}`);
166
- console.log("Tailor's list " + chalk.cyan(tailorList) + ' is not found \non your wardrobe ' + chalk.cyan(this.wardrobe) + '.\n');
167
- console.log('Costume will not be installed, operations will abort.\n');
168
- Utils.pressKeyToExit();
169
- process.exit();
170
- break;
171
- }
172
- case 'accessory': {
173
- Utils.titles(`${this.category}: ${this.costume}`);
174
- console.log("Tailor's list " + chalk.cyan(tailorList) + ' is not found \non your wardrobe ' + chalk.cyan(this.wardrobe) + '.\n');
175
- console.log('vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv');
176
- console.log('Accessory will not be installed,');
177
- console.log('operations will continue.');
178
- console.log('^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^');
179
- sleep(3000);
180
- return;
181
- }
182
- }
183
- }
184
- /**
185
- * sequence
186
- */
187
- const sources_list = new SourcesList();
188
- let step = '';
189
- if (this.materials.sequence !== undefined) {
190
- step = 'analyzing sequence';
191
- Utils.warning(step);
192
- /**
193
- * sequence/repositories
194
- */
195
- if (this.materials.sequence.repositories !== undefined) {
196
- if (distro.familyId === 'debian') {
197
- /**
198
- * sequence/repositories/sources_list
199
- */
200
- // evito di fallire se sources_list non è presente
201
- if (this.materials.sequence.repositories.sources_list !== undefined) {
202
- step = 'analyzing repositories';
203
- Utils.warning(step);
204
- if (distro.distroLike === 'Debian') {
205
- await sources_list.components(this.materials.sequence.repositories.sources_list);
206
- }
207
- }
208
- /**
209
- * sequence/repositories/sources_list_d
210
- */
211
- if (this.materials.sequence.repositories.sources_list_d !== undefined && this.materials.sequence.repositories.sources_list_d[0] !== null) {
212
- step = 'adding repositories to /etc/apt/sources_list_d';
213
- Utils.warning(step);
214
- for (const cmd of this.materials.sequence.repositories.sources_list_d) {
215
- try {
216
- // repeat 3 times if fail curl or others commands
217
- for (let i = 0; i < 2; i++) {
218
- const result = await exec(cmd, this.echo);
219
- if (result.code === 0) {
220
- break;
221
- }
222
- }
223
- }
224
- catch (error) {
225
- await Utils.pressKeyToExit(JSON.stringify(error));
226
- }
227
- }
228
- }
229
- }
230
- /**
231
- * sequence/repositories/update
232
- */
233
- if (this.materials.sequence.repositories.update === undefined) {
234
- console.log('repositiories, and repositories.update MUST be defined on sequence');
235
- process.exit();
236
- }
237
- step = 'repositories update';
238
- Utils.warning(step);
239
- if (this.materials.sequence.repositories.update) {
240
- switch (distro.familyId) {
241
- case 'alpine': {
242
- await exec('apk update', Utils.setEcho(false));
243
- break;
244
- }
245
- case 'archlinux': {
246
- await exec('pacman -Sy', Utils.setEcho(false));
247
- break;
248
- }
249
- case 'debian': {
250
- await exec('apt-get update', Utils.setEcho(false));
251
- break;
252
- }
253
- case 'fedora': {
254
- await exec('dnf check-update --refresh', Utils.setEcho(false));
255
- break;
256
- }
257
- case 'opensuse': {
258
- await exec('zypper refresh', Utils.setEcho(true));
259
- break;
260
- }
261
- }
262
- }
263
- /**
264
- * sequence/repositories/upgrade
265
- */
266
- if (this.materials.sequence.repositories.upgrade !== undefined) {
267
- step = 'repositories upgrade';
268
- Utils.warning(step);
269
- if (this.materials.sequence.repositories.upgrade) {
270
- switch (distro.familyId) {
271
- case 'alpine': {
272
- await exec('apk upgrade', Utils.setEcho(false));
273
- break;
274
- }
275
- case 'archlinux': {
276
- await exec('pacman -Su', Utils.setEcho(false));
277
- break;
278
- }
279
- case 'debian': {
280
- await exec('apt-get full-upgrade', Utils.setEcho(false));
281
- break;
282
- }
283
- case 'fedora': {
284
- await exec('dnf upgrade', Utils.setEcho(false));
285
- break;
286
- }
287
- case 'opensuse': {
288
- await exec('zypper update', Utils.setEcho(true));
289
- break;
290
- }
291
- }
292
- } // upgrade true
293
- } // undefined upgrade
294
- } // end sequence/repositories
295
- /**
296
- * sequence/cmds
297
- */
298
- if (this.materials.sequence.cmds !== undefined && Array.isArray(this.materials.sequence.cmds)) {
299
- step = 'sequence commands';
300
- Utils.warning(step);
301
- for (const cmd of this.materials.sequence.cmds) {
302
- if (fs.existsSync(`${this.costume}/${cmd}`)) {
303
- // exec ./costume/cmd
304
- await exec(`${this.costume}/${cmd} `, Utils.setEcho(true));
305
- }
306
- else {
307
- // exec cmd
308
- await exec(`${cmd}`, Utils.setEcho(true));
309
- }
310
- }
311
- }
312
- /**
313
- * install packages
314
- */
315
- if (this.materials.sequence.packages !== undefined) {
316
- const packages = await this.packagesExists(this.materials.sequence.packages);
317
- console.log(this.materials.sequence.packages);
318
- if (packages.length > 1) {
319
- switch (distro.familyId) {
320
- case 'alpine': {
321
- await this.packagesInstall(this.materials.sequence.packages, 'packages', `apk add`);
322
- break;
323
- }
324
- case 'archlinux': {
325
- await this.packagesInstall(this.materials.sequence.packages, 'packages', `pacman -Sy --noconfirm`);
326
- break;
327
- }
328
- case 'debian': {
329
- await this.packagesInstall(packages);
330
- break;
331
- }
332
- case 'fedora': {
333
- await this.packagesInstall(this.materials.sequence.packages, 'packages', `dnf install -y`);
334
- break;
335
- }
336
- case 'opensuse': {
337
- // Quanto mi è costato
338
- // await this.packagesInstall(this.materials.sequence.packages, 'packages', `zypper install --no-confirm`)
339
- await this.packagesInstall(this.materials.sequence.packages, 'packages', `zypper install --no-confirm`);
340
- break;
341
- }
342
- }
343
- }
344
- }
345
- /**
346
- * sequence/packages_python
347
- */
348
- if (this.materials.sequence.packages_python !== undefined && Array.isArray(this.materials.sequence.packages_python)) {
349
- let cmd = 'pip install ';
350
- let pip = '';
351
- for (const elem of this.materials.sequence.packages_python) {
352
- cmd += ` ${elem}`;
353
- pip += `, ${elem}`;
354
- }
355
- step = `installing python packages pip ${pip.slice(2)}`;
356
- Utils.warning(step);
357
- await exec(cmd, this.echo);
358
- }
359
- /**
360
- * sequence/accessories
361
- */
362
- if (!no_accessories) {
363
- if (this.materials.sequence.accessories !== undefined && Array.isArray(this.materials.sequence.accessories)) {
364
- step = 'wearing accessories';
365
- for (const elem of this.materials.sequence.accessories) {
366
- if ((elem === 'firmwares' || elem === './firmwares') && no_firmwares) {
367
- continue;
368
- }
369
- if (elem.slice(0, 2) === './') {
370
- // local accessory
371
- const tailor = new Tailor(`${this.costume}/${elem.slice(2)}`, 'accessory');
372
- await tailor.prepare(verbose);
373
- }
374
- else {
375
- // global accessory
376
- const tailor = new Tailor(`${this.wardrobe}/accessories/${elem}`, 'accessory');
377
- await tailor.prepare(verbose);
378
- }
379
- }
380
- }
381
- } // no-accessories
382
- } // end sequence
383
- /**
384
- * customize
385
- */
386
- if (this.materials.finalize !== undefined) {
387
- /**
388
- * finalize/customize
389
- */
390
- if (this.materials.finalize.customize && fs.existsSync(`/${this.costume}/sysroot`)) {
391
- step = `finalize/customize: copying ${this.costume}/sysroot/ to /`;
392
- Utils.warning(step);
393
- let cmd = `rsync -avx ${this.costume}/sysroot/* / ${this.toNull}`;
394
- await exec(cmd, this.echo);
395
- // chown
396
- cmd = `chown root:root /etc/sudoers.d /etc/skel -R`;
397
- await exec(cmd, this.echo);
398
- /**
399
- * Copyng skel in /home/user
400
- */
401
- if (fs.existsSync(`${this.costume}/sysroot/etc/skel`)) {
402
- const user = await Utils.getPrimaryUser();
403
- step = `finalize/customize: copying skel in /home/${user}/`;
404
- Utils.warning(step);
405
- cmd = `rsync -avx ${this.costume}/sysroot/etc/skel/.config /home/${user}/ ${this.toNull}`;
406
- await exec(cmd, this.echo);
407
- await exec(`chown ${user}:${user} /home/${user}/ -R`);
408
- }
409
- }
410
- /**
411
- * finalize/cmds
412
- */
413
- if (this.materials.finalize.cmds !== undefined && Array.isArray(this.materials.finalize.cmds)) {
414
- step = 'finalize/commands';
415
- Utils.warning(step);
416
- for (const cmd of this.materials.finalize.cmds) {
417
- if (fs.existsSync(`${this.costume}/${cmd}`)) {
418
- // Qui passiamo ${this.materials.name}
419
- await exec(`${this.costume}/${cmd} ${this.materials.name}`, Utils.setEcho(true));
420
- }
421
- else {
422
- // exec cmd real env
423
- await exec(`${cmd}`, Utils.setEcho(true));
424
- }
425
- }
426
- }
427
- }
428
- // show log
429
- if (fs.existsSync(this.log)) {
430
- await exec(`cat ${this.log}`);
431
- }
432
- /**
433
- * reboot
434
- */
435
- if (this.materials.reboot) {
436
- Utils.warning('Reboot');
437
- await Utils.pressKeyToExit('system need to reboot', true);
438
- await exec('reboot');
439
- }
440
- else {
441
- console.log(`You look good with: ${this.materials.name}`);
442
- }
443
- }
444
- /**
445
- *
446
- * @param packages
447
- * @param verbose
448
- * @param section
449
- * @returns
450
- */
451
- async packagesExists(wanted) {
452
- Utils.warning(`checking packages exists ${this.costume}`);
453
- wanted.sort();
454
- const distro = new Distro();
455
- let cmd = "";
456
- if (distro.familyId === "alpine") {
457
- cmd = `apk search | awk -F'-[0-9]' '{print $1}' | sort -u`;
458
- }
459
- else if (distro.familyId === "archlinux") {
460
- cmd = `pacman -S --list | awk '{print $2}'`;
461
- }
462
- else if (distro.familyId === "debian") {
463
- // cmd=`apt-cache --no-generate pkgnames`
464
- cmd = `apt-cache pkgnames`;
465
- }
466
- else if (distro.familyId === 'fedora') {
467
- cmd = `dnf list --available | awk '{print $1}' | sed 's/\.[^.]*$//'`;
468
- }
469
- else if (distro.familyId === 'opensuse') { //controllare
470
- // questo funziona diretto
471
- cmd = `zypper --non-interactive packages | cut -d '|' -f 3 | sed '1,2d' | sed '/^$/d' | sort -u`;
472
- }
473
- let available = [];
474
- const result = await exec(cmd, { capture: true, echo: false, ignore: false });
475
- // trim di tutto per eseguire il confronto
476
- available = result.data.split('\n').map(line => line.trim());
477
- // precedente
478
- // available = (await exec(cmd, { capture: true, echo: false, ignore: false })).data.split('\n')
479
- available.sort();
480
- wanted.sort();
481
- let exists = [];
482
- let not_exists = [];
483
- for (const elem of wanted) {
484
- if (available.includes(elem)) {
485
- exists.push(elem);
486
- }
487
- else {
488
- not_exists.push(elem);
489
- fs.appendFileSync(this.log, `- ${elem}\n`);
490
- }
491
- }
492
- if (not_exists.length > 0) {
493
- console.log(`${this.materials.name}, ${not_exists.length} following packages was not found:`);
494
- for (const elem of not_exists) {
495
- console.log(`-${elem}`);
496
- }
497
- console.log();
498
- console.log("Wait 3 seconds");
499
- await sleep(3000);
500
- }
501
- return exists;
502
- }
503
- /**
504
- * - check if every package if installed
505
- * - if find any packages to install, install it
506
- */
507
- async packagesInstall(packages, comment = 'packages', cmd = 'apt-get install -yqq ') {
508
- Utils.warning(`installing existing packages ${this.costume}`);
509
- if (packages[0] !== null) {
510
- const elements = [];
511
- let strElements = '';
512
- for (const elem of packages) {
513
- elements.push(elem);
514
- cmd += ` ${elem}`;
515
- strElements += `, ${elem}`;
516
- }
517
- if (elements.length > 0) {
518
- let step = `installing ${comment}: `;
519
- if (!this.verbose) {
520
- step += strElements.slice(2);
521
- }
522
- /**
523
- * prova 3 volte
524
- */
525
- const limit = 3;
526
- for (let tempts = 1; tempts < limit; tempts++) {
527
- Utils.titles(step);
528
- Utils.warning(`tempts ${tempts} of ${limit}`);
529
- if (await this.tryCheckSuccess(cmd, this.echo)) {
530
- break;
531
- }
532
- }
533
- }
534
- }
535
- }
536
- /**
537
- *
538
- * @param cmd
539
- * @param echo
540
- * @returns
541
- */
542
- async tryCheckSuccess(cmd, echo) {
543
- let success = false;
544
- try {
545
- await exec(cmd, Utils.setEcho(true));
546
- success = true;
547
- }
548
- catch {
549
- success = false;
550
- }
551
- return success;
552
- }
553
- }
554
- /**
555
- *
556
- * @param ms
557
- * @returns
558
- */
559
- function sleep(ms = 0) {
560
- return new Promise((resolve) => {
561
- setTimeout(resolve, ms);
562
- });
563
- }
@@ -1,26 +0,0 @@
1
- /**
2
- * ./src/classes/tools.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
- interface IEggsConfigTools {
9
- localPathIso: string;
10
- remoteHost: string;
11
- remotePathPackages: string;
12
- remotePathIso: string;
13
- remoteUser: string;
14
- }
15
- /**
16
- * Utils: general porpourse utils
17
- * @remarks all the utilities
18
- */
19
- export default class Tools {
20
- config: IEggsConfigTools;
21
- snapshot_dir: string;
22
- snapshot_name: string;
23
- tools_yaml: string;
24
- loadSettings(): Promise<boolean>;
25
- }
26
- export {};
@@ -1,50 +0,0 @@
1
- /**
2
- * ./src/classes/tools.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 yaml from 'js-yaml';
9
- import fs from 'node:fs';
10
- import Settings from './settings.js';
11
- import Utils from './utils.js';
12
- /**
13
- * Utils: general porpourse utils
14
- * @remarks all the utilities
15
- */
16
- export default class Tools {
17
- config = {};
18
- snapshot_dir = '';
19
- snapshot_name = '';
20
- tools_yaml = '/etc/penguins-eggs.d/tools.yaml';
21
- /*
22
- * Load configuration from /etc/penguins-eggs.yaml
23
- * @returns {boolean} Success
24
- */
25
- async loadSettings() {
26
- let foundSettings = false;
27
- if (fs.existsSync(this.tools_yaml)) {
28
- foundSettings = true;
29
- const loaded = yaml.load(fs.readFileSync(this.tools_yaml, 'utf8'));
30
- this.config.remoteHost = loaded.remoteHost;
31
- this.config.remoteUser = loaded.remoteUser;
32
- this.config.remotePathPackages = loaded.remotePathPackages;
33
- this.config.remotePathIso = loaded.remotePathIso;
34
- this.config.localPathIso = loaded.localPathIso;
35
- /**
36
- * da eggs
37
- */
38
- const settings = new Settings();
39
- settings.load();
40
- this.snapshot_dir = settings.config.snapshot_dir;
41
- const prefix = settings.config.snapshot_prefix;
42
- this.snapshot_name = prefix + settings.config.snapshot_basename + '_' + Utils.uefiArch();
43
- }
44
- else {
45
- console.log(`Can't find: ${this.tools_yaml}`);
46
- process.exit(1);
47
- }
48
- return foundSettings;
49
- }
50
- }
@@ -1,28 +0,0 @@
1
- /**
2
- * ./src/classes/users.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
- /**
9
- *
10
- */
11
- export default class Users {
12
- gecos: string;
13
- gid: string;
14
- hasHome: boolean;
15
- home: string;
16
- login: string;
17
- password: string;
18
- saveIt: boolean;
19
- shell: string;
20
- size: number;
21
- uid: string;
22
- constructor(login: string, password: string, uid: string, gid: string, gecos: string, home: string, shell: string);
23
- /**
24
- * getSize
25
- * @param verbose
26
- */
27
- getValues(): Promise<void>;
28
- }