penguins-eggs 25.10.24 → 25.10.28

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 (513) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/README.md +3 -770
  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 +1 -1
  7. package/addons/eggs/theme/livecd/generic.grub.theme.cfg +1 -3
  8. package/addons/eggs/theme/livecd/generic.isolinux.theme.cfg +1 -2
  9. package/assets/calamares/install-system.sh +0 -0
  10. package/assets/penguins-eggs.desktop +0 -0
  11. package/assets/penguins-krill.desktop +0 -0
  12. package/assets/penguins-links-add.desktop +0 -0
  13. package/assets/penguins-live-installer.desktop +0 -0
  14. package/bin/dev.js +0 -0
  15. package/conf/distros/alpine/calamares/calamares-modules/machineid-openrc/machineid-openrc.sh +0 -0
  16. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  17. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  18. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  19. package/conf/distros/fedora/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  20. package/conf/distros/focal/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  21. package/conf/distros/focal/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  22. package/conf/distros/noble/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  23. package/conf/distros/noble/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  24. package/conf/distros/noble/calamares/libexec/calamares-aptsources.sh +0 -0
  25. package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +0 -0
  26. package/conf/distros/noble/calamares/libexec/calamares-logs-helper.sh +0 -0
  27. package/conf/distros/noble/calamares/libexec/calamares-nomodeset.sh +0 -0
  28. package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  29. package/conf/distros/opensuse/calamares/settings.yml +0 -0
  30. package/conf/distros/opensuse/calamares/zstd2lzo.sh +0 -0
  31. package/conf/distros/trixie/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  32. package/conf/distros/trixie/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  33. package/conf/distros/trixie/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  34. package/conf/init/unattended.sh +0 -0
  35. package/dracut/create-symlink +0 -0
  36. package/dracut/export +0 -0
  37. package/dracut/export-dracut-analysis +0 -0
  38. package/dracut/export-dracut-log +0 -0
  39. package/dracut/mkisofs +0 -0
  40. package/dracut/modules.d/00debug-shell/debug-hook.sh +0 -0
  41. package/dracut/modules.d/00debug-shell/module-setup.sh +0 -0
  42. package/dracut/modules.d/90block/block-cmdline.sh +0 -0
  43. package/dracut/modules.d/90block/module-setup.sh +0 -0
  44. package/dracut/modules.d/95iso-scan/iso-scan-fallback.sh +0 -0
  45. package/dracut/modules.d/95iso-scan/iso-scan.sh +0 -0
  46. package/dracut/modules.d/95iso-scan/module-setup.sh +0 -0
  47. package/dracut/modules.d/95luks-loop/luks-loop.sh +0 -0
  48. package/dracut/modules.d/95luks-loop/module-setup.sh +0 -0
  49. package/dracut/renew-initramfs +0 -0
  50. package/dracut/sbin2bin +0 -0
  51. package/dracut/update-dracut-conf-d +0 -0
  52. package/dracut/update-dracut-modules +0 -0
  53. package/eui/eui-autostart-cinnamon.desktop +0 -0
  54. package/eui/eui-autostart-xfce.desktop +0 -0
  55. package/eui/eui-create-image.sh +0 -0
  56. package/eui/eui-start.sh +0 -0
  57. package/package.json +124 -130
  58. package/perrisbrewery/scripts/postinst +0 -0
  59. package/perrisbrewery/scripts/postrm +0 -0
  60. package/perrisbrewery/scripts/preinst +0 -0
  61. package/perrisbrewery/scripts/prerm +0 -0
  62. package/scripts/99clean +0 -0
  63. package/scripts/adapt.sh +0 -0
  64. package/scripts/boot-encrypted-root.sh +138 -95
  65. package/scripts/bros/waydroid-helper.sh +0 -0
  66. package/scripts/lsb_release +0 -0
  67. package/scripts/mom.sh +0 -0
  68. package/scripts/mount-encrypted-home.sh +130 -65
  69. package/scripts/pve-live.service +0 -0
  70. package/scripts/pve-live.sh +0 -0
  71. package/scripts/resy +0 -0
  72. package/dist/classes/bleach.d.ts +0 -37
  73. package/dist/classes/bleach.js +0 -148
  74. package/dist/classes/cli-autologin.d.ts +0 -52
  75. package/dist/classes/cli-autologin.js +0 -252
  76. package/dist/classes/compressors.d.ts +0 -54
  77. package/dist/classes/compressors.js +0 -109
  78. package/dist/classes/daddy.d.ts +0 -26
  79. package/dist/classes/daddy.js +0 -175
  80. package/dist/classes/distro.d.ts +0 -32
  81. package/dist/classes/distro.js +0 -363
  82. package/dist/classes/diversions.d.ts +0 -53
  83. package/dist/classes/diversions.js +0 -131
  84. package/dist/classes/incubation/branding.d.ts +0 -17
  85. package/dist/classes/incubation/branding.js +0 -85
  86. package/dist/classes/incubation/customize/customize-partitions.d.ts +0 -4
  87. package/dist/classes/incubation/customize/customize-partitions.js +0 -29
  88. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +0 -1
  89. package/dist/classes/incubation/fisherman-helper/initcpio.js +0 -69
  90. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  91. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  92. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  93. package/dist/classes/incubation/fisherman-helper/settings.js +0 -116
  94. package/dist/classes/incubation/fisherman.d.ts +0 -71
  95. package/dist/classes/incubation/fisherman.js +0 -281
  96. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  97. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  98. package/dist/classes/incubation/incubator.d/archlinux.d.ts +0 -32
  99. package/dist/classes/incubation/incubator.d/archlinux.js +0 -82
  100. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  101. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  102. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  103. package/dist/classes/incubation/incubator.d/buster.js +0 -101
  104. package/dist/classes/incubation/incubator.d/fedora.d.ts +0 -32
  105. package/dist/classes/incubation/incubator.d/fedora.js +0 -81
  106. package/dist/classes/incubation/incubator.d/focal.d.ts +0 -32
  107. package/dist/classes/incubation/incubator.d/focal.js +0 -85
  108. package/dist/classes/incubation/incubator.d/manjaro.d.ts +0 -32
  109. package/dist/classes/incubation/incubator.d/manjaro.js +0 -82
  110. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  111. package/dist/classes/incubation/incubator.d/noble.js +0 -102
  112. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  113. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  114. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  115. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  116. package/dist/classes/incubation/incubator.d/trixie.d.ts +0 -32
  117. package/dist/classes/incubation/incubator.d/trixie.js +0 -98
  118. package/dist/classes/incubation/incubator.d.ts +0 -48
  119. package/dist/classes/incubation/incubator.js +0 -378
  120. package/dist/classes/incubation/installer.d.ts +0 -13
  121. package/dist/classes/incubation/installer.js +0 -52
  122. package/dist/classes/keyboards.d.ts +0 -50
  123. package/dist/classes/keyboards.js +0 -287
  124. package/dist/classes/locales.d.ts +0 -21
  125. package/dist/classes/locales.js +0 -77
  126. package/dist/classes/network.d.ts +0 -37
  127. package/dist/classes/network.js +0 -98
  128. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  129. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  130. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  131. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  132. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  133. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  134. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -20
  135. package/dist/classes/ovary.d/edit-live-fs.js +0 -239
  136. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  137. package/dist/classes/ovary.d/fertilization.js +0 -53
  138. package/dist/classes/ovary.d/finished.d.ts +0 -13
  139. package/dist/classes/ovary.d/finished.js +0 -40
  140. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  141. package/dist/classes/ovary.d/initrd.js +0 -96
  142. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  143. package/dist/classes/ovary.d/kernel-copy.js +0 -22
  144. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  145. package/dist/classes/ovary.d/live-create-structure.js +0 -70
  146. package/dist/classes/ovary.d/luks-get-password.d.ts +0 -12
  147. package/dist/classes/ovary.d/luks-get-password.js +0 -58
  148. package/dist/classes/ovary.d/luks-home-support.d.ts +0 -12
  149. package/dist/classes/ovary.d/luks-home-support.js +0 -75
  150. package/dist/classes/ovary.d/luks-home.d.ts +0 -15
  151. package/dist/classes/ovary.d/luks-home.js +0 -152
  152. package/dist/classes/ovary.d/luks-root-initrd.d.ts +0 -17
  153. package/dist/classes/ovary.d/luks-root-initrd.js +0 -213
  154. package/dist/classes/ovary.d/luks-root.d.ts +0 -15
  155. package/dist/classes/ovary.d/luks-root.js +0 -151
  156. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  157. package/dist/classes/ovary.d/make-dot-disk.js +0 -71
  158. package/dist/classes/ovary.d/make-efi.d.ts +0 -14
  159. package/dist/classes/ovary.d/make-efi.js +0 -290
  160. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  161. package/dist/classes/ovary.d/make-iso.js +0 -45
  162. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  163. package/dist/classes/ovary.d/make-squashfs.js +0 -111
  164. package/dist/classes/ovary.d/merged.d.ts +0 -27
  165. package/dist/classes/ovary.d/merged.js +0 -78
  166. package/dist/classes/ovary.d/produce.d.ts +0 -23
  167. package/dist/classes/ovary.d/produce.js +0 -348
  168. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  169. package/dist/classes/ovary.d/rexec.js +0 -34
  170. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  171. package/dist/classes/ovary.d/syslinux.js +0 -95
  172. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  173. package/dist/classes/ovary.d/user-create-live.js +0 -97
  174. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  175. package/dist/classes/ovary.d/users-remove.js +0 -38
  176. package/dist/classes/ovary.d/xorriso-command.d.ts +0 -14
  177. package/dist/classes/ovary.d/xorriso-command.js +0 -120
  178. package/dist/classes/ovary.d.ts +0 -105
  179. package/dist/classes/ovary.js +0 -116
  180. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  181. package/dist/classes/pacman.d/alpine.js +0 -167
  182. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  183. package/dist/classes/pacman.d/archlinux.js +0 -128
  184. package/dist/classes/pacman.d/debian.d.ts +0 -65
  185. package/dist/classes/pacman.d/debian.js +0 -143
  186. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  187. package/dist/classes/pacman.d/fedora.js +0 -107
  188. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  189. package/dist/classes/pacman.d/openmamba.js +0 -106
  190. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  191. package/dist/classes/pacman.d/opensuse.js +0 -109
  192. package/dist/classes/pacman.d.ts +0 -139
  193. package/dist/classes/pacman.js +0 -683
  194. package/dist/classes/pve-live.d.ts +0 -17
  195. package/dist/classes/pve-live.js +0 -52
  196. package/dist/classes/pxe.d.ts +0 -76
  197. package/dist/classes/pxe.js +0 -353
  198. package/dist/classes/settings.d.ts +0 -52
  199. package/dist/classes/settings.js +0 -185
  200. package/dist/classes/sources_list.d.ts +0 -28
  201. package/dist/classes/sources_list.js +0 -89
  202. package/dist/classes/systemctl.d.ts +0 -47
  203. package/dist/classes/systemctl.js +0 -86
  204. package/dist/classes/tailor.d.ts +0 -50
  205. package/dist/classes/tailor.js +0 -563
  206. package/dist/classes/tools.d.ts +0 -26
  207. package/dist/classes/tools.js +0 -50
  208. package/dist/classes/users.d.ts +0 -28
  209. package/dist/classes/users.js +0 -143
  210. package/dist/classes/utils.d/kernel.d.ts +0 -39
  211. package/dist/classes/utils.d/kernel.js +0 -206
  212. package/dist/classes/utils.d.ts +0 -330
  213. package/dist/classes/utils.js +0 -968
  214. package/dist/classes/xdg.d.ts +0 -45
  215. package/dist/classes/xdg.js +0 -337
  216. package/dist/classes/yolk.d.ts +0 -33
  217. package/dist/classes/yolk.js +0 -114
  218. package/dist/commands/adapt.d.ts +0 -17
  219. package/dist/commands/adapt.js +0 -33
  220. package/dist/commands/analyze.d.ts +0 -26
  221. package/dist/commands/analyze.js +0 -95
  222. package/dist/commands/calamares.d.ts +0 -29
  223. package/dist/commands/calamares.js +0 -112
  224. package/dist/commands/config.d.ts +0 -35
  225. package/dist/commands/config.js +0 -120
  226. package/dist/commands/cuckoo.d.ts +0 -17
  227. package/dist/commands/cuckoo.js +0 -61
  228. package/dist/commands/dad.d.ts +0 -21
  229. package/dist/commands/dad.js +0 -47
  230. package/dist/commands/export/iso.d.ts +0 -19
  231. package/dist/commands/export/iso.js +0 -55
  232. package/dist/commands/export/pkg.d.ts +0 -29
  233. package/dist/commands/export/pkg.js +0 -173
  234. package/dist/commands/export/tarballs.d.ts +0 -27
  235. package/dist/commands/export/tarballs.js +0 -79
  236. package/dist/commands/install.d.ts +0 -39
  237. package/dist/commands/install.js +0 -113
  238. package/dist/commands/kill.d.ts +0 -24
  239. package/dist/commands/kill.js +0 -50
  240. package/dist/commands/love.d.ts +0 -25
  241. package/dist/commands/love.js +0 -118
  242. package/dist/commands/mom.d.ts +0 -16
  243. package/dist/commands/mom.js +0 -30
  244. package/dist/commands/pods.d.ts +0 -22
  245. package/dist/commands/pods.js +0 -92
  246. package/dist/commands/produce.d.ts +0 -37
  247. package/dist/commands/produce.js +0 -232
  248. package/dist/commands/status.d.ts +0 -23
  249. package/dist/commands/status.js +0 -31
  250. package/dist/commands/tools/clean.d.ts +0 -18
  251. package/dist/commands/tools/clean.js +0 -37
  252. package/dist/commands/tools/repo.d.ts +0 -31
  253. package/dist/commands/tools/repo.js +0 -246
  254. package/dist/commands/tools/skel.d.ts +0 -18
  255. package/dist/commands/tools/skel.js +0 -44
  256. package/dist/commands/tools/stat.d.ts +0 -31
  257. package/dist/commands/tools/stat.js +0 -70
  258. package/dist/commands/tools/yolk.d.ts +0 -24
  259. package/dist/commands/tools/yolk.js +0 -45
  260. package/dist/commands/update.d.ts +0 -46
  261. package/dist/commands/update.js +0 -238
  262. package/dist/commands/wardrobe/get.d.ts +0 -23
  263. package/dist/commands/wardrobe/get.js +0 -52
  264. package/dist/commands/wardrobe/list.d.ts +0 -24
  265. package/dist/commands/wardrobe/list.js +0 -125
  266. package/dist/commands/wardrobe/show.d.ts +0 -25
  267. package/dist/commands/wardrobe/show.js +0 -97
  268. package/dist/commands/wardrobe/wear.d.ts +0 -26
  269. package/dist/commands/wardrobe/wear.js +0 -84
  270. package/dist/dhcpd-proxy/classes/packet.d.ts +0 -36
  271. package/dist/dhcpd-proxy/classes/packet.js +0 -124
  272. package/dist/dhcpd-proxy/index.d.ts +0 -4
  273. package/dist/dhcpd-proxy/index.js +0 -4
  274. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +0 -45
  275. package/dist/dhcpd-proxy/interfaces/i-pxe.js +0 -1
  276. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +0 -11
  277. package/dist/dhcpd-proxy/lib/packet/converters.js +0 -395
  278. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +0 -10
  279. package/dist/dhcpd-proxy/lib/packet/message-types.js +0 -12
  280. package/dist/dhcpd-proxy/lib/packet/options.d.ts +0 -8
  281. package/dist/dhcpd-proxy/lib/packet/options.js +0 -264
  282. package/dist/dhcpd-proxy/lib/sprintf.d.ts +0 -6
  283. package/dist/dhcpd-proxy/lib/sprintf.js +0 -130
  284. package/dist/dhcpd-proxy/lib/utils.d.ts +0 -126
  285. package/dist/dhcpd-proxy/lib/utils.js +0 -255
  286. package/dist/dhcpd-proxy/simple-proxy.d.ts +0 -11
  287. package/dist/dhcpd-proxy/simple-proxy.js +0 -118
  288. package/dist/index.d.ts +0 -8
  289. package/dist/index.js +0 -8
  290. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +0 -23
  291. package/dist/interfaces/calamares/i-calamares-bootloader.js +0 -7
  292. package/dist/interfaces/calamares/i-calamares-branding.d.ts +0 -46
  293. package/dist/interfaces/calamares/i-calamares-branding.js +0 -1
  294. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +0 -34
  295. package/dist/interfaces/calamares/i-calamares-displaymanager.js +0 -1
  296. package/dist/interfaces/calamares/i-calamares-finished.d.ts +0 -14
  297. package/dist/interfaces/calamares/i-calamares-finished.js +0 -1
  298. package/dist/interfaces/calamares/i-calamares-packages.d.ts +0 -26
  299. package/dist/interfaces/calamares/i-calamares-packages.js +0 -1
  300. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +0 -39
  301. package/dist/interfaces/calamares/i-calamares-partitions.js +0 -1
  302. package/dist/interfaces/calamares/i-calamares-settings.d.ts +0 -36
  303. package/dist/interfaces/calamares/i-calamares-settings.js +0 -1
  304. package/dist/interfaces/i-addons.d.ts +0 -12
  305. package/dist/interfaces/i-addons.js +0 -8
  306. package/dist/interfaces/i-analyze.d.ts +0 -17
  307. package/dist/interfaces/i-analyze.js +0 -17
  308. package/dist/interfaces/i-app.d.ts +0 -14
  309. package/dist/interfaces/i-app.js +0 -8
  310. package/dist/interfaces/i-config-tools.d.ts +0 -15
  311. package/dist/interfaces/i-config-tools.js +0 -8
  312. package/dist/interfaces/i-devices.d.ts +0 -20
  313. package/dist/interfaces/i-devices.js +0 -8
  314. package/dist/interfaces/i-distro.d.ts +0 -23
  315. package/dist/interfaces/i-distro.js +0 -8
  316. package/dist/interfaces/i-drive-list.d.ts +0 -33
  317. package/dist/interfaces/i-drive-list.js +0 -8
  318. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  319. package/dist/interfaces/i-eggs-config.js +0 -8
  320. package/dist/interfaces/i-excludes.d.ts +0 -14
  321. package/dist/interfaces/i-excludes.js +0 -8
  322. package/dist/interfaces/i-exec.d.ts +0 -11
  323. package/dist/interfaces/i-exec.js +0 -8
  324. package/dist/interfaces/i-initrd.d.ts +0 -13
  325. package/dist/interfaces/i-initrd.js +0 -8
  326. package/dist/interfaces/i-install.d.ts +0 -16
  327. package/dist/interfaces/i-install.js +0 -8
  328. package/dist/interfaces/i-installer.d.ts +0 -17
  329. package/dist/interfaces/i-installer.js +0 -8
  330. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  331. package/dist/interfaces/i-luks-passphrase.js +0 -8
  332. package/dist/interfaces/i-materia.d.ts +0 -36
  333. package/dist/interfaces/i-materia.js +0 -8
  334. package/dist/interfaces/i-net.d.ts +0 -16
  335. package/dist/interfaces/i-net.js +0 -8
  336. package/dist/interfaces/i-os-release.d.ts +0 -5
  337. package/dist/interfaces/i-os-release.js +0 -1
  338. package/dist/interfaces/i-packages.d.ts +0 -16
  339. package/dist/interfaces/i-packages.js +0 -8
  340. package/dist/interfaces/i-partitions.d.ts +0 -16
  341. package/dist/interfaces/i-partitions.js +0 -8
  342. package/dist/interfaces/i-pxe.d.ts +0 -45
  343. package/dist/interfaces/i-pxe.js +0 -1
  344. package/dist/interfaces/i-remix.d.ts +0 -21
  345. package/dist/interfaces/i-remix.js +0 -8
  346. package/dist/interfaces/i-settings.d.ts +0 -33
  347. package/dist/interfaces/i-settings.js +0 -8
  348. package/dist/interfaces/i-user.d.ts +0 -14
  349. package/dist/interfaces/i-user.js +0 -8
  350. package/dist/interfaces/i-workdir.d.ts +0 -14
  351. package/dist/interfaces/i-workdir.js +0 -8
  352. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  353. package/dist/interfaces/i-xkb-model.js +0 -8
  354. package/dist/interfaces/index.d.ts +0 -26
  355. package/dist/interfaces/index.js +0 -8
  356. package/dist/krill/classes/cfs.d.ts +0 -17
  357. package/dist/krill/classes/cfs.js +0 -39
  358. package/dist/krill/classes/krill_enums.d.ts +0 -37
  359. package/dist/krill/classes/krill_enums.js +0 -41
  360. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  361. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  362. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  363. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  364. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  365. package/dist/krill/classes/prepare.d/location.js +0 -59
  366. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  367. package/dist/krill/classes/prepare.d/network.js +0 -68
  368. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  369. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  370. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  371. package/dist/krill/classes/prepare.d/summary.js +0 -72
  372. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  373. package/dist/krill/classes/prepare.d/users.js +0 -63
  374. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  375. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  376. package/dist/krill/classes/prepare.d.ts +0 -89
  377. package/dist/krill/classes/prepare.js +0 -319
  378. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  379. package/dist/krill/classes/sequence.d/add_user.js +0 -77
  380. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  381. package/dist/krill/classes/sequence.d/bootloader.js +0 -117
  382. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  383. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -192
  384. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  385. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  386. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  387. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  388. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  389. package/dist/krill/classes/sequence.d/fstab.js +0 -177
  390. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  391. package/dist/krill/classes/sequence.d/grubcfg.js +0 -35
  392. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  393. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  394. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  395. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  396. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  397. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  398. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  399. package/dist/krill/classes/sequence.d/locale.js +0 -91
  400. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  401. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  402. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  403. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  404. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  405. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  406. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  407. package/dist/krill/classes/sequence.d/mkfs.js +0 -88
  408. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  409. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  410. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  411. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -59
  412. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  413. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  414. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  415. package/dist/krill/classes/sequence.d/packages.js +0 -111
  416. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  417. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  418. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -16
  419. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -51
  420. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  421. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -77
  422. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  423. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -33
  424. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  425. package/dist/krill/classes/sequence.d/partition.js +0 -84
  426. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  427. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  428. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  429. package/dist/krill/classes/sequence.d/umount.js +0 -28
  430. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  431. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  432. package/dist/krill/classes/sequence.d.ts +0 -134
  433. package/dist/krill/classes/sequence.js +0 -400
  434. package/dist/krill/components/finished.d.ts +0 -16
  435. package/dist/krill/components/finished.js +0 -56
  436. package/dist/krill/components/information.d.ts +0 -8
  437. package/dist/krill/components/information.js +0 -162
  438. package/dist/krill/components/install.d.ts +0 -15
  439. package/dist/krill/components/install.js +0 -60
  440. package/dist/krill/components/keyboard.d.ts +0 -16
  441. package/dist/krill/components/keyboard.js +0 -54
  442. package/dist/krill/components/location.d.ts +0 -16
  443. package/dist/krill/components/location.js +0 -59
  444. package/dist/krill/components/network.d.ts +0 -19
  445. package/dist/krill/components/network.js +0 -65
  446. package/dist/krill/components/partitions.d.ts +0 -18
  447. package/dist/krill/components/partitions.js +0 -89
  448. package/dist/krill/components/steps.d.ts +0 -13
  449. package/dist/krill/components/steps.js +0 -148
  450. package/dist/krill/components/summary.d.ts +0 -25
  451. package/dist/krill/components/summary.js +0 -77
  452. package/dist/krill/components/title.d.ts +0 -11
  453. package/dist/krill/components/title.js +0 -35
  454. package/dist/krill/components/users.d.ts +0 -24
  455. package/dist/krill/components/users.js +0 -80
  456. package/dist/krill/components/welcome.d.ts +0 -13
  457. package/dist/krill/components/welcome.js +0 -63
  458. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  459. package/dist/krill/interfaces/i_krill.js +0 -8
  460. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  461. package/dist/krill/interfaces/i_krill_config.js +0 -8
  462. package/dist/krill/lib/get_address.d.ts +0 -8
  463. package/dist/krill/lib/get_address.js +0 -23
  464. package/dist/krill/lib/get_dns.d.ts +0 -8
  465. package/dist/krill/lib/get_dns.js +0 -23
  466. package/dist/krill/lib/get_domain.d.ts +0 -8
  467. package/dist/krill/lib/get_domain.js +0 -23
  468. package/dist/krill/lib/get_gateway.d.ts +0 -8
  469. package/dist/krill/lib/get_gateway.js +0 -23
  470. package/dist/krill/lib/get_hostname.d.ts +0 -8
  471. package/dist/krill/lib/get_hostname.js +0 -23
  472. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  473. package/dist/krill/lib/get_luks_passphrase.js +0 -32
  474. package/dist/krill/lib/get_netmask.d.ts +0 -8
  475. package/dist/krill/lib/get_netmask.js +0 -23
  476. package/dist/krill/lib/get_password.d.ts +0 -8
  477. package/dist/krill/lib/get_password.js +0 -36
  478. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  479. package/dist/krill/lib/get_userfullname.js +0 -23
  480. package/dist/krill/lib/get_username.d.ts +0 -8
  481. package/dist/krill/lib/get_username.js +0 -23
  482. package/dist/krill/lib/select_address_type.d.ts +0 -8
  483. package/dist/krill/lib/select_address_type.js +0 -24
  484. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  485. package/dist/krill/lib/select_filesystem_type.js +0 -40
  486. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  487. package/dist/krill/lib/select_installation_device.js +0 -40
  488. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  489. package/dist/krill/lib/select_installation_mode.js +0 -25
  490. package/dist/krill/lib/select_interface.d.ts +0 -8
  491. package/dist/krill/lib/select_interface.js +0 -24
  492. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  493. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  494. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  495. package/dist/krill/lib/select_keyboard_model.js +0 -34
  496. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  497. package/dist/krill/lib/select_keyboard_option.js +0 -34
  498. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  499. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  500. package/dist/krill/lib/select_languages.d.ts +0 -8
  501. package/dist/krill/lib/select_languages.js +0 -28
  502. package/dist/krill/lib/select_regions.d.ts +0 -8
  503. package/dist/krill/lib/select_regions.js +0 -24
  504. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  505. package/dist/krill/lib/select_replaced_partition.js +0 -31
  506. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  507. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  508. package/dist/krill/lib/select_zones.d.ts +0 -8
  509. package/dist/krill/lib/select_zones.js +0 -518
  510. package/dist/lib/kill_me_softly.d.ts +0 -11
  511. package/dist/lib/kill_me_softly.js +0 -61
  512. package/dist/lib/utils.d.ts +0 -19
  513. package/dist/lib/utils.js +0 -65
@@ -1,69 +0,0 @@
1
- import { exec } from 'child_process';
2
- import { promisify } from 'util';
3
- import { access } from 'fs/promises';
4
- const execAsync = promisify(exec);
5
- export async function initcpio() {
6
- try {
7
- const { stdout: kernelVersion } = await execAsync('uname -r');
8
- const version = kernelVersion.trim();
9
- // Manjaro
10
- if (version.includes('MANJARO')) {
11
- try {
12
- // Estrai major e minor version. Es: da "6.12.48-1-MANJARO" -> ["6", "12", "48-1-MANJARO"]
13
- const parts = version.split('.');
14
- // Costruisci il nome del preset come "linux" + "6" + "12" -> "linux612"
15
- const kernelName = `linux${parts[0]}${parts[1]}`;
16
- const manjaroPreset = `/etc/mkinitcpio.d/${kernelName}.preset`;
17
- await access(manjaroPreset); // Verifica se esiste /etc/mkinitcpio.d/linux612.preset
18
- return manjaroPreset; // Se esiste, lo restituisce e la funzione termina
19
- }
20
- catch {
21
- // Se anche questa logica fallisce, lascia che proceda al fallback per Arch
22
- // console.warn('Logica Manjaro fallita, si tenta il fallback per Arch...');
23
- }
24
- }
25
- else if (version.includes('cachyos')) {
26
- try {
27
- let kernelType = 'linux-cachyos'; // default
28
- if (version.includes('lts')) {
29
- kernelType = 'linux-cachyos-lts';
30
- }
31
- else if (version.includes('zen')) {
32
- kernelType = 'linux-cachyos-zen';
33
- }
34
- else if (version.includes('hardened')) {
35
- kernelType = 'linux-hardened';
36
- }
37
- const cachyPreset = `/etc/mkinitcpio.d/${kernelType}.preset`;
38
- await access(cachyPreset);
39
- return cachyPreset;
40
- }
41
- catch {
42
- // Se anche questa logica fallisce, lascia che proceda al fallback per Arch
43
- // console.warn('Logica Manjaro fallita, si tenta il fallback per Arch...');
44
- }
45
- }
46
- /**
47
- * FALLBACK ARCH
48
- */
49
- // Determina il tipo di kernel
50
- let kernelType = 'linux'; // default
51
- if (version.includes('lts')) {
52
- kernelType = 'linux-lts';
53
- }
54
- else if (version.includes('zen')) {
55
- kernelType = 'linux-zen';
56
- }
57
- else if (version.includes('hardened')) {
58
- kernelType = 'linux-hardened';
59
- }
60
- const archPreset = `/etc/mkinitcpio.d/${kernelType}.preset`;
61
- // Verifica che esista
62
- await access(archPreset);
63
- return archPreset;
64
- }
65
- catch (error) {
66
- // Rimuoviamo l'errore originale dalla stringa per un messaggio più pulito
67
- throw new Error(`Impossibile trovare un file .preset valido in /etc/mkinitcpio.d/`);
68
- }
69
- }
@@ -1,20 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/fisherman-helper/packages.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 { IDistro } from '../../../interfaces/index.js';
9
- /**
10
- *
11
- * @param distro
12
- * @returns yaml-string
13
- */
14
- export declare function remove(distro: IDistro): string;
15
- /**
16
- *
17
- * @param distro
18
- * @returns yaml-string
19
- */
20
- export declare function tryInstall(distro: IDistro): string;
@@ -1,72 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/fisherman-helper/packages.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 Pacman from '../../pacman.js';
9
- /**
10
- *
11
- * @param distro
12
- * @returns yaml-string
13
- */
14
- export function remove(distro) {
15
- const packages = ['calamares-eggs', 'calamares'];
16
- if (distro.familyId === 'archlinux') {
17
- packages.push('penguins-eggs');
18
- }
19
- if (distro.familyId === 'debian') {
20
- packages.push('penguins-eggs', 'live-boot', 'live-boot-doc', 'live-boot-initramfs-tools', 'live-tools');
21
- }
22
- const installedPackages = [];
23
- for (const elem of packages) {
24
- if (Pacman.packageIsInstalled(elem)) {
25
- installedPackages.push(elem);
26
- }
27
- }
28
- installedPackages.sort();
29
- let yaml = '';
30
- for (const elem of installedPackages) {
31
- yaml += ` - ${elem.trim()}\n`;
32
- }
33
- if (yaml !== '') {
34
- yaml = '- try_remove:\n' + yaml;
35
- }
36
- return yaml;
37
- }
38
- /**
39
- *
40
- * @param distro
41
- * @returns yaml-string
42
- */
43
- export function tryInstall(distro) {
44
- let yaml = '';
45
- /**
46
- * Depending on the distro
47
- */
48
- if (distro.distroLike === 'Ubuntu') {
49
- yaml += ' - language-pack-$LOCALE\n';
50
- }
51
- // Da localizzare se presenti
52
- if (Pacman.packageIsInstalled('hunspell')) {
53
- yaml += ' - hunspell-$LOCALE\n';
54
- }
55
- if (Pacman.packageIsInstalled('libreoffice-base-core')) {
56
- yaml += ' - libreoffice-l10n-$LOCALE\n';
57
- yaml += ' - libreoffice-help-$LOCALE\n';
58
- }
59
- if (Pacman.packageIsInstalled('firefox-esr')) {
60
- yaml += ' - firefox-esr-$LOCALE\n';
61
- }
62
- if (Pacman.packageIsInstalled('firefox')) {
63
- yaml += ' - firefox-$LOCALE\n';
64
- }
65
- if (Pacman.packageIsInstalled('thunderbird')) {
66
- yaml += ' - thunderbird-locale-$LOCALE\n';
67
- }
68
- if (yaml !== '') {
69
- yaml = '- try_install:\n' + yaml;
70
- }
71
- return yaml;
72
- }
@@ -1,15 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/fisherman-helper/settings.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
- * @param src
11
- * @param dest
12
- * @param theme
13
- * @param isClone
14
- */
15
- export declare function settings(src: string, dest: string, theme?: string, isClone?: boolean): Promise<void>;
@@ -1,116 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/fisherman-helper/settings.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
- * @param theme
11
- * @param isClone
12
- */
13
- import yaml from 'js-yaml';
14
- import fs from 'node:fs';
15
- import shx from 'shelljs';
16
- import Utils from '../../utils.js';
17
- import { installer } from '../installer.js';
18
- /**
19
- *
20
- * @param src
21
- * @param dest
22
- * @param theme
23
- * @param isClone
24
- */
25
- export async function settings(src, dest, theme = 'eggs', isClone = false) {
26
- let branding = theme;
27
- const settingsSrc = src + 'settings.yml';
28
- if (theme.includes('/')) {
29
- branding = theme.slice(Math.max(0, theme.lastIndexOf('/') + 1));
30
- }
31
- const settingsDest = dest + 'settings.conf';
32
- const contentSrc = fs.readFileSync(settingsSrc, "utf-8");
33
- const yamlDest = yaml.load(contentSrc);
34
- // Trova gli elementi in modo sicuro
35
- const showSequenceItem = yamlDest.sequence.find(item => item.show);
36
- const execSequenceItem = yamlDest.sequence.find(item => item.exec);
37
- if (!showSequenceItem || !execSequenceItem) {
38
- throw new Error("Impossibile trovare le sezioni 'show' o 'exec' nel file settings.yml");
39
- }
40
- // Il '!' dice a TS: "sono sicuro che non è undefined"
41
- let showModules = showSequenceItem.show;
42
- let execModules = execSequenceItem.exec;
43
- // Filtra la lista (ora con type safety)
44
- if (!Utils.isSystemd()) {
45
- execModules = execModules.filter(module => module !== 'machineid' && module !== 'services-systemd');
46
- }
47
- // if (displaymanager()) {
48
- // execModules = execModules.filter(module => module !== 'displaymanager')
49
- // }
50
- if (isClone) {
51
- execModules = execModules.filter(module => module !== 'users');
52
- showModules = showModules.filter(module => module !== 'users');
53
- }
54
- // Riassegna gli array
55
- showSequenceItem.show = showModules;
56
- execSequenceItem.exec = execModules;
57
- yamlDest.branding = branding;
58
- const contentDeest = yaml.dump(yamlDest);
59
- fs.writeFileSync(settingsDest, contentDeest);
60
- /*
61
- shx.cp(settingsSrc, settingsDest)
62
- let hasSystemd = '# '
63
- if (Utils.isSystemd()) {
64
- hasSystemd = '- '
65
- }
66
-
67
- let createUsers = '- '
68
- if (isClone) {
69
- createUsers = '# '
70
- }
71
-
72
- let hasDisplaymanager = '# '
73
- if (displaymanager().length > 0) {
74
- hasDisplaymanager = '- '
75
- }
76
-
77
- shx.sed('-i', '{{hasSystemd}}', hasSystemd, settingsDest)
78
- shx.sed('-i', '{{hasDisplaymanager}}', hasDisplaymanager, settingsDest)
79
- shx.sed('-i', '{{branding}}', branding, settingsDest)
80
- shx.sed('-i', '{{createUsers}}', createUsers, settingsDest)
81
-
82
- */
83
- /**
84
- * cfsAppend
85
- */
86
- const cfsPath = `${theme}/theme/calamares/cfs.yml`;
87
- if (fs.existsSync(cfsPath)) {
88
- cfsAppend(cfsPath);
89
- }
90
- }
91
- /**
92
- *
93
- */
94
- function cfsAppend(cfs) {
95
- const configRoot = installer().configRoot + 'settings.conf';
96
- const soContent = fs.readFileSync(configRoot, 'utf8');
97
- const so = yaml.load(soContent);
98
- const cfsContent = fs.readFileSync(cfs, 'utf8');
99
- const cfsSteps = yaml.load(cfsContent);
100
- const execSteps = so.sequence[1].exec;
101
- for (const execStep of execSteps) {
102
- if (execStep.includes('umount')) {
103
- so.sequence[1].exec.pop(); // OK remove umount
104
- /**
105
- * insert cfsStep
106
- */
107
- for (const cfsStep of cfsSteps) {
108
- so.sequence[1].exec.push(cfsStep);
109
- }
110
- so.sequence[1].exec.push('end-cfs'); // we will replace with umount
111
- }
112
- }
113
- // ***
114
- fs.writeFileSync(configRoot, yaml.dump(so), 'utf-8');
115
- shx.sed('-i', 'end-cfs', 'umount', configRoot);
116
- }
@@ -1,71 +0,0 @@
1
- import { IDistro, IInstaller } from '../../interfaces/index.js';
2
- export default class Fisherman {
3
- distro: IDistro;
4
- installer: IInstaller;
5
- verbose: boolean;
6
- constructor(distro: IDistro, installer: IInstaller, verbose?: boolean);
7
- /**
8
- *
9
- * @param name
10
- * @param isScript
11
- */
12
- buildCalamaresModule(name: string, isScript?: boolean, theme?: string): Promise<string>;
13
- /**
14
- *
15
- * @param name
16
- */
17
- buildCalamaresPy(name: string): Promise<void>;
18
- /**
19
- *
20
- * @param name
21
- * @param replaces [['search','replace']]
22
- */
23
- buildModule(name: string, vendor?: string): Promise<void>;
24
- /**
25
- *
26
- * @param name
27
- */
28
- contextualprocess(name: string): Promise<void>;
29
- /**
30
- * write settings
31
- */
32
- createCalamaresSettings(theme?: string, isClone?: boolean): Promise<void>;
33
- /**
34
- *
35
- * @param name
36
- */
37
- shellprocess(name: string): Promise<void>;
38
- /**
39
- *
40
- * @param module
41
- * @param type
42
- * @param path
43
- */
44
- show(name: string, type: string, path: string): void;
45
- /**
46
- * ====================================================================================
47
- * buildModule...
48
- * ====================================================================================
49
- */
50
- /**
51
- * buildModuleDracut
52
- */
53
- buildModuleDracut(initrd: string): Promise<void>;
54
- buildModuleInitcpio(): Promise<void>;
55
- /**
56
- * buildModuleFinished
57
- */
58
- buildModuleFinished(): Promise<void>;
59
- /**
60
- * buildModulePackages
61
- */
62
- buildModulePackages(distro: IDistro, release?: boolean): Promise<void>;
63
- /**
64
- * buildModuleRemoveuser
65
- */
66
- buildModuleRemoveuser(username: string): Promise<void>;
67
- /**
68
- * buildModuleUnpackfs
69
- */
70
- buildModuleUnpackfs(): Promise<void>;
71
- }
@@ -1,281 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/fisherman.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 mustache from 'mustache';
10
- import fs from 'node:fs';
11
- import path from 'node:path';
12
- import shx from 'shelljs';
13
- import yaml from 'js-yaml';
14
- import { exec } from '../../lib/utils.js';
15
- import { settings } from './fisherman-helper/settings.js';
16
- // _dirname
17
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
18
- // pjson
19
- import { createRequire } from 'node:module';
20
- const require = createRequire(import.meta.url);
21
- const pjson = require('../../../package.json');
22
- import { remove as removePackages, tryInstall } from './fisherman-helper/packages.js';
23
- export default class Fisherman {
24
- distro;
25
- installer = {};
26
- verbose = false;
27
- constructor(distro, installer, verbose = false) {
28
- this.distro = distro;
29
- this.installer = installer;
30
- this.verbose = verbose;
31
- }
32
- /**
33
- *
34
- * @param name
35
- * @param isScript
36
- */
37
- async buildCalamaresModule(name, isScript = true, theme = 'eggs') {
38
- let moduleTemplate = path.resolve(__dirname, this.installer.templateMultiarch + name);
39
- if (theme !== 'eggs') {
40
- moduleTemplate = theme + '/theme/calamares/calamares-modules/' + name;
41
- }
42
- const moduleDest = this.installer.multiarchModules + name;
43
- const moduleScript = `/usr/sbin/${name}.sh`;
44
- if (this.verbose)
45
- this.show(name, 'module', moduleDest);
46
- if (!fs.existsSync(moduleDest)) {
47
- fs.mkdirSync(moduleDest);
48
- }
49
- shx.cp(`${moduleTemplate}/module.yml`, `${moduleDest}/module.desc`);
50
- if (isScript) {
51
- shx.cp(`${moduleTemplate}/${name}.sh`, moduleScript);
52
- await exec(`chmod +x ${moduleScript}`);
53
- }
54
- return moduleScript;
55
- }
56
- /**
57
- *
58
- * @param name
59
- */
60
- async buildCalamaresPy(name) {
61
- const moduleSource = path.resolve(__dirname, this.installer.templateMultiarch + '/' + name);
62
- const moduleDest = this.installer.multiarchModules + name;
63
- if (this.verbose)
64
- this.show(name, 'python', moduleDest);
65
- if (!fs.existsSync(moduleDest)) {
66
- fs.mkdirSync(moduleDest);
67
- }
68
- shx.cp(`${moduleSource}/module.yml`, `${moduleDest}/module.desc`);
69
- shx.cp(`${moduleSource}/${name}.yml`, `${moduleDest}/${name}.conf`);
70
- shx.cp(`${moduleSource}/main.py`, moduleDest);
71
- await exec(`chmod +x ${moduleSource}/main.py`);
72
- }
73
- /**
74
- *
75
- * @param name
76
- * @param replaces [['search','replace']]
77
- */
78
- async buildModule(name, vendor = 'eggs') {
79
- let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.yml');
80
- /**
81
- * We need vendor here to have possibility to load custom modules for calamares
82
- * the custom modules live in: /addons/vendor/theme/calamares/modules
83
- * and - if exist - take priority on distro modules on /conf/distros/calamares/modules
84
- *
85
- * example:
86
- *
87
- * ./addons/openos/theme/calamares/modules/partition.yml
88
- * take place of:
89
- * ./conf/distros/bullseye/calamares/modules/partition.yml
90
- * and end in:
91
- * /etc/calamares/modules/partition.conf
92
- *
93
- * And we solve the issue of Sebastien who need btrfs
94
- *
95
- */
96
- if (vendor !== 'eggs') {
97
- let customModuleSource = path.resolve(__dirname, `../../../addons/${vendor}/theme/calamares/modules/${name}.yml`);
98
- if (vendor.includes('/')) {
99
- customModuleSource = `${vendor}/theme/calamares/modules/${name}.yml`;
100
- }
101
- if (fs.existsSync(customModuleSource)) {
102
- moduleSource = customModuleSource;
103
- }
104
- }
105
- let moduleDest = this.installer.modules + name + '.conf';
106
- if (fs.existsSync(moduleSource)) {
107
- shx.cp(moduleSource, moduleDest);
108
- if (this.verbose) {
109
- this.show(name, 'module', moduleDest);
110
- }
111
- }
112
- else if (this.verbose) {
113
- console.log('unchanged: ' + chalk.greenBright(name));
114
- }
115
- }
116
- /**
117
- *
118
- * @param name
119
- */
120
- async contextualprocess(name) {
121
- const moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '_context.yml');
122
- const moduleDest = this.installer.modules + name + '_context.conf';
123
- if (fs.existsSync(moduleSource)) {
124
- if (this.verbose)
125
- this.show(name, 'contextualprocess', moduleDest);
126
- shx.cp(moduleSource, moduleDest);
127
- }
128
- else if (this.verbose) {
129
- console.log(`calamares: ${name} contextualprocess, nothing to do!`);
130
- }
131
- }
132
- /**
133
- * write settings
134
- */
135
- async createCalamaresSettings(theme = 'eggs', isClone = false) {
136
- await settings(this.installer.template, this.installer.configRoot, theme, isClone);
137
- }
138
- /**
139
- *
140
- * @param name
141
- */
142
- async shellprocess(name) {
143
- const moduleSource = path.resolve(__dirname, this.installer.templateModules + 'shellprocess@' + name + '.yml');
144
- const moduleDest = this.installer.modules + 'shellprocess@' + name + '.conf';
145
- if (fs.existsSync(moduleSource)) {
146
- if (this.verbose)
147
- this.show(name, 'shellprocess', moduleDest);
148
- shx.cp(moduleSource, moduleDest);
149
- }
150
- else if (this.verbose) {
151
- console.log(`calamares: ${name} shellprocess, nothing to do`);
152
- }
153
- }
154
- /**
155
- *
156
- * @param module
157
- * @param type
158
- * @param path
159
- */
160
- show(name, type, path) {
161
- switch (type) {
162
- case 'module': {
163
- console.log('fisherman: ' + chalk.yellow(name) + ' module in ' + chalk.yellow(path));
164
- break;
165
- }
166
- case 'calamares_module': {
167
- console.log('fisherman: ' + chalk.cyanBright(name) + ' calamares_module in ' + chalk.cyanBright(path));
168
- break;
169
- }
170
- case 'shellprocess': {
171
- console.log('fisherman: ' + chalk.green(name) + ' shellprocess in ' + chalk.green(path));
172
- break;
173
- }
174
- case 'contextualprocess': {
175
- console.log('fisherman: ' + chalk.cyanBright(name) + ' shellprocess in ' + chalk.cyanBright(path));
176
- break;
177
- }
178
- // No default
179
- }
180
- }
181
- /**
182
- * ====================================================================================
183
- * buildModule...
184
- * ====================================================================================
185
- */
186
- /**
187
- * buildModuleDracut
188
- */
189
- async buildModuleDracut(initrd) {
190
- const name = 'dracut';
191
- let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.mustache');
192
- let moduleDest = this.installer.modules + name + '.conf';
193
- let template = fs.readFileSync(moduleSource, 'utf8');
194
- const view = { initrd: initrd };
195
- fs.writeFileSync(moduleDest, mustache.render(template, view));
196
- }
197
- async buildModuleInitcpio() {
198
- const { initcpio } = await import('./fisherman-helper/initcpio.js');
199
- const preset = await initcpio();
200
- const name = 'initcpio';
201
- let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.mustache');
202
- let moduleDest = this.installer.modules + name + '.conf';
203
- let template = fs.readFileSync(moduleSource, 'utf8');
204
- const view = { preset: preset };
205
- fs.writeFileSync(moduleDest, mustache.render(template, view));
206
- }
207
- /**
208
- * buildModuleFinished
209
- */
210
- async buildModuleFinished() {
211
- const name = 'finished';
212
- await this.buildModule(name);
213
- let file = this.installer.modules + name + '.conf';
214
- let fileContent = fs.readFileSync(file, 'utf8');
215
- let values = yaml.load(fileContent);
216
- values.restartNowCommand = 'reboot';
217
- let destContent = `# ${name}.conf, created by penguins-eggs ${pjson.version}\n`;
218
- destContent += '---\n';
219
- destContent += yaml.dump(values);
220
- fs.writeFileSync(file, destContent, 'utf8');
221
- }
222
- /**
223
- * buildModulePackages
224
- */
225
- async buildModulePackages(distro, release = false) {
226
- let backend = 'apt';
227
- if (distro.familyId === 'alpine') {
228
- backend = 'apk';
229
- }
230
- else if (distro.familyId === 'archlinux') {
231
- backend = 'pacman';
232
- }
233
- else if (distro.familyId === 'fedora') {
234
- backend = 'dnf';
235
- }
236
- else if (distro.familyId === 'fedora') {
237
- backend = 'zypper';
238
- }
239
- const yamlInstall = tryInstall(distro);
240
- let yamlRemove = '';
241
- if (release) {
242
- yamlRemove = removePackages(distro);
243
- }
244
- let operations = '';
245
- if (yamlRemove !== '' || yamlInstall !== '') {
246
- operations = 'operations:\n' + yamlRemove + yamlInstall;
247
- }
248
- const name = 'packages';
249
- let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.mustache');
250
- let moduleDest = this.installer.modules + name + '.conf';
251
- let template = fs.readFileSync(moduleSource, 'utf8');
252
- const view = {
253
- backend: backend,
254
- operations: operations
255
- };
256
- fs.writeFileSync(moduleDest, mustache.render(template, view));
257
- }
258
- /**
259
- * buildModuleRemoveuser
260
- */
261
- async buildModuleRemoveuser(username) {
262
- const name = 'removeuser';
263
- let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.mustache');
264
- let moduleDest = this.installer.modules + name + '.conf';
265
- let template = fs.readFileSync(moduleSource, 'utf8');
266
- const view = { username: username };
267
- fs.writeFileSync(moduleDest, mustache.render(template, view));
268
- }
269
- /**
270
- * buildModuleUnpackfs
271
- */
272
- async buildModuleUnpackfs() {
273
- const name = 'unpackfs';
274
- let moduleSource = path.resolve(__dirname, this.installer.templateModules + name + '.mustache');
275
- let moduleDest = this.installer.modules + name + '.conf';
276
- let template = fs.readFileSync(moduleSource, 'utf8');
277
- let source = path.join(this.distro.liveMediumPath, this.distro.squashfs);
278
- const view = { source: source };
279
- fs.writeFileSync(moduleDest, mustache.render(template, view));
280
- }
281
- }
@@ -1,32 +0,0 @@
1
- /**
2
- * ./src/classes/incubation/distros/buster.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 { IDistro, IInstaller, IRemix } from '../../../interfaces/index.js';
9
- /**
10
- *
11
- */
12
- export declare class Alpine {
13
- distro: IDistro;
14
- installer: IInstaller;
15
- isClone: boolean;
16
- release: boolean;
17
- remix: IRemix;
18
- theme: string;
19
- user_opt: string;
20
- verbose: boolean;
21
- /**
22
- * @param remix
23
- * @param distro
24
- * @param displaymanager
25
- * @param verbose
26
- */
27
- constructor(installer: IInstaller, remix: IRemix, distro: IDistro, user_opt: string, release?: boolean, theme?: string, isClone?: boolean, verbose?: boolean);
28
- /**
29
- * locale, partitions, users can come from themes
30
- */
31
- create(): Promise<void>;
32
- }