penguins-eggs 10.0.60 → 10.1.0

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 (470) hide show
  1. package/.oclif.manifest.json +93 -1
  2. package/README.md +79 -40
  3. package/addons/eggs/theme/calamares/modules/{_users.yml → users.yml} +3 -3
  4. package/addons/eggs/theme/livecd/grub.main.full.cfg +1 -1
  5. package/addons/eggs/theme/livecd/grub.main.simple.cfg +1 -1
  6. package/conf/derivatives.yaml +1 -3
  7. package/conf/derivatives_fedora.yaml +6 -0
  8. package/conf/distros/alpine/calamares/modules/users.yml +3 -3
  9. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/grubcfg.yml +1 -1
  10. package/conf/distros/bionic/calamares/modules/users.yml +3 -3
  11. package/conf/distros/buster/calamares/modules/users.yml +3 -3
  12. package/conf/distros/fedora/calamares/modules/users.yml +3 -3
  13. package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +3 -3
  14. package/conf/distros/opensuse/calamares/modules/users.yml +3 -3
  15. package/conf/distros/rolling/calamares/modules/users.yml +3 -3
  16. package/conf/eggs.yaml +1 -1
  17. package/conf/love.yaml +4 -4
  18. package/package.json +22 -19
  19. package/perrisbrewery/scripts/postinst +98 -0
  20. package/perrisbrewery/scripts/postrm +82 -0
  21. package/perrisbrewery/scripts/preinst +40 -0
  22. package/perrisbrewery/scripts/prerm +47 -0
  23. package/perrisbrewery/template/control.template +17 -0
  24. package/perrisbrewery/template/dependencies-bionic.yaml +33 -0
  25. package/perrisbrewery/template/dependencies.yaml +37 -0
  26. package/perrisbrewery/template/man.template.md +110 -0
  27. package/pods/README.md +14 -0
  28. package/pods/almalinux.sh +10 -0
  29. package/pods/archlinux.sh +10 -0
  30. package/pods/ci/README.md +5 -0
  31. package/pods/ci/kernel-overlay-install.sh +114 -0
  32. package/pods/ci/minimal/almalinux-container2host.sh +165 -0
  33. package/pods/ci/minimal/archlinux-container2host.sh +125 -0
  34. package/pods/ci/minimal/debian-container2host.sh +173 -0
  35. package/pods/ci/minimal/fedora-container2host.sh +170 -0
  36. package/pods/ci/minimal/manjaro-container2host.sh +123 -0
  37. package/pods/ci/minimal/opensuse-container2host.sh +143 -0
  38. package/pods/ci/penguins-eggs-execute.sh +22 -0
  39. package/pods/ci/penguins-eggs-install.sh +115 -0
  40. package/pods/ci/run +34 -0
  41. package/pods/ci/run-on-almalinux.sh +50 -0
  42. package/pods/ci/run-on-archlinux.sh +64 -0
  43. package/pods/ci/run-on-debian.sh +51 -0
  44. package/pods/ci/run-on-devuan.sh +48 -0
  45. package/pods/ci/run-on-fedora.sh +51 -0
  46. package/pods/ci/run-on-manjaro.sh +61 -0
  47. package/pods/ci/run-on-opensuse.sh +58 -0
  48. package/pods/ci/run-on-rockylinux.sh +51 -0
  49. package/pods/ci/run-on-ubuntu.sh +52 -0
  50. package/pods/debian.sh +23 -0
  51. package/pods/devuan.sh +26 -0
  52. package/pods/fedora.sh +12 -0
  53. package/pods/lmde.sh +22 -0
  54. package/pods/manjaro.sh +10 -0
  55. package/pods/opensuse.sh +12 -0
  56. package/pods/podman.command.sh +85 -0
  57. package/pods/rocky.sh +12 -0
  58. package/pods/run-build-packages-debs.sh +45 -0
  59. package/pods/run-create-debs.sh +23 -0
  60. package/pods/ubuntu.sh +24 -0
  61. package/scripts/_eggs +21 -6
  62. package/scripts/eggs.bash +6 -4
  63. package/dist/classes/bleach.d.ts +0 -32
  64. package/dist/classes/bleach.js +0 -135
  65. package/dist/classes/cli-autologin.d.ts +0 -52
  66. package/dist/classes/cli-autologin.js +0 -247
  67. package/dist/classes/compressors.d.ts +0 -54
  68. package/dist/classes/compressors.js +0 -109
  69. package/dist/classes/daddy.d.ts +0 -26
  70. package/dist/classes/daddy.js +0 -167
  71. package/dist/classes/distro.d.ts +0 -32
  72. package/dist/classes/distro.js +0 -341
  73. package/dist/classes/diversions.d.ts +0 -52
  74. package/dist/classes/diversions.js +0 -126
  75. package/dist/classes/incubation/branding.d.ts +0 -17
  76. package/dist/classes/incubation/branding.js +0 -85
  77. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +0 -11
  78. package/dist/classes/incubation/fisherman-helper/displaymanager.js +0 -40
  79. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  80. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  81. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  82. package/dist/classes/incubation/fisherman-helper/settings.js +0 -83
  83. package/dist/classes/incubation/fisherman.d.ts +0 -70
  84. package/dist/classes/incubation/fisherman.js +0 -263
  85. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  86. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  87. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  88. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  89. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  90. package/dist/classes/incubation/incubator.d/buster.js +0 -85
  91. package/dist/classes/incubation/incubator.d/jessie.d.ts +0 -31
  92. package/dist/classes/incubation/incubator.d/jessie.js +0 -44
  93. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  94. package/dist/classes/incubation/incubator.d/noble.js +0 -85
  95. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  96. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  97. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  98. package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
  99. package/dist/classes/incubation/incubator.d/rolling.d.ts +0 -32
  100. package/dist/classes/incubation/incubator.d/rolling.js +0 -80
  101. package/dist/classes/incubation/incubator.d.ts +0 -44
  102. package/dist/classes/incubation/incubator.js +0 -382
  103. package/dist/classes/incubation/installer.d.ts +0 -13
  104. package/dist/classes/incubation/installer.js +0 -52
  105. package/dist/classes/keyboards.d.ts +0 -50
  106. package/dist/classes/keyboards.js +0 -287
  107. package/dist/classes/locales.d.ts +0 -21
  108. package/dist/classes/locales.js +0 -77
  109. package/dist/classes/network.d.ts +0 -37
  110. package/dist/classes/network.js +0 -98
  111. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  112. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  113. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  114. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  115. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  116. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  117. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -19
  118. package/dist/classes/ovary.d/edit-live-fs.js +0 -249
  119. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  120. package/dist/classes/ovary.d/fertilization.js +0 -46
  121. package/dist/classes/ovary.d/finished.d.ts +0 -13
  122. package/dist/classes/ovary.d/finished.js +0 -41
  123. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  124. package/dist/classes/ovary.d/initrd.js +0 -72
  125. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  126. package/dist/classes/ovary.d/kernel-copy.js +0 -36
  127. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  128. package/dist/classes/ovary.d/live-create-structure.js +0 -90
  129. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  130. package/dist/classes/ovary.d/make-dot-disk.js +0 -40
  131. package/dist/classes/ovary.d/make-efi.d.ts +0 -12
  132. package/dist/classes/ovary.d/make-efi.js +0 -268
  133. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  134. package/dist/classes/ovary.d/make-iso.js +0 -45
  135. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  136. package/dist/classes/ovary.d/make-squashfs.js +0 -117
  137. package/dist/classes/ovary.d/merged.d.ts +0 -31
  138. package/dist/classes/ovary.d/merged.js +0 -87
  139. package/dist/classes/ovary.d/produce.d.ts +0 -23
  140. package/dist/classes/ovary.d/produce.js +0 -287
  141. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  142. package/dist/classes/ovary.d/rexec.js +0 -34
  143. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  144. package/dist/classes/ovary.d/syslinux.js +0 -79
  145. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  146. package/dist/classes/ovary.d/user-create-live.js +0 -86
  147. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  148. package/dist/classes/ovary.d/users-remove.js +0 -38
  149. package/dist/classes/ovary.d/xorriso-commend.d.ts +0 -14
  150. package/dist/classes/ovary.d/xorriso-commend.js +0 -119
  151. package/dist/classes/ovary.d.ts +0 -77
  152. package/dist/classes/ovary.js +0 -81
  153. package/dist/classes/pacman.d/aldos.d.ts +0 -52
  154. package/dist/classes/pacman.d/aldos.js +0 -100
  155. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  156. package/dist/classes/pacman.d/alpine.js +0 -162
  157. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  158. package/dist/classes/pacman.d/archlinux.js +0 -140
  159. package/dist/classes/pacman.d/debian.d.ts +0 -65
  160. package/dist/classes/pacman.d/debian.js +0 -143
  161. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  162. package/dist/classes/pacman.d/fedora.js +0 -101
  163. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  164. package/dist/classes/pacman.d/openmamba.js +0 -100
  165. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  166. package/dist/classes/pacman.d/opensuse.js +0 -102
  167. package/dist/classes/pacman.d/voidlinux.d.ts +0 -52
  168. package/dist/classes/pacman.d/voidlinux.js +0 -90
  169. package/dist/classes/pacman.d.ts +0 -139
  170. package/dist/classes/pacman.js +0 -775
  171. package/dist/classes/pve-live.d.ts +0 -17
  172. package/dist/classes/pve-live.js +0 -52
  173. package/dist/classes/pxe.d.ts +0 -74
  174. package/dist/classes/pxe.js +0 -410
  175. package/dist/classes/settings.d.ts +0 -52
  176. package/dist/classes/settings.js +0 -185
  177. package/dist/classes/sources_list.d.ts +0 -28
  178. package/dist/classes/sources_list.js +0 -89
  179. package/dist/classes/systemctl.d.ts +0 -47
  180. package/dist/classes/systemctl.js +0 -86
  181. package/dist/classes/tailor.d.ts +0 -50
  182. package/dist/classes/tailor.js +0 -526
  183. package/dist/classes/tools.d.ts +0 -26
  184. package/dist/classes/tools.js +0 -50
  185. package/dist/classes/users.d.ts +0 -28
  186. package/dist/classes/users.js +0 -143
  187. package/dist/classes/utils.d.ts +0 -327
  188. package/dist/classes/utils.js +0 -1019
  189. package/dist/classes/xdg.d.ts +0 -45
  190. package/dist/classes/xdg.js +0 -337
  191. package/dist/classes/yolk.d.ts +0 -33
  192. package/dist/classes/yolk.js +0 -114
  193. package/dist/commands/adapt.d.ts +0 -17
  194. package/dist/commands/adapt.js +0 -33
  195. package/dist/commands/analyze.d.ts +0 -26
  196. package/dist/commands/analyze.js +0 -95
  197. package/dist/commands/calamares.d.ts +0 -29
  198. package/dist/commands/calamares.js +0 -112
  199. package/dist/commands/config.d.ts +0 -35
  200. package/dist/commands/config.js +0 -120
  201. package/dist/commands/cuckoo.d.ts +0 -16
  202. package/dist/commands/cuckoo.js +0 -62
  203. package/dist/commands/dad.d.ts +0 -20
  204. package/dist/commands/dad.js +0 -46
  205. package/dist/commands/export/iso.d.ts +0 -19
  206. package/dist/commands/export/iso.js +0 -55
  207. package/dist/commands/export/pkg.d.ts +0 -29
  208. package/dist/commands/export/pkg.js +0 -163
  209. package/dist/commands/export/tarballs.d.ts +0 -27
  210. package/dist/commands/export/tarballs.js +0 -84
  211. package/dist/commands/install.d.ts +0 -38
  212. package/dist/commands/install.js +0 -91
  213. package/dist/commands/kill.d.ts +0 -24
  214. package/dist/commands/kill.js +0 -50
  215. package/dist/commands/love.d.ts +0 -20
  216. package/dist/commands/love.js +0 -59
  217. package/dist/commands/mom.d.ts +0 -16
  218. package/dist/commands/mom.js +0 -30
  219. package/dist/commands/produce.d.ts +0 -34
  220. package/dist/commands/produce.js +0 -201
  221. package/dist/commands/status.d.ts +0 -23
  222. package/dist/commands/status.js +0 -31
  223. package/dist/commands/syncfrom.d.ts +0 -45
  224. package/dist/commands/syncfrom.js +0 -152
  225. package/dist/commands/syncto.d.ts +0 -40
  226. package/dist/commands/syncto.js +0 -175
  227. package/dist/commands/tools/clean.d.ts +0 -18
  228. package/dist/commands/tools/clean.js +0 -37
  229. package/dist/commands/tools/ppa.d.ts +0 -26
  230. package/dist/commands/tools/ppa.js +0 -138
  231. package/dist/commands/tools/skel.d.ts +0 -18
  232. package/dist/commands/tools/skel.js +0 -44
  233. package/dist/commands/tools/stat.d.ts +0 -31
  234. package/dist/commands/tools/stat.js +0 -70
  235. package/dist/commands/tools/yolk.d.ts +0 -24
  236. package/dist/commands/tools/yolk.js +0 -45
  237. package/dist/commands/update.d.ts +0 -51
  238. package/dist/commands/update.js +0 -219
  239. package/dist/commands/wardrobe/get.d.ts +0 -23
  240. package/dist/commands/wardrobe/get.js +0 -52
  241. package/dist/commands/wardrobe/list.d.ts +0 -24
  242. package/dist/commands/wardrobe/list.js +0 -125
  243. package/dist/commands/wardrobe/show.d.ts +0 -25
  244. package/dist/commands/wardrobe/show.js +0 -97
  245. package/dist/commands/wardrobe/wear.d.ts +0 -26
  246. package/dist/commands/wardrobe/wear.js +0 -84
  247. package/dist/index.d.ts +0 -54
  248. package/dist/index.js +0 -147
  249. package/dist/index_old.d.ts +0 -8
  250. package/dist/index_old.js +0 -8
  251. package/dist/interfaces/i-addons.d.ts +0 -12
  252. package/dist/interfaces/i-addons.js +0 -8
  253. package/dist/interfaces/i-analyze.d.ts +0 -17
  254. package/dist/interfaces/i-analyze.js +0 -17
  255. package/dist/interfaces/i-app.d.ts +0 -14
  256. package/dist/interfaces/i-app.js +0 -8
  257. package/dist/interfaces/i-branding.d.ts +0 -36
  258. package/dist/interfaces/i-branding.js +0 -8
  259. package/dist/interfaces/i-calamares-displaymanager.d.ts +0 -17
  260. package/dist/interfaces/i-calamares-displaymanager.js +0 -1
  261. package/dist/interfaces/i-calamares-finished.d.ts +0 -12
  262. package/dist/interfaces/i-calamares-finished.js +0 -1
  263. package/dist/interfaces/i-calamares-packages.d.ts +0 -28
  264. package/dist/interfaces/i-calamares-packages.js +0 -1
  265. package/dist/interfaces/i-calamares-partition.d.ts +0 -40
  266. package/dist/interfaces/i-calamares-partition.js +0 -1
  267. package/dist/interfaces/i-config-tools.d.ts +0 -15
  268. package/dist/interfaces/i-config-tools.js +0 -8
  269. package/dist/interfaces/i-devices.d.ts +0 -20
  270. package/dist/interfaces/i-devices.js +0 -8
  271. package/dist/interfaces/i-distro.d.ts +0 -23
  272. package/dist/interfaces/i-distro.js +0 -8
  273. package/dist/interfaces/i-drive-list.d.ts +0 -33
  274. package/dist/interfaces/i-drive-list.js +0 -8
  275. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  276. package/dist/interfaces/i-eggs-config.js +0 -8
  277. package/dist/interfaces/i-excludes.d.ts +0 -14
  278. package/dist/interfaces/i-excludes.js +0 -8
  279. package/dist/interfaces/i-exec.d.ts +0 -11
  280. package/dist/interfaces/i-exec.js +0 -8
  281. package/dist/interfaces/i-initrd.d.ts +0 -13
  282. package/dist/interfaces/i-initrd.js +0 -8
  283. package/dist/interfaces/i-install.d.ts +0 -16
  284. package/dist/interfaces/i-install.js +0 -8
  285. package/dist/interfaces/i-installer.d.ts +0 -17
  286. package/dist/interfaces/i-installer.js +0 -8
  287. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  288. package/dist/interfaces/i-luks-passphrase.js +0 -8
  289. package/dist/interfaces/i-materia.d.ts +0 -36
  290. package/dist/interfaces/i-materia.js +0 -8
  291. package/dist/interfaces/i-net.d.ts +0 -16
  292. package/dist/interfaces/i-net.js +0 -8
  293. package/dist/interfaces/i-os-release.d.ts +0 -5
  294. package/dist/interfaces/i-os-release.js +0 -1
  295. package/dist/interfaces/i-packages.d.ts +0 -16
  296. package/dist/interfaces/i-packages.js +0 -8
  297. package/dist/interfaces/i-partitions.d.ts +0 -16
  298. package/dist/interfaces/i-partitions.js +0 -8
  299. package/dist/interfaces/i-pxe.d.ts +0 -45
  300. package/dist/interfaces/i-pxe.js +0 -1
  301. package/dist/interfaces/i-remix.d.ts +0 -21
  302. package/dist/interfaces/i-remix.js +0 -8
  303. package/dist/interfaces/i-settings.d.ts +0 -33
  304. package/dist/interfaces/i-settings.js +0 -8
  305. package/dist/interfaces/i-user.d.ts +0 -14
  306. package/dist/interfaces/i-user.js +0 -8
  307. package/dist/interfaces/i-workdir.d.ts +0 -14
  308. package/dist/interfaces/i-workdir.js +0 -8
  309. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  310. package/dist/interfaces/i-xkb-model.js +0 -8
  311. package/dist/interfaces/index.d.ts +0 -26
  312. package/dist/interfaces/index.js +0 -8
  313. package/dist/krill/classes/cfs.d.ts +0 -17
  314. package/dist/krill/classes/cfs.js +0 -39
  315. package/dist/krill/classes/krill_enums.d.ts +0 -24
  316. package/dist/krill/classes/krill_enums.js +0 -26
  317. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  318. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  319. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  320. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  321. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  322. package/dist/krill/classes/prepare.d/location.js +0 -59
  323. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  324. package/dist/krill/classes/prepare.d/network.js +0 -68
  325. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  326. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  327. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  328. package/dist/krill/classes/prepare.d/summary.js +0 -69
  329. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  330. package/dist/krill/classes/prepare.d/users.js +0 -63
  331. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  332. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  333. package/dist/krill/classes/prepare.d.ts +0 -64
  334. package/dist/krill/classes/prepare.js +0 -314
  335. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  336. package/dist/krill/classes/sequence.d/add_user.js +0 -48
  337. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  338. package/dist/krill/classes/sequence.d/bootloader.js +0 -95
  339. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  340. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -165
  341. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  342. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  343. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  344. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  345. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  346. package/dist/krill/classes/sequence.d/fstab.js +0 -189
  347. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  348. package/dist/krill/classes/sequence.d/grubcfg.js +0 -33
  349. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  350. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  351. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  352. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  353. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  354. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  355. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  356. package/dist/krill/classes/sequence.d/locale.js +0 -91
  357. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  358. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  359. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  360. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  361. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  362. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  363. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  364. package/dist/krill/classes/sequence.d/mkfs.js +0 -72
  365. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  366. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  367. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  368. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -40
  369. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  370. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  371. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  372. package/dist/krill/classes/sequence.d/packages.js +0 -111
  373. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  374. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  375. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -17
  376. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -36
  377. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  378. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -78
  379. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  380. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -32
  381. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  382. package/dist/krill/classes/sequence.d/partition.js +0 -84
  383. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  384. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  385. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  386. package/dist/krill/classes/sequence.d/umount.js +0 -28
  387. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  388. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  389. package/dist/krill/classes/sequence.d.ts +0 -136
  390. package/dist/krill/classes/sequence.js +0 -663
  391. package/dist/krill/components/finished.d.ts +0 -16
  392. package/dist/krill/components/finished.js +0 -56
  393. package/dist/krill/components/information.d.ts +0 -8
  394. package/dist/krill/components/information.js +0 -156
  395. package/dist/krill/components/install.d.ts +0 -15
  396. package/dist/krill/components/install.js +0 -60
  397. package/dist/krill/components/keyboard.d.ts +0 -16
  398. package/dist/krill/components/keyboard.js +0 -54
  399. package/dist/krill/components/location.d.ts +0 -16
  400. package/dist/krill/components/location.js +0 -59
  401. package/dist/krill/components/network.d.ts +0 -19
  402. package/dist/krill/components/network.js +0 -65
  403. package/dist/krill/components/partitions.d.ts +0 -18
  404. package/dist/krill/components/partitions.js +0 -89
  405. package/dist/krill/components/steps.d.ts +0 -13
  406. package/dist/krill/components/steps.js +0 -148
  407. package/dist/krill/components/summary.d.ts +0 -25
  408. package/dist/krill/components/summary.js +0 -77
  409. package/dist/krill/components/title.d.ts +0 -11
  410. package/dist/krill/components/title.js +0 -35
  411. package/dist/krill/components/users.d.ts +0 -24
  412. package/dist/krill/components/users.js +0 -80
  413. package/dist/krill/components/welcome.d.ts +0 -13
  414. package/dist/krill/components/welcome.js +0 -63
  415. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  416. package/dist/krill/interfaces/i_krill.js +0 -8
  417. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  418. package/dist/krill/interfaces/i_krill_config.js +0 -8
  419. package/dist/krill/lib/get_address.d.ts +0 -8
  420. package/dist/krill/lib/get_address.js +0 -23
  421. package/dist/krill/lib/get_dns.d.ts +0 -8
  422. package/dist/krill/lib/get_dns.js +0 -23
  423. package/dist/krill/lib/get_domain.d.ts +0 -8
  424. package/dist/krill/lib/get_domain.js +0 -23
  425. package/dist/krill/lib/get_gateway.d.ts +0 -8
  426. package/dist/krill/lib/get_gateway.js +0 -23
  427. package/dist/krill/lib/get_hostname.d.ts +0 -8
  428. package/dist/krill/lib/get_hostname.js +0 -23
  429. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  430. package/dist/krill/lib/get_luks_passphrase.js +0 -40
  431. package/dist/krill/lib/get_netmask.d.ts +0 -8
  432. package/dist/krill/lib/get_netmask.js +0 -23
  433. package/dist/krill/lib/get_password.d.ts +0 -8
  434. package/dist/krill/lib/get_password.js +0 -36
  435. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  436. package/dist/krill/lib/get_userfullname.js +0 -23
  437. package/dist/krill/lib/get_username.d.ts +0 -8
  438. package/dist/krill/lib/get_username.js +0 -23
  439. package/dist/krill/lib/kill_me_softly.d.ts +0 -11
  440. package/dist/krill/lib/kill_me_softly.js +0 -61
  441. package/dist/krill/lib/select_address_type.d.ts +0 -8
  442. package/dist/krill/lib/select_address_type.js +0 -24
  443. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  444. package/dist/krill/lib/select_filesystem_type.js +0 -39
  445. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  446. package/dist/krill/lib/select_installation_device.js +0 -40
  447. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  448. package/dist/krill/lib/select_installation_mode.js +0 -25
  449. package/dist/krill/lib/select_interface.d.ts +0 -8
  450. package/dist/krill/lib/select_interface.js +0 -24
  451. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  452. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  453. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  454. package/dist/krill/lib/select_keyboard_model.js +0 -34
  455. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  456. package/dist/krill/lib/select_keyboard_option.js +0 -34
  457. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  458. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  459. package/dist/krill/lib/select_languages.d.ts +0 -8
  460. package/dist/krill/lib/select_languages.js +0 -28
  461. package/dist/krill/lib/select_regions.d.ts +0 -8
  462. package/dist/krill/lib/select_regions.js +0 -24
  463. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  464. package/dist/krill/lib/select_replaced_partition.js +0 -31
  465. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  466. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  467. package/dist/krill/lib/select_zones.d.ts +0 -8
  468. package/dist/krill/lib/select_zones.js +0 -518
  469. package/dist/lib/utils.d.ts +0 -42
  470. package/dist/lib/utils.js +0 -87
@@ -1,109 +0,0 @@
1
- /**
2
- * ./src/classes/compressors.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import shx from 'shelljs';
9
- export default class Compressors {
10
- dest = '/tmp/eggs-mksquash-dest';
11
- isEnabled = {
12
- error: false,
13
- gzip: true,
14
- lz4: false,
15
- lzma: false,
16
- lzo: false,
17
- xz: false,
18
- zstd: false
19
- };
20
- source = '/tmp/eggs-mksquash-test';
21
- /**
22
- * fast compression
23
- * @returns
24
- */
25
- fast() {
26
- let comp = 'gzip';
27
- if (this.isEnabled.zstd) {
28
- comp = 'zstd -b 1M -Xcompression-level 3';
29
- }
30
- else if (this.isEnabled.lz4) {
31
- comp = 'lz4';
32
- }
33
- return comp;
34
- }
35
- /**
36
- * max
37
- * @returns
38
- */
39
- max() {
40
- let filter = 'x86';
41
- if (process.arch === 'arm64') {
42
- filter = 'arm';
43
- }
44
- const options = '-b 1M -no-duplicates -no-recovery -always-use-fragments';
45
- if (process.arch === 'ia32') {
46
- // options = '-b 1M'
47
- }
48
- const comp = `xz -Xbcj ${filter} ${options}`;
49
- return comp;
50
- }
51
- pendrive(level = '15') {
52
- let comp = 'gzip';
53
- if (this.isEnabled.zstd) {
54
- comp = `zstd -b 1M -Xcompression-level ${level}`;
55
- }
56
- else if (this.isEnabled.lz4) {
57
- comp = 'lz4';
58
- }
59
- return comp;
60
- }
61
- /**
62
- * populate
63
- */
64
- async populate() {
65
- await this.prepareCheck();
66
- this.isEnabled.error = await this.check('error');
67
- this.isEnabled.lzma = await this.check('lzma');
68
- this.isEnabled.lzo = await this.check('lzo');
69
- this.isEnabled.lz4 = await this.check('lz4');
70
- this.isEnabled.xz = await this.check('xz');
71
- this.isEnabled.zstd = await this.check('zstd');
72
- await this.removeCheck();
73
- }
74
- /**
75
- * standard
76
- * @returns
77
- */
78
- standard() {
79
- const comp = 'xz -b 1M';
80
- return comp;
81
- }
82
- /**
83
- * check mksquashfs exists
84
- * @param compressor
85
- * @returns
86
- */
87
- async check(compressor) {
88
- let result = false;
89
- const { stderr } = shx.exec('mksquashfs ' + this.source + ' ' + this.dest + ' -comp ' + compressor + ' -ef ' + this.dest, { silent: true });
90
- if (stderr === '') {
91
- result = true;
92
- }
93
- return result;
94
- }
95
- /**
96
- * prepareCheck
97
- */
98
- async prepareCheck() {
99
- shx.exec('rm -rf ' + this.source, { silent: true });
100
- shx.exec('mkdir ' + this.source, { silent: true });
101
- }
102
- /**
103
- * removeCheck
104
- */
105
- async removeCheck() {
106
- shx.exec('rm -rf ' + this.source, { silent: true });
107
- shx.exec('rm -f ' + this.dest, { silent: true });
108
- }
109
- }
@@ -1,26 +0,0 @@
1
- /**
2
- * ./src/classes/daddy.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import Settings from '../classes/settings.js';
9
- import { IEggsConfig } from '../interfaces/i-eggs-config.js';
10
- export default class Daddy {
11
- settings: Settings;
12
- /**
13
- * editConfif
14
- * @param c
15
- * @returns
16
- */
17
- editConfig(c: IEggsConfig): Promise<string>;
18
- /**
19
- *
20
- * @param reset
21
- * @param isCustom
22
- * @param fileCustom
23
- * @param verbose
24
- */
25
- helpMe(reset?: boolean, isCustom?: boolean, fileCustom?: string, verbose?: boolean): Promise<void>;
26
- }
@@ -1,167 +0,0 @@
1
- /**
2
- * ./src/classes/daddy.ts
3
- * penguins-eggs v.10.0.0 / ecmascript 2020
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import chalk from 'chalk';
9
- import inquirer from 'inquirer';
10
- import yaml from 'js-yaml';
11
- import fs from 'node:fs';
12
- // _dirname
13
- import path from 'node:path';
14
- // We need to remove .js extension from import
15
- import Pacman from '../classes/pacman.js';
16
- import Settings from '../classes/settings.js';
17
- import Utils from '../classes/utils.js';
18
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
19
- export default class Daddy {
20
- settings = {};
21
- /**
22
- * editConfif
23
- * @param c
24
- * @returns
25
- */
26
- async editConfig(c) {
27
- // Utils.titles('dad')
28
- console.log(chalk.cyan('Edit and save Live system parameters'));
29
- console.log();
30
- let compressionOpt = 0;
31
- if (c.compression === 'xz') {
32
- compressionOpt = 1;
33
- }
34
- else if (c.compression === 'xz -Xbcj x86') {
35
- compressionOpt = 2;
36
- }
37
- if (c.snapshot_prefix === '') {
38
- c.snapshot_prefix = Utils.snapshotPrefix(this.settings.distro.distroId, this.settings.distro.codenameId);
39
- }
40
- return new Promise((resolve) => {
41
- const questions = [
42
- {
43
- default: c.snapshot_prefix,
44
- message: 'LiveCD iso prefix: ',
45
- name: 'snapshot_prefix',
46
- type: 'input'
47
- },
48
- {
49
- default: c.snapshot_basename,
50
- message: 'LiveCD iso basename: ',
51
- name: 'snapshot_basename',
52
- type: 'input'
53
- },
54
- {
55
- default: c.user_opt,
56
- message: 'LiveCD user:',
57
- name: 'user_opt',
58
- type: 'input'
59
- },
60
- {
61
- default: c.user_opt_passwd,
62
- message: 'LiveCD user password: ',
63
- name: 'user_opt_passwd',
64
- type: 'input'
65
- },
66
- {
67
- default: c.root_passwd,
68
- message: 'LiveCD root password: ',
69
- name: 'root_passwd',
70
- type: 'input'
71
- },
72
- {
73
- choices: ['fast', 'max'],
74
- default: compressionOpt,
75
- message: 'LiveCD compression: ',
76
- name: 'compression',
77
- type: 'list'
78
- }
79
- ];
80
- inquirer.prompt(questions).then((options) => {
81
- resolve(JSON.stringify(options));
82
- });
83
- });
84
- }
85
- /**
86
- *
87
- * @param reset
88
- * @param isCustom
89
- * @param fileCustom
90
- * @param verbose
91
- */
92
- async helpMe(reset = false, isCustom = false, fileCustom = '', verbose = false) {
93
- if (isCustom) {
94
- console.log('using custom file:', fileCustom);
95
- }
96
- // Controllo configurazione
97
- if (!Pacman.configurationCheck()) {
98
- console.log('- creating configuration dir...');
99
- await Pacman.configurationInstall(verbose);
100
- }
101
- // Templates
102
- if (!Pacman.distroTemplateCheck()) {
103
- console.log('- distro template install...');
104
- await Pacman.distroTemplateInstall(verbose);
105
- }
106
- //Calamares
107
- if (!Pacman.calamaresExists() &&
108
- Pacman.isInstalledGui() &&
109
- Pacman.isCalamaresAvailable()) {
110
- console.log('- this is a GUI system, calamares is available, but NOT installed');
111
- }
112
- // show and edit configuration
113
- this.settings = new Settings();
114
- let config = {};
115
- let jsonConf = '';
116
- if (await this.settings.load()) {
117
- config = this.settings.config;
118
- config.compression = 'fast';
119
- if (reset || isCustom) {
120
- if (config.snapshot_prefix === '') {
121
- config.snapshot_prefix = Utils.snapshotPrefix(this.settings.distro.distroId, this.settings.distro.codenameId);
122
- }
123
- jsonConf = JSON.stringify(config);
124
- }
125
- else {
126
- jsonConf = await this.editConfig(config);
127
- }
128
- // Custom configuration
129
- if (isCustom) {
130
- const conf = fs.readFileSync(fileCustom, 'utf8');
131
- const confCustom = yaml.load(conf);
132
- config.snapshot_basename = confCustom.snapshot_basename;
133
- config.snapshot_prefix = confCustom.snapshot_prefix;
134
- config.user_opt = confCustom.user_opt;
135
- config.user_opt_passwd = confCustom.user_opt_passwd;
136
- config.root_passwd = confCustom.root_passwd;
137
- config.theme = confCustom.theme;
138
- jsonConf = JSON.stringify(config);
139
- }
140
- // Save new configuration
141
- const confNew = JSON.parse(jsonConf);
142
- config.snapshot_basename = confNew.snapshot_basename;
143
- config.snapshot_prefix = confNew.snapshot_prefix;
144
- config.user_opt = confNew.user_opt;
145
- config.user_opt_passwd = confNew.user_opt_passwd;
146
- config.root_passwd = confNew.root_passwd;
147
- config.theme = confNew.theme;
148
- await this.settings.save(config);
149
- }
150
- console.log();
151
- console.log(chalk.cyan('Your configuration was saved on: /etc/penguins-eggs.d'));
152
- console.log();
153
- console.log(chalk.cyan(`You can create a clean ISO with: `) + chalk.white(`sudo eggs produce`));
154
- console.log(chalk.cyan(`or a full personal clone: `) + chalk.white(`sudo eggs produce --clone`));
155
- console.log();
156
- console.log(chalk.cyan(`If you don't have enough space to remaster, you can mount`));
157
- console.log(chalk.cyan(`some remote or local space. Follow the samples:`));
158
- console.log(chalk.cyan(`- first, create an hidden mountpoint under the nest:`));
159
- console.log(chalk.white(`sudo mkdir /home/eggs/.mnt -p`));
160
- console.log(chalk.cyan(`- then, mount remote space:`));
161
- console.log(chalk.white(`sudo sshfs -o allow_other root@192.168.1.2:/zfs/iso /home/eggs/.mnt`));
162
- console.log(chalk.cyan('- or, mount a local partition:'));
163
- console.log(chalk.white(`sudo mount /dev/sdx1 /home/eggs/.mnt`));
164
- console.log();
165
- console.log(chalk.cyan('More help? ') + chalk.white('eggs mom'));
166
- }
167
- }
@@ -1,32 +0,0 @@
1
- /**
2
- * penguins-eggs
3
- * class: distro.ts
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import { IDistro } from '../interfaces/index.js';
9
- /**
10
- * Classe
11
- */
12
- declare class Distro implements IDistro {
13
- bugReportUrl: string;
14
- codenameId: string;
15
- codenameLikeId: string;
16
- distroId: string;
17
- distroLike: string;
18
- familyId: string;
19
- homeUrl: string;
20
- isCalamaresAvailable: boolean;
21
- liveMediumPath: string;
22
- releaseId: string;
23
- squashfs: string;
24
- supportUrl: string;
25
- syslinuxPath: string;
26
- usrLibPath: string;
27
- /**
28
- * Costruttore
29
- */
30
- constructor();
31
- }
32
- export default Distro;
@@ -1,341 +0,0 @@
1
- /**
2
- * penguins-eggs
3
- * class: distro.ts
4
- * author: Piero Proietti
5
- * email: piero.proietti@gmail.com
6
- * license: MIT
7
- */
8
- import yaml from 'js-yaml';
9
- import fs from 'node:fs';
10
- import path from 'node:path';
11
- import shell from 'shelljs';
12
- import Utils from './utils.js';
13
- import Diversions from './diversions.js';
14
- // _dirname
15
- const __dirname = path.dirname(new URL(import.meta.url).pathname);
16
- /**
17
- * Classe
18
- */
19
- class Distro {
20
- bugReportUrl;
21
- codenameId;
22
- codenameLikeId;
23
- distroId;
24
- distroLike;
25
- familyId;
26
- homeUrl;
27
- isCalamaresAvailable;
28
- liveMediumPath;
29
- releaseId;
30
- squashfs;
31
- supportUrl;
32
- syslinuxPath;
33
- usrLibPath;
34
- /**
35
- * Costruttore
36
- */
37
- constructor() {
38
- let found = false;
39
- // Tutti i default sono per Debian
40
- this.bugReportUrl = 'https://github.com-pieroproietti/penguins-eggs/issue';
41
- this.codenameId = '';
42
- this.codenameLikeId = '';
43
- this.distroId = '';
44
- this.distroLike = '';
45
- this.familyId = 'debian';
46
- this.homeUrl = 'https://penguins-eggs.net';
47
- this.isCalamaresAvailable = true;
48
- this.liveMediumPath = '/run/live/medium/';
49
- this.releaseId = '';
50
- this.squashfs = 'live/filesystem.squashfs';
51
- this.supportUrl = 'https://penguins-eggs.net';
52
- this.syslinuxPath = path.resolve(__dirname, `../../syslinux`);
53
- this.usrLibPath = '/usr/lib';
54
- /**
55
- * getOsRelease
56
- */
57
- const osInfo = Utils.getOsRelease();
58
- this.distroId = osInfo.ID;
59
- this.codenameId = osInfo.VERSION_CODENAME;
60
- this.releaseId = osInfo.VERSION_ID;
61
- if (this.distroId === 'Debian' && this.codenameId === 'sid') {
62
- this.codenameId = 'trixie';
63
- }
64
- if (this.distroId.includes('Biglinux')) {
65
- this.distroId = "Biglinux";
66
- }
67
- if (this.distroId.includes('Bigcommunity')) {
68
- this.distroId = "Bigcommunity";
69
- }
70
- /**
71
- * Alpine, Fedora, openmamba, opensuse, VoidLinux solo distroId.
72
- *
73
- * Debian, Devuan, Ubuntu e derivate ricadono in
74
- * default e si analizza il codebaseId
75
- *
76
- */
77
- if (this.distroId === 'Aldos') {
78
- this.familyId = 'aldos';
79
- this.distroLike = 'Aldos';
80
- this.codenameId = 'rolling'; // viene rimosso dal nome
81
- this.codenameLikeId = this.familyId; // per krill
82
- this.liveMediumPath = '/run/initramfs/live/';
83
- /**
84
- * Alpine compatible
85
- */
86
- }
87
- else if (this.distroId === 'Alpine') {
88
- this.familyId = 'alpine';
89
- this.distroLike = this.distroId;
90
- this.codenameId = 'rolling'; // viene rimosso dal nome
91
- this.codenameLikeId = this.familyId; // per krill
92
- this.liveMediumPath = '/mnt/'; // Qua è deciso da noi
93
- /**
94
- * Fedora/RHEL compatible
95
- */
96
- }
97
- else if (this.distroId === 'Almalinux' ||
98
- this.distroId === 'Fedora' ||
99
- this.distroId === 'Nobara' ||
100
- this.distroId === 'Rocky') {
101
- this.familyId = 'fedora';
102
- this.distroLike = 'Fedora';
103
- this.codenameId = 'rolling'; // viene rimosso dal nome
104
- this.codenameLikeId = this.familyId; // per krill
105
- this.liveMediumPath = '/run/initramfs/live/';
106
- /**
107
- * openmamba
108
- */
109
- }
110
- else if (this.distroId === 'Openmamba') {
111
- this.familyId = 'openmamba';
112
- this.distroLike = 'openmamba';
113
- this.codenameId = 'rolling'; // viene rimosso dal nome
114
- this.codenameLikeId = this.familyId; // per krill
115
- this.liveMediumPath = '/run/initramfs/live/';
116
- /**
117
- * opensuse compatible
118
- */
119
- }
120
- else if (this.distroId.includes('Opensuse')) {
121
- this.familyId = 'opensuse';
122
- this.distroLike = this.distroId;
123
- this.codenameId = 'rolling'; // sistemare non
124
- this.codenameLikeId = this.familyId; // per krill
125
- this.liveMediumPath = '/run/initramfs/live/'; // check
126
- /**
127
- * voidlinux compatible
128
- */
129
- }
130
- else if (this.distroId === 'Voidlinux') {
131
- this.familyId = 'voidlinux';
132
- this.distroLike = this.distroId;
133
- this.codenameId = 'rolling';
134
- this.codenameLikeId = this.familyId; // per krill
135
- this.liveMediumPath = '/run/initramfs/live/'; // we must discover
136
- }
137
- else {
138
- /**
139
- * We must analize codenameId
140
- */
141
- /**
142
- * Arch
143
- */
144
- if (this.codenameId === 'rolling' || this.codenameId === 'n/a') {
145
- this.familyId = 'archlinux';
146
- this.distroLike = 'Arch';
147
- this.codenameId = 'rolling';
148
- this.codenameLikeId = 'rolling';
149
- this.liveMediumPath = '/run/archiso/bootmnt/';
150
- this.squashfs = `arch/x86_64/airootfs.sfs`;
151
- /**
152
- * Debian jessie
153
- */
154
- }
155
- else if (this.codenameId === 'jessie') {
156
- this.distroLike = 'Debian';
157
- this.codenameLikeId = 'jessie';
158
- this.liveMediumPath = '/lib/live/mount/medium/';
159
- this.isCalamaresAvailable = false;
160
- /**
161
- * Debian stretch
162
- */
163
- }
164
- else if (this.codenameId === 'stretch') {
165
- this.distroLike = 'Debian';
166
- this.codenameLikeId = 'stretch';
167
- this.liveMediumPath = '/lib/live/mount/medium/';
168
- this.isCalamaresAvailable = false;
169
- /**
170
- * Debian buster
171
- */
172
- }
173
- else if (this.codenameId === 'buster') {
174
- this.distroLike = 'Debian';
175
- this.codenameLikeId = 'buster';
176
- /**
177
- * Debian bullseye
178
- */
179
- }
180
- else if (this.codenameId === 'bullseye') {
181
- this.distroLike = 'Debian';
182
- this.codenameLikeId = 'bullseye';
183
- /**
184
- * Debian bookworm
185
- */
186
- }
187
- else if (this.codenameId === 'bookworm') {
188
- this.distroLike = 'Debian';
189
- this.codenameLikeId = 'bookworm';
190
- /**
191
- * Debian trixie
192
- */
193
- }
194
- else if (this.codenameId === 'trixie') {
195
- this.distroLike = 'Debian';
196
- this.codenameLikeId = 'trixie';
197
- /**
198
- * Devuan beowulf
199
- */
200
- }
201
- else if (this.codenameId === 'beowulf') {
202
- this.distroLike = 'Devuan';
203
- this.codenameLikeId = 'beowulf';
204
- /**
205
- * Devuan chimaera
206
- */
207
- }
208
- else if (this.codenameId === 'chimaera') {
209
- this.distroLike = 'Devuan';
210
- this.codenameLikeId = 'chimaera';
211
- /**
212
- * Devuan daedalus
213
- */
214
- }
215
- else if (this.codenameId === 'daedalus') {
216
- this.distroLike = 'Devuan';
217
- this.codenameLikeId = 'daedalus';
218
- /**
219
- * Devuan excalibur
220
- */
221
- }
222
- else if (this.codenameId === 'excalibur') {
223
- this.distroLike = 'Devuan';
224
- this.codenameLikeId = 'excalibur';
225
- /**
226
- * Ubuntu bionic
227
- */
228
- }
229
- else if (this.codenameId === 'bionic') {
230
- this.distroLike = 'Ubuntu';
231
- this.codenameLikeId = 'bionic';
232
- this.liveMediumPath = '/lib/live/mount/medium/';
233
- /**
234
- * Ubuntu focal
235
- */
236
- }
237
- else if (this.codenameId === 'focal') {
238
- this.distroLike = 'Ubuntu';
239
- this.codenameLikeId = 'focal';
240
- /**
241
- * Ubuntu jammy
242
- */
243
- }
244
- else if (this.codenameId === 'jammy') {
245
- this.distroLike = 'Ubuntu';
246
- this.codenameLikeId = 'jammy';
247
- /**
248
- * Ubuntu noble
249
- */
250
- }
251
- else if (this.codenameId === 'noble') {
252
- this.distroLike = 'Ubuntu';
253
- this.codenameLikeId = 'noble';
254
- /**
255
- * Ubuntu devel
256
- */
257
- }
258
- else if (this.codenameId === 'devel') {
259
- this.distroLike = 'Ubuntu';
260
- this.codenameLikeId = 'devel';
261
- }
262
- else {
263
- /**
264
- * patch per Roy VERIFICARE
265
- */
266
- let file = path.resolve(__dirname, '../../conf/derivatives.yaml');
267
- if (fs.existsSync('/etc/penguins-eggs.d/derivatives.yaml')) {
268
- file = '/etc/penguins-eggs.d/derivatives.yaml';
269
- }
270
- const content = fs.readFileSync(file, 'utf8');
271
- const distros = yaml.load(content);
272
- for (const distro of distros) {
273
- if (distro.ids !== undefined) {
274
- for (let n = 0; n < distro.ids.length; n++) {
275
- if (this.codenameId === distro.ids[n]) {
276
- found = true;
277
- this.distroLike = distro.distroLike;
278
- this.codenameLikeId = distro.id;
279
- this.familyId = distro.family;
280
- }
281
- }
282
- }
283
- }
284
- if (!found) {
285
- console.log(`This distro ${this.distroId}/${this.codenameId} is not yet recognized!`);
286
- console.log('');
287
- console.log('You can edit /usr/lib/penguins-eggs/conf/derivatives.yaml to add it -');
288
- console.log('after that - run: sudo eggs dad -d to re-configure eggs.');
289
- console.log('If you can create your new iso, you can contribute to the project');
290
- console.log('by suggesting your modification.');
291
- process.exit(0);
292
- }
293
- }
294
- }
295
- /**
296
- * Ultimi ritocchi
297
- */
298
- /**
299
- * Debian: /usr/lib/x86_64-linux-gnu
300
- * /usr/lib/aarch64-linux-gnu
301
- */
302
- if (this.familyId === "debian") {
303
- this.usrLibPath = '/usr/lib/' + Utils.usrLibPath();
304
- }
305
- else if (this.familyId === "opensuse") {
306
- this.usrLibPath = '/usr/lib64/';
307
- }
308
- /**
309
- * Manjarolinux e derivate
310
- */
311
- if (Diversions.isManjaroBased(this.distroId)) {
312
- this.liveMediumPath = '/run/miso/bootmnt/';
313
- this.squashfs = 'manjaro/x86_64/livefs.sfs';
314
- this.codenameId = shell.exec(`lsb_release -cs`, { silent: true }).stdout.toString().trim();
315
- }
316
- /**
317
- * lettura os_release per i pulsanti
318
- */
319
- const os_release = '/etc/os-release';
320
- if (fs.existsSync(os_release)) {
321
- let lines = [];
322
- if (fs.existsSync(os_release)) {
323
- const data = fs.readFileSync(os_release, 'utf8');
324
- lines = data.split('\n');
325
- }
326
- // per ogni riga
327
- for (const line of lines) {
328
- if (line.startsWith('HOME_URL=')) {
329
- this.homeUrl = line.slice('HOME_URL='.length).replaceAll('"', '');
330
- }
331
- else if (line.startsWith('SUPPORT_URL=')) {
332
- this.supportUrl = line.slice('SUPPORT_URL='.length).replaceAll('"', '');
333
- }
334
- else if (line.startsWith('BUG_REPORT_URL=')) {
335
- this.bugReportUrl = line.slice('BUG_REPORT_URL='.length).replaceAll('"', '');
336
- }
337
- }
338
- }
339
- }
340
- }
341
- export default Distro;