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,246 @@
1
+ /**
2
+ * ./src/commands/tools/repo.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 13 trixe, Ubuntu 24.04 noble usano il formato deb822
10
+ * * esiste un comando per modernizzare le sorgenti:
11
+ * sudo apt modernize-sources
12
+ */
13
+ import { Command, Flags } from '@oclif/core';
14
+ import fs from 'node:fs';
15
+ import path from 'node:path';
16
+ import Distro from '../../classes/distro.js';
17
+ import Utils from '../../classes/utils.js';
18
+ import { exec } from '../../lib/utils.js';
19
+ import Diversions from '../../classes/diversions.js';
20
+ const repoKeyUrl = 'https://pieroproietti.github.io/penguins-eggs-repo/KEY.asc';
21
+ const repoKeyPath = '/usr/share/keyrings/penguins-eggs-repo.gpg';
22
+ const repoUrl = `https://pieroproietti.github.io/penguins-eggs-repo`;
23
+ let repoPath = '/etc/apt/sources.list.d/penguins-eggs-repo'; // Base path without extension
24
+ /**
25
+ *
26
+ */
27
+ export default class Repo extends Command {
28
+ static description = 'add/remove penguins-eggs-repo';
29
+ static examples = ['sudo eggs tools repo --add', 'sudo eggs tools repo --remove'];
30
+ static flags = {
31
+ add: Flags.boolean({ char: 'a', description: 'add penguins-eggs-repo' }),
32
+ help: Flags.help({ char: 'h' }),
33
+ nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
34
+ remove: Flags.boolean({ char: 'r', description: 'remove penguins-eggs-repo' }),
35
+ verbose: Flags.boolean({ char: 'v', description: 'verbose' })
36
+ };
37
+ /**
38
+ *
39
+ */
40
+ async run() {
41
+ const { flags } = await this.parse(Repo);
42
+ Utils.titles(this.id + ' ' + this.argv);
43
+ const { nointeractive } = flags;
44
+ if (Utils.isRoot()) {
45
+ const distro = new Distro();
46
+ if (distro.familyId === 'archlinux') {
47
+ if (flags.add) {
48
+ Utils.warning(`Are you sure to add penguins-eggs repo to your repositories?`);
49
+ if (await Utils.customConfirm('Select yes to continue...')) {
50
+ await archlinuxRepoAdd(distro.distroId);
51
+ }
52
+ }
53
+ else if (flags.remove) {
54
+ Utils.warning(`Are you sure to remove penguins-eggs repo to your repositories?`);
55
+ if (await Utils.customConfirm('Select yes to continue...')) {
56
+ await archlinuxRepoRemove(distro.distroId);
57
+ }
58
+ }
59
+ }
60
+ else if (distro.familyId === 'debian') {
61
+ /**
62
+ * Debian
63
+ */
64
+ if (flags.add) {
65
+ Utils.warning(`Are you sure to add source ${path.basename(repoPath)} to your repositories?`);
66
+ if (nointeractive || (await Utils.customConfirm('Select yes to continue...'))) {
67
+ await debianRemove();
68
+ if (await is822()) {
69
+ await debianAdd822();
70
+ }
71
+ else {
72
+ await debianAdd();
73
+ }
74
+ }
75
+ }
76
+ else if (flags.remove) {
77
+ Utils.warning(`Are you sure to remove source ${path.basename(repoPath)} to your repositories?`);
78
+ if (nointeractive || (await Utils.customConfirm('Select yes to continue...'))) {
79
+ await debianRemove();
80
+ }
81
+ }
82
+ await exec('apt-get update');
83
+ }
84
+ else if (distro.familyId === 'fedora') {
85
+ if (distro.distroId !== 'Fedora') {
86
+ console.log("You can find the step-by-step instructions at this link:");
87
+ console.log("https://github.com/pieroproietti/penguins-eggs/blob/master/DOCS/INSTALL-ENTERPRISE-LINUX.md");
88
+ console.log();
89
+ }
90
+ else {
91
+ console.log("You can find the step-by-step instructions at this link:");
92
+ console.log("https://github.com/pieroproietti/penguins-eggs/blob/master/DOCS/INSTALL-FEDORA.md");
93
+ console.log();
94
+ }
95
+ }
96
+ else if (distro.familyId === 'opensuse') {
97
+ console.log("You can find the step-by-step instructions at this link:");
98
+ console.log("https://github.com/pieroproietti/penguins-eggs/blob/master/DOCS/INSTALL-OPENSUSE.md");
99
+ console.log();
100
+ /**
101
+ * All the others
102
+ */
103
+ }
104
+ else {
105
+ Utils.warning(`Distro: ${distro.distroId}/${distro.codenameId}, cannot use penguins-eggs-repo nor chaotic-aur!`);
106
+ }
107
+ }
108
+ }
109
+ }
110
+ /**
111
+ * ARCH
112
+ */
113
+ // archlinuxRepoAdd
114
+ async function archlinuxRepoAdd(distroId = "Arch") {
115
+ console.log(`Adding penguins-eggs repo for ${distroId}`);
116
+ const repoBlockIdentifier = '# Penguins-eggs repository';
117
+ const repoName = '[penguins-eggs]';
118
+ const keyId = 'F6773EA7D2F309BA3E5DE08A45B10F271525403F';
119
+ let serverUrl = 'https://pieroproietti.github.io/penguins-eggs-repo/arch';
120
+ if (Diversions.isManjaroBased(distroId)) {
121
+ serverUrl = 'https://pieroproietti.github.io/penguins-eggs-repo/manjaro';
122
+ }
123
+ const pacmanConfPath = '/etc/pacman.conf';
124
+ const echo = Utils.setEcho(true);
125
+ const pacmanConfContent = fs.readFileSync(pacmanConfPath, 'utf8');
126
+ if (pacmanConfContent.includes(repoName)) {
127
+ console.log(`The repository ${repoName} already exists in ${pacmanConfPath}!`);
128
+ return;
129
+ }
130
+ console.log(`Importazione della chiave GPG: ${keyId}...`);
131
+ await exec(`pacman-key --recv-key ${keyId} --keyserver keyserver.ubuntu.com`, echo);
132
+ await exec(`pacman-key --lsign-key ${keyId}`, echo);
133
+ let repoBlock = ``;
134
+ repoBlock += repoBlockIdentifier + `\n`;
135
+ repoBlock += `${repoName}\n`;
136
+ repoBlock += `SigLevel = Optional TrustAll\n`;
137
+ repoBlock += `Server = ${serverUrl}\n`;
138
+ fs.appendFileSync(pacmanConfPath, repoBlock);
139
+ let message = 'Run “sudo pacman -Syyu” to update pacman databases.';
140
+ if (Diversions.isManjaroBased(distroId)) {
141
+ message = 'Run “sudo pamac update --force-refresh" to update pacman databases.';
142
+ }
143
+ console.log('Repository successfully removed!');
144
+ console.log(message);
145
+ }
146
+ // archlinuxRepoRemove
147
+ async function archlinuxRepoRemove(distroId = 'Arch') {
148
+ console.log(`Removing penguins-eggs repo for ${distroId}`);
149
+ const repoBlockIdentifier = '# Penguins-eggs repository';
150
+ const repoName = '[penguins-eggs]';
151
+ let serverUrl = 'https://pieroproietti.github.io/penguins-eggs-repo/arch';
152
+ if (Diversions.isManjaroBased(distroId)) {
153
+ serverUrl = 'https://pieroproietti.github.io/penguins-eggs-repo/manjaro';
154
+ }
155
+ const pacmanConfPath = '/etc/pacman.conf';
156
+ let pacmanConfContent = fs.readFileSync(pacmanConfPath, 'utf8');
157
+ if (pacmanConfContent.includes(repoName)) {
158
+ console.log(`Removing repository ${repoName} in progress...`);
159
+ let repoBlock = ``;
160
+ repoBlock += repoBlockIdentifier + `\n`;
161
+ repoBlock += `${repoName}\n`;
162
+ repoBlock += `SigLevel = Optional TrustAll\n`;
163
+ repoBlock += `Server = ${serverUrl}\n`;
164
+ pacmanConfContent = pacmanConfContent.replace(repoBlock, '');
165
+ fs.writeFileSync(pacmanConfPath, pacmanConfContent.trim());
166
+ let message = 'Run “sudo pacman -Syyu” to update pacman databases.';
167
+ if (Diversions.isManjaroBased(distroId)) {
168
+ message = 'Run “sudo pamac update --force-refresh" to update pacman databases.';
169
+ }
170
+ console.log('Repository successfully removed!');
171
+ console.log(message);
172
+ }
173
+ else {
174
+ console.log('The repository was not present in /etc/pacman.conf.');
175
+ }
176
+ }
177
+ // archlinuxAurAdd
178
+ async function archlinuxAurAdd() {
179
+ const path = '/var/cache/pacman/pkg/';
180
+ const keyring = 'chaotic-keyring.pkg.tar.zst';
181
+ const mirrorlist = 'chaotic-mirrorlist.pkg.tar.zst';
182
+ const echo = Utils.setEcho(true);
183
+ if (fs.existsSync(path + keyring) && fs.existsSync(path + mirrorlist)) {
184
+ console.log('repository Chaotic-AUR, already present!');
185
+ await archlinuxAurRemove();
186
+ process.exit();
187
+ }
188
+ await exec('pacman-key --recv-key FBA220DFC880C036 --keyserver keyserver.ubuntu.com', echo);
189
+ await exec('pacman-key --lsign-key FBA220DFC880C036', echo);
190
+ await exec("pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst' 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'", echo);
191
+ // Append to /etc/pacman.conf
192
+ const chaoticAppend = '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist\n\n';
193
+ fs.appendFileSync('/etc/pacman.conf', chaoticAppend);
194
+ }
195
+ // archlinuxAurRemove
196
+ async function archlinuxAurRemove() {
197
+ const path = '/var/cache/pacman/pkg/';
198
+ const keyring = 'chaotic-keyring.pkg.tar.zst';
199
+ const mirrorlist = 'chaotic-mirrorlist.pkg.tar.zst';
200
+ if (fs.existsSync(path + keyring) && fs.existsSync(path + mirrorlist)) {
201
+ console.log('to remove chaotic-aur:\n');
202
+ console.log(`sudo rm ${path}${keyring}`);
203
+ console.log(`sudo rm ${path}${mirrorlist}`);
204
+ console.log(`sudo nano /etc/pacman.conf`);
205
+ console.log(`remove at the end:`);
206
+ console.log(`[chaotic-aur]`);
207
+ console.log(`Include = /etc/pacman.d/chaotic-mirrorlist`);
208
+ }
209
+ }
210
+ /**
211
+ * DEBIAN
212
+ */
213
+ // debianAdd
214
+ async function debianAdd() {
215
+ await exec(`curl -fsSL ${repoKeyUrl} | gpg --dearmor -o ${repoKeyPath}`);
216
+ const content = `deb [signed-by=${repoKeyPath}] ${repoUrl}/deb stable main\n`;
217
+ fs.writeFileSync(`${repoPath}.list`, content);
218
+ }
219
+ // debianRemove
220
+ async function debianRemove() {
221
+ await exec(`rm -f ${repoKeyPath}`);
222
+ await exec(`rm -f ${repoPath}*`);
223
+ }
224
+ // is822
225
+ async function is822() {
226
+ let retval = false;
227
+ const test = `([ -f /etc/apt/sources.list.d/ubuntu.sources ] || [ -f /etc/apt/sources.list.d/debian.sources ]) && echo "1" || echo "0"`;
228
+ const is822Result = (await exec(test, { capture: true, echo: false }));
229
+ if (is822Result.code === 0) {
230
+ if (is822Result.data.trim() === '1') {
231
+ retval = true;
232
+ }
233
+ }
234
+ return retval;
235
+ }
236
+ // debianAdd822
237
+ async function debianAdd822() {
238
+ await exec(`curl -fsSL ${repoKeyUrl} | gpg --dearmor -o ${repoKeyPath}`);
239
+ let content = '';
240
+ content += `Types: deb\n`;
241
+ content += `URIs: ${repoUrl}/deb\n`; // Correct URI for packages
242
+ content += `Suites: stable\n`; // It's better to be specific
243
+ content += `Components: main\n`;
244
+ content += `Signed-By: ${repoKeyPath}\n`;
245
+ fs.writeFileSync(`${repoPath}.sources`, content);
246
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * ./src/commands/tools/skel.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 { Command } from '@oclif/core';
9
+ export default class Skel extends Command {
10
+ static description: string;
11
+ static examples: string[];
12
+ static flags: {
13
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
14
+ user: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ };
17
+ run(): Promise<void>;
18
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * ./src/commands/tools/skel.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 { Command, Flags } from '@oclif/core';
9
+ import fs from 'node:fs';
10
+ import Utils from '../../classes/utils.js';
11
+ import Xdg from '../../classes/xdg.js';
12
+ export default class Skel extends Command {
13
+ static description = 'update skel from home configuration';
14
+ static examples = ['sudo eggs tools skel', 'sudo eggs tools skel --user user-to-be-copied'];
15
+ static flags = {
16
+ help: Flags.help({ char: 'h' }),
17
+ user: Flags.string({ char: 'u', description: 'user to be used' }),
18
+ verbose: Flags.boolean({ char: 'v' })
19
+ };
20
+ async run() {
21
+ Utils.titles(this.id + ' ' + this.argv);
22
+ const { flags } = await this.parse(Skel);
23
+ let verbose = false;
24
+ if (flags.verbose) {
25
+ verbose = true;
26
+ }
27
+ let user = '';
28
+ user = flags.user ? flags.user : await Utils.getPrimaryUser();
29
+ Utils.warning(`user: ${user}`);
30
+ const homeSource = `/home/${user}`;
31
+ if (!fs.existsSync(homeSource)) {
32
+ Utils.error(`User ${user} not exist or not exist a proper home`);
33
+ Utils.warning('terminate');
34
+ process.exit(0);
35
+ }
36
+ if (Utils.isRoot()) {
37
+ Utils.titles('skel');
38
+ Xdg.skel(user, verbose);
39
+ }
40
+ else {
41
+ Utils.useRoot(this.id);
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * ./src/commands/tools/stat.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 { Command } from '@oclif/core';
9
+ /**
10
+ *
11
+ */
12
+ export default class ToolsStat extends Command {
13
+ static description: string;
14
+ static examples: string[];
15
+ static flags: {
16
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
17
+ month: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ year: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ };
20
+ /**
21
+ *
22
+ */
23
+ run(): Promise<void>;
24
+ /**
25
+ *
26
+ * @param start
27
+ * @param end
28
+ * @param type
29
+ */
30
+ show(start: string, end: string, type: string): Promise<void>;
31
+ }
@@ -0,0 +1,70 @@
1
+ /**
2
+ * ./src/commands/tools/stat.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 { Command, Flags } from '@oclif/core';
9
+ import axios from 'axios';
10
+ import https from 'node:https';
11
+ import Utils from '../../classes/utils.js';
12
+ const agent = new https.Agent({
13
+ rejectUnauthorized: false
14
+ });
15
+ /**
16
+ *
17
+ */
18
+ export default class ToolsStat extends Command {
19
+ static description = 'get statistics from sourceforge';
20
+ static examples = ['eggs tools stat', 'eggs tools stat --month', 'eggs tools stat --year'];
21
+ static flags = {
22
+ help: Flags.help({ char: 'h' }),
23
+ month: Flags.boolean({ char: 'm', description: 'current month' }),
24
+ year: Flags.boolean({ char: 'y', description: 'current year' })
25
+ };
26
+ /**
27
+ *
28
+ */
29
+ async run() {
30
+ const { args, flags } = await this.parse(ToolsStat);
31
+ Utils.titles(this.id + ' ' + this.argv);
32
+ const yesterday = new Date();
33
+ yesterday.setDate(yesterday.getDate() - 1);
34
+ // current date
35
+ // adjust 0 before single digit date
36
+ const day = ('0' + yesterday.getDate()).slice(-2);
37
+ // current month
38
+ const month = ('0' + (yesterday.getMonth() + 1)).slice(-2);
39
+ // current year
40
+ const year = yesterday.getFullYear();
41
+ const end = year + '-' + month + '-' + day;
42
+ let start = year + '-' + month + '-' + day;
43
+ if (flags.month) {
44
+ start = year + '-' + month + '-01';
45
+ }
46
+ if (flags.year) {
47
+ start = year + '-01-01';
48
+ }
49
+ this.log('start: ' + start + ', end: ' + end + '\n');
50
+ await this.show(start, end, 'Packages/DEBS');
51
+ console.log();
52
+ await this.show(start, end, 'ISOS');
53
+ }
54
+ /**
55
+ *
56
+ * @param start
57
+ * @param end
58
+ * @param type
59
+ */
60
+ async show(start, end, type) {
61
+ let url = `https://sourceforge.net/projects/penguins-eggs/files/${type}/stats/json`;
62
+ const request = '?start_date=' + start + '&end_date=' + end;
63
+ url += request;
64
+ const res = await axios.get(url, { httpsAgent: agent });
65
+ console.log(type);
66
+ for (const country of res.data.countries) {
67
+ console.log('- ' + country[0] + ': ' + country[1]);
68
+ }
69
+ }
70
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * ./src/commands/tools/yolk.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 { Command } from '@oclif/core';
9
+ /**
10
+ *
11
+ */
12
+ export default class ToolsYolk extends Command {
13
+ static description: string;
14
+ static dir: string;
15
+ static examples: string[];
16
+ static flags: {
17
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
18
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ };
20
+ /**
21
+ *
22
+ */
23
+ run(): Promise<void>;
24
+ }
@@ -0,0 +1,45 @@
1
+ /**
2
+ * ./src/commands/tools/yolk.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 { Command, Flags } from '@oclif/core';
9
+ import fs from 'node:fs';
10
+ import shx from 'shelljs';
11
+ import Utils from '../../classes/utils.js';
12
+ import Yolk from '../../classes/yolk.js';
13
+ /**
14
+ *
15
+ */
16
+ export default class ToolsYolk extends Command {
17
+ static description = 'configure eggs to install without internet';
18
+ static dir = '/var/local/yolk';
19
+ static examples = ['sudo eggs tools yolk'];
20
+ static flags = {
21
+ help: Flags.help({ char: 'h' }),
22
+ verbose: Flags.boolean({ char: 'v' })
23
+ };
24
+ /**
25
+ *
26
+ */
27
+ async run() {
28
+ Utils.titles(this.id + ' ' + this.argv);
29
+ const { flags } = await this.parse(ToolsYolk);
30
+ let verbose = false;
31
+ if (flags.verbose) {
32
+ verbose = true;
33
+ }
34
+ if (Utils.isRoot()) {
35
+ if (fs.existsSync(ToolsYolk.dir)) {
36
+ shx.exec(`rm ${ToolsYolk.dir} -rf `);
37
+ }
38
+ const yolk = new Yolk();
39
+ await yolk.create(verbose);
40
+ }
41
+ else {
42
+ Utils.useRoot(this.id);
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * ./src/commands/syncfrom.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 { Command } from '@oclif/core';
9
+ import Distro from '../classes/distro.js';
10
+ /**
11
+ *
12
+ */
13
+ export default class Update extends Command {
14
+ static description: string;
15
+ static examples: string[];
16
+ static flags: {
17
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
18
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ };
20
+ distro: Distro;
21
+ /**
22
+ * run
23
+ */
24
+ run(): Promise<void>;
25
+ chooseUpdate(): Promise<void>;
26
+ /**
27
+ *
28
+ */
29
+ choosePkg(): Promise<string>;
30
+ /**
31
+ *
32
+ */
33
+ getPkgFromPackageManager(): Promise<void>;
34
+ /**
35
+ * download da LAN
36
+ */
37
+ getPkgFromLan(): Promise<void>;
38
+ /**
39
+ *
40
+ */
41
+ getFromSource(): void;
42
+ /**
43
+ * show
44
+ */
45
+ show(url: string): Promise<void>;
46
+ }