penguins-eggs 25.10.3 → 25.10.19

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 (497) hide show
  1. package/.oclif.manifest.json +51 -145
  2. package/README.md +3 -3
  3. package/addons/eggs/theme/livecd/isolinux.main.simple.cfg +3 -3
  4. package/conf/distros/archlinux/calamares/modules/bootloader.yml +86 -0
  5. package/conf/distros/archlinux/calamares/modules/partition.yml +8 -386
  6. package/conf/distros/archlinux/calamares/settings.yml +0 -4
  7. package/conf/distros/fedora/calamares/modules/README.md +4 -0
  8. package/conf/distros/fedora/calamares/modules/bootloader.yml +2 -1
  9. package/conf/distros/fedora/calamares/modules/mount.yml +6 -1
  10. package/conf/distros/fedora/calamares/settings.yml +6 -1
  11. package/conf/distros/focal/calamares/modules/mount.yml +23 -5
  12. package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +3 -0
  13. package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +1 -1
  14. package/conf/distros/opensuse/calamares/modules/dracut.mustache +7 -0
  15. package/conf/distros/opensuse/calamares/modules/packages.mustache +1 -0
  16. package/conf/distros/opensuse/calamares/modules/removeuser.mustache +2 -1
  17. package/conf/distros/opensuse/calamares/modules/unpackfs.mustache +2 -1
  18. package/conf/distros/opensuse/calamares/settings.yml +1 -1
  19. package/conf/distros/trixie/calamares/modules/shellprocess@boot_deploy.yml +3 -4
  20. package/conf/love.yaml +1 -1
  21. package/dist/classes/bleach.d.ts +37 -0
  22. package/dist/classes/bleach.js +148 -0
  23. package/dist/classes/cli-autologin.d.ts +52 -0
  24. package/dist/classes/cli-autologin.js +252 -0
  25. package/dist/classes/compressors.d.ts +54 -0
  26. package/dist/classes/compressors.js +109 -0
  27. package/dist/classes/daddy.d.ts +26 -0
  28. package/dist/classes/daddy.js +175 -0
  29. package/dist/classes/distro.d.ts +32 -0
  30. package/dist/classes/distro.js +363 -0
  31. package/dist/classes/diversions.d.ts +53 -0
  32. package/dist/classes/diversions.js +152 -0
  33. package/dist/classes/incubation/branding.d.ts +17 -0
  34. package/dist/classes/incubation/branding.js +85 -0
  35. package/dist/classes/incubation/customize/customize-partitions.d.ts +4 -0
  36. package/dist/classes/incubation/customize/customize-partitions.js +29 -0
  37. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +1 -0
  38. package/dist/classes/incubation/fisherman-helper/initcpio.js +69 -0
  39. package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
  40. package/dist/classes/incubation/fisherman-helper/packages.js +72 -0
  41. package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
  42. package/dist/classes/incubation/fisherman-helper/settings.js +116 -0
  43. package/dist/classes/incubation/fisherman.d.ts +71 -0
  44. package/dist/classes/incubation/fisherman.js +281 -0
  45. package/dist/classes/incubation/incubator.d/alpine.d.ts +32 -0
  46. package/dist/classes/incubation/incubator.d/alpine.js +78 -0
  47. package/dist/classes/incubation/incubator.d/archlinux.d.ts +32 -0
  48. package/dist/classes/incubation/incubator.d/archlinux.js +82 -0
  49. package/dist/classes/incubation/incubator.d/bionic.d.ts +32 -0
  50. package/dist/classes/incubation/incubator.d/bionic.js +83 -0
  51. package/dist/classes/incubation/incubator.d/buster.d.ts +32 -0
  52. package/dist/classes/incubation/incubator.d/buster.js +101 -0
  53. package/dist/classes/incubation/incubator.d/fedora.d.ts +32 -0
  54. package/dist/classes/incubation/incubator.d/fedora.js +81 -0
  55. package/dist/classes/incubation/incubator.d/focal.d.ts +32 -0
  56. package/dist/classes/incubation/incubator.d/focal.js +85 -0
  57. package/dist/classes/incubation/incubator.d/manjaro.d.ts +32 -0
  58. package/dist/classes/incubation/incubator.d/manjaro.js +82 -0
  59. package/dist/classes/incubation/incubator.d/noble.d.ts +32 -0
  60. package/dist/classes/incubation/incubator.d/noble.js +102 -0
  61. package/dist/classes/incubation/incubator.d/openmamba.d.ts +32 -0
  62. package/dist/classes/incubation/incubator.d/openmamba.js +81 -0
  63. package/dist/classes/incubation/incubator.d/opensuse.d.ts +32 -0
  64. package/dist/classes/incubation/incubator.d/opensuse.js +81 -0
  65. package/dist/classes/incubation/incubator.d/trixie.d.ts +32 -0
  66. package/dist/classes/incubation/incubator.d/trixie.js +98 -0
  67. package/dist/classes/incubation/incubator.d.ts +48 -0
  68. package/dist/classes/incubation/incubator.js +378 -0
  69. package/dist/classes/incubation/installer.d.ts +13 -0
  70. package/dist/classes/incubation/installer.js +52 -0
  71. package/dist/classes/keyboards.d.ts +50 -0
  72. package/dist/classes/keyboards.js +287 -0
  73. package/dist/classes/locales.d.ts +21 -0
  74. package/dist/classes/locales.js +77 -0
  75. package/dist/classes/network.d.ts +37 -0
  76. package/dist/classes/network.js +98 -0
  77. package/dist/classes/ovary.d/bind-live-fs.d.ts +18 -0
  78. package/dist/classes/ovary.d/bind-live-fs.js +185 -0
  79. package/dist/classes/ovary.d/bind-vfs.d.ts +17 -0
  80. package/dist/classes/ovary.d/bind-vfs.js +37 -0
  81. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +13 -0
  82. package/dist/classes/ovary.d/create-xdg-autostart.js +194 -0
  83. package/dist/classes/ovary.d/edit-live-fs.d.ts +20 -0
  84. package/dist/classes/ovary.d/edit-live-fs.js +239 -0
  85. package/dist/classes/ovary.d/fertilization.d.ts +12 -0
  86. package/dist/classes/ovary.d/fertilization.js +53 -0
  87. package/dist/classes/ovary.d/finished.d.ts +13 -0
  88. package/dist/classes/ovary.d/finished.js +40 -0
  89. package/dist/classes/ovary.d/initrd.d.ts +21 -0
  90. package/dist/classes/ovary.d/initrd.js +95 -0
  91. package/dist/classes/ovary.d/kernel-copy.d.ts +12 -0
  92. package/dist/classes/ovary.d/kernel-copy.js +22 -0
  93. package/dist/classes/ovary.d/live-create-structure.d.ts +12 -0
  94. package/dist/classes/ovary.d/live-create-structure.js +70 -0
  95. package/dist/classes/ovary.d/luks-get-password.d.ts +12 -0
  96. package/dist/classes/ovary.d/luks-get-password.js +57 -0
  97. package/dist/classes/ovary.d/luks-home-support.d.ts +12 -0
  98. package/dist/classes/ovary.d/luks-home-support.js +75 -0
  99. package/dist/classes/ovary.d/luks-home.d.ts +15 -0
  100. package/dist/classes/ovary.d/luks-home.js +140 -0
  101. package/dist/classes/ovary.d/luks-root-bootstrap-builder.d.ts +11 -0
  102. package/dist/classes/ovary.d/luks-root-bootstrap-builder.js +45 -0
  103. package/dist/classes/ovary.d/luks-root.d.ts +15 -0
  104. package/dist/classes/ovary.d/luks-root.js +126 -0
  105. package/dist/classes/ovary.d/make-dot-disk.d.ts +12 -0
  106. package/dist/classes/ovary.d/make-dot-disk.js +62 -0
  107. package/dist/classes/ovary.d/make-efi.d.ts +14 -0
  108. package/dist/classes/ovary.d/make-efi.js +274 -0
  109. package/dist/classes/ovary.d/make-iso.d.ts +13 -0
  110. package/dist/classes/ovary.d/make-iso.js +45 -0
  111. package/dist/classes/ovary.d/make-squashfs.d.ts +18 -0
  112. package/dist/classes/ovary.d/make-squashfs.js +114 -0
  113. package/dist/classes/ovary.d/merged.d.ts +27 -0
  114. package/dist/classes/ovary.d/merged.js +78 -0
  115. package/dist/classes/ovary.d/produce.d.ts +23 -0
  116. package/dist/classes/ovary.d/produce.js +347 -0
  117. package/dist/classes/ovary.d/rexec.d.ts +13 -0
  118. package/dist/classes/ovary.d/rexec.js +34 -0
  119. package/dist/classes/ovary.d/syslinux.d.ts +12 -0
  120. package/dist/classes/ovary.d/syslinux.js +82 -0
  121. package/dist/classes/ovary.d/user-create-live.d.ts +14 -0
  122. package/dist/classes/ovary.d/user-create-live.js +97 -0
  123. package/dist/classes/ovary.d/users-remove.d.ts +9 -0
  124. package/dist/classes/ovary.d/users-remove.js +38 -0
  125. package/dist/classes/ovary.d/xorriso-command.d.ts +14 -0
  126. package/dist/classes/ovary.d/xorriso-command.js +121 -0
  127. package/dist/classes/ovary.d.ts +106 -0
  128. package/dist/classes/ovary.js +116 -0
  129. package/dist/classes/pacman.d/alpine.d.ts +56 -0
  130. package/dist/classes/pacman.d/alpine.js +167 -0
  131. package/dist/classes/pacman.d/archlinux.d.ts +62 -0
  132. package/dist/classes/pacman.d/archlinux.js +128 -0
  133. package/dist/classes/pacman.d/debian.d.ts +65 -0
  134. package/dist/classes/pacman.d/debian.js +143 -0
  135. package/dist/classes/pacman.d/fedora.d.ts +53 -0
  136. package/dist/classes/pacman.d/fedora.js +107 -0
  137. package/dist/classes/pacman.d/openmamba.d.ts +52 -0
  138. package/dist/classes/pacman.d/openmamba.js +106 -0
  139. package/dist/classes/pacman.d/opensuse.d.ts +53 -0
  140. package/dist/classes/pacman.d/opensuse.js +109 -0
  141. package/dist/classes/pacman.d.ts +139 -0
  142. package/dist/classes/pacman.js +683 -0
  143. package/dist/classes/pve-live.d.ts +17 -0
  144. package/dist/classes/pve-live.js +52 -0
  145. package/dist/classes/pxe.d.ts +76 -0
  146. package/dist/classes/pxe.js +353 -0
  147. package/dist/classes/settings.d.ts +52 -0
  148. package/dist/classes/settings.js +185 -0
  149. package/dist/classes/sources_list.d.ts +28 -0
  150. package/dist/classes/sources_list.js +89 -0
  151. package/dist/classes/systemctl.d.ts +47 -0
  152. package/dist/classes/systemctl.js +86 -0
  153. package/dist/classes/tailor.d.ts +50 -0
  154. package/dist/classes/tailor.js +563 -0
  155. package/dist/classes/tools.d.ts +26 -0
  156. package/dist/classes/tools.js +50 -0
  157. package/dist/classes/users.d.ts +28 -0
  158. package/dist/classes/users.js +143 -0
  159. package/dist/classes/utils.d/kernel.d.ts +39 -0
  160. package/dist/classes/utils.d/kernel.js +206 -0
  161. package/dist/classes/utils.d.ts +328 -0
  162. package/dist/classes/utils.js +958 -0
  163. package/dist/classes/xdg.d.ts +45 -0
  164. package/dist/classes/xdg.js +337 -0
  165. package/dist/classes/yolk.d.ts +33 -0
  166. package/dist/classes/yolk.js +114 -0
  167. package/dist/commands/adapt.d.ts +17 -0
  168. package/dist/commands/adapt.js +33 -0
  169. package/dist/commands/analyze.d.ts +26 -0
  170. package/dist/commands/analyze.js +95 -0
  171. package/dist/commands/calamares.d.ts +29 -0
  172. package/dist/commands/calamares.js +112 -0
  173. package/dist/commands/config.d.ts +35 -0
  174. package/dist/commands/config.js +120 -0
  175. package/dist/commands/cuckoo.d.ts +17 -0
  176. package/dist/commands/cuckoo.js +61 -0
  177. package/dist/commands/dad.d.ts +21 -0
  178. package/dist/commands/dad.js +47 -0
  179. package/dist/commands/export/iso.d.ts +19 -0
  180. package/dist/commands/export/iso.js +55 -0
  181. package/dist/commands/export/pkg.d.ts +29 -0
  182. package/dist/commands/export/pkg.js +173 -0
  183. package/dist/commands/export/tarballs.d.ts +27 -0
  184. package/dist/commands/export/tarballs.js +79 -0
  185. package/dist/commands/install.d.ts +39 -0
  186. package/dist/commands/install.js +113 -0
  187. package/dist/commands/kill.d.ts +24 -0
  188. package/dist/commands/kill.js +50 -0
  189. package/dist/commands/love.d.ts +24 -0
  190. package/dist/commands/love.js +111 -0
  191. package/dist/commands/mom.d.ts +16 -0
  192. package/dist/commands/mom.js +30 -0
  193. package/dist/commands/pods.d.ts +22 -0
  194. package/dist/commands/pods.js +92 -0
  195. package/dist/commands/produce.d.ts +36 -0
  196. package/dist/commands/produce.js +218 -0
  197. package/dist/commands/status.d.ts +23 -0
  198. package/dist/commands/status.js +31 -0
  199. package/dist/commands/tools/clean.d.ts +18 -0
  200. package/dist/commands/tools/clean.js +37 -0
  201. package/dist/commands/tools/repo.d.ts +31 -0
  202. package/dist/commands/tools/repo.js +246 -0
  203. package/dist/commands/tools/skel.d.ts +18 -0
  204. package/dist/commands/tools/skel.js +44 -0
  205. package/dist/commands/tools/stat.d.ts +31 -0
  206. package/dist/commands/tools/stat.js +70 -0
  207. package/dist/commands/tools/yolk.d.ts +24 -0
  208. package/dist/commands/tools/yolk.js +45 -0
  209. package/dist/commands/update.d.ts +46 -0
  210. package/dist/commands/update.js +238 -0
  211. package/dist/commands/wardrobe/get.d.ts +23 -0
  212. package/dist/commands/wardrobe/get.js +52 -0
  213. package/dist/commands/wardrobe/list.d.ts +24 -0
  214. package/dist/commands/wardrobe/list.js +125 -0
  215. package/dist/commands/wardrobe/show.d.ts +25 -0
  216. package/dist/commands/wardrobe/show.js +97 -0
  217. package/dist/commands/wardrobe/wear.d.ts +26 -0
  218. package/dist/commands/wardrobe/wear.js +84 -0
  219. package/dist/dhcpd-proxy/classes/packet.d.ts +36 -0
  220. package/dist/dhcpd-proxy/classes/packet.js +124 -0
  221. package/dist/dhcpd-proxy/index.d.ts +4 -0
  222. package/dist/dhcpd-proxy/index.js +4 -0
  223. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +45 -0
  224. package/dist/dhcpd-proxy/interfaces/i-pxe.js +1 -0
  225. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +11 -0
  226. package/dist/dhcpd-proxy/lib/packet/converters.js +395 -0
  227. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +10 -0
  228. package/dist/dhcpd-proxy/lib/packet/message-types.js +12 -0
  229. package/dist/dhcpd-proxy/lib/packet/options.d.ts +8 -0
  230. package/dist/dhcpd-proxy/lib/packet/options.js +264 -0
  231. package/dist/dhcpd-proxy/lib/sprintf.d.ts +6 -0
  232. package/dist/dhcpd-proxy/lib/sprintf.js +130 -0
  233. package/dist/dhcpd-proxy/lib/utils.d.ts +126 -0
  234. package/dist/dhcpd-proxy/lib/utils.js +255 -0
  235. package/dist/dhcpd-proxy/simple-proxy.d.ts +11 -0
  236. package/dist/dhcpd-proxy/simple-proxy.js +118 -0
  237. package/dist/index.d.ts +8 -0
  238. package/dist/index.js +8 -0
  239. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +23 -0
  240. package/dist/interfaces/calamares/i-calamares-bootloader.js +7 -0
  241. package/dist/interfaces/calamares/i-calamares-branding.d.ts +46 -0
  242. package/dist/interfaces/calamares/i-calamares-branding.js +1 -0
  243. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +34 -0
  244. package/dist/interfaces/calamares/i-calamares-displaymanager.js +1 -0
  245. package/dist/interfaces/calamares/i-calamares-finished.d.ts +14 -0
  246. package/dist/interfaces/calamares/i-calamares-finished.js +1 -0
  247. package/dist/interfaces/calamares/i-calamares-packages.d.ts +26 -0
  248. package/dist/interfaces/calamares/i-calamares-packages.js +1 -0
  249. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +39 -0
  250. package/dist/interfaces/calamares/i-calamares-partitions.js +1 -0
  251. package/dist/interfaces/calamares/i-calamares-settings.d.ts +36 -0
  252. package/dist/interfaces/calamares/i-calamares-settings.js +1 -0
  253. package/dist/interfaces/i-addons.d.ts +12 -0
  254. package/dist/interfaces/i-addons.js +8 -0
  255. package/dist/interfaces/i-analyze.d.ts +17 -0
  256. package/dist/interfaces/i-analyze.js +17 -0
  257. package/dist/interfaces/i-app.d.ts +14 -0
  258. package/dist/interfaces/i-app.js +8 -0
  259. package/dist/interfaces/i-config-tools.d.ts +15 -0
  260. package/dist/interfaces/i-config-tools.js +8 -0
  261. package/dist/interfaces/i-devices.d.ts +20 -0
  262. package/dist/interfaces/i-devices.js +8 -0
  263. package/dist/interfaces/i-distro.d.ts +23 -0
  264. package/dist/interfaces/i-distro.js +8 -0
  265. package/dist/interfaces/i-drive-list.d.ts +33 -0
  266. package/dist/interfaces/i-drive-list.js +8 -0
  267. package/dist/interfaces/i-eggs-config.d.ts +32 -0
  268. package/dist/interfaces/i-eggs-config.js +8 -0
  269. package/dist/interfaces/i-excludes.d.ts +14 -0
  270. package/dist/interfaces/i-excludes.js +8 -0
  271. package/dist/interfaces/i-exec.d.ts +11 -0
  272. package/dist/interfaces/i-exec.js +8 -0
  273. package/dist/interfaces/i-initrd.d.ts +13 -0
  274. package/dist/interfaces/i-initrd.js +8 -0
  275. package/dist/interfaces/i-install.d.ts +16 -0
  276. package/dist/interfaces/i-install.js +8 -0
  277. package/dist/interfaces/i-installer.d.ts +17 -0
  278. package/dist/interfaces/i-installer.js +8 -0
  279. package/dist/interfaces/i-luks-passphrase.d.ts +11 -0
  280. package/dist/interfaces/i-luks-passphrase.js +8 -0
  281. package/dist/interfaces/i-materia.d.ts +36 -0
  282. package/dist/interfaces/i-materia.js +8 -0
  283. package/dist/interfaces/i-net.d.ts +16 -0
  284. package/dist/interfaces/i-net.js +8 -0
  285. package/dist/interfaces/i-os-release.d.ts +5 -0
  286. package/dist/interfaces/i-os-release.js +1 -0
  287. package/dist/interfaces/i-packages.d.ts +16 -0
  288. package/dist/interfaces/i-packages.js +8 -0
  289. package/dist/interfaces/i-partitions.d.ts +16 -0
  290. package/dist/interfaces/i-partitions.js +8 -0
  291. package/dist/interfaces/i-pxe.d.ts +45 -0
  292. package/dist/interfaces/i-pxe.js +1 -0
  293. package/dist/interfaces/i-remix.d.ts +21 -0
  294. package/dist/interfaces/i-remix.js +8 -0
  295. package/dist/interfaces/i-settings.d.ts +33 -0
  296. package/dist/interfaces/i-settings.js +8 -0
  297. package/dist/interfaces/i-user.d.ts +14 -0
  298. package/dist/interfaces/i-user.js +8 -0
  299. package/dist/interfaces/i-workdir.d.ts +14 -0
  300. package/dist/interfaces/i-workdir.js +8 -0
  301. package/dist/interfaces/i-xkb-model.d.ts +24 -0
  302. package/dist/interfaces/i-xkb-model.js +8 -0
  303. package/dist/interfaces/index.d.ts +26 -0
  304. package/dist/interfaces/index.js +8 -0
  305. package/dist/krill/classes/cfs.d.ts +17 -0
  306. package/dist/krill/classes/cfs.js +39 -0
  307. package/dist/krill/classes/krill_enums.d.ts +37 -0
  308. package/dist/krill/classes/krill_enums.js +41 -0
  309. package/dist/krill/classes/prepare.d/confirm.d.ts +5 -0
  310. package/dist/krill/classes/prepare.d/confirm.js +30 -0
  311. package/dist/krill/classes/prepare.d/keyboard.d.ts +14 -0
  312. package/dist/krill/classes/prepare.d/keyboard.js +62 -0
  313. package/dist/krill/classes/prepare.d/location.d.ts +17 -0
  314. package/dist/krill/classes/prepare.d/location.js +59 -0
  315. package/dist/krill/classes/prepare.d/network.d.ts +14 -0
  316. package/dist/krill/classes/prepare.d/network.js +68 -0
  317. package/dist/krill/classes/prepare.d/partitions.d.ts +14 -0
  318. package/dist/krill/classes/prepare.d/partitions.js +86 -0
  319. package/dist/krill/classes/prepare.d/summary.d.ts +15 -0
  320. package/dist/krill/classes/prepare.d/summary.js +72 -0
  321. package/dist/krill/classes/prepare.d/users.d.ts +6 -0
  322. package/dist/krill/classes/prepare.d/users.js +63 -0
  323. package/dist/krill/classes/prepare.d/welcome.d.ts +6 -0
  324. package/dist/krill/classes/prepare.d/welcome.js +30 -0
  325. package/dist/krill/classes/prepare.d.ts +89 -0
  326. package/dist/krill/classes/prepare.js +319 -0
  327. package/dist/krill/classes/sequence.d/add_user.d.ts +20 -0
  328. package/dist/krill/classes/sequence.d/add_user.js +77 -0
  329. package/dist/krill/classes/sequence.d/bootloader.d.ts +14 -0
  330. package/dist/krill/classes/sequence.d/bootloader.js +117 -0
  331. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +14 -0
  332. package/dist/krill/classes/sequence.d/bootloader_config.js +192 -0
  333. package/dist/krill/classes/sequence.d/change_password.d.ts +15 -0
  334. package/dist/krill/classes/sequence.d/change_password.js +18 -0
  335. package/dist/krill/classes/sequence.d/del_live_user.d.ts +14 -0
  336. package/dist/krill/classes/sequence.d/del_live_user.js +39 -0
  337. package/dist/krill/classes/sequence.d/fstab.d.ts +14 -0
  338. package/dist/krill/classes/sequence.d/fstab.js +177 -0
  339. package/dist/krill/classes/sequence.d/grubcfg.d.ts +17 -0
  340. package/dist/krill/classes/sequence.d/grubcfg.js +35 -0
  341. package/dist/krill/classes/sequence.d/hostname.d.ts +13 -0
  342. package/dist/krill/classes/sequence.d/hostname.js +50 -0
  343. package/dist/krill/classes/sequence.d/initramfs.d.ts +13 -0
  344. package/dist/krill/classes/sequence.d/initramfs.js +54 -0
  345. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +14 -0
  346. package/dist/krill/classes/sequence.d/initramfs_cfg.js +35 -0
  347. package/dist/krill/classes/sequence.d/locale.d.ts +13 -0
  348. package/dist/krill/classes/sequence.d/locale.js +91 -0
  349. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +10 -0
  350. package/dist/krill/classes/sequence.d/locale_cfg.js +58 -0
  351. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +14 -0
  352. package/dist/krill/classes/sequence.d/m_keyboard.js +58 -0
  353. package/dist/krill/classes/sequence.d/machine_id.d.ts +15 -0
  354. package/dist/krill/classes/sequence.d/machine_id.js +33 -0
  355. package/dist/krill/classes/sequence.d/mkfs.d.ts +15 -0
  356. package/dist/krill/classes/sequence.d/mkfs.js +88 -0
  357. package/dist/krill/classes/sequence.d/mount_fs.d.ts +17 -0
  358. package/dist/krill/classes/sequence.d/mount_fs.js +68 -0
  359. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +17 -0
  360. package/dist/krill/classes/sequence.d/mount_vfs.js +59 -0
  361. package/dist/krill/classes/sequence.d/network_cfg.d.ts +19 -0
  362. package/dist/krill/classes/sequence.d/network_cfg.js +73 -0
  363. package/dist/krill/classes/sequence.d/packages.d.ts +14 -0
  364. package/dist/krill/classes/sequence.d/packages.js +111 -0
  365. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +17 -0
  366. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +73 -0
  367. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +16 -0
  368. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +51 -0
  369. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +17 -0
  370. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +77 -0
  371. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +10 -0
  372. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +33 -0
  373. package/dist/krill/classes/sequence.d/partition.d.ts +14 -0
  374. package/dist/krill/classes/sequence.d/partition.js +84 -0
  375. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +13 -0
  376. package/dist/krill/classes/sequence.d/remove_installer_link.js +35 -0
  377. package/dist/krill/classes/sequence.d/umount.d.ts +14 -0
  378. package/dist/krill/classes/sequence.d/umount.js +28 -0
  379. package/dist/krill/classes/sequence.d/unpackfs.d.ts +13 -0
  380. package/dist/krill/classes/sequence.d/unpackfs.js +20 -0
  381. package/dist/krill/classes/sequence.d.ts +134 -0
  382. package/dist/krill/classes/sequence.js +400 -0
  383. package/dist/krill/components/finished.d.ts +16 -0
  384. package/dist/krill/components/finished.js +56 -0
  385. package/dist/krill/components/information.d.ts +8 -0
  386. package/dist/krill/components/information.js +162 -0
  387. package/dist/krill/components/install.d.ts +15 -0
  388. package/dist/krill/components/install.js +60 -0
  389. package/dist/krill/components/keyboard.d.ts +16 -0
  390. package/dist/krill/components/keyboard.js +54 -0
  391. package/dist/krill/components/location.d.ts +16 -0
  392. package/dist/krill/components/location.js +59 -0
  393. package/dist/krill/components/network.d.ts +19 -0
  394. package/dist/krill/components/network.js +65 -0
  395. package/dist/krill/components/partitions.d.ts +18 -0
  396. package/dist/krill/components/partitions.js +89 -0
  397. package/dist/krill/components/steps.d.ts +13 -0
  398. package/dist/krill/components/steps.js +148 -0
  399. package/dist/krill/components/summary.d.ts +25 -0
  400. package/dist/krill/components/summary.js +77 -0
  401. package/dist/krill/components/title.d.ts +11 -0
  402. package/dist/krill/components/title.js +35 -0
  403. package/dist/krill/components/users.d.ts +24 -0
  404. package/dist/krill/components/users.js +80 -0
  405. package/dist/krill/components/welcome.d.ts +13 -0
  406. package/dist/krill/components/welcome.js +63 -0
  407. package/dist/krill/interfaces/i_krill.d.ts +44 -0
  408. package/dist/krill/interfaces/i_krill.js +8 -0
  409. package/dist/krill/interfaces/i_krill_config.d.ts +35 -0
  410. package/dist/krill/interfaces/i_krill_config.js +8 -0
  411. package/dist/krill/lib/get_address.d.ts +8 -0
  412. package/dist/krill/lib/get_address.js +23 -0
  413. package/dist/krill/lib/get_dns.d.ts +8 -0
  414. package/dist/krill/lib/get_dns.js +23 -0
  415. package/dist/krill/lib/get_domain.d.ts +8 -0
  416. package/dist/krill/lib/get_domain.js +23 -0
  417. package/dist/krill/lib/get_gateway.d.ts +8 -0
  418. package/dist/krill/lib/get_gateway.js +23 -0
  419. package/dist/krill/lib/get_hostname.d.ts +8 -0
  420. package/dist/krill/lib/get_hostname.js +23 -0
  421. package/dist/krill/lib/get_luks_passphrase.d.ts +8 -0
  422. package/dist/krill/lib/get_luks_passphrase.js +32 -0
  423. package/dist/krill/lib/get_netmask.d.ts +8 -0
  424. package/dist/krill/lib/get_netmask.js +23 -0
  425. package/dist/krill/lib/get_password.d.ts +8 -0
  426. package/dist/krill/lib/get_password.js +36 -0
  427. package/dist/krill/lib/get_userfullname.d.ts +8 -0
  428. package/dist/krill/lib/get_userfullname.js +23 -0
  429. package/dist/krill/lib/get_username.d.ts +8 -0
  430. package/dist/krill/lib/get_username.js +23 -0
  431. package/dist/krill/lib/select_address_type.d.ts +8 -0
  432. package/dist/krill/lib/select_address_type.js +24 -0
  433. package/dist/krill/lib/select_filesystem_type.d.ts +8 -0
  434. package/dist/krill/lib/select_filesystem_type.js +40 -0
  435. package/dist/krill/lib/select_installation_device.d.ts +8 -0
  436. package/dist/krill/lib/select_installation_device.js +40 -0
  437. package/dist/krill/lib/select_installation_mode.d.ts +9 -0
  438. package/dist/krill/lib/select_installation_mode.js +25 -0
  439. package/dist/krill/lib/select_interface.d.ts +8 -0
  440. package/dist/krill/lib/select_interface.js +24 -0
  441. package/dist/krill/lib/select_keyboard_layout.d.ts +11 -0
  442. package/dist/krill/lib/select_keyboard_layout.js +36 -0
  443. package/dist/krill/lib/select_keyboard_model.d.ts +11 -0
  444. package/dist/krill/lib/select_keyboard_model.js +34 -0
  445. package/dist/krill/lib/select_keyboard_option.d.ts +11 -0
  446. package/dist/krill/lib/select_keyboard_option.js +34 -0
  447. package/dist/krill/lib/select_keyboard_variant.d.ts +11 -0
  448. package/dist/krill/lib/select_keyboard_variant.js +35 -0
  449. package/dist/krill/lib/select_languages.d.ts +8 -0
  450. package/dist/krill/lib/select_languages.js +28 -0
  451. package/dist/krill/lib/select_regions.d.ts +8 -0
  452. package/dist/krill/lib/select_regions.js +24 -0
  453. package/dist/krill/lib/select_replaced_partition.d.ts +8 -0
  454. package/dist/krill/lib/select_replaced_partition.js +31 -0
  455. package/dist/krill/lib/select_user_swap_choice.d.ts +9 -0
  456. package/dist/krill/lib/select_user_swap_choice.js +35 -0
  457. package/dist/krill/lib/select_zones.d.ts +8 -0
  458. package/dist/krill/lib/select_zones.js +518 -0
  459. package/dist/lib/kill_me_softly.d.ts +11 -0
  460. package/dist/lib/kill_me_softly.js +61 -0
  461. package/dist/lib/utils.d.ts +19 -0
  462. package/dist/lib/utils.js +65 -0
  463. package/dracut/create-symlink +71 -0
  464. package/dracut/dracut-log.txt +3 -0
  465. package/dracut/dracut.conf.d/50-live.conf +24 -6
  466. package/dracut/dracut.conf.d/README.md +10 -0
  467. package/dracut/export +4 -0
  468. package/dracut/export-dracut-analysis +51 -0
  469. package/dracut/export-dracut-log +2 -0
  470. package/dracut/mkisofs +10 -0
  471. package/dracut/modules.d/00debug-shell/debug-hook.sh +13 -0
  472. package/dracut/modules.d/00debug-shell/module-setup.sh +20 -0
  473. package/dracut/modules.d/90block/README.md +7 -0
  474. package/dracut/modules.d/90block/block-cmdline.sh +3 -0
  475. package/dracut/modules.d/90block/module-setup.sh +15 -0
  476. package/dracut/modules.d/95iso-scan/README.md +3 -0
  477. package/dracut/modules.d/95iso-scan/iso-scan-fallback.sh +12 -0
  478. package/dracut/modules.d/95iso-scan/iso-scan.sh +92 -0
  479. package/dracut/modules.d/95iso-scan/module-setup.sh +18 -0
  480. package/dracut/modules.d/95luks-loop/README.md +9 -0
  481. package/dracut/modules.d/95luks-loop/luks-loop.sh +90 -0
  482. package/dracut/modules.d/95luks-loop/module-setup.sh +17 -0
  483. package/dracut/renew-initramfs +17 -0
  484. package/dracut/sbin2bin +10 -0
  485. package/dracut/update-dracut-conf-d +2 -0
  486. package/dracut/update-dracut-modules +62 -0
  487. package/manpages/doc/man/eggs.1.gz +0 -0
  488. package/manpages/doc/man/eggs.html +7 -661
  489. package/package.json +10 -9
  490. package/perrisbrewery/template/dependencies.yaml +6 -5
  491. package/scripts/_eggs +16 -31
  492. package/scripts/eggs.bash +4 -6
  493. package/scripts/luks-root-bootstrap-create.sh +235 -0
  494. package/scripts/luks-root-unlock.sh +172 -0
  495. package/scripts/mount-encrypted-home.sh +223 -0
  496. package/conf/distros/archlinux/calamares/modules/shellprocess@sync.yml +0 -5
  497. package/conf/distros/opensuse/calamares/modules/dracut.yml +0 -14
@@ -0,0 +1,281 @@
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
+ }
@@ -0,0 +1,32 @@
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
+ }
@@ -0,0 +1,78 @@
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 CFS from '../../../krill/classes/cfs.js';
9
+ import Fisherman from '../fisherman.js';
10
+ /**
11
+ *
12
+ */
13
+ export class Alpine {
14
+ distro;
15
+ installer = {};
16
+ isClone;
17
+ release = false;
18
+ remix;
19
+ theme;
20
+ user_opt; // theme comprende il path
21
+ verbose = false;
22
+ /**
23
+ * @param remix
24
+ * @param distro
25
+ * @param displaymanager
26
+ * @param verbose
27
+ */
28
+ constructor(installer, remix, distro, user_opt, release = false, theme = 'eggs', isClone = false, verbose = false) {
29
+ this.installer = installer;
30
+ this.remix = remix;
31
+ this.distro = distro;
32
+ this.user_opt = user_opt;
33
+ this.verbose = verbose;
34
+ this.release = release;
35
+ this.theme = theme;
36
+ this.isClone = isClone;
37
+ }
38
+ /**
39
+ * locale, partitions, users can come from themes
40
+ */
41
+ async create() {
42
+ const fisherman = new Fisherman(this.distro, this.installer, this.verbose);
43
+ await fisherman.createCalamaresSettings(this.theme, this.isClone);
44
+ await fisherman.buildModule('welcome');
45
+ await fisherman.buildModule('partition', this.theme);
46
+ await fisherman.buildModule('mount');
47
+ await fisherman.buildModuleUnpackfs();
48
+ await fisherman.buildCalamaresModule('machineid-openrc', true);
49
+ await fisherman.buildModule('fstab');
50
+ await fisherman.buildModule('locale', this.theme);
51
+ await fisherman.buildModule('keyboard');
52
+ await fisherman.buildModule('localecfg');
53
+ await fisherman.buildModule('users', this.theme);
54
+ await fisherman.buildModule('displaymanager');
55
+ await fisherman.buildModule('networkcfg');
56
+ await fisherman.buildModule('hwclock');
57
+ await fisherman.buildModule('services-openrc');
58
+ await fisherman.buildModule('grubcfg');
59
+ await fisherman.buildModule('bootloader');
60
+ await fisherman.buildModulePackages(this.distro, this.release);
61
+ await fisherman.buildModule('luksbootkeyfile');
62
+ await fisherman.buildModule('plymouthcfg');
63
+ await fisherman.buildModule('mkinitfs');
64
+ await fisherman.buildModuleRemoveuser(this.user_opt);
65
+ /**
66
+ * cfs: custom final steps
67
+ */
68
+ const cfs = new CFS();
69
+ const steps = await cfs.steps();
70
+ if (steps.length > 0) {
71
+ for (const step of steps) {
72
+ await fisherman.buildCalamaresModule(step, true, this.theme);
73
+ }
74
+ }
75
+ await fisherman.buildModule('umount');
76
+ await fisherman.buildModuleFinished();
77
+ }
78
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * ./src/classes/incubation/distros/arch.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import { IDistro, IInstaller, IRemix } from '../../../interfaces/index.js';
9
+ /**
10
+ *
11
+ */
12
+ export declare class Archlinux {
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
+ }
@@ -0,0 +1,82 @@
1
+ /**
2
+ * ./src/classes/incubation/distros/arch.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import CFS from '../../../krill/classes/cfs.js';
9
+ import Fisherman from '../fisherman.js';
10
+ /**
11
+ *
12
+ */
13
+ export class Archlinux {
14
+ distro;
15
+ installer = {};
16
+ isClone = false;
17
+ release = false;
18
+ remix;
19
+ theme;
20
+ user_opt;
21
+ verbose = false;
22
+ /**
23
+ * @param remix
24
+ * @param distro
25
+ * @param displaymanager
26
+ * @param verbose
27
+ */
28
+ constructor(installer, remix, distro, user_opt, release = false, theme = 'eggs', isClone = false, verbose = false) {
29
+ this.installer = installer;
30
+ this.remix = remix;
31
+ this.distro = distro;
32
+ this.user_opt = user_opt;
33
+ this.verbose = verbose;
34
+ this.release = release;
35
+ this.theme = theme;
36
+ this.isClone = isClone;
37
+ }
38
+ /**
39
+ * locale, partitions, users can come from themes
40
+ */
41
+ async create() {
42
+ const fisherman = new Fisherman(this.distro, this.installer, this.verbose);
43
+ await fisherman.createCalamaresSettings(this.theme, this.isClone);
44
+ await fisherman.buildModule('welcome');
45
+ await fisherman.buildModule('partition', this.theme);
46
+ await fisherman.buildModule('mount');
47
+ await fisherman.buildModuleUnpackfs();
48
+ await fisherman.buildModule('machineid');
49
+ await fisherman.buildModule('networkcfg');
50
+ await fisherman.buildModule('locale', this.theme);
51
+ await fisherman.buildModule('keyboard');
52
+ await fisherman.buildModule('localecfg', this.theme);
53
+ await fisherman.buildModule('luksbootkeyfile');
54
+ await fisherman.buildModule('luksopenswaphookcfg');
55
+ await fisherman.buildModule('fstab');
56
+ await fisherman.shellprocess('prepare-chroot');
57
+ await fisherman.buildModule('initcpiocfg');
58
+ await fisherman.buildModuleInitcpio();
59
+ await fisherman.buildModule('users', this.theme);
60
+ await fisherman.buildModule('displaymanager');
61
+ await fisherman.buildModule('hwclock');
62
+ await fisherman.shellprocess('disable-grub-btrfs');
63
+ await fisherman.buildModule('grubcfg');
64
+ await fisherman.buildModule('bootloader');
65
+ await fisherman.buildModulePackages(this.distro, this.release);
66
+ await fisherman.buildModule('luksbootkeyfile');
67
+ await fisherman.buildModule('plymouthcfg');
68
+ await fisherman.buildModuleRemoveuser(this.user_opt);
69
+ /**
70
+ * cfs: custom final steps
71
+ */
72
+ const cfs = new CFS();
73
+ const steps = await cfs.steps();
74
+ if (steps.length > 0) {
75
+ for (const step of steps) {
76
+ await fisherman.buildCalamaresModule(step, true, this.theme);
77
+ }
78
+ }
79
+ await fisherman.buildModule('umount');
80
+ await fisherman.buildModuleFinished();
81
+ }
82
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * ./src/classes/incubation/distros/bionic.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 Bionic {
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 release
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
+ }
@@ -0,0 +1,83 @@
1
+ /**
2
+ * ./src/classes/incubation/distros/bionic.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 CFS from '../../../krill/classes/cfs.js';
9
+ import Fisherman from '../fisherman.js';
10
+ /**
11
+ *
12
+ */
13
+ export class Bionic {
14
+ distro;
15
+ installer = {};
16
+ isClone;
17
+ release = false;
18
+ remix;
19
+ theme; // theme comprende il path
20
+ user_opt;
21
+ verbose = false;
22
+ /**
23
+ * @param remix
24
+ * @param distro
25
+ * @param release
26
+ * @param verbose
27
+ */
28
+ constructor(installer, remix, distro, user_opt, release = false, theme = 'eggs', isClone = false, verbose = false) {
29
+ this.installer = installer;
30
+ this.remix = remix;
31
+ this.distro = distro;
32
+ this.user_opt = user_opt;
33
+ this.verbose = verbose;
34
+ this.release = release;
35
+ this.theme = theme;
36
+ this.isClone = isClone;
37
+ }
38
+ /**
39
+ * locale, partitions, users can come from themes
40
+ */
41
+ async create() {
42
+ const fisherman = new Fisherman(this.distro, this.installer, this.verbose);
43
+ await fisherman.createCalamaresSettings(this.theme, this.isClone);
44
+ await fisherman.buildModule('welcome');
45
+ await fisherman.buildModule('partition', this.remix.branding);
46
+ await fisherman.buildModule('mount');
47
+ await fisherman.buildModuleUnpackfs(); //
48
+ await fisherman.buildModule('machineid');
49
+ await fisherman.buildModule('fstab');
50
+ await fisherman.buildModule('locale', this.remix.branding);
51
+ await fisherman.buildModule('keyboard');
52
+ await fisherman.buildModule('localecfg');
53
+ await fisherman.buildModule('luksbootkeyfile');
54
+ await fisherman.buildModule('users', this.remix.branding);
55
+ await fisherman.buildModule('displaymanager');
56
+ await fisherman.buildModule('networkcfg');
57
+ await fisherman.buildModule('hwclock');
58
+ await fisherman.buildCalamaresModule('sources-yolk', true);
59
+ await fisherman.buildCalamaresModule('bug');
60
+ await fisherman.buildModule('initramfscfg');
61
+ await fisherman.buildModule('initramfs');
62
+ await fisherman.buildCalamaresPy('grubcfg');
63
+ await fisherman.buildModule('bootloader');
64
+ await fisherman.buildCalamaresModule('after-bootloader');
65
+ await fisherman.buildCalamaresModule('add386arch', false);
66
+ await fisherman.buildModulePackages(this.distro, this.release); //
67
+ await fisherman.buildModuleRemoveuser(this.user_opt); //
68
+ await fisherman.buildCalamaresModule('sources-yolk-undo', false);
69
+ await fisherman.buildCalamaresModule('cleanup', true);
70
+ /**
71
+ * cfs: custom final steps
72
+ */
73
+ const cfs = new CFS();
74
+ const steps = await cfs.steps();
75
+ if (steps.length > 0) {
76
+ for (const step of steps) {
77
+ await fisherman.buildCalamaresModule(step, true, this.theme);
78
+ }
79
+ }
80
+ await fisherman.buildModule('umount');
81
+ await fisherman.buildModule('finished');
82
+ }
83
+ }
@@ -0,0 +1,32 @@
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 Buster {
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
+ }