penguins-eggs 25.10.28 → 25.10.30

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 (452) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/addons/eggs/theme/applications/install-system.desktop +8 -6
  3. package/assets/calamares/io.calamares.calamares.policy +25 -0
  4. package/dist/classes/bleach.d.ts +37 -0
  5. package/dist/classes/bleach.js +148 -0
  6. package/dist/classes/cli-autologin.d.ts +52 -0
  7. package/dist/classes/cli-autologin.js +252 -0
  8. package/dist/classes/compressors.d.ts +54 -0
  9. package/dist/classes/compressors.js +109 -0
  10. package/dist/classes/daddy.d.ts +26 -0
  11. package/dist/classes/daddy.js +179 -0
  12. package/dist/classes/distro.d.ts +32 -0
  13. package/dist/classes/distro.js +363 -0
  14. package/dist/classes/diversions.d.ts +53 -0
  15. package/dist/classes/diversions.js +131 -0
  16. package/dist/classes/incubation/branding.d.ts +17 -0
  17. package/dist/classes/incubation/branding.js +85 -0
  18. package/dist/classes/incubation/customize/customize-partitions.d.ts +12 -0
  19. package/dist/classes/incubation/customize/customize-partitions.js +37 -0
  20. package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +1 -0
  21. package/dist/classes/incubation/fisherman-helper/initcpio.js +69 -0
  22. package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
  23. package/dist/classes/incubation/fisherman-helper/packages.js +72 -0
  24. package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
  25. package/dist/classes/incubation/fisherman-helper/settings.js +116 -0
  26. package/dist/classes/incubation/fisherman.d.ts +71 -0
  27. package/dist/classes/incubation/fisherman.js +281 -0
  28. package/dist/classes/incubation/incubator.d/alpine.d.ts +32 -0
  29. package/dist/classes/incubation/incubator.d/alpine.js +78 -0
  30. package/dist/classes/incubation/incubator.d/archlinux.d.ts +32 -0
  31. package/dist/classes/incubation/incubator.d/archlinux.js +82 -0
  32. package/dist/classes/incubation/incubator.d/bionic.d.ts +32 -0
  33. package/dist/classes/incubation/incubator.d/bionic.js +83 -0
  34. package/dist/classes/incubation/incubator.d/buster.d.ts +32 -0
  35. package/dist/classes/incubation/incubator.d/buster.js +101 -0
  36. package/dist/classes/incubation/incubator.d/fedora.d.ts +32 -0
  37. package/dist/classes/incubation/incubator.d/fedora.js +81 -0
  38. package/dist/classes/incubation/incubator.d/focal.d.ts +32 -0
  39. package/dist/classes/incubation/incubator.d/focal.js +85 -0
  40. package/dist/classes/incubation/incubator.d/manjaro.d.ts +32 -0
  41. package/dist/classes/incubation/incubator.d/manjaro.js +82 -0
  42. package/dist/classes/incubation/incubator.d/noble.d.ts +32 -0
  43. package/dist/classes/incubation/incubator.d/noble.js +102 -0
  44. package/dist/classes/incubation/incubator.d/openmamba.d.ts +32 -0
  45. package/dist/classes/incubation/incubator.d/openmamba.js +81 -0
  46. package/dist/classes/incubation/incubator.d/opensuse.d.ts +32 -0
  47. package/dist/classes/incubation/incubator.d/opensuse.js +81 -0
  48. package/dist/classes/incubation/incubator.d/trixie.d.ts +32 -0
  49. package/dist/classes/incubation/incubator.d/trixie.js +98 -0
  50. package/dist/classes/incubation/incubator.d.ts +49 -0
  51. package/dist/classes/incubation/incubator.js +383 -0
  52. package/dist/classes/incubation/installer.d.ts +13 -0
  53. package/dist/classes/incubation/installer.js +52 -0
  54. package/dist/classes/keyboards.d.ts +50 -0
  55. package/dist/classes/keyboards.js +287 -0
  56. package/dist/classes/locales.d.ts +21 -0
  57. package/dist/classes/locales.js +77 -0
  58. package/dist/classes/network.d.ts +37 -0
  59. package/dist/classes/network.js +98 -0
  60. package/dist/classes/ovary.d/bind-live-fs.d.ts +18 -0
  61. package/dist/classes/ovary.d/bind-live-fs.js +185 -0
  62. package/dist/classes/ovary.d/bind-vfs.d.ts +17 -0
  63. package/dist/classes/ovary.d/bind-vfs.js +37 -0
  64. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +13 -0
  65. package/dist/classes/ovary.d/create-xdg-autostart.js +193 -0
  66. package/dist/classes/ovary.d/edit-live-fs.d.ts +20 -0
  67. package/dist/classes/ovary.d/edit-live-fs.js +239 -0
  68. package/dist/classes/ovary.d/fertilization.d.ts +12 -0
  69. package/dist/classes/ovary.d/fertilization.js +53 -0
  70. package/dist/classes/ovary.d/finished.d.ts +13 -0
  71. package/dist/classes/ovary.d/finished.js +40 -0
  72. package/dist/classes/ovary.d/initrd.d.ts +21 -0
  73. package/dist/classes/ovary.d/initrd.js +96 -0
  74. package/dist/classes/ovary.d/kernel-copy.d.ts +12 -0
  75. package/dist/classes/ovary.d/kernel-copy.js +22 -0
  76. package/dist/classes/ovary.d/live-create-structure.d.ts +12 -0
  77. package/dist/classes/ovary.d/live-create-structure.js +70 -0
  78. package/dist/classes/ovary.d/luks-get-password.d.ts +12 -0
  79. package/dist/classes/ovary.d/luks-get-password.js +58 -0
  80. package/dist/classes/ovary.d/luks-helpers.d.ts +19 -0
  81. package/dist/classes/ovary.d/luks-helpers.js +73 -0
  82. package/dist/classes/ovary.d/luks-home-support.d.ts +12 -0
  83. package/dist/classes/ovary.d/luks-home-support.js +70 -0
  84. package/dist/classes/ovary.d/luks-home.d.ts +15 -0
  85. package/dist/classes/ovary.d/luks-home.js +132 -0
  86. package/dist/classes/ovary.d/luks-interactive-crypto-config.d.ts +47 -0
  87. package/dist/classes/ovary.d/luks-interactive-crypto-config.js +139 -0
  88. package/dist/classes/ovary.d/luks-root-initrd.d.ts +17 -0
  89. package/dist/classes/ovary.d/luks-root-initrd.js +213 -0
  90. package/dist/classes/ovary.d/luks-root.d.ts +15 -0
  91. package/dist/classes/ovary.d/luks-root.js +123 -0
  92. package/dist/classes/ovary.d/make-dot-disk.d.ts +12 -0
  93. package/dist/classes/ovary.d/make-dot-disk.js +71 -0
  94. package/dist/classes/ovary.d/make-efi.d.ts +14 -0
  95. package/dist/classes/ovary.d/make-efi.js +296 -0
  96. package/dist/classes/ovary.d/make-iso.d.ts +13 -0
  97. package/dist/classes/ovary.d/make-iso.js +45 -0
  98. package/dist/classes/ovary.d/make-squashfs.d.ts +18 -0
  99. package/dist/classes/ovary.d/make-squashfs.js +111 -0
  100. package/dist/classes/ovary.d/merged.d.ts +27 -0
  101. package/dist/classes/ovary.d/merged.js +78 -0
  102. package/dist/classes/ovary.d/produce.d.ts +23 -0
  103. package/dist/classes/ovary.d/produce.js +349 -0
  104. package/dist/classes/ovary.d/rexec.d.ts +13 -0
  105. package/dist/classes/ovary.d/rexec.js +34 -0
  106. package/dist/classes/ovary.d/syslinux.d.ts +12 -0
  107. package/dist/classes/ovary.d/syslinux.js +99 -0
  108. package/dist/classes/ovary.d/user-create-live.d.ts +14 -0
  109. package/dist/classes/ovary.d/user-create-live.js +97 -0
  110. package/dist/classes/ovary.d/users-remove.d.ts +9 -0
  111. package/dist/classes/ovary.d/users-remove.js +38 -0
  112. package/dist/classes/ovary.d/xorriso-command.d.ts +14 -0
  113. package/dist/classes/ovary.d/xorriso-command.js +125 -0
  114. package/dist/classes/ovary.d.ts +111 -0
  115. package/dist/classes/ovary.js +122 -0
  116. package/dist/classes/pacman.d/alpine.d.ts +56 -0
  117. package/dist/classes/pacman.d/alpine.js +167 -0
  118. package/dist/classes/pacman.d/archlinux.d.ts +62 -0
  119. package/dist/classes/pacman.d/archlinux.js +128 -0
  120. package/dist/classes/pacman.d/debian.d.ts +65 -0
  121. package/dist/classes/pacman.d/debian.js +143 -0
  122. package/dist/classes/pacman.d/fedora.d.ts +53 -0
  123. package/dist/classes/pacman.d/fedora.js +107 -0
  124. package/dist/classes/pacman.d/openmamba.d.ts +52 -0
  125. package/dist/classes/pacman.d/openmamba.js +106 -0
  126. package/dist/classes/pacman.d/opensuse.d.ts +53 -0
  127. package/dist/classes/pacman.d/opensuse.js +109 -0
  128. package/dist/classes/pacman.d.ts +139 -0
  129. package/dist/classes/pacman.js +683 -0
  130. package/dist/classes/pve-live.d.ts +17 -0
  131. package/dist/classes/pve-live.js +52 -0
  132. package/dist/classes/pxe.d.ts +76 -0
  133. package/dist/classes/pxe.js +353 -0
  134. package/dist/classes/settings.d.ts +52 -0
  135. package/dist/classes/settings.js +185 -0
  136. package/dist/classes/sources_list.d.ts +28 -0
  137. package/dist/classes/sources_list.js +89 -0
  138. package/dist/classes/systemctl.d.ts +47 -0
  139. package/dist/classes/systemctl.js +86 -0
  140. package/dist/classes/tailor.d.ts +50 -0
  141. package/dist/classes/tailor.js +563 -0
  142. package/dist/classes/tools.d.ts +26 -0
  143. package/dist/classes/tools.js +50 -0
  144. package/dist/classes/users.d.ts +28 -0
  145. package/dist/classes/users.js +143 -0
  146. package/dist/classes/utils.d/kernel.d.ts +39 -0
  147. package/dist/classes/utils.d/kernel.js +206 -0
  148. package/dist/classes/utils.d.ts +330 -0
  149. package/dist/classes/utils.js +968 -0
  150. package/dist/classes/xdg.d.ts +45 -0
  151. package/dist/classes/xdg.js +337 -0
  152. package/dist/classes/yolk.d.ts +33 -0
  153. package/dist/classes/yolk.js +114 -0
  154. package/dist/commands/adapt.d.ts +17 -0
  155. package/dist/commands/adapt.js +33 -0
  156. package/dist/commands/analyze.d.ts +26 -0
  157. package/dist/commands/analyze.js +95 -0
  158. package/dist/commands/calamares.d.ts +29 -0
  159. package/dist/commands/calamares.js +112 -0
  160. package/dist/commands/config.d.ts +35 -0
  161. package/dist/commands/config.js +120 -0
  162. package/dist/commands/cuckoo.d.ts +17 -0
  163. package/dist/commands/cuckoo.js +61 -0
  164. package/dist/commands/dad.d.ts +21 -0
  165. package/dist/commands/dad.js +47 -0
  166. package/dist/commands/export/iso.d.ts +19 -0
  167. package/dist/commands/export/iso.js +55 -0
  168. package/dist/commands/export/pkg.d.ts +29 -0
  169. package/dist/commands/export/pkg.js +173 -0
  170. package/dist/commands/export/tarballs.d.ts +27 -0
  171. package/dist/commands/export/tarballs.js +79 -0
  172. package/dist/commands/install.d.ts +39 -0
  173. package/dist/commands/install.js +113 -0
  174. package/dist/commands/kill.d.ts +24 -0
  175. package/dist/commands/kill.js +50 -0
  176. package/dist/commands/love.d.ts +25 -0
  177. package/dist/commands/love.js +118 -0
  178. package/dist/commands/mom.d.ts +16 -0
  179. package/dist/commands/mom.js +30 -0
  180. package/dist/commands/pods.d.ts +22 -0
  181. package/dist/commands/pods.js +92 -0
  182. package/dist/commands/produce.d.ts +37 -0
  183. package/dist/commands/produce.js +232 -0
  184. package/dist/commands/status.d.ts +23 -0
  185. package/dist/commands/status.js +31 -0
  186. package/dist/commands/tools/clean.d.ts +18 -0
  187. package/dist/commands/tools/clean.js +37 -0
  188. package/dist/commands/tools/repo.d.ts +31 -0
  189. package/dist/commands/tools/repo.js +246 -0
  190. package/dist/commands/tools/skel.d.ts +18 -0
  191. package/dist/commands/tools/skel.js +44 -0
  192. package/dist/commands/tools/stat.d.ts +31 -0
  193. package/dist/commands/tools/stat.js +70 -0
  194. package/dist/commands/tools/yolk.d.ts +24 -0
  195. package/dist/commands/tools/yolk.js +45 -0
  196. package/dist/commands/update.d.ts +46 -0
  197. package/dist/commands/update.js +238 -0
  198. package/dist/commands/wardrobe/get.d.ts +23 -0
  199. package/dist/commands/wardrobe/get.js +52 -0
  200. package/dist/commands/wardrobe/list.d.ts +24 -0
  201. package/dist/commands/wardrobe/list.js +125 -0
  202. package/dist/commands/wardrobe/show.d.ts +25 -0
  203. package/dist/commands/wardrobe/show.js +97 -0
  204. package/dist/commands/wardrobe/wear.d.ts +26 -0
  205. package/dist/commands/wardrobe/wear.js +84 -0
  206. package/dist/dhcpd-proxy/classes/packet.d.ts +36 -0
  207. package/dist/dhcpd-proxy/classes/packet.js +124 -0
  208. package/dist/dhcpd-proxy/index.d.ts +4 -0
  209. package/dist/dhcpd-proxy/index.js +4 -0
  210. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +45 -0
  211. package/dist/dhcpd-proxy/interfaces/i-pxe.js +1 -0
  212. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +11 -0
  213. package/dist/dhcpd-proxy/lib/packet/converters.js +395 -0
  214. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +10 -0
  215. package/dist/dhcpd-proxy/lib/packet/message-types.js +12 -0
  216. package/dist/dhcpd-proxy/lib/packet/options.d.ts +8 -0
  217. package/dist/dhcpd-proxy/lib/packet/options.js +264 -0
  218. package/dist/dhcpd-proxy/lib/sprintf.d.ts +6 -0
  219. package/dist/dhcpd-proxy/lib/sprintf.js +130 -0
  220. package/dist/dhcpd-proxy/lib/utils.d.ts +126 -0
  221. package/dist/dhcpd-proxy/lib/utils.js +255 -0
  222. package/dist/dhcpd-proxy/simple-proxy.d.ts +11 -0
  223. package/dist/dhcpd-proxy/simple-proxy.js +118 -0
  224. package/dist/index.d.ts +8 -0
  225. package/dist/index.js +8 -0
  226. package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +23 -0
  227. package/dist/interfaces/calamares/i-calamares-bootloader.js +7 -0
  228. package/dist/interfaces/calamares/i-calamares-branding.d.ts +46 -0
  229. package/dist/interfaces/calamares/i-calamares-branding.js +1 -0
  230. package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +34 -0
  231. package/dist/interfaces/calamares/i-calamares-displaymanager.js +1 -0
  232. package/dist/interfaces/calamares/i-calamares-finished.d.ts +14 -0
  233. package/dist/interfaces/calamares/i-calamares-finished.js +1 -0
  234. package/dist/interfaces/calamares/i-calamares-packages.d.ts +26 -0
  235. package/dist/interfaces/calamares/i-calamares-packages.js +1 -0
  236. package/dist/interfaces/calamares/i-calamares-partitions.d.ts +39 -0
  237. package/dist/interfaces/calamares/i-calamares-partitions.js +1 -0
  238. package/dist/interfaces/calamares/i-calamares-settings.d.ts +36 -0
  239. package/dist/interfaces/calamares/i-calamares-settings.js +1 -0
  240. package/dist/interfaces/i-addons.d.ts +12 -0
  241. package/dist/interfaces/i-addons.js +8 -0
  242. package/dist/interfaces/i-analyze.d.ts +17 -0
  243. package/dist/interfaces/i-analyze.js +17 -0
  244. package/dist/interfaces/i-app.d.ts +14 -0
  245. package/dist/interfaces/i-app.js +8 -0
  246. package/dist/interfaces/i-config-tools.d.ts +15 -0
  247. package/dist/interfaces/i-config-tools.js +8 -0
  248. package/dist/interfaces/i-devices.d.ts +20 -0
  249. package/dist/interfaces/i-devices.js +8 -0
  250. package/dist/interfaces/i-distro.d.ts +23 -0
  251. package/dist/interfaces/i-distro.js +8 -0
  252. package/dist/interfaces/i-drive-list.d.ts +33 -0
  253. package/dist/interfaces/i-drive-list.js +8 -0
  254. package/dist/interfaces/i-eggs-config.d.ts +32 -0
  255. package/dist/interfaces/i-eggs-config.js +8 -0
  256. package/dist/interfaces/i-excludes.d.ts +14 -0
  257. package/dist/interfaces/i-excludes.js +8 -0
  258. package/dist/interfaces/i-exec.d.ts +11 -0
  259. package/dist/interfaces/i-exec.js +8 -0
  260. package/dist/interfaces/i-initrd.d.ts +13 -0
  261. package/dist/interfaces/i-initrd.js +8 -0
  262. package/dist/interfaces/i-install.d.ts +16 -0
  263. package/dist/interfaces/i-install.js +8 -0
  264. package/dist/interfaces/i-installer.d.ts +17 -0
  265. package/dist/interfaces/i-installer.js +8 -0
  266. package/dist/interfaces/i-luks-passphrase.d.ts +11 -0
  267. package/dist/interfaces/i-luks-passphrase.js +8 -0
  268. package/dist/interfaces/i-materia.d.ts +36 -0
  269. package/dist/interfaces/i-materia.js +8 -0
  270. package/dist/interfaces/i-net.d.ts +16 -0
  271. package/dist/interfaces/i-net.js +8 -0
  272. package/dist/interfaces/i-os-release.d.ts +5 -0
  273. package/dist/interfaces/i-os-release.js +1 -0
  274. package/dist/interfaces/i-packages.d.ts +16 -0
  275. package/dist/interfaces/i-packages.js +8 -0
  276. package/dist/interfaces/i-partitions.d.ts +16 -0
  277. package/dist/interfaces/i-partitions.js +8 -0
  278. package/dist/interfaces/i-pxe.d.ts +45 -0
  279. package/dist/interfaces/i-pxe.js +1 -0
  280. package/dist/interfaces/i-remix.d.ts +21 -0
  281. package/dist/interfaces/i-remix.js +8 -0
  282. package/dist/interfaces/i-settings.d.ts +33 -0
  283. package/dist/interfaces/i-settings.js +8 -0
  284. package/dist/interfaces/i-user.d.ts +14 -0
  285. package/dist/interfaces/i-user.js +8 -0
  286. package/dist/interfaces/i-workdir.d.ts +14 -0
  287. package/dist/interfaces/i-workdir.js +8 -0
  288. package/dist/interfaces/i-xkb-model.d.ts +24 -0
  289. package/dist/interfaces/i-xkb-model.js +8 -0
  290. package/dist/interfaces/index.d.ts +26 -0
  291. package/dist/interfaces/index.js +8 -0
  292. package/dist/krill/classes/cfs.d.ts +17 -0
  293. package/dist/krill/classes/cfs.js +39 -0
  294. package/dist/krill/classes/krill_enums.d.ts +37 -0
  295. package/dist/krill/classes/krill_enums.js +41 -0
  296. package/dist/krill/classes/prepare.d/confirm.d.ts +5 -0
  297. package/dist/krill/classes/prepare.d/confirm.js +30 -0
  298. package/dist/krill/classes/prepare.d/keyboard.d.ts +14 -0
  299. package/dist/krill/classes/prepare.d/keyboard.js +62 -0
  300. package/dist/krill/classes/prepare.d/location.d.ts +17 -0
  301. package/dist/krill/classes/prepare.d/location.js +59 -0
  302. package/dist/krill/classes/prepare.d/network.d.ts +14 -0
  303. package/dist/krill/classes/prepare.d/network.js +68 -0
  304. package/dist/krill/classes/prepare.d/partitions.d.ts +14 -0
  305. package/dist/krill/classes/prepare.d/partitions.js +86 -0
  306. package/dist/krill/classes/prepare.d/summary.d.ts +15 -0
  307. package/dist/krill/classes/prepare.d/summary.js +72 -0
  308. package/dist/krill/classes/prepare.d/users.d.ts +6 -0
  309. package/dist/krill/classes/prepare.d/users.js +63 -0
  310. package/dist/krill/classes/prepare.d/welcome.d.ts +6 -0
  311. package/dist/krill/classes/prepare.d/welcome.js +30 -0
  312. package/dist/krill/classes/prepare.d.ts +89 -0
  313. package/dist/krill/classes/prepare.js +319 -0
  314. package/dist/krill/classes/sequence.d/add_user.d.ts +20 -0
  315. package/dist/krill/classes/sequence.d/add_user.js +77 -0
  316. package/dist/krill/classes/sequence.d/bootloader.d.ts +14 -0
  317. package/dist/krill/classes/sequence.d/bootloader.js +117 -0
  318. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +14 -0
  319. package/dist/krill/classes/sequence.d/bootloader_config.js +192 -0
  320. package/dist/krill/classes/sequence.d/change_password.d.ts +15 -0
  321. package/dist/krill/classes/sequence.d/change_password.js +18 -0
  322. package/dist/krill/classes/sequence.d/del_live_user.d.ts +14 -0
  323. package/dist/krill/classes/sequence.d/del_live_user.js +39 -0
  324. package/dist/krill/classes/sequence.d/fstab.d.ts +14 -0
  325. package/dist/krill/classes/sequence.d/fstab.js +177 -0
  326. package/dist/krill/classes/sequence.d/grubcfg.d.ts +17 -0
  327. package/dist/krill/classes/sequence.d/grubcfg.js +35 -0
  328. package/dist/krill/classes/sequence.d/hostname.d.ts +13 -0
  329. package/dist/krill/classes/sequence.d/hostname.js +50 -0
  330. package/dist/krill/classes/sequence.d/initramfs.d.ts +13 -0
  331. package/dist/krill/classes/sequence.d/initramfs.js +54 -0
  332. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +14 -0
  333. package/dist/krill/classes/sequence.d/initramfs_cfg.js +35 -0
  334. package/dist/krill/classes/sequence.d/locale.d.ts +13 -0
  335. package/dist/krill/classes/sequence.d/locale.js +91 -0
  336. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +10 -0
  337. package/dist/krill/classes/sequence.d/locale_cfg.js +58 -0
  338. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +14 -0
  339. package/dist/krill/classes/sequence.d/m_keyboard.js +58 -0
  340. package/dist/krill/classes/sequence.d/machine_id.d.ts +15 -0
  341. package/dist/krill/classes/sequence.d/machine_id.js +33 -0
  342. package/dist/krill/classes/sequence.d/mkfs.d.ts +15 -0
  343. package/dist/krill/classes/sequence.d/mkfs.js +88 -0
  344. package/dist/krill/classes/sequence.d/mount_fs.d.ts +17 -0
  345. package/dist/krill/classes/sequence.d/mount_fs.js +68 -0
  346. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +17 -0
  347. package/dist/krill/classes/sequence.d/mount_vfs.js +59 -0
  348. package/dist/krill/classes/sequence.d/network_cfg.d.ts +19 -0
  349. package/dist/krill/classes/sequence.d/network_cfg.js +73 -0
  350. package/dist/krill/classes/sequence.d/packages.d.ts +14 -0
  351. package/dist/krill/classes/sequence.d/packages.js +111 -0
  352. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +17 -0
  353. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +73 -0
  354. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +16 -0
  355. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +51 -0
  356. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +17 -0
  357. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +77 -0
  358. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +10 -0
  359. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +33 -0
  360. package/dist/krill/classes/sequence.d/partition.d.ts +14 -0
  361. package/dist/krill/classes/sequence.d/partition.js +84 -0
  362. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +13 -0
  363. package/dist/krill/classes/sequence.d/remove_installer_link.js +35 -0
  364. package/dist/krill/classes/sequence.d/umount.d.ts +14 -0
  365. package/dist/krill/classes/sequence.d/umount.js +28 -0
  366. package/dist/krill/classes/sequence.d/unpackfs.d.ts +13 -0
  367. package/dist/krill/classes/sequence.d/unpackfs.js +20 -0
  368. package/dist/krill/classes/sequence.d.ts +134 -0
  369. package/dist/krill/classes/sequence.js +400 -0
  370. package/dist/krill/components/finished.d.ts +16 -0
  371. package/dist/krill/components/finished.js +56 -0
  372. package/dist/krill/components/information.d.ts +8 -0
  373. package/dist/krill/components/information.js +162 -0
  374. package/dist/krill/components/install.d.ts +15 -0
  375. package/dist/krill/components/install.js +60 -0
  376. package/dist/krill/components/keyboard.d.ts +16 -0
  377. package/dist/krill/components/keyboard.js +54 -0
  378. package/dist/krill/components/location.d.ts +16 -0
  379. package/dist/krill/components/location.js +59 -0
  380. package/dist/krill/components/network.d.ts +19 -0
  381. package/dist/krill/components/network.js +65 -0
  382. package/dist/krill/components/partitions.d.ts +18 -0
  383. package/dist/krill/components/partitions.js +89 -0
  384. package/dist/krill/components/steps.d.ts +13 -0
  385. package/dist/krill/components/steps.js +148 -0
  386. package/dist/krill/components/summary.d.ts +25 -0
  387. package/dist/krill/components/summary.js +77 -0
  388. package/dist/krill/components/title.d.ts +11 -0
  389. package/dist/krill/components/title.js +35 -0
  390. package/dist/krill/components/users.d.ts +24 -0
  391. package/dist/krill/components/users.js +80 -0
  392. package/dist/krill/components/welcome.d.ts +13 -0
  393. package/dist/krill/components/welcome.js +63 -0
  394. package/dist/krill/interfaces/i_krill.d.ts +44 -0
  395. package/dist/krill/interfaces/i_krill.js +8 -0
  396. package/dist/krill/interfaces/i_krill_config.d.ts +35 -0
  397. package/dist/krill/interfaces/i_krill_config.js +8 -0
  398. package/dist/krill/lib/get_address.d.ts +8 -0
  399. package/dist/krill/lib/get_address.js +23 -0
  400. package/dist/krill/lib/get_dns.d.ts +8 -0
  401. package/dist/krill/lib/get_dns.js +23 -0
  402. package/dist/krill/lib/get_domain.d.ts +8 -0
  403. package/dist/krill/lib/get_domain.js +23 -0
  404. package/dist/krill/lib/get_gateway.d.ts +8 -0
  405. package/dist/krill/lib/get_gateway.js +23 -0
  406. package/dist/krill/lib/get_hostname.d.ts +8 -0
  407. package/dist/krill/lib/get_hostname.js +23 -0
  408. package/dist/krill/lib/get_luks_passphrase.d.ts +8 -0
  409. package/dist/krill/lib/get_luks_passphrase.js +32 -0
  410. package/dist/krill/lib/get_netmask.d.ts +8 -0
  411. package/dist/krill/lib/get_netmask.js +23 -0
  412. package/dist/krill/lib/get_password.d.ts +8 -0
  413. package/dist/krill/lib/get_password.js +36 -0
  414. package/dist/krill/lib/get_userfullname.d.ts +8 -0
  415. package/dist/krill/lib/get_userfullname.js +23 -0
  416. package/dist/krill/lib/get_username.d.ts +8 -0
  417. package/dist/krill/lib/get_username.js +23 -0
  418. package/dist/krill/lib/select_address_type.d.ts +8 -0
  419. package/dist/krill/lib/select_address_type.js +24 -0
  420. package/dist/krill/lib/select_filesystem_type.d.ts +8 -0
  421. package/dist/krill/lib/select_filesystem_type.js +40 -0
  422. package/dist/krill/lib/select_installation_device.d.ts +8 -0
  423. package/dist/krill/lib/select_installation_device.js +40 -0
  424. package/dist/krill/lib/select_installation_mode.d.ts +9 -0
  425. package/dist/krill/lib/select_installation_mode.js +25 -0
  426. package/dist/krill/lib/select_interface.d.ts +8 -0
  427. package/dist/krill/lib/select_interface.js +24 -0
  428. package/dist/krill/lib/select_keyboard_layout.d.ts +11 -0
  429. package/dist/krill/lib/select_keyboard_layout.js +36 -0
  430. package/dist/krill/lib/select_keyboard_model.d.ts +11 -0
  431. package/dist/krill/lib/select_keyboard_model.js +34 -0
  432. package/dist/krill/lib/select_keyboard_option.d.ts +11 -0
  433. package/dist/krill/lib/select_keyboard_option.js +34 -0
  434. package/dist/krill/lib/select_keyboard_variant.d.ts +11 -0
  435. package/dist/krill/lib/select_keyboard_variant.js +35 -0
  436. package/dist/krill/lib/select_languages.d.ts +8 -0
  437. package/dist/krill/lib/select_languages.js +28 -0
  438. package/dist/krill/lib/select_regions.d.ts +8 -0
  439. package/dist/krill/lib/select_regions.js +24 -0
  440. package/dist/krill/lib/select_replaced_partition.d.ts +8 -0
  441. package/dist/krill/lib/select_replaced_partition.js +31 -0
  442. package/dist/krill/lib/select_user_swap_choice.d.ts +9 -0
  443. package/dist/krill/lib/select_user_swap_choice.js +35 -0
  444. package/dist/krill/lib/select_zones.d.ts +8 -0
  445. package/dist/krill/lib/select_zones.js +518 -0
  446. package/dist/lib/kill_me_softly.d.ts +11 -0
  447. package/dist/lib/kill_me_softly.js +61 -0
  448. package/dist/lib/utils.d.ts +19 -0
  449. package/dist/lib/utils.js +65 -0
  450. package/dracut/dracut.conf.d/50-live.conf +12 -13
  451. package/package.json +1 -1
  452. package/perrisbrewery/template/dependencies.yaml +1 -0
@@ -0,0 +1,128 @@
1
+ /**
2
+ * ./src/classes/families/archlinux.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 fs from 'node:fs';
9
+ import shx from 'shelljs';
10
+ import { exec } from '../../lib/utils.js';
11
+ import Utils from '../utils.js';
12
+ /**
13
+ * Archlinux
14
+ * @remarks all the utilities
15
+ */
16
+ export default class Archlinux {
17
+ static packs4calamares = ['calamares-eggs']; // , 'calamares']
18
+ /**
19
+ * Archlinux: calamaresInstall
20
+ */
21
+ static async calamaresInstall(verbose = false) {
22
+ verbose = true; // serve per pacman
23
+ const echo = Utils.setEcho(verbose);
24
+ let cmd = `pacman -S calamares-eggs --noconfirm`;
25
+ try {
26
+ await exec(cmd, echo);
27
+ }
28
+ catch {
29
+ Utils.error(`Cannot install calamares-eggs`);
30
+ }
31
+ }
32
+ /**
33
+ *
34
+ * calamaresPolicies
35
+ */
36
+ static async calamaresPolicies(verbose = false) {
37
+ // nothing
38
+ }
39
+ /**
40
+ * Archlinux: calamaresRemove
41
+ */
42
+ static async calamaresRemove(verbose = true) {
43
+ verbose = true; // serve per pacman
44
+ let success = false;
45
+ const echo = Utils.setEcho(verbose);
46
+ try {
47
+ await exec('pacman -R calamares calamares-eggs --noconfirm', echo);
48
+ success = true;
49
+ }
50
+ catch {
51
+ Utils.error(`Cannot remove calamares-eggs`);
52
+ }
53
+ if (success && fs.existsSync('/etc/calamares')) {
54
+ await exec('rm /etc/calamares -rf', echo);
55
+ }
56
+ return success;
57
+ }
58
+ /**
59
+ * Archlinux: isInstalledWayland
60
+ * @returns true if wayland is installed
61
+ */
62
+ static isInstalledWayland() {
63
+ return this.packageIsInstalled('xwayland');
64
+ }
65
+ /**
66
+ * Archlinux: isInstalledXorg
67
+ * @returns true if xorg is installed
68
+ */
69
+ static isInstalledXorg() {
70
+ return this.packageIsInstalled('xorg-server-common');
71
+ }
72
+ /**
73
+ * Archlinux: packageInstall
74
+ * Install the package packageName
75
+ * @param packageName {string} Pacchetto Debian da installare
76
+ * @returns {boolean} True if success
77
+ */
78
+ static async packageInstall(packageName) {
79
+ let retVal = false;
80
+ if (shx.exec(`/usr/bin/pacman -Si ${packageName}`, { silent: true }) === '0') {
81
+ retVal = true;
82
+ }
83
+ return retVal;
84
+ }
85
+ /**
86
+ * Archlinux: packageIsInstalled
87
+ * restuisce VERO se il pacchetto è installato
88
+ * @param packageName
89
+ */
90
+ static packageIsInstalled(packageName) {
91
+ let installed = false;
92
+ const cmd = `/usr/bin/pacman -Qi ${packageName}`;
93
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
94
+ if (stdout.includes(packageName)) {
95
+ installed = true;
96
+ }
97
+ return installed;
98
+ }
99
+ /**
100
+ * Archlinux: packagePacmanAvailable
101
+ * restuisce VERO se il pacchetto è installato
102
+ * @param packageName
103
+ */
104
+ static async packagePacmanAvailable(packageName) {
105
+ let available = false;
106
+ const cmd = `/usr/bin/pacman -Q ${packageName} | awk '{ print $1 }'`;
107
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
108
+ if (stdout == packageName) {
109
+ available = true;
110
+ }
111
+ return available;
112
+ }
113
+ /**
114
+ * Archlinux: packagePacmanLast
115
+ * @param packageName
116
+ * @returns
117
+ */
118
+ static async packagePacmanLast(packageName) {
119
+ let version = '';
120
+ const cmd = `/usr/bin/pacman -Q ${packageName} | grep Version:`;
121
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
122
+ version = stdout.slice(9);
123
+ // console.log('===================================')
124
+ // console.log('[' + version + ']')
125
+ // console.log('===================================')
126
+ return version;
127
+ }
128
+ }
@@ -0,0 +1,65 @@
1
+ /**
2
+ * ./src/classes/families/debian.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ /**
9
+ * Debian
10
+ * @remarks all the utilities
11
+ */
12
+ export default class Debian {
13
+ static debs4calamares: string[];
14
+ /**
15
+ * Debian: calamaresInstall
16
+ */
17
+ static calamaresInstall(verbose?: boolean): Promise<void>;
18
+ /**
19
+ * Debian: calamaresPolicies
20
+ */
21
+ static calamaresPolicies(verbose?: boolean): Promise<void>;
22
+ /**
23
+ * Debian: calamaresRemove
24
+ */
25
+ static calamaresRemove(verbose?: boolean): Promise<boolean>;
26
+ /**
27
+ * Debian: isInstalledWayland
28
+ * @returns true if wayland is installed
29
+ */
30
+ static isInstalledWayland(): boolean;
31
+ /**
32
+ * Debian: isInstalledXorg
33
+ * @returns true if xorg is installed
34
+ */
35
+ static isInstalledXorg(): boolean;
36
+ /**
37
+ * Debian: liveInstallerPolicies
38
+ * liveInstallerPolicies is NOT USED
39
+ */
40
+ static liveInstallerPolicies(): Promise<void>;
41
+ /**
42
+ * Debian: packageAptAvailable
43
+ * return TRUE if package is present on repository
44
+ * @param debPackage
45
+ */
46
+ static packageAptAvailable(packageName: string): Promise<boolean>;
47
+ /**
48
+ * Debian: packageAptLast
49
+ * @param debPackage
50
+ * @returns version
51
+ */
52
+ static packageAptLast(debPackage: string): Promise<string>;
53
+ /**
54
+ * Debian: packageInstall
55
+ * @param packageName {string} Pacchetto Debian da installare
56
+ * @returns {boolean} True if success
57
+ */
58
+ static packageInstall(packageName: string): Promise<boolean>;
59
+ /**
60
+ * Debian: packageIsInstalled
61
+ * restuisce VERO se il pacchetto è installato
62
+ * @param debPackage
63
+ */
64
+ static packageIsInstalled(debPackage: string): boolean;
65
+ }
@@ -0,0 +1,143 @@
1
+ /**
2
+ * ./src/classes/families/debian.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 fs from 'node:fs';
9
+ import shx from 'shelljs';
10
+ import { exec } from '../../lib/utils.js';
11
+ import Utils from '../utils.js';
12
+ /**
13
+ * Debian
14
+ * @remarks all the utilities
15
+ */
16
+ export default class Debian {
17
+ static debs4calamares = ['calamares', 'qml-module-qtquick2', 'qml-module-qtquick-controls'];
18
+ /**
19
+ * Debian: calamaresInstall
20
+ */
21
+ static async calamaresInstall(verbose = true) {
22
+ const echo = Utils.setEcho(verbose);
23
+ try {
24
+ await exec('apt-get update --yes', echo);
25
+ }
26
+ catch {
27
+ Utils.error('Debian.calamaresInstall() apt-get update --yes '); // + e.error as string)
28
+ }
29
+ try {
30
+ // await exec(`apt-get install --yes ${array2spaced(this.debs4calamares)}`, echo)
31
+ await exec(`apt-get install --yes ${this.debs4calamares.join(' ')}`, echo);
32
+ }
33
+ catch {
34
+ Utils.error(`Debian.calamaresInstall() apt-get install --yes ${array2spaced(this.debs4calamares)}`); // + e.error)
35
+ }
36
+ // remove others calamares links
37
+ await exec('rm -f /usr/share/applications/calamares-eggs-debugging.desktop');
38
+ await exec('rm -f /usr/share/applications/calamares-eggs.desktop');
39
+ await exec('rm -f /usr/share/applications/calamares.desktop');
40
+ }
41
+ /**
42
+ * Debian: calamaresPolicies
43
+ */
44
+ static async calamaresPolicies(verbose = false) {
45
+ const echo = Utils.setEcho(verbose);
46
+ const policyFile = '/usr/share/polkit-1/actions/io.calamares.calamares.policy';
47
+ await exec(`sed -i 's/auth_admin/yes/' ${policyFile}`, echo);
48
+ }
49
+ /**
50
+ * Debian: calamaresRemove
51
+ */
52
+ static async calamaresRemove(verbose = true) {
53
+ const echo = Utils.setEcho(verbose);
54
+ const retVal = false;
55
+ if (fs.existsSync('/etc/calamares')) {
56
+ await exec('rm /etc/calamares -rf', echo);
57
+ }
58
+ await exec('apt-get remove --purge --yes calamares', echo);
59
+ await exec('apt-get autoremove --yes', echo);
60
+ return retVal;
61
+ }
62
+ /**
63
+ * Debian: isInstalledWayland
64
+ * @returns true if wayland is installed
65
+ */
66
+ static isInstalledWayland() {
67
+ return this.packageIsInstalled('xwayland');
68
+ }
69
+ /**
70
+ * Debian: isInstalledXorg
71
+ * @returns true if xorg is installed
72
+ */
73
+ static isInstalledXorg() {
74
+ return this.packageIsInstalled('xserver-xorg-core');
75
+ }
76
+ /**
77
+ * Debian: liveInstallerPolicies
78
+ * liveInstallerPolicies is NOT USED
79
+ */
80
+ static async liveInstallerPolicies() {
81
+ const policyFile = '/usr/share/polkit-1/actions/com.github.pieroproietti.penguins-eggs.policy';
82
+ await exec(`sed -i 's/auth_admin/yes/' ${policyFile}`);
83
+ }
84
+ /**
85
+ * Debian: packageAptAvailable
86
+ * return TRUE if package is present on repository
87
+ * @param debPackage
88
+ */
89
+ static async packageAptAvailable(packageName) {
90
+ let available = false;
91
+ const cmd = `apt-cache show ${packageName} | grep Package:`;
92
+ const test = `Package: ${packageName}`;
93
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
94
+ if (stdout === test) {
95
+ available = true;
96
+ }
97
+ return available;
98
+ }
99
+ /**
100
+ * Debian: packageAptLast
101
+ * @param debPackage
102
+ * @returns version
103
+ */
104
+ static async packageAptLast(debPackage) {
105
+ let version = '';
106
+ const cmd = `apt-cache show ${debPackage} | grep Version:`;
107
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
108
+ version = stdout.slice(9);
109
+ // console.log('===================================')
110
+ // console.log('[' + version + ']')
111
+ // console.log('===================================')
112
+ return version;
113
+ }
114
+ /**
115
+ * Debian: packageInstall
116
+ * @param packageName {string} Pacchetto Debian da installare
117
+ * @returns {boolean} True if success
118
+ */
119
+ static async packageInstall(packageName) {
120
+ let retVal = false;
121
+ if (shx.exec(`/usr/bin/apt-get install -y ${packageName}`, { silent: true }) === '0') {
122
+ retVal = true;
123
+ }
124
+ return retVal;
125
+ }
126
+ /**
127
+ * Debian: packageIsInstalled
128
+ * restuisce VERO se il pacchetto è installato
129
+ * @param debPackage
130
+ */
131
+ static packageIsInstalled(debPackage) {
132
+ let installed = false;
133
+ const cmd = `/usr/bin/dpkg -s ${debPackage} | grep Status:`;
134
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
135
+ if (stdout === 'Status: install ok installed') {
136
+ installed = true;
137
+ }
138
+ return installed;
139
+ }
140
+ }
141
+ function array2spaced(oArray) {
142
+ return oArray.join(' ');
143
+ }
@@ -0,0 +1,53 @@
1
+ /**
2
+ * ./src/classes/families/fedora.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ /**
9
+ * Utils: general porpourse utils
10
+ * @remarks all the utilities
11
+ */
12
+ export default class Fedora {
13
+ static packs4calamares: string[];
14
+ /**
15
+ *
16
+ */
17
+ static calamaresInstall(verbose?: boolean): Promise<void>;
18
+ /**
19
+ *
20
+ * calamaresPolicies
21
+ */
22
+ static calamaresPolicies(verbose?: boolean): Promise<void>;
23
+ /**
24
+ *
25
+ */
26
+ static calamaresRemove(verbose?: boolean): Promise<boolean>;
27
+ /**
28
+ * check if it's installed wayland
29
+ * @returns true if wayland
30
+ */
31
+ static isInstalledWayland(): boolean;
32
+ /**
33
+ * check if it's installed xorg
34
+ * @returns true if xorg is installed
35
+ */
36
+ static isInstalledXorg(): boolean;
37
+ /**
38
+ * restuisce VERO se il pacchetto è installato
39
+ * @param packageName
40
+ */
41
+ static packageAvailable(packageName: string): Promise<boolean>;
42
+ /**
43
+ * Install the package packageName
44
+ * @param packageName {string} Pacchetto da installare
45
+ * @returns {boolean} True if success
46
+ */
47
+ static packageInstall(packageName: string): Promise<boolean>;
48
+ /**
49
+ * restuisce VERO se il pacchetto è installato
50
+ * @param packageName
51
+ */
52
+ static packageIsInstalled(packageName: string): boolean;
53
+ }
@@ -0,0 +1,107 @@
1
+ /**
2
+ * ./src/classes/families/fedora.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 fs from 'node:fs';
9
+ import shx from 'shelljs';
10
+ import { exec } from '../../lib/utils.js';
11
+ import Utils from '../utils.js';
12
+ /**
13
+ * Utils: general porpourse utils
14
+ * @remarks all the utilities
15
+ */
16
+ export default class Fedora {
17
+ static packs4calamares = ['calamares'];
18
+ /**
19
+ *
20
+ */
21
+ static async calamaresInstall(verbose = true) {
22
+ const echo = Utils.setEcho(verbose);
23
+ try {
24
+ await exec(`dnf install -y calamares`, echo);
25
+ }
26
+ catch {
27
+ Utils.error(`cannot install calamares`);
28
+ }
29
+ }
30
+ /**
31
+ *
32
+ * calamaresPolicies
33
+ */
34
+ static async calamaresPolicies(verbose = false) {
35
+ // nothing
36
+ }
37
+ /**
38
+ *
39
+ */
40
+ static async calamaresRemove(verbose = true) {
41
+ const echo = Utils.setEcho(verbose);
42
+ let success = false;
43
+ try {
44
+ await exec('dnf -y remove calamares', echo);
45
+ success = true;
46
+ }
47
+ catch {
48
+ Utils.error(`Cannot remove calamares`);
49
+ }
50
+ if (success && fs.existsSync('/etc/calamares')) {
51
+ await exec('rm /etc/calamares -rf', echo);
52
+ }
53
+ return success;
54
+ }
55
+ /**
56
+ * check if it's installed wayland
57
+ * @returns true if wayland
58
+ */
59
+ static isInstalledWayland() {
60
+ return this.packageIsInstalled('xorg-x11-server-Xwayland*');
61
+ }
62
+ /**
63
+ * check if it's installed xorg
64
+ * @returns true if xorg is installed
65
+ */
66
+ static isInstalledXorg() {
67
+ return this.packageIsInstalled('xorg-x11-server-Xorg.x86_64');
68
+ }
69
+ /**
70
+ * restuisce VERO se il pacchetto è installato
71
+ * @param packageName
72
+ */
73
+ static async packageAvailable(packageName) {
74
+ let available = false;
75
+ const cmd = `/usr/bin/dnf list --available ${packageName} | grep Package:`;
76
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
77
+ if (stdout.includes(packageName)) {
78
+ available = true;
79
+ }
80
+ return available;
81
+ }
82
+ /**
83
+ * Install the package packageName
84
+ * @param packageName {string} Pacchetto da installare
85
+ * @returns {boolean} True if success
86
+ */
87
+ static async packageInstall(packageName) {
88
+ let retVal = false;
89
+ if (shx.exec(`/usr/bin/dnf install ${packageName}`, { silent: true }) === '0') {
90
+ retVal = true;
91
+ }
92
+ return retVal;
93
+ }
94
+ /**
95
+ * restuisce VERO se il pacchetto è installato
96
+ * @param packageName
97
+ */
98
+ static packageIsInstalled(packageName) {
99
+ let installed = false;
100
+ const cmd = `/usr/bin/dnf list --installed ${packageName}`;
101
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
102
+ if (stdout.includes(packageName)) {
103
+ installed = true;
104
+ }
105
+ return installed;
106
+ }
107
+ }
@@ -0,0 +1,52 @@
1
+ /**
2
+ * ./src/classes/families/openmamba.ts
3
+ * penguins-eggs v.25.7.x / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ /**
9
+ * Utils: general porpourse utils
10
+ * @remarks all the utilities
11
+ */
12
+ export default class Openmamba {
13
+ /**
14
+ *
15
+ */
16
+ static calamaresInstall(verbose?: boolean): Promise<void>;
17
+ /**
18
+ *
19
+ * calamaresPolicies
20
+ */
21
+ static calamaresPolicies(verbose?: boolean): Promise<void>;
22
+ /**
23
+ *
24
+ */
25
+ static calamaresRemove(verbose?: boolean): Promise<boolean>;
26
+ /**
27
+ * check if it's installed wayland
28
+ * @returns true if wayland
29
+ */
30
+ static isInstalledWayland(): boolean;
31
+ /**
32
+ * check if it's installed xorg
33
+ * @returns true if xorg is installed
34
+ */
35
+ static isInstalledXorg(): boolean;
36
+ /**
37
+ * restuisce VERO se il pacchetto è installato
38
+ * @param packageName
39
+ */
40
+ static packageAvailable(packageName: string): Promise<boolean>;
41
+ /**
42
+ * Install the package packageName
43
+ * @param packageName {string} Pacchetto da installare
44
+ * @returns {boolean} True if success
45
+ */
46
+ static packageInstall(packageName: string): Promise<boolean>;
47
+ /**
48
+ * restuisce VERO se il pacchetto è installato
49
+ * @param packageName
50
+ */
51
+ static packageIsInstalled(packageName: string): boolean;
52
+ }
@@ -0,0 +1,106 @@
1
+ /**
2
+ * ./src/classes/families/openmamba.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 fs from 'node:fs';
9
+ import shx from 'shelljs';
10
+ import { exec } from '../../lib/utils.js';
11
+ import Utils from '../utils.js';
12
+ /**
13
+ * Utils: general porpourse utils
14
+ * @remarks all the utilities
15
+ */
16
+ export default class Openmamba {
17
+ /**
18
+ *
19
+ */
20
+ static async calamaresInstall(verbose = true) {
21
+ const echo = Utils.setEcho(verbose);
22
+ try {
23
+ await exec('dnf install calamares -y', echo);
24
+ }
25
+ catch {
26
+ Utils.error(`cannot install calamares`);
27
+ }
28
+ }
29
+ /**
30
+ *
31
+ * calamaresPolicies
32
+ */
33
+ static async calamaresPolicies(verbose = false) {
34
+ // nothing
35
+ }
36
+ /**
37
+ *
38
+ */
39
+ static async calamaresRemove(verbose = true) {
40
+ const echo = Utils.setEcho(verbose);
41
+ let success = false;
42
+ try {
43
+ await exec('dnf -y remove calamares', echo);
44
+ success = true;
45
+ }
46
+ catch {
47
+ Utils.error(`Cannot remove calamares`);
48
+ }
49
+ if (success && fs.existsSync('/etc/calamares')) {
50
+ await exec('rm /etc/calamares -rf', echo);
51
+ }
52
+ return success;
53
+ }
54
+ /**
55
+ * check if it's installed wayland
56
+ * @returns true if wayland
57
+ */
58
+ static isInstalledWayland() {
59
+ return this.packageIsInstalled('xorg-x11-server-Xwayland*');
60
+ }
61
+ /**
62
+ * check if it's installed xorg
63
+ * @returns true if xorg is installed
64
+ */
65
+ static isInstalledXorg() {
66
+ return this.packageIsInstalled('xorg-x11-server-Xorg.x86_64');
67
+ }
68
+ /**
69
+ * restuisce VERO se il pacchetto è installato
70
+ * @param packageName
71
+ */
72
+ static async packageAvailable(packageName) {
73
+ let available = false;
74
+ const cmd = `/usr/bin/dnf list --available ${packageName} | grep Package:`;
75
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
76
+ if (stdout.includes(packageName)) {
77
+ available = true;
78
+ }
79
+ return available;
80
+ }
81
+ /**
82
+ * Install the package packageName
83
+ * @param packageName {string} Pacchetto da installare
84
+ * @returns {boolean} True if success
85
+ */
86
+ static async packageInstall(packageName) {
87
+ let retVal = false;
88
+ if (shx.exec(`/usr/bin/dnf install ${packageName}`, { silent: false }) === '0') {
89
+ retVal = true;
90
+ }
91
+ return retVal;
92
+ }
93
+ /**
94
+ * restuisce VERO se il pacchetto è installato
95
+ * @param packageName
96
+ */
97
+ static packageIsInstalled(packageName) {
98
+ let installed = false;
99
+ const cmd = `/usr/bin/dnf list --installed ${packageName}`;
100
+ const stdout = shx.exec(cmd, { silent: true }).stdout.trim();
101
+ if (stdout.includes(packageName)) {
102
+ installed = true;
103
+ }
104
+ return installed;
105
+ }
106
+ }