penguins-eggs 25.10.28 → 25.11.8

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 (551) hide show
  1. package/.oclif.manifest.json +4 -4
  2. package/README.md +770 -3
  3. package/addons/eggs/adapt/applications/eggs-adapt.desktop +0 -0
  4. package/addons/eggs/pve/applications/eggs-pve.desktop +0 -0
  5. package/addons/eggs/rsupport/applications/eggs-rsupport.desktop +0 -0
  6. package/addons/eggs/theme/applications/install-system.desktop +8 -6
  7. package/assets/calamares/install-system.sh +0 -0
  8. package/assets/calamares/io.calamares.calamares.policy +25 -0
  9. package/assets/penguins-eggs.desktop +0 -0
  10. package/assets/penguins-krill.desktop +0 -0
  11. package/assets/penguins-links-add.desktop +0 -0
  12. package/assets/penguins-live-installer.desktop +0 -0
  13. package/bin/dev.js +0 -0
  14. package/conf/distros/alpine/calamares/calamares-modules/machineid-openrc/machineid-openrc.sh +0 -0
  15. package/conf/distros/alpine/calamares/modules/packages.mustache +1 -0
  16. package/conf/distros/alpine/calamares/modules/removeuser.mustache +2 -14
  17. package/conf/distros/alpine/calamares/modules/unpackfs.mustache +2 -2
  18. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  19. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  20. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  21. package/conf/distros/buster/calamares/modules/shellprocess@boot_deploy.yml +1 -16
  22. package/conf/distros/fedora/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  23. package/conf/distros/noble/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  24. package/conf/distros/noble/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  25. package/conf/distros/noble/calamares/libexec/calamares-aptsources.sh +0 -0
  26. package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +0 -0
  27. package/conf/distros/noble/calamares/libexec/calamares-logs-helper.sh +1 -1
  28. package/conf/distros/noble/calamares/libexec/calamares-nomodeset.sh +0 -0
  29. package/conf/distros/noble/calamares/modules/shellprocess@boot_deploy.yml +1 -11
  30. package/conf/distros/noble/calamares/modules/shellprocess@logs.yml +1 -1
  31. package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  32. package/conf/distros/opensuse/calamares/settings.yml +0 -0
  33. package/conf/distros/opensuse/calamares/zstd2lzo.sh +0 -0
  34. package/conf/distros/trixie/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  35. package/conf/distros/trixie/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  36. package/conf/distros/trixie/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  37. package/conf/distros/trixie/calamares/modules/shellprocess@boot_deploy.yml +2 -10
  38. package/conf/init/unattended.sh +0 -0
  39. package/dist/classes/bleach.d.ts +37 -0
  40. package/dist/classes/bleach.js +148 -0
  41. package/dist/classes/cli-autologin.d.ts +14 -0
  42. package/dist/classes/cli-autologin.js +227 -0
  43. package/dist/classes/compressors.d.ts +54 -0
  44. package/dist/classes/compressors.js +109 -0
  45. package/dist/classes/daddy.d.ts +44 -0
  46. package/dist/classes/daddy.js +208 -0
  47. package/dist/classes/distro-hossein.d.ts +52 -0
  48. package/dist/classes/distro-hossein.js +239 -0
  49. package/dist/classes/distro.d.ts +32 -0
  50. package/dist/classes/distro.js +363 -0
  51. package/dist/classes/diversions.d.ts +19 -0
  52. package/dist/classes/diversions.js +100 -0
  53. package/dist/classes/incubation/branding.d.ts +17 -0
  54. package/dist/classes/incubation/branding.js +85 -0
  55. package/dist/classes/incubation/customize/customize-partitions.d.ts +12 -0
  56. package/dist/classes/incubation/customize/customize-partitions.js +37 -0
  57. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +1 -0
  58. package/dist/classes/incubation/fisherman-helper/initcpio.js +69 -0
  59. package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
  60. package/dist/classes/incubation/fisherman-helper/packages.js +72 -0
  61. package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
  62. package/dist/classes/incubation/fisherman-helper/settings.js +116 -0
  63. package/dist/classes/incubation/fisherman.d.ts +76 -0
  64. package/dist/classes/incubation/fisherman.js +301 -0
  65. package/dist/classes/incubation/incubator.d/alpine.d.ts +32 -0
  66. package/dist/classes/incubation/incubator.d/alpine.js +78 -0
  67. package/dist/classes/incubation/incubator.d/archlinux.d.ts +32 -0
  68. package/dist/classes/incubation/incubator.d/archlinux.js +82 -0
  69. package/dist/classes/incubation/incubator.d/bionic.d.ts +32 -0
  70. package/dist/classes/incubation/incubator.d/bionic.js +83 -0
  71. package/dist/classes/incubation/incubator.d/buster.d.ts +32 -0
  72. package/dist/classes/incubation/incubator.d/buster.js +101 -0
  73. package/dist/classes/incubation/incubator.d/fedora.d.ts +32 -0
  74. package/dist/classes/incubation/incubator.d/fedora.js +81 -0
  75. package/dist/classes/incubation/incubator.d/manjaro.d.ts +32 -0
  76. package/dist/classes/incubation/incubator.d/manjaro.js +82 -0
  77. package/dist/classes/incubation/incubator.d/noble.d.ts +32 -0
  78. package/dist/classes/incubation/incubator.d/noble.js +106 -0
  79. package/dist/classes/incubation/incubator.d/openmamba.d.ts +32 -0
  80. package/dist/classes/incubation/incubator.d/openmamba.js +81 -0
  81. package/dist/classes/incubation/incubator.d/opensuse.d.ts +32 -0
  82. package/dist/classes/incubation/incubator.d/opensuse.js +81 -0
  83. package/dist/classes/incubation/incubator.d/trixie.d.ts +32 -0
  84. package/dist/classes/incubation/incubator.d/trixie.js +98 -0
  85. package/dist/classes/incubation/incubator.d.ts +49 -0
  86. package/dist/classes/incubation/incubator.js +382 -0
  87. package/dist/classes/incubation/installer.d.ts +13 -0
  88. package/dist/classes/incubation/installer.js +52 -0
  89. package/dist/classes/keyboards.d.ts +31 -0
  90. package/dist/classes/keyboards.js +136 -0
  91. package/dist/classes/locales.d.ts +21 -0
  92. package/dist/classes/locales.js +77 -0
  93. package/dist/classes/network.d.ts +37 -0
  94. package/dist/classes/network.js +98 -0
  95. package/dist/classes/ovary.d/bind-live-fs.d.ts +18 -0
  96. package/dist/classes/ovary.d/bind-live-fs.js +185 -0
  97. package/dist/classes/ovary.d/bind-vfs.d.ts +17 -0
  98. package/dist/classes/ovary.d/bind-vfs.js +37 -0
  99. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +13 -0
  100. package/dist/classes/ovary.d/create-xdg-autostart.js +193 -0
  101. package/dist/classes/ovary.d/edit-live-fs.d.ts +20 -0
  102. package/dist/classes/ovary.d/edit-live-fs.js +239 -0
  103. package/dist/classes/ovary.d/fertilization.d.ts +12 -0
  104. package/dist/classes/ovary.d/fertilization.js +53 -0
  105. package/dist/classes/ovary.d/finished.d.ts +13 -0
  106. package/dist/classes/ovary.d/finished.js +40 -0
  107. package/dist/classes/ovary.d/initrd.d.ts +21 -0
  108. package/dist/classes/ovary.d/initrd.js +91 -0
  109. package/dist/classes/ovary.d/kernel-copy.d.ts +12 -0
  110. package/dist/classes/ovary.d/kernel-copy.js +22 -0
  111. package/dist/classes/ovary.d/live-create-structure.d.ts +12 -0
  112. package/dist/classes/ovary.d/live-create-structure.js +70 -0
  113. package/dist/classes/ovary.d/luks-get-password.d.ts +12 -0
  114. package/dist/classes/ovary.d/luks-get-password.js +58 -0
  115. package/dist/classes/ovary.d/luks-helpers.d.ts +19 -0
  116. package/dist/classes/ovary.d/luks-helpers.js +73 -0
  117. package/dist/classes/ovary.d/luks-home-support.d.ts +12 -0
  118. package/dist/classes/ovary.d/luks-home-support.js +70 -0
  119. package/dist/classes/ovary.d/luks-home.d.ts +15 -0
  120. package/dist/classes/ovary.d/luks-home.js +132 -0
  121. package/dist/classes/ovary.d/luks-interactive-crypto-config.d.ts +47 -0
  122. package/dist/classes/ovary.d/luks-interactive-crypto-config.js +139 -0
  123. package/dist/classes/ovary.d/luks-root-initrd.d.ts +17 -0
  124. package/dist/classes/ovary.d/luks-root-initrd.js +213 -0
  125. package/dist/classes/ovary.d/luks-root.d.ts +15 -0
  126. package/dist/classes/ovary.d/luks-root.js +123 -0
  127. package/dist/classes/ovary.d/make-dot-disk.d.ts +12 -0
  128. package/dist/classes/ovary.d/make-dot-disk.js +71 -0
  129. package/dist/classes/ovary.d/make-efi.d.ts +14 -0
  130. package/dist/classes/ovary.d/make-efi.js +296 -0
  131. package/dist/classes/ovary.d/make-iso.d.ts +13 -0
  132. package/dist/classes/ovary.d/make-iso.js +45 -0
  133. package/dist/classes/ovary.d/make-squashfs.d.ts +18 -0
  134. package/dist/classes/ovary.d/make-squashfs.js +111 -0
  135. package/dist/classes/ovary.d/merged.d.ts +27 -0
  136. package/dist/classes/ovary.d/merged.js +78 -0
  137. package/dist/classes/ovary.d/produce.d.ts +23 -0
  138. package/dist/classes/ovary.d/produce.js +349 -0
  139. package/dist/classes/ovary.d/rexec.d.ts +13 -0
  140. package/dist/classes/ovary.d/rexec.js +34 -0
  141. package/dist/classes/ovary.d/syslinux.d.ts +12 -0
  142. package/dist/classes/ovary.d/syslinux.js +99 -0
  143. package/dist/classes/ovary.d/user-create-live.d.ts +14 -0
  144. package/dist/classes/ovary.d/user-create-live.js +97 -0
  145. package/dist/classes/ovary.d/users-remove.d.ts +9 -0
  146. package/dist/classes/ovary.d/users-remove.js +38 -0
  147. package/dist/classes/ovary.d/xorriso-command.d.ts +14 -0
  148. package/dist/classes/ovary.d/xorriso-command.js +125 -0
  149. package/dist/classes/ovary.d.ts +111 -0
  150. package/dist/classes/ovary.js +122 -0
  151. package/dist/classes/pacman.d/alpine.d.ts +56 -0
  152. package/dist/classes/pacman.d/alpine.js +167 -0
  153. package/dist/classes/pacman.d/archlinux.d.ts +62 -0
  154. package/dist/classes/pacman.d/archlinux.js +128 -0
  155. package/dist/classes/pacman.d/debian.d.ts +65 -0
  156. package/dist/classes/pacman.d/debian.js +143 -0
  157. package/dist/classes/pacman.d/fedora.d.ts +53 -0
  158. package/dist/classes/pacman.d/fedora.js +107 -0
  159. package/dist/classes/pacman.d/openmamba.d.ts +52 -0
  160. package/dist/classes/pacman.d/openmamba.js +106 -0
  161. package/dist/classes/pacman.d/opensuse.d.ts +53 -0
  162. package/dist/classes/pacman.d/opensuse.js +109 -0
  163. package/dist/classes/pacman.d.ts +139 -0
  164. package/dist/classes/pacman.js +681 -0
  165. package/dist/classes/pve-live.d.ts +17 -0
  166. package/dist/classes/pve-live.js +52 -0
  167. package/dist/classes/pxe.d.ts +76 -0
  168. package/dist/classes/pxe.js +353 -0
  169. package/dist/classes/settings.d.ts +52 -0
  170. package/dist/classes/settings.js +185 -0
  171. package/dist/classes/sources_list.d.ts +28 -0
  172. package/dist/classes/sources_list.js +89 -0
  173. package/dist/classes/systemctl.d.ts +47 -0
  174. package/dist/classes/systemctl.js +86 -0
  175. package/dist/classes/tailor.d.ts +50 -0
  176. package/dist/classes/tailor.js +563 -0
  177. package/dist/classes/tools.d.ts +26 -0
  178. package/dist/classes/tools.js +50 -0
  179. package/dist/classes/users.d.ts +28 -0
  180. package/dist/classes/users.js +143 -0
  181. package/dist/classes/utils.d/kernel.d.ts +39 -0
  182. package/dist/classes/utils.d/kernel.js +206 -0
  183. package/dist/classes/utils.d.ts +330 -0
  184. package/dist/classes/utils.js +968 -0
  185. package/dist/classes/xdg.d.ts +45 -0
  186. package/dist/classes/xdg.js +337 -0
  187. package/dist/classes/yolk.d.ts +33 -0
  188. package/dist/classes/yolk.js +114 -0
  189. package/dist/commands/adapt.d.ts +17 -0
  190. package/dist/commands/adapt.js +33 -0
  191. package/dist/commands/analyze.d.ts +26 -0
  192. package/dist/commands/analyze.js +95 -0
  193. package/dist/commands/calamares.d.ts +29 -0
  194. package/dist/commands/calamares.js +112 -0
  195. package/dist/commands/config.d.ts +35 -0
  196. package/dist/commands/config.js +120 -0
  197. package/dist/commands/cuckoo.d.ts +17 -0
  198. package/dist/commands/cuckoo.js +61 -0
  199. package/dist/commands/dad.d.ts +21 -0
  200. package/dist/commands/dad.js +47 -0
  201. package/dist/commands/export/iso.d.ts +19 -0
  202. package/dist/commands/export/iso.js +55 -0
  203. package/dist/commands/export/pkg.d.ts +29 -0
  204. package/dist/commands/export/pkg.js +173 -0
  205. package/dist/commands/export/tarballs.d.ts +27 -0
  206. package/dist/commands/export/tarballs.js +79 -0
  207. package/dist/commands/install.d.ts +39 -0
  208. package/dist/commands/install.js +113 -0
  209. package/dist/commands/kill.d.ts +24 -0
  210. package/dist/commands/kill.js +50 -0
  211. package/dist/commands/love.d.ts +25 -0
  212. package/dist/commands/love.js +118 -0
  213. package/dist/commands/mom.d.ts +16 -0
  214. package/dist/commands/mom.js +30 -0
  215. package/dist/commands/pods.d.ts +22 -0
  216. package/dist/commands/pods.js +92 -0
  217. package/dist/commands/produce.d.ts +37 -0
  218. package/dist/commands/produce.js +232 -0
  219. package/dist/commands/status.d.ts +23 -0
  220. package/dist/commands/status.js +31 -0
  221. package/dist/commands/tools/clean.d.ts +18 -0
  222. package/dist/commands/tools/clean.js +37 -0
  223. package/dist/commands/tools/repo.d.ts +31 -0
  224. package/dist/commands/tools/repo.js +413 -0
  225. package/dist/commands/tools/skel.d.ts +18 -0
  226. package/dist/commands/tools/skel.js +44 -0
  227. package/dist/commands/tools/stat.d.ts +31 -0
  228. package/dist/commands/tools/stat.js +70 -0
  229. package/dist/commands/tools/yolk.d.ts +24 -0
  230. package/dist/commands/tools/yolk.js +45 -0
  231. package/dist/commands/update.d.ts +46 -0
  232. package/dist/commands/update.js +238 -0
  233. package/dist/commands/wardrobe/get.d.ts +23 -0
  234. package/dist/commands/wardrobe/get.js +52 -0
  235. package/dist/commands/wardrobe/list.d.ts +24 -0
  236. package/dist/commands/wardrobe/list.js +125 -0
  237. package/dist/commands/wardrobe/show.d.ts +25 -0
  238. package/dist/commands/wardrobe/show.js +97 -0
  239. package/dist/commands/wardrobe/wear.d.ts +26 -0
  240. package/dist/commands/wardrobe/wear.js +84 -0
  241. package/dist/dhcpd-proxy/classes/packet.d.ts +36 -0
  242. package/dist/dhcpd-proxy/classes/packet.js +124 -0
  243. package/dist/dhcpd-proxy/index.d.ts +4 -0
  244. package/dist/dhcpd-proxy/index.js +4 -0
  245. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +45 -0
  246. package/dist/dhcpd-proxy/interfaces/i-pxe.js +1 -0
  247. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +11 -0
  248. package/dist/dhcpd-proxy/lib/packet/converters.js +395 -0
  249. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +10 -0
  250. package/dist/dhcpd-proxy/lib/packet/message-types.js +12 -0
  251. package/dist/dhcpd-proxy/lib/packet/options.d.ts +8 -0
  252. package/dist/dhcpd-proxy/lib/packet/options.js +264 -0
  253. package/dist/dhcpd-proxy/lib/sprintf.d.ts +6 -0
  254. package/dist/dhcpd-proxy/lib/sprintf.js +130 -0
  255. package/dist/dhcpd-proxy/lib/utils.d.ts +126 -0
  256. package/dist/dhcpd-proxy/lib/utils.js +255 -0
  257. package/dist/dhcpd-proxy/simple-proxy.d.ts +11 -0
  258. package/dist/dhcpd-proxy/simple-proxy.js +118 -0
  259. package/dist/index.d.ts +8 -0
  260. package/dist/index.js +8 -0
  261. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +23 -0
  262. package/dist/interfaces/calamares/i-calamares-bootloader.js +7 -0
  263. package/dist/interfaces/calamares/i-calamares-branding.d.ts +46 -0
  264. package/dist/interfaces/calamares/i-calamares-branding.js +1 -0
  265. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +34 -0
  266. package/dist/interfaces/calamares/i-calamares-displaymanager.js +1 -0
  267. package/dist/interfaces/calamares/i-calamares-finished.d.ts +14 -0
  268. package/dist/interfaces/calamares/i-calamares-finished.js +1 -0
  269. package/dist/interfaces/calamares/i-calamares-packages.d.ts +26 -0
  270. package/dist/interfaces/calamares/i-calamares-packages.js +1 -0
  271. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +39 -0
  272. package/dist/interfaces/calamares/i-calamares-partitions.js +1 -0
  273. package/dist/interfaces/calamares/i-calamares-settings.d.ts +36 -0
  274. package/dist/interfaces/calamares/i-calamares-settings.js +1 -0
  275. package/dist/interfaces/i-addons.d.ts +12 -0
  276. package/dist/interfaces/i-addons.js +8 -0
  277. package/dist/interfaces/i-analyze.d.ts +17 -0
  278. package/dist/interfaces/i-analyze.js +17 -0
  279. package/dist/interfaces/i-app.d.ts +14 -0
  280. package/dist/interfaces/i-app.js +8 -0
  281. package/dist/interfaces/i-config-tools.d.ts +15 -0
  282. package/dist/interfaces/i-config-tools.js +8 -0
  283. package/dist/interfaces/i-devices.d.ts +20 -0
  284. package/dist/interfaces/i-devices.js +8 -0
  285. package/dist/interfaces/i-distro.d.ts +23 -0
  286. package/dist/interfaces/i-distro.js +8 -0
  287. package/dist/interfaces/i-drive-list.d.ts +33 -0
  288. package/dist/interfaces/i-drive-list.js +8 -0
  289. package/dist/interfaces/i-eggs-config.d.ts +32 -0
  290. package/dist/interfaces/i-eggs-config.js +8 -0
  291. package/dist/interfaces/i-excludes.d.ts +14 -0
  292. package/dist/interfaces/i-excludes.js +8 -0
  293. package/dist/interfaces/i-exec.d.ts +11 -0
  294. package/dist/interfaces/i-exec.js +8 -0
  295. package/dist/interfaces/i-initrd.d.ts +13 -0
  296. package/dist/interfaces/i-initrd.js +8 -0
  297. package/dist/interfaces/i-install.d.ts +16 -0
  298. package/dist/interfaces/i-install.js +8 -0
  299. package/dist/interfaces/i-installer.d.ts +17 -0
  300. package/dist/interfaces/i-installer.js +8 -0
  301. package/dist/interfaces/i-luks-passphrase.d.ts +11 -0
  302. package/dist/interfaces/i-luks-passphrase.js +8 -0
  303. package/dist/interfaces/i-materia.d.ts +36 -0
  304. package/dist/interfaces/i-materia.js +8 -0
  305. package/dist/interfaces/i-net.d.ts +16 -0
  306. package/dist/interfaces/i-net.js +8 -0
  307. package/dist/interfaces/i-os-release.d.ts +5 -0
  308. package/dist/interfaces/i-os-release.js +1 -0
  309. package/dist/interfaces/i-packages.d.ts +16 -0
  310. package/dist/interfaces/i-packages.js +8 -0
  311. package/dist/interfaces/i-partitions.d.ts +16 -0
  312. package/dist/interfaces/i-partitions.js +8 -0
  313. package/dist/interfaces/i-pxe.d.ts +45 -0
  314. package/dist/interfaces/i-pxe.js +1 -0
  315. package/dist/interfaces/i-remix.d.ts +21 -0
  316. package/dist/interfaces/i-remix.js +8 -0
  317. package/dist/interfaces/i-settings.d.ts +33 -0
  318. package/dist/interfaces/i-settings.js +8 -0
  319. package/dist/interfaces/i-user.d.ts +14 -0
  320. package/dist/interfaces/i-user.js +8 -0
  321. package/dist/interfaces/i-workdir.d.ts +14 -0
  322. package/dist/interfaces/i-workdir.js +8 -0
  323. package/dist/interfaces/i-xkb-model.d.ts +24 -0
  324. package/dist/interfaces/i-xkb-model.js +8 -0
  325. package/dist/interfaces/index.d.ts +26 -0
  326. package/dist/interfaces/index.js +8 -0
  327. package/dist/krill/classes/cfs.d.ts +17 -0
  328. package/dist/krill/classes/cfs.js +39 -0
  329. package/dist/krill/classes/krill_enums.d.ts +37 -0
  330. package/dist/krill/classes/krill_enums.js +41 -0
  331. package/dist/krill/classes/prepare.d/confirm.d.ts +5 -0
  332. package/dist/krill/classes/prepare.d/confirm.js +30 -0
  333. package/dist/krill/classes/prepare.d/keyboard.d.ts +14 -0
  334. package/dist/krill/classes/prepare.d/keyboard.js +62 -0
  335. package/dist/krill/classes/prepare.d/location.d.ts +17 -0
  336. package/dist/krill/classes/prepare.d/location.js +59 -0
  337. package/dist/krill/classes/prepare.d/network.d.ts +14 -0
  338. package/dist/krill/classes/prepare.d/network.js +68 -0
  339. package/dist/krill/classes/prepare.d/partitions.d.ts +14 -0
  340. package/dist/krill/classes/prepare.d/partitions.js +86 -0
  341. package/dist/krill/classes/prepare.d/summary.d.ts +15 -0
  342. package/dist/krill/classes/prepare.d/summary.js +72 -0
  343. package/dist/krill/classes/prepare.d/users.d.ts +6 -0
  344. package/dist/krill/classes/prepare.d/users.js +63 -0
  345. package/dist/krill/classes/prepare.d/welcome.d.ts +6 -0
  346. package/dist/krill/classes/prepare.d/welcome.js +30 -0
  347. package/dist/krill/classes/prepare.d.ts +89 -0
  348. package/dist/krill/classes/prepare.js +319 -0
  349. package/dist/krill/classes/sequence.d/add_user.d.ts +20 -0
  350. package/dist/krill/classes/sequence.d/add_user.js +77 -0
  351. package/dist/krill/classes/sequence.d/bootloader.d.ts +14 -0
  352. package/dist/krill/classes/sequence.d/bootloader.js +117 -0
  353. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +14 -0
  354. package/dist/krill/classes/sequence.d/bootloader_config.js +192 -0
  355. package/dist/krill/classes/sequence.d/change_password.d.ts +15 -0
  356. package/dist/krill/classes/sequence.d/change_password.js +18 -0
  357. package/dist/krill/classes/sequence.d/del_live_user.d.ts +14 -0
  358. package/dist/krill/classes/sequence.d/del_live_user.js +39 -0
  359. package/dist/krill/classes/sequence.d/fstab.d.ts +14 -0
  360. package/dist/krill/classes/sequence.d/fstab.js +177 -0
  361. package/dist/krill/classes/sequence.d/grubcfg.d.ts +17 -0
  362. package/dist/krill/classes/sequence.d/grubcfg.js +35 -0
  363. package/dist/krill/classes/sequence.d/hostname.d.ts +13 -0
  364. package/dist/krill/classes/sequence.d/hostname.js +50 -0
  365. package/dist/krill/classes/sequence.d/initramfs.d.ts +13 -0
  366. package/dist/krill/classes/sequence.d/initramfs.js +54 -0
  367. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +14 -0
  368. package/dist/krill/classes/sequence.d/initramfs_cfg.js +35 -0
  369. package/dist/krill/classes/sequence.d/locale.d.ts +13 -0
  370. package/dist/krill/classes/sequence.d/locale.js +91 -0
  371. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +10 -0
  372. package/dist/krill/classes/sequence.d/locale_cfg.js +58 -0
  373. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +14 -0
  374. package/dist/krill/classes/sequence.d/m_keyboard.js +58 -0
  375. package/dist/krill/classes/sequence.d/machine_id.d.ts +15 -0
  376. package/dist/krill/classes/sequence.d/machine_id.js +33 -0
  377. package/dist/krill/classes/sequence.d/mkfs.d.ts +15 -0
  378. package/dist/krill/classes/sequence.d/mkfs.js +88 -0
  379. package/dist/krill/classes/sequence.d/mount_fs.d.ts +17 -0
  380. package/dist/krill/classes/sequence.d/mount_fs.js +68 -0
  381. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +17 -0
  382. package/dist/krill/classes/sequence.d/mount_vfs.js +59 -0
  383. package/dist/krill/classes/sequence.d/network_cfg.d.ts +19 -0
  384. package/dist/krill/classes/sequence.d/network_cfg.js +73 -0
  385. package/dist/krill/classes/sequence.d/packages.d.ts +14 -0
  386. package/dist/krill/classes/sequence.d/packages.js +111 -0
  387. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +17 -0
  388. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +73 -0
  389. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +16 -0
  390. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +51 -0
  391. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +17 -0
  392. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +77 -0
  393. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +10 -0
  394. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +33 -0
  395. package/dist/krill/classes/sequence.d/partition.d.ts +14 -0
  396. package/dist/krill/classes/sequence.d/partition.js +84 -0
  397. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +13 -0
  398. package/dist/krill/classes/sequence.d/remove_installer_link.js +35 -0
  399. package/dist/krill/classes/sequence.d/umount.d.ts +14 -0
  400. package/dist/krill/classes/sequence.d/umount.js +28 -0
  401. package/dist/krill/classes/sequence.d/unpackfs.d.ts +13 -0
  402. package/dist/krill/classes/sequence.d/unpackfs.js +21 -0
  403. package/dist/krill/classes/sequence.d.ts +134 -0
  404. package/dist/krill/classes/sequence.js +400 -0
  405. package/dist/krill/components/finished.d.ts +16 -0
  406. package/dist/krill/components/finished.js +56 -0
  407. package/dist/krill/components/information.d.ts +8 -0
  408. package/dist/krill/components/information.js +162 -0
  409. package/dist/krill/components/install.d.ts +15 -0
  410. package/dist/krill/components/install.js +60 -0
  411. package/dist/krill/components/keyboard.d.ts +16 -0
  412. package/dist/krill/components/keyboard.js +54 -0
  413. package/dist/krill/components/location.d.ts +16 -0
  414. package/dist/krill/components/location.js +59 -0
  415. package/dist/krill/components/network.d.ts +19 -0
  416. package/dist/krill/components/network.js +65 -0
  417. package/dist/krill/components/partitions.d.ts +18 -0
  418. package/dist/krill/components/partitions.js +89 -0
  419. package/dist/krill/components/steps.d.ts +13 -0
  420. package/dist/krill/components/steps.js +148 -0
  421. package/dist/krill/components/summary.d.ts +25 -0
  422. package/dist/krill/components/summary.js +77 -0
  423. package/dist/krill/components/title.d.ts +11 -0
  424. package/dist/krill/components/title.js +35 -0
  425. package/dist/krill/components/users.d.ts +24 -0
  426. package/dist/krill/components/users.js +80 -0
  427. package/dist/krill/components/welcome.d.ts +13 -0
  428. package/dist/krill/components/welcome.js +63 -0
  429. package/dist/krill/interfaces/i_krill.d.ts +44 -0
  430. package/dist/krill/interfaces/i_krill.js +8 -0
  431. package/dist/krill/interfaces/i_krill_config.d.ts +35 -0
  432. package/dist/krill/interfaces/i_krill_config.js +8 -0
  433. package/dist/krill/lib/get_address.d.ts +8 -0
  434. package/dist/krill/lib/get_address.js +23 -0
  435. package/dist/krill/lib/get_dns.d.ts +8 -0
  436. package/dist/krill/lib/get_dns.js +23 -0
  437. package/dist/krill/lib/get_domain.d.ts +8 -0
  438. package/dist/krill/lib/get_domain.js +23 -0
  439. package/dist/krill/lib/get_gateway.d.ts +8 -0
  440. package/dist/krill/lib/get_gateway.js +23 -0
  441. package/dist/krill/lib/get_hostname.d.ts +8 -0
  442. package/dist/krill/lib/get_hostname.js +23 -0
  443. package/dist/krill/lib/get_luks_passphrase.d.ts +8 -0
  444. package/dist/krill/lib/get_luks_passphrase.js +32 -0
  445. package/dist/krill/lib/get_netmask.d.ts +8 -0
  446. package/dist/krill/lib/get_netmask.js +23 -0
  447. package/dist/krill/lib/get_password.d.ts +8 -0
  448. package/dist/krill/lib/get_password.js +36 -0
  449. package/dist/krill/lib/get_userfullname.d.ts +8 -0
  450. package/dist/krill/lib/get_userfullname.js +23 -0
  451. package/dist/krill/lib/get_username.d.ts +8 -0
  452. package/dist/krill/lib/get_username.js +23 -0
  453. package/dist/krill/lib/select_address_type.d.ts +8 -0
  454. package/dist/krill/lib/select_address_type.js +24 -0
  455. package/dist/krill/lib/select_filesystem_type.d.ts +8 -0
  456. package/dist/krill/lib/select_filesystem_type.js +40 -0
  457. package/dist/krill/lib/select_installation_device.d.ts +8 -0
  458. package/dist/krill/lib/select_installation_device.js +40 -0
  459. package/dist/krill/lib/select_installation_mode.d.ts +9 -0
  460. package/dist/krill/lib/select_installation_mode.js +25 -0
  461. package/dist/krill/lib/select_interface.d.ts +8 -0
  462. package/dist/krill/lib/select_interface.js +24 -0
  463. package/dist/krill/lib/select_keyboard_layout.d.ts +11 -0
  464. package/dist/krill/lib/select_keyboard_layout.js +36 -0
  465. package/dist/krill/lib/select_keyboard_model.d.ts +11 -0
  466. package/dist/krill/lib/select_keyboard_model.js +34 -0
  467. package/dist/krill/lib/select_keyboard_option.d.ts +11 -0
  468. package/dist/krill/lib/select_keyboard_option.js +34 -0
  469. package/dist/krill/lib/select_keyboard_variant.d.ts +11 -0
  470. package/dist/krill/lib/select_keyboard_variant.js +35 -0
  471. package/dist/krill/lib/select_languages.d.ts +8 -0
  472. package/dist/krill/lib/select_languages.js +28 -0
  473. package/dist/krill/lib/select_regions.d.ts +8 -0
  474. package/dist/krill/lib/select_regions.js +24 -0
  475. package/dist/krill/lib/select_replaced_partition.d.ts +8 -0
  476. package/dist/krill/lib/select_replaced_partition.js +31 -0
  477. package/dist/krill/lib/select_user_swap_choice.d.ts +9 -0
  478. package/dist/krill/lib/select_user_swap_choice.js +35 -0
  479. package/dist/krill/lib/select_zones.d.ts +8 -0
  480. package/dist/krill/lib/select_zones.js +518 -0
  481. package/dist/lib/kill_me_softly.d.ts +11 -0
  482. package/dist/lib/kill_me_softly.js +61 -0
  483. package/dist/lib/utils.d.ts +19 -0
  484. package/dist/lib/utils.js +65 -0
  485. package/dracut/create-symlink +0 -0
  486. package/dracut/dracut.conf.d/50-live.conf +12 -13
  487. package/dracut/export +0 -0
  488. package/dracut/export-dracut-analysis +0 -0
  489. package/dracut/export-dracut-log +0 -0
  490. package/dracut/mkisofs +0 -0
  491. package/dracut/modules.d/00debug-shell/debug-hook.sh +0 -0
  492. package/dracut/modules.d/00debug-shell/module-setup.sh +0 -0
  493. package/dracut/modules.d/90block/block-cmdline.sh +0 -0
  494. package/dracut/modules.d/90block/module-setup.sh +0 -0
  495. package/dracut/modules.d/95iso-scan/iso-scan-fallback.sh +0 -0
  496. package/dracut/modules.d/95iso-scan/iso-scan.sh +0 -0
  497. package/dracut/modules.d/95iso-scan/module-setup.sh +0 -0
  498. package/dracut/modules.d/95luks-loop/luks-loop.sh +0 -0
  499. package/dracut/modules.d/95luks-loop/module-setup.sh +0 -0
  500. package/dracut/renew-initramfs +0 -0
  501. package/dracut/sbin2bin +0 -0
  502. package/dracut/update-dracut-conf-d +0 -0
  503. package/dracut/update-dracut-modules +0 -0
  504. package/eui/eui-autostart-cinnamon.desktop +0 -0
  505. package/eui/eui-autostart-xfce.desktop +0 -0
  506. package/eui/eui-create-image.sh +0 -0
  507. package/eui/eui-start.sh +0 -0
  508. package/package.json +130 -124
  509. package/perrisbrewery/scripts/postinst +0 -0
  510. package/perrisbrewery/scripts/postrm +0 -0
  511. package/perrisbrewery/scripts/preinst +0 -0
  512. package/perrisbrewery/scripts/prerm +0 -0
  513. package/perrisbrewery/template/dependencies.yaml +7 -5
  514. package/scripts/99clean +0 -0
  515. package/scripts/adapt.sh +0 -0
  516. package/scripts/boot-encrypted-root.sh +0 -0
  517. package/scripts/bros/waydroid-helper.sh +0 -0
  518. package/scripts/lsb_release +0 -0
  519. package/scripts/mom.sh +0 -0
  520. package/scripts/mount-encrypted-home.sh +0 -0
  521. package/scripts/pve-live.service +0 -0
  522. package/scripts/pve-live.sh +0 -0
  523. package/scripts/resy +0 -0
  524. package/conf/distros/focal/calamares/calamares-modules/.keepit +0 -0
  525. package/conf/distros/focal/calamares/calamares-modules/cleanup/cleanup.sh +0 -20
  526. package/conf/distros/focal/calamares/calamares-modules/cleanup/module.yml +0 -9
  527. package/conf/distros/focal/calamares/calamares-modules/sources-yolk/module.yml +0 -8
  528. package/conf/distros/focal/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -50
  529. package/conf/distros/focal/calamares/calamares-modules/sources-yolk-undo/module.yml +0 -8
  530. package/conf/distros/focal/calamares/modules/after_bootloader_context.yml +0 -19
  531. package/conf/distros/focal/calamares/modules/automirror.yml +0 -6
  532. package/conf/distros/focal/calamares/modules/before_bootloader_context.yml +0 -19
  533. package/conf/distros/focal/calamares/modules/before_bootloader_mkdirs_context.yml +0 -11
  534. package/conf/distros/focal/calamares/modules/bootloader.yml +0 -34
  535. package/conf/distros/focal/calamares/modules/displaymanager.yml +0 -12
  536. package/conf/distros/focal/calamares/modules/finished.yml +0 -4
  537. package/conf/distros/focal/calamares/modules/fstab.yml +0 -13
  538. package/conf/distros/focal/calamares/modules/grubcfg.yml +0 -5
  539. package/conf/distros/focal/calamares/modules/locale.yml +0 -9
  540. package/conf/distros/focal/calamares/modules/machineid.yml +0 -9
  541. package/conf/distros/focal/calamares/modules/mount.yml +0 -41
  542. package/conf/distros/focal/calamares/modules/packages.mustache +0 -5
  543. package/conf/distros/focal/calamares/modules/partition.yml +0 -10
  544. package/conf/distros/focal/calamares/modules/removeuser.mustache +0 -3
  545. package/conf/distros/focal/calamares/modules/shellprocess_add386arch.yml +0 -6
  546. package/conf/distros/focal/calamares/modules/shellprocess_bug-LP#1829805.yml +0 -5
  547. package/conf/distros/focal/calamares/modules/shellprocess_logs.yml +0 -6
  548. package/conf/distros/focal/calamares/modules/unpackfs.mustache +0 -6
  549. package/conf/distros/focal/calamares/modules/users.yml +0 -19
  550. package/conf/distros/focal/calamares/modules/welcome.yml +0 -26
  551. package/conf/distros/focal/calamares/settings.yml +0 -72
@@ -0,0 +1,37 @@
1
+ /**
2
+ * ./src/classes/ovary.d/bind-live-fs.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ // packages
9
+ import path from 'node:path';
10
+ import Utils from '../utils.js';
11
+ // _dirname
12
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
13
+ /**
14
+ * bind dei virtual file system
15
+ */
16
+ export async function bindVfs() {
17
+ if (this.verbose) {
18
+ console.log('Ovary: bindVfs');
19
+ }
20
+ const cmds = [];
21
+ cmds.push(`mount -o bind /dev ${this.settings.work_dir.merged}/dev`, `mount -o bind /dev/pts ${this.settings.work_dir.merged}/dev/pts`, `mount -o bind /proc ${this.settings.work_dir.merged}/proc`, `mount -o bind /sys ${this.settings.work_dir.merged}/sys`, `mount -o bind /run ${this.settings.work_dir.merged}/run`);
22
+ // Utils.writeXs(`${this.settings.config.snapshot_dir}bindvfs`, cmds)
23
+ Utils.writeXs(`${this.settings.work_dir.ovarium}bindvfs`, cmds);
24
+ }
25
+ /**
26
+ *
27
+ * @param verbose
28
+ */
29
+ export async function ubindVfs() {
30
+ if (this.verbose) {
31
+ console.log('Ovary: ubindVfs');
32
+ }
33
+ const cmds = [];
34
+ cmds.push(`umount ${this.settings.work_dir.merged}/dev/pts`, `umount ${this.settings.work_dir.merged}/dev`, `umount ${this.settings.work_dir.merged}/proc`, `umount ${this.settings.work_dir.merged}/run`, `umount ${this.settings.work_dir.merged}/sys`);
35
+ // Utils.writeXs(`${this.settings.config.snapshot_dir}ubindvfs`, cmds)
36
+ Utils.writeXs(`${this.settings.work_dir.ovarium}ubindvfs`, cmds);
37
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * ./src/classes/ovary.d/create-xdg-autostart.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import Ovary from '../ovary.js';
9
+ import { IAddons } from '../../interfaces/index.js';
10
+ /**
11
+ *
12
+ */
13
+ export declare function createXdgAutostart(this: Ovary, theme: string | undefined, myAddons: IAddons, myLinks?: string[], noicons?: boolean): Promise<void>;
@@ -0,0 +1,193 @@
1
+ /**
2
+ * ./src/classes/ovary.d/create-xdg-autostart.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ // packages
9
+ import fs from 'node:fs';
10
+ import path from 'node:path';
11
+ import shx from 'shelljs';
12
+ import Pacman from '../pacman.js';
13
+ import Utils from '../utils.js';
14
+ import Xdg from '../xdg.js';
15
+ import { exec } from '../../lib/utils.js';
16
+ import PveLive from '../pve-live.js';
17
+ // _dirname
18
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
19
+ /**
20
+ *
21
+ */
22
+ export async function createXdgAutostart(theme = 'eggs', myAddons, myLinks = [], noicons = false) {
23
+ if (this.verbose) {
24
+ console.log('Ovary: createXdgAutostart');
25
+ }
26
+ const pathHomeLive = `/home/${this.settings.config.user_opt}`;
27
+ // VOGLIO le icone
28
+ // Copia icona penguins-eggs
29
+ shx.cp(path.resolve(__dirname, '../../../assets/eggs.png'), '/usr/share/icons/');
30
+ shx.cp(path.resolve(__dirname, '../../../assets/krill.svg'), '/usr/share/icons/');
31
+ shx.cp(path.resolve(__dirname, '../../../assets/leaves.svg'), '/usr/share/icons/');
32
+ /**
33
+ * creazione dei link in /usr/share/applications
34
+ */
35
+ shx.cp(path.resolve(__dirname, '../../../assets/penguins-eggs.desktop'), '/usr/share/applications/');
36
+ /**
37
+ * Scrivania/install-system.desktop
38
+ */
39
+ let installerLink = 'install-system.desktop';
40
+ if (Pacman.calamaresExists()) {
41
+ // 1. Copia il lanciatore .desktop STANDARD (quello con pkexec)
42
+ shx.cp(path.resolve(__dirname, `../../../addons/${theme}/theme/applications/install-system.desktop`), `${this.settings.work_dir.merged}/usr/share/applications/`);
43
+ // 2. Copia la TUA policy Polkit per Calamares
44
+ const policySource = path.resolve(__dirname, '../../../assets/calamares/io.calamares.calamares.policy');
45
+ const policyDest = '/usr/share/polkit-1/actions/';
46
+ shx.cp(policySource, policyDest);
47
+ await exec(`sed -i 's/auth_admin/yes/' ${policyDest}io.calamares.calamares.policy`);
48
+ }
49
+ else if (Pacman.packageIsInstalled('live-installer')) {
50
+ /**
51
+ * LMD£ live-installer
52
+ */
53
+ const policySource = path.resolve(__dirname, '../../../assets/live-installer/com.github.pieroproietti.penguins-eggs.policy');
54
+ const policyDest = '/usr/share/polkit-1/actions/com.github.pieroproietti.penguins-eggs.policy';
55
+ shx.cp(policySource, policyDest);
56
+ await exec(`sed -i 's/auth_admin/yes/' ${policyDest}`);
57
+ // carico in filesystem.live packages-remove
58
+ shx.cp(path.resolve(__dirname, '../../../assets/live-installer/filesystem.packages-remove'), `${this.settings.iso_work}/live/`);
59
+ shx.touch(`${this.settings.iso_work}/live/filesystem.packages`);
60
+ installerLink = 'penguins-live-installer.desktop';
61
+ shx.cp(path.resolve(__dirname, '../../../assets/penguins-live-installer.desktop'), `${this.settings.work_dir.merged}/usr/share/applications/`);
62
+ }
63
+ else if (Pacman.packageIsInstalled('ubiquity')) {
64
+ /**
65
+ * UBUNTU ubiquity
66
+ */
67
+ const policySource = path.resolve(__dirname, '../../../assets/ubiquity-installer/com.github.pieroproietti.penguins-eggs.policy');
68
+ const policyDest = '/usr/share/polkit-1/actions/com.github.pieroproietti.penguins-eggs.policy';
69
+ shx.cp(policySource, policyDest);
70
+ await exec(`sed -i 's/auth_admin/yes/' ${policyDest}`);
71
+ // carico in filesystem.live packages-remove
72
+ shx.cp(path.resolve(__dirname, '../../../assets/ubiquity-installer/filesystem.packages-remove'), `${this.settings.iso_work}/live/`);
73
+ shx.touch(`${this.settings.iso_work}/live/filesystem.packages`);
74
+ installerLink = 'penguins-ubiquity-installer.desktop';
75
+ shx.cp(path.resolve(__dirname, '../../../assets/penguins-ubiquity-installer.desktop'), `${this.settings.work_dir.merged}/usr/share/applications/`);
76
+ }
77
+ else {
78
+ installerLink = 'penguins-krill.desktop';
79
+ shx.cp(path.resolve(__dirname, '../../../assets/penguins-krill.desktop'), `${this.settings.work_dir.merged}/usr/share/applications/`);
80
+ }
81
+ /**
82
+ * flags
83
+ */
84
+ // adapt
85
+ if (myAddons.adapt) {
86
+ const dirAddon = path.resolve(__dirname, '../../../addons/eggs/adapt/');
87
+ shx.cp(`${dirAddon}/applications/eggs-adapt.desktop`, `${this.settings.work_dir.merged}/usr/share/applications/`);
88
+ }
89
+ // pve
90
+ if (myAddons.pve) {
91
+ /**
92
+ * create service pve-live
93
+ */
94
+ const pve = new PveLive();
95
+ pve.create(this.settings.work_dir.merged);
96
+ /**
97
+ * adding a desktop link for pve
98
+ */
99
+ const dirAddon = path.resolve(__dirname, '../../../addons/eggs/pve');
100
+ shx.cp(`${dirAddon}/artwork/eggs-pve.png`, `${this.settings.work_dir.merged}/usr/share/icons/`);
101
+ shx.cp(`${dirAddon}/applications/eggs-pve.desktop`, `${this.settings.work_dir.merged}/usr/share/applications/`);
102
+ }
103
+ // rsupport
104
+ if (myAddons.rsupport) {
105
+ const dirAddon = path.resolve(__dirname, '../../../addons/eggs/rsupport');
106
+ shx.cp(`${dirAddon}/applications/eggs-rsupport.desktop`, `${this.settings.work_dir.merged}/usr/share/applications/`);
107
+ shx.cp(`${dirAddon}/artwork/eggs-rsupport.png`, `${this.settings.work_dir.merged}/usr/share/icons/`);
108
+ }
109
+ /**
110
+ * configuro add-penguins-desktop-icons in /etc/xdg/autostart
111
+ */
112
+ const dirAutostart = `${this.settings.work_dir.merged}/etc/xdg/autostart`;
113
+ if (fs.existsSync(dirAutostart)) {
114
+ // Creo l'avviatore xdg: DEVE essere add-penguins-links.desktop
115
+ shx.cp(path.resolve(__dirname, '../../../assets/penguins-links-add.desktop'), dirAutostart);
116
+ // create /usr/bin/penguins-links-add.sh
117
+ const script = '/usr/bin/penguins-links-add.sh';
118
+ let text = '';
119
+ text += '#!/bin/sh\n';
120
+ text += 'DESKTOP=$(xdg-user-dir DESKTOP)\n';
121
+ text += 'while [ ! -d "$DESKTOP" ]; do\n';
122
+ text += ' DESKTOP=$(xdg-user-dir DESKTOP)\n';
123
+ text += ' sleep 1\n';
124
+ text += 'done\n';
125
+ text += `cp /usr/share/applications/${installerLink} "$DESKTOP"\n`;
126
+ if (Pacman.packageIsInstalled('lxde-core')) {
127
+ if (!noicons) {
128
+ text += lxdeLink('penguins-eggs.desktop', "Penguins' eggs", 'eggs');
129
+ }
130
+ if (myAddons.adapt)
131
+ text += lxdeLink('eggs-adapt.desktop', 'Adapt', 'video-display');
132
+ if (myAddons.pve)
133
+ text += lxdeLink('eggs-pve.desktop', 'Proxmox VE', 'proxmox-ve');
134
+ if (myAddons.rsupport)
135
+ text += lxdeLink('eggs-rsupport.desktop', 'Remote assistance', 'remote-assistance');
136
+ }
137
+ else {
138
+ if (!noicons) {
139
+ text += 'cp /usr/share/applications/penguins-eggs.desktop "$DESKTOP"\n';
140
+ }
141
+ if (myLinks.length > 0) {
142
+ for (const link of myLinks) {
143
+ text += `cp /usr/share/applications/${link}.desktop "$DESKTOP"\n`;
144
+ }
145
+ }
146
+ if (myAddons.adapt)
147
+ text += 'cp /usr/share/applications/eggs-adapt.desktop "$DESKTOP"\n';
148
+ if (myAddons.pve)
149
+ text += 'cp /usr/share/applications/eggs-pve.desktop "$DESKTOP"\n';
150
+ if (myAddons.rsupport)
151
+ text += 'cp /usr/share/applications/eggs-rsupport.desktop "$DESKTOP"\n';
152
+ }
153
+ /**
154
+ * enable desktop links
155
+ */
156
+ if (Pacman.packageIsInstalled('gdm3') || Pacman.packageIsInstalled('gdm')) {
157
+ // GNOME
158
+ text += 'test -f /usr/share/applications/penguins-eggs.desktop && cp /usr/share/applications/penguins-eggs.desktop "$DESKTOP"\n';
159
+ text += 'test -f "$DESKTOP"/op && chmod a+x "$DESKTOP"/penguins-eggs.desktop\n';
160
+ text += 'test -f "$DESKTOP"/penguins-eggs.desktop && gio set "$DESKTOP"/penguins-eggs.desktop metadata::trusted true\n';
161
+ text += `test -f /usr/share/applications/${installerLink} && cp /usr/share/applications/${installerLink} "$DESKTOP"\n`;
162
+ text += `test -f "$DESKTOP"/${installerLink} && chmod a+x "$DESKTOP"/${installerLink}\n`;
163
+ text += `test -f "$DESKTOP"/${installerLink} && gio set "$DESKTOP"/${installerLink} metadata::trusted true\n`;
164
+ }
165
+ else if (Pacman.packageIsInstalled('xfce4-session')) {
166
+ text += `# xfce: enable-desktop-links\n`;
167
+ text += `for f in "$DESKTOP"/*.desktop; do chmod +x "$f"; gio set -t string "$f" metadata::xfce-exe-checksum "$(sha256sum "$f" | awk '{print $1}')"; done\n`;
168
+ }
169
+ else {
170
+ text += `# others: enable-desktop-links\n`;
171
+ text += 'chmod +x "$DESKTOP"/*.desktop\n';
172
+ }
173
+ fs.writeFileSync(script, text, 'utf8');
174
+ await exec(`chmod a+x ${script}`, this.echo);
175
+ }
176
+ await Xdg.autologin(await Utils.getPrimaryUser(), this.settings.config.user_opt, this.settings.work_dir.merged);
177
+ }
178
+ /**
179
+ * Creazione link desktop per lxde
180
+ * @param name
181
+ * @param icon
182
+ * was private
183
+ */
184
+ function lxdeLink(file, name, icon) {
185
+ const lnk = `lnk-${file}`;
186
+ let text = '';
187
+ text += `echo "[Desktop Entry]" >$DESKTOP/${lnk}\n`;
188
+ text += `echo "Type=Link" >> $DESKTOP/${lnk}\n`;
189
+ text += `echo "Name=${name}" >> $DESKTOP/${lnk}\n`;
190
+ text += `echo "Icon=${icon}" >> $DESKTOP/${lnk}\n`;
191
+ text += `echo "URL=/usr/share/applications/${file}" >> $DESKTOP/${lnk}\n\n`;
192
+ return text;
193
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * ./src/classes/ovary.d/edit-live-fs.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import Ovary from '../ovary.js';
9
+ /**
10
+ * editLiveFs
11
+ * - Mark if is_clone or is_clone_crypted
12
+ * - Truncate logs, remove archived log
13
+ * - Allow all fixed drives to be mounted with pmount
14
+ * - Enable or disable password login trhough ssh for users (not root)
15
+ * - Create an empty /etc/fstab
16
+ * - Blanck /etc/machine-id
17
+ * - Add some basic files to /dev
18
+ * - Clear configs from /etc/network/interfaces, wicd and NetworkManager and netman
19
+ */
20
+ export declare function editLiveFs(this: Ovary, clone?: boolean): Promise<void>;
@@ -0,0 +1,239 @@
1
+ /**
2
+ * ./src/classes/ovary.d/edit-live-fs.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ // packages
9
+ import fs from 'fs';
10
+ import os from 'os';
11
+ import path from 'node:path';
12
+ import shx from 'shelljs';
13
+ import Utils from '../utils.js';
14
+ import Pacman from '../pacman.js';
15
+ import Systemctl from '../systemctl.js';
16
+ import { exec } from '../../lib/utils.js';
17
+ // _dirname
18
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
19
+ /**
20
+ * editLiveFs
21
+ * - Mark if is_clone or is_clone_crypted
22
+ * - Truncate logs, remove archived log
23
+ * - Allow all fixed drives to be mounted with pmount
24
+ * - Enable or disable password login trhough ssh for users (not root)
25
+ * - Create an empty /etc/fstab
26
+ * - Blanck /etc/machine-id
27
+ * - Add some basic files to /dev
28
+ * - Clear configs from /etc/network/interfaces, wicd and NetworkManager and netman
29
+ */
30
+ export async function editLiveFs(clone = false) {
31
+ if (this.verbose) {
32
+ console.log('Ovary: editLiveFs');
33
+ }
34
+ /**
35
+ * /etc/penguins-eggs.d/is_clone file created on live
36
+ */
37
+ if (clone) {
38
+ await exec(`touch ${this.settings.work_dir.merged}/etc/penguins-eggs.d/is_clone`, this.echo);
39
+ }
40
+ /**
41
+ * /etc/default/epoptes-client created on live
42
+ */
43
+ if (Pacman.packageIsInstalled('epoptes')) {
44
+ const file = `${this.settings.work_dir.merged}/etc/default/epoptes-client`;
45
+ const text = `SERVER=${os.hostname}.local\n`;
46
+ fs.writeFileSync(file, text);
47
+ }
48
+ if (this.familyId === 'debian') {
49
+ // Aggiungo UMASK=0077 in /etc/initramfs-tools/conf.d/calamares-safe-initramfs.conf
50
+ const text = 'UMASK=0077\n';
51
+ const file = '/etc/initramfs-tools/conf.d/eggs-safe-initramfs.conf';
52
+ Utils.write(file, text);
53
+ }
54
+ // Truncate logs, remove archived logs.
55
+ let cmd = `find ${this.settings.work_dir.merged}/var/log -name "*gz" -print0 | xargs -0r rm -f`;
56
+ await exec(cmd, this.echo);
57
+ cmd = `find ${this.settings.work_dir.merged}/var/log/ -type f -exec truncate -s 0 {} \\;`;
58
+ await exec(cmd, this.echo);
59
+ // Allow all fixed drives to be mounted with pmount
60
+ if (this.settings.config.pmount_fixed && fs.existsSync(`${this.settings.work_dir.merged}/etc/pmount.allow`)) {
61
+ // MX aggiunto /etc
62
+ await exec(`sed -i 's:#/dev/sd\[a-z\]:/dev/sd\[a-z\]:' ${this.settings.work_dir.merged}/etc/pmount.allow`, this.echo);
63
+ }
64
+ // Remove obsolete live-config file
65
+ if (fs.existsSync(`${this.settings.work_dir.merged}lib/live/config/1161-openssh-server`)) {
66
+ await exec(`rm -f ${this.settings.work_dir.merged}/lib/live/config/1161-openssh-server`, this.echo);
67
+ }
68
+ if (fs.existsSync(`${this.settings.work_dir.merged}/etc/ssh/sshd_config`)) {
69
+ /**
70
+ * enable/disable SSH root/users password login
71
+ */
72
+ await exec(`sed -i '/PermitRootLogin/d' ${this.settings.work_dir.merged}/etc/ssh/sshd_config`);
73
+ await exec(`sed -i '/PasswordAuthentication/d' ${this.settings.work_dir.merged}/etc/ssh/sshd_config`);
74
+ if (this.settings.config.ssh_pass) {
75
+ await exec(`echo 'PasswordAuthentication yes' | tee -a ${this.settings.work_dir.merged}/etc/ssh/sshd_config`, this.echo);
76
+ }
77
+ else {
78
+ await exec(`echo 'PermitRootLogin prohibit-password' | tee -a ${this.settings.work_dir.merged}/etc/ssh/sshd_config`, this.echo);
79
+ await exec(`echo 'PasswordAuthentication no' | tee -a ${this.settings.work_dir.merged}/etc/ssh/sshd_config`, this.echo);
80
+ }
81
+ }
82
+ /**
83
+ * ufw --force reset
84
+ */
85
+ // if (Pacman.packageIsInstalled('ufw')) {
86
+ // await exec('ufw --force reset')
87
+ // }
88
+ /**
89
+ * /etc/fstab should exist, even if it's empty,
90
+ * to prevent error messages at boot
91
+ */
92
+ await exec(`rm ${this.settings.work_dir.merged}/etc/fstab`, this.echo);
93
+ await exec(`touch ${this.settings.work_dir.merged}/etc/fstab`, this.echo);
94
+ /**
95
+ * Remove crypttab if exists
96
+ * this is crucial for tpm systems.
97
+ */
98
+ if (fs.existsSync(`${this.settings.work_dir.merged}/etc/crypttab`)) {
99
+ await exec(`rm ${this.settings.work_dir.merged}/etc/crypttab`, this.echo);
100
+ }
101
+ /**
102
+ * Blank out systemd machine id.
103
+ * If it does not exist, systemd-journald will fail,
104
+ * but if it exists and is empty, systemd will automatically
105
+ * set up a new unique ID.
106
+ */
107
+ if (fs.existsSync(`${this.settings.work_dir.merged}/etc/machine-id`)) {
108
+ await exec(`rm ${this.settings.work_dir.merged}/etc/machine-id`, this.echo);
109
+ await exec(`touch ${this.settings.work_dir.merged}/etc/machine-id`, this.echo);
110
+ Utils.write(`${this.settings.work_dir.merged}/etc/machine-id`, ':');
111
+ }
112
+ /**
113
+ * LMDE4: utilizza UbuntuMono16.pf2
114
+ * aggiungo un link a /boot/grub/fonts/UbuntuMono16.pf2
115
+ */
116
+ if (fs.existsSync(`${this.settings.work_dir.merged}/boot/grub/fonts/unicode.pf2`)) {
117
+ shx.cp(`${this.settings.work_dir.merged}/boot/grub/fonts/unicode.pf2`, `${this.settings.work_dir.merged}/boot/grub/fonts/UbuntuMono16.pf2`);
118
+ }
119
+ /**
120
+ * cleaning /etc/resolv.conf
121
+ */
122
+ const resolvFile = `${this.settings.work_dir.merged}/etc/resolv.conf`;
123
+ shx.rm(resolvFile);
124
+ /**
125
+ * Per tutte le distro systemd
126
+ */
127
+ if (Utils.isSystemd()) {
128
+ const systemdctl = new Systemctl(this.verbose);
129
+ /*
130
+ * Arch: /ci/minimal/arch-minimal.sh:
131
+ * systemctl set-default multi-user.target
132
+ * systemctl enable getty@tty1.service
133
+ * systemctl enable systemd-networkd.service
134
+ * systemctl enable 'systemd-resolved.service
135
+ */
136
+ if (await systemdctl.isEnabled('remote-cryptsetup.target')) {
137
+ await systemdctl.disable('remote-cryptsetup.target', this.settings.work_dir.merged, true);
138
+ }
139
+ if (await systemdctl.isEnabled('speech-dispatcherd.service')) {
140
+ await systemdctl.disable('speech-dispatcherd.service', this.settings.work_dir.merged, true);
141
+ }
142
+ if (await systemdctl.isEnabled('wpa_supplicant-nl80211@.service')) {
143
+ await systemdctl.disable('wpa_supplicant-nl80211@.service', this.settings.work_dir.merged, true);
144
+ }
145
+ if (await systemdctl.isEnabled('wpa_supplicant@.service')) {
146
+ await systemdctl.disable('wpa_supplicant@.service', this.settings.work_dir.merged, true);
147
+ }
148
+ if (await systemdctl.isEnabled('wpa_supplicant-wired@.service')) {
149
+ await systemdctl.disable('wpa_supplicant-wired@.service', this.settings.work_dir.merged, true);
150
+ }
151
+ /**
152
+ * All systemd distros
153
+ */
154
+ await exec(`rm -f ${this.settings.work_dir.merged}/var/lib/wicd/configurations/*`, this.echo);
155
+ await exec(`rm -f ${this.settings.work_dir.merged}/etc/wicd/wireless-settings.conf`, this.echo);
156
+ await exec(`rm -f ${this.settings.work_dir.merged}/etc/NetworkManager/system-connections/*`, this.echo);
157
+ await exec(`rm -f ${this.settings.work_dir.merged}/etc/network/wifi/*`, this.echo);
158
+ /**
159
+ * removing from /etc/network/:
160
+ * if-down.d if-post-down.d if-pre-up.d if-up.d interfaces interfaces.d
161
+ */
162
+ const cleanDirs = ['if-down.d', 'if-post-down.d', 'if-pre-up.d', 'if-up.d', 'interfaces.d'];
163
+ let cleanDir = '';
164
+ for (cleanDir of cleanDirs) {
165
+ await exec(`rm -f ${this.settings.work_dir.merged}/etc/network/${cleanDir}/wpasupplicant`, this.echo);
166
+ }
167
+ }
168
+ /**
169
+ * Clear configs from /etc/network/interfaces, wicd and NetworkManager
170
+ * and netman, so they aren't stealthily included in the snapshot.
171
+ */
172
+ if (this.familyId === 'debian') {
173
+ if (fs.existsSync(`${this.settings.work_dir.merged}/etc/network/interfaces`)) {
174
+ await exec(`rm -f ${this.settings.work_dir.merged}/etc/network/interfaces`, this.echo);
175
+ Utils.write(`${this.settings.work_dir.merged}/etc/network/interfaces`, 'auto lo\niface lo inet loopback');
176
+ }
177
+ /**
178
+ * add some basic files to /dev
179
+ */
180
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/console`)) {
181
+ await exec(`mknod -m 622 ${this.settings.work_dir.merged}/dev/console c 5 1`, this.echo);
182
+ }
183
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/null`)) {
184
+ await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/null c 1 3`, this.echo);
185
+ }
186
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/zero`)) {
187
+ await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/zero c 1 5`, this.echo);
188
+ }
189
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/ptmx`)) {
190
+ await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/ptmx c 5 2`, this.echo);
191
+ }
192
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/tty`)) {
193
+ await exec(`mknod -m 666 ${this.settings.work_dir.merged}/dev/tty c 5 0`, this.echo);
194
+ }
195
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/random`)) {
196
+ await exec(`mknod -m 444 ${this.settings.work_dir.merged}/dev/random c 1 8`, this.echo);
197
+ }
198
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/urandom`)) {
199
+ await exec(`mknod -m 444 ${this.settings.work_dir.merged}/dev/urandom c 1 9`, this.echo);
200
+ }
201
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/{console,ptmx,tty}`)) {
202
+ await exec(`chown -v root:tty ${this.settings.work_dir.merged}/dev/{console,ptmx,tty}`, this.echo);
203
+ }
204
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/fd`)) {
205
+ await exec(`ln -sv /proc/self/fd ${this.settings.work_dir.merged}/dev/fd`, this.echo);
206
+ }
207
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/stdin`)) {
208
+ await exec(`ln -sv /proc/self/fd/0 ${this.settings.work_dir.merged}/dev/stdin`, this.echo);
209
+ }
210
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/stdout`)) {
211
+ await exec(`ln -sv /proc/self/fd/1 ${this.settings.work_dir.merged}/dev/stdout`, this.echo);
212
+ }
213
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/stderr`)) {
214
+ await exec(`ln -sv /proc/self/fd/2 ${this.settings.work_dir.merged}/dev/stderr`, this.echo);
215
+ }
216
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/core`)) {
217
+ await exec(`ln -sv /proc/kcore ${this.settings.work_dir.merged}/dev/core`, this.echo);
218
+ }
219
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/shm`)) {
220
+ await exec(`mkdir -v ${this.settings.work_dir.merged}/dev/shm`, this.echo);
221
+ }
222
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/pts`)) {
223
+ await exec(`mkdir -v ${this.settings.work_dir.merged}/dev/pts`, this.echo);
224
+ }
225
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/dev/shm`)) {
226
+ await exec(`chmod 1777 ${this.settings.work_dir.merged}/dev/shm`, this.echo);
227
+ }
228
+ /**
229
+ * creo /tmp
230
+ */
231
+ if (!fs.existsSync(`${this.settings.work_dir.merged}/tmp`)) {
232
+ await exec(`mkdir ${this.settings.work_dir.merged}/tmp`, this.echo);
233
+ }
234
+ /**
235
+ * Assegno 1777 a /tmp creava problemi con MXLINUX
236
+ */
237
+ await exec(`chmod 1777 ${this.settings.work_dir.merged}/tmp`, this.echo);
238
+ }
239
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * ./src/classes/xorriso-command.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import Ovary from '../ovary.js';
9
+ /**
10
+ * @returns {boolean} success
11
+ */
12
+ export declare function fertilization(this: Ovary, snapshot_prefix?: string, snapshot_basename?: string, theme?: string, compression?: string, nointeratctive?: boolean): Promise<boolean>;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * ./src/classes/xorriso-command.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ // packages
9
+ import path from 'node:path';
10
+ import Settings from '../settings.js';
11
+ import Utils from '../utils.js';
12
+ import Distro from '../distro.js';
13
+ // _dirname
14
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
15
+ /**
16
+ * @returns {boolean} success
17
+ */
18
+ export async function fertilization(snapshot_prefix = '', snapshot_basename = '', theme = '', compression = '', nointeratctive = false) {
19
+ // familyId, distroId from Distro
20
+ const distro = new Distro();
21
+ this.familyId = distro.familyId;
22
+ this.distroId = distro.distroId;
23
+ this.distroLike = distro.distroLike;
24
+ this.distroLliveMediumPath = distro.liveMediumPath;
25
+ this.settings = new Settings();
26
+ if (await this.settings.load()) {
27
+ await this.settings.loadRemix(this.theme);
28
+ this.volid = Utils.getVolid(this.settings.remix.name);
29
+ this.uuid = Utils.uuidGen();
30
+ //this.familyId = this.settings.distro.familyId
31
+ this.nest = this.settings.config.snapshot_mnt;
32
+ if (snapshot_prefix !== '') {
33
+ this.settings.config.snapshot_prefix = snapshot_prefix;
34
+ }
35
+ if (snapshot_basename !== '') {
36
+ this.settings.config.snapshot_basename = snapshot_basename;
37
+ }
38
+ if (theme !== '') {
39
+ this.theme = theme;
40
+ }
41
+ if (compression !== '') {
42
+ this.settings.config.compression = compression;
43
+ }
44
+ if (!nointeratctive) {
45
+ return true;
46
+ }
47
+ this.settings.listFreeSpace();
48
+ if (await Utils.customConfirm('Select yes to continue...')) {
49
+ return true;
50
+ }
51
+ }
52
+ return false;
53
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * ./src/classes/ovary.d/finished.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import Ovary from './../ovary.js';
9
+ /**
10
+ * finished = show the results
11
+ * @param scriptOnly
12
+ */
13
+ export declare function finished(this: Ovary, scriptOnly?: boolean): void;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * ./src/classes/ovary.d/finished.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import chalk from 'chalk';
9
+ // packages
10
+ import path from 'path';
11
+ // _dirname
12
+ /**
13
+ * finished = show the results
14
+ * @param scriptOnly
15
+ */
16
+ export function finished(scriptOnly = false) {
17
+ // Utils.titles('produce')
18
+ if (scriptOnly) {
19
+ const pathOvarium = path.join(this.settings.config.snapshot_dir, 'ovarium');
20
+ console.log('eggs is finished!\n\nYou can find the scripts to build iso: ' + chalk.cyanBright(this.settings.isoFilename) + '\nin the ovarium: ' + chalk.cyanBright(pathOvarium) + '.');
21
+ console.log('usage');
22
+ console.log(chalk.cyanBright(`cd ${pathOvarium}`));
23
+ console.log(chalk.cyanBright('sudo ./bind'));
24
+ console.log('Make all yours modifications in the directories filesystem.squashfs and iso.');
25
+ console.log('After when you are ready:');
26
+ console.log(chalk.cyanBright('sudo ./mksquashfs'));
27
+ console.log(chalk.cyanBright('sudo ./mkisofs'));
28
+ console.log(chalk.cyanBright('sudo ./ubind'));
29
+ console.log('happy hacking!');
30
+ }
31
+ else {
32
+ console.log('eggs is finished!\n\nYou can find the file iso: ' + chalk.cyanBright(this.settings.isoFilename) + '\nin the nest: ' + chalk.cyanBright(this.settings.config.snapshot_dir) + '.');
33
+ }
34
+ console.log();
35
+ console.log('Remember, on liveCD user = ' + chalk.cyanBright(this.settings.config.user_opt) + '/' + chalk.cyanBright(this.settings.config.user_opt_passwd));
36
+ console.log(' root = ' + chalk.cyanBright('root') + '/' + chalk.cyanBright(this.settings.config.root_passwd));
37
+ if (this.genisoimage) {
38
+ console.log(`Note: format UDF, generated by ${chalk.cyanBright('genisoimage')}`);
39
+ }
40
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * ./src/classes/ovary.d/initrd.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import Ovary from '../ovary.js';
9
+ /**
10
+ * initrdAlpine
11
+ */
12
+ export declare function initrdAlpine(this: Ovary): Promise<void>;
13
+ /**
14
+ * initrdArch
15
+ */
16
+ export declare function initrdArch(this: Ovary): Promise<void>;
17
+ /**
18
+ * initrdDebian
19
+ */
20
+ export declare function initrdDebian(this: Ovary, verbose?: boolean): Promise<void>;
21
+ export declare function initrdDracut(this: Ovary): Promise<void>;