penguins-eggs 25.9.14 → 25.9.24

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 (572) hide show
  1. package/.oclif.manifest.json +1 -1
  2. package/README.md +29 -29
  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 +0 -0
  7. package/addons/eggs/theme/calamares/branding/show.qml +61 -74
  8. package/assets/calamares/install-system.sh +0 -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/derivatives.yaml +2 -2
  15. package/conf/distros/alpine/calamares/calamares-modules/machineid-openrc/machineid-openrc.sh +0 -0
  16. package/conf/distros/alpine/calamares/modules/mount.yml +104 -39
  17. package/conf/distros/alpine/calamares/settings.yml +4 -4
  18. package/conf/distros/bionic/calamares/calamares-modules/after-bootloader/after-bootloader.sh +0 -0
  19. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader/before-bootloader.sh +0 -0
  20. package/conf/distros/bionic/calamares/calamares-modules/before-bootloader-mkdirs/before-bootloader-mkdirs.sh +0 -0
  21. package/conf/distros/bionic/calamares/calamares-modules/bug/bug.sh +0 -0
  22. package/conf/distros/bionic/calamares/calamares-modules/grubcfg/main.py +0 -0
  23. package/conf/distros/bionic/calamares/settings.yml +5 -5
  24. package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +0 -0
  25. package/conf/distros/buster/calamares/calamares-modules/dpkg-unsafe-io/dpkg-unsafe-io.sh +0 -0
  26. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +0 -0
  27. package/conf/distros/buster/calamares/libexec/.keepit +0 -0
  28. package/conf/distros/buster/calamares/libexec/README.md +5 -0
  29. package/conf/distros/{noble/calamares/modules/focal-jammy/mount.yml → buster/calamares/modules/mount.3.2.yml} +3 -6
  30. package/conf/distros/buster/calamares/modules/mount.yml +2 -4
  31. package/conf/distros/buster/calamares/modules/shellprocess@boot_deploy.yml +23 -0
  32. package/conf/distros/buster/calamares/modules/shellprocess@boot_reconfigure.yml +14 -0
  33. package/conf/distros/buster/calamares/modules/shellprocess@mkinitramfs.yml +4 -0
  34. package/conf/distros/buster/calamares/settings.yml +28 -11
  35. package/conf/distros/fedora/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  36. package/conf/distros/fedora/calamares/settings.yml +6 -6
  37. package/conf/distros/jessie/krill/settings.yml +6 -6
  38. package/conf/distros/noble/README.md +8 -1
  39. package/conf/distros/noble/calamares/libexec/.keepit +0 -0
  40. package/conf/distros/noble/calamares/libexec/README.md +5 -0
  41. package/conf/distros/noble/calamares/libexec/calamares-aptsources.sh +15 -0
  42. package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +35 -0
  43. package/conf/distros/noble/calamares/libexec/calamares-logs-helper.sh +34 -0
  44. package/conf/distros/noble/calamares/libexec/calamares-nomodeset.sh +19 -0
  45. package/conf/distros/noble/calamares/modules/after_bootloader_context.yml +26 -0
  46. package/conf/distros/noble/calamares/modules/before_bootloader_context.yml +12 -0
  47. package/conf/distros/noble/calamares/modules/bootloader.yml +67 -14
  48. package/conf/distros/noble/calamares/modules/bootloader.yml.old +35 -0
  49. package/conf/distros/noble/calamares/modules/displaymanager.yml +21 -0
  50. package/conf/distros/noble/calamares/modules/finished.yml +3 -0
  51. package/conf/distros/noble/calamares/modules/fstab.yml +9 -0
  52. package/conf/distros/noble/calamares/modules/grubcfg.yml +49 -1
  53. package/conf/distros/noble/calamares/modules/keyboard.yml +29 -0
  54. package/conf/distros/noble/calamares/modules/locale.yml +5 -6
  55. package/conf/distros/noble/calamares/modules/machineid.yml +3 -1
  56. package/conf/distros/noble/calamares/modules/mount.yml +21 -19
  57. package/conf/distros/noble/calamares/modules/netinstall.yml +5 -0
  58. package/conf/distros/noble/calamares/modules/packages.yml +5 -16
  59. package/conf/distros/noble/calamares/modules/shellprocess@aptsources.yml +11 -0
  60. package/conf/distros/noble/calamares/modules/shellprocess@boot_deploy.yml +18 -0
  61. package/conf/distros/noble/calamares/modules/shellprocess@boot_reconfigure.yml +14 -0
  62. package/conf/distros/noble/calamares/modules/shellprocess@install_translations.yml +7 -0
  63. package/conf/distros/noble/calamares/modules/shellprocess@logs.yml +7 -0
  64. package/conf/distros/noble/calamares/modules/shellprocess@mkinitramfs.yml +4 -0
  65. package/conf/distros/noble/calamares/modules/shellprocess@nomodeset.yml +11 -0
  66. package/conf/distros/noble/calamares/modules/unpackfs.yml +2 -1
  67. package/conf/distros/noble/calamares/modules/users.yml +19 -17
  68. package/conf/distros/noble/calamares/modules/welcome.yml +9 -13
  69. package/conf/distros/noble/calamares/settings.yml +82 -72
  70. package/conf/distros/openmamba/calamares/settings.yml +4 -4
  71. package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +0 -0
  72. package/conf/distros/opensuse/calamares/settings.yml +6 -6
  73. package/conf/distros/opensuse/calamares/zstd2lzo.sh +0 -0
  74. package/conf/distros/rolling/calamares/settings.yml +4 -4
  75. package/conf/distros/stretch/krill/settings.yml +6 -6
  76. package/conf/init/unattended.sh +0 -0
  77. package/eui/eui-autostart-cinnamon.desktop +0 -0
  78. package/eui/eui-autostart-xfce.desktop +0 -0
  79. package/eui/eui-create-image.sh +0 -0
  80. package/eui/eui-start.sh +0 -0
  81. package/package.json +125 -131
  82. package/perrisbrewery/scripts/postinst +0 -0
  83. package/perrisbrewery/scripts/postrm +0 -0
  84. package/perrisbrewery/scripts/preinst +0 -0
  85. package/perrisbrewery/scripts/prerm +0 -0
  86. package/perrisbrewery/template/dependencies.yaml +1 -0
  87. package/pods/almalinux.sh +0 -0
  88. package/pods/archlinux.sh +0 -0
  89. package/pods/ci/kernel-overlay-install.sh +0 -0
  90. package/pods/ci/minimal/almalinux-container2host.sh +0 -0
  91. package/pods/ci/minimal/archlinux-container2host.sh +0 -0
  92. package/pods/ci/minimal/debian-container2host.sh +0 -0
  93. package/pods/ci/minimal/fedora-container2host.sh +0 -0
  94. package/pods/ci/minimal/manjaro-container2host.sh +0 -0
  95. package/pods/ci/minimal/opensuse-container2host.sh +0 -0
  96. package/pods/ci/penguins-eggs-execute.sh +0 -0
  97. package/pods/ci/penguins-eggs-install.sh +0 -0
  98. package/pods/ci/run +0 -0
  99. package/pods/ci/run-on-almalinux.sh +0 -0
  100. package/pods/ci/run-on-archlinux.sh +0 -0
  101. package/pods/ci/run-on-debian.sh +0 -0
  102. package/pods/ci/run-on-devuan.sh +0 -0
  103. package/pods/ci/run-on-fedora.sh +0 -0
  104. package/pods/ci/run-on-manjaro.sh +0 -0
  105. package/pods/ci/run-on-opensuse.sh +0 -0
  106. package/pods/ci/run-on-rockylinux.sh +0 -0
  107. package/pods/ci/run-on-ubuntu.sh +0 -0
  108. package/pods/debian.sh +0 -0
  109. package/pods/devuan.sh +0 -0
  110. package/pods/fedora.sh +0 -0
  111. package/pods/lmde.sh +0 -0
  112. package/pods/manjaro.sh +0 -0
  113. package/pods/opensuse.sh +0 -0
  114. package/pods/podman.command.sh +0 -0
  115. package/pods/rocky.sh +0 -0
  116. package/pods/run-build-packages-debs.sh +0 -0
  117. package/pods/run-create-debs.sh +0 -0
  118. package/pods/ubuntu.sh +0 -0
  119. package/scripts/99clean +0 -0
  120. package/scripts/adapt.sh +0 -0
  121. package/scripts/bros/waydroid-helper.sh +0 -0
  122. package/scripts/lsb_release +0 -0
  123. package/scripts/mom.sh +0 -0
  124. package/scripts/pve-live.service +0 -0
  125. package/scripts/pve-live.sh +0 -0
  126. package/scripts/resy +0 -0
  127. package/conf/distros/noble/calamares/modules/_automirror.yml +0 -6
  128. package/conf/distros/noble/calamares/modules/_before_bootloader_context.yml +0 -18
  129. package/conf/distros/noble/calamares/modules/_before_bootloader_mkdirs_context.yml +0 -10
  130. package/conf/distros/noble/calamares/modules/_displaymanager.yml +0 -9
  131. package/conf/distros/noble/calamares/modules/_oemid.yml +0 -2
  132. package/conf/distros/noble/calamares/modules/_pkgselect_context.yml +0 -19
  133. package/conf/distros/noble/calamares/modules/_pkgselect_snap_context.yml +0 -9
  134. package/conf/distros/noble/calamares/modules/_shellprocess_logs.yml +0 -5
  135. package/conf/distros/noble/calamares/modules/_users.conf.oem +0 -30
  136. package/conf/distros/noble/calamares/modules/focal-jammy/fstab.yml +0 -13
  137. package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +0 -19
  138. package/conf/distros/noble/calamares/modules/shellprocess_add386arch.yml +0 -5
  139. package/conf/distros/noble/calamares/modules/shellprocess_bug-LP#1829805.yml +0 -5
  140. package/conf/distros/noble/calamares/modules/shellprocess_fixconkeys_part1.yml +0 -5
  141. package/conf/distros/noble/calamares/modules/shellprocess_fixconkeys_part2.yml +0 -5
  142. package/conf/distros/noble/calamares/modules/shellprocess_oemprep.yml +0 -5
  143. package/dist/classes/bleach.d.ts +0 -37
  144. package/dist/classes/bleach.js +0 -148
  145. package/dist/classes/cli-autologin.d.ts +0 -52
  146. package/dist/classes/cli-autologin.js +0 -252
  147. package/dist/classes/compressors.d.ts +0 -54
  148. package/dist/classes/compressors.js +0 -109
  149. package/dist/classes/daddy.d.ts +0 -26
  150. package/dist/classes/daddy.js +0 -175
  151. package/dist/classes/distro.d.ts +0 -32
  152. package/dist/classes/distro.js +0 -382
  153. package/dist/classes/diversions.d.ts +0 -53
  154. package/dist/classes/diversions.js +0 -133
  155. package/dist/classes/incubation/branding.d.ts +0 -17
  156. package/dist/classes/incubation/branding.js +0 -85
  157. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +0 -11
  158. package/dist/classes/incubation/fisherman-helper/displaymanager.js +0 -40
  159. package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
  160. package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
  161. package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
  162. package/dist/classes/incubation/fisherman-helper/settings.js +0 -83
  163. package/dist/classes/incubation/fisherman.d.ts +0 -74
  164. package/dist/classes/incubation/fisherman.js +0 -271
  165. package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
  166. package/dist/classes/incubation/incubator.d/alpine.js +0 -78
  167. package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
  168. package/dist/classes/incubation/incubator.d/bionic.js +0 -83
  169. package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
  170. package/dist/classes/incubation/incubator.d/buster.js +0 -85
  171. package/dist/classes/incubation/incubator.d/fedora.d.ts +0 -32
  172. package/dist/classes/incubation/incubator.d/fedora.js +0 -80
  173. package/dist/classes/incubation/incubator.d/jessie.d.ts +0 -31
  174. package/dist/classes/incubation/incubator.d/jessie.js +0 -44
  175. package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
  176. package/dist/classes/incubation/incubator.d/noble.js +0 -85
  177. package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
  178. package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
  179. package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
  180. package/dist/classes/incubation/incubator.d/opensuse.js +0 -78
  181. package/dist/classes/incubation/incubator.d/rolling.d.ts +0 -32
  182. package/dist/classes/incubation/incubator.d/rolling.js +0 -78
  183. package/dist/classes/incubation/incubator.d.ts +0 -48
  184. package/dist/classes/incubation/incubator.js +0 -404
  185. package/dist/classes/incubation/installer.d.ts +0 -13
  186. package/dist/classes/incubation/installer.js +0 -52
  187. package/dist/classes/keyboards.d.ts +0 -50
  188. package/dist/classes/keyboards.js +0 -287
  189. package/dist/classes/locales.d.ts +0 -21
  190. package/dist/classes/locales.js +0 -77
  191. package/dist/classes/network.d.ts +0 -37
  192. package/dist/classes/network.js +0 -98
  193. package/dist/classes/ovary.d/bind-live-fs.d.ts +0 -18
  194. package/dist/classes/ovary.d/bind-live-fs.js +0 -185
  195. package/dist/classes/ovary.d/bind-vfs.d.ts +0 -17
  196. package/dist/classes/ovary.d/bind-vfs.js +0 -37
  197. package/dist/classes/ovary.d/create-xdg-autostart.d.ts +0 -13
  198. package/dist/classes/ovary.d/create-xdg-autostart.js +0 -194
  199. package/dist/classes/ovary.d/edit-live-fs.d.ts +0 -20
  200. package/dist/classes/ovary.d/edit-live-fs.js +0 -245
  201. package/dist/classes/ovary.d/fertilization.d.ts +0 -12
  202. package/dist/classes/ovary.d/fertilization.js +0 -52
  203. package/dist/classes/ovary.d/finished.d.ts +0 -13
  204. package/dist/classes/ovary.d/finished.js +0 -44
  205. package/dist/classes/ovary.d/initrd.d.ts +0 -21
  206. package/dist/classes/ovary.d/initrd.js +0 -97
  207. package/dist/classes/ovary.d/kernel-copy.d.ts +0 -12
  208. package/dist/classes/ovary.d/kernel-copy.js +0 -22
  209. package/dist/classes/ovary.d/live-create-structure.d.ts +0 -12
  210. package/dist/classes/ovary.d/live-create-structure.js +0 -73
  211. package/dist/classes/ovary.d/make-dot-disk.d.ts +0 -12
  212. package/dist/classes/ovary.d/make-dot-disk.js +0 -62
  213. package/dist/classes/ovary.d/make-efi.d.ts +0 -14
  214. package/dist/classes/ovary.d/make-efi.js +0 -274
  215. package/dist/classes/ovary.d/make-iso.d.ts +0 -13
  216. package/dist/classes/ovary.d/make-iso.js +0 -45
  217. package/dist/classes/ovary.d/make-squashfs.d.ts +0 -18
  218. package/dist/classes/ovary.d/make-squashfs.js +0 -110
  219. package/dist/classes/ovary.d/merged.d.ts +0 -27
  220. package/dist/classes/ovary.d/merged.js +0 -78
  221. package/dist/classes/ovary.d/produce.d.ts +0 -23
  222. package/dist/classes/ovary.d/produce.js +0 -319
  223. package/dist/classes/ovary.d/rexec.d.ts +0 -13
  224. package/dist/classes/ovary.d/rexec.js +0 -34
  225. package/dist/classes/ovary.d/syslinux.d.ts +0 -12
  226. package/dist/classes/ovary.d/syslinux.js +0 -82
  227. package/dist/classes/ovary.d/user-create-live.d.ts +0 -14
  228. package/dist/classes/ovary.d/user-create-live.js +0 -97
  229. package/dist/classes/ovary.d/users-remove.d.ts +0 -9
  230. package/dist/classes/ovary.d/users-remove.js +0 -38
  231. package/dist/classes/ovary.d/xorriso-command.d.ts +0 -14
  232. package/dist/classes/ovary.d/xorriso-command.js +0 -123
  233. package/dist/classes/ovary.d.ts +0 -87
  234. package/dist/classes/ovary.js +0 -90
  235. package/dist/classes/pacman.d/aldos.d.ts +0 -52
  236. package/dist/classes/pacman.d/aldos.js +0 -100
  237. package/dist/classes/pacman.d/alpine.d.ts +0 -56
  238. package/dist/classes/pacman.d/alpine.js +0 -167
  239. package/dist/classes/pacman.d/archlinux.d.ts +0 -62
  240. package/dist/classes/pacman.d/archlinux.js +0 -136
  241. package/dist/classes/pacman.d/debian.d.ts +0 -65
  242. package/dist/classes/pacman.d/debian.js +0 -143
  243. package/dist/classes/pacman.d/fedora.d.ts +0 -53
  244. package/dist/classes/pacman.d/fedora.js +0 -101
  245. package/dist/classes/pacman.d/openmamba.d.ts +0 -52
  246. package/dist/classes/pacman.d/openmamba.js +0 -100
  247. package/dist/classes/pacman.d/opensuse.d.ts +0 -53
  248. package/dist/classes/pacman.d/opensuse.js +0 -103
  249. package/dist/classes/pacman.d/voidlinux.d.ts +0 -52
  250. package/dist/classes/pacman.d/voidlinux.js +0 -90
  251. package/dist/classes/pacman.d.ts +0 -139
  252. package/dist/classes/pacman.js +0 -774
  253. package/dist/classes/pve-live.d.ts +0 -17
  254. package/dist/classes/pve-live.js +0 -52
  255. package/dist/classes/pxe.d.ts +0 -76
  256. package/dist/classes/pxe.js +0 -353
  257. package/dist/classes/settings.d.ts +0 -52
  258. package/dist/classes/settings.js +0 -185
  259. package/dist/classes/sources_list.d.ts +0 -28
  260. package/dist/classes/sources_list.js +0 -89
  261. package/dist/classes/systemctl.d.ts +0 -47
  262. package/dist/classes/systemctl.js +0 -86
  263. package/dist/classes/tailor.d.ts +0 -50
  264. package/dist/classes/tailor.js +0 -563
  265. package/dist/classes/tools.d.ts +0 -26
  266. package/dist/classes/tools.js +0 -50
  267. package/dist/classes/users.d.ts +0 -28
  268. package/dist/classes/users.js +0 -143
  269. package/dist/classes/utils.d/kernel.d.ts +0 -38
  270. package/dist/classes/utils.d/kernel.js +0 -184
  271. package/dist/classes/utils.d.ts +0 -327
  272. package/dist/classes/utils.js +0 -955
  273. package/dist/classes/xdg.d.ts +0 -45
  274. package/dist/classes/xdg.js +0 -337
  275. package/dist/classes/yolk.d.ts +0 -33
  276. package/dist/classes/yolk.js +0 -114
  277. package/dist/commands/adapt.d.ts +0 -17
  278. package/dist/commands/adapt.js +0 -33
  279. package/dist/commands/analyze.d.ts +0 -26
  280. package/dist/commands/analyze.js +0 -95
  281. package/dist/commands/calamares.d.ts +0 -29
  282. package/dist/commands/calamares.js +0 -112
  283. package/dist/commands/config.d.ts +0 -35
  284. package/dist/commands/config.js +0 -120
  285. package/dist/commands/cuckoo.d.ts +0 -17
  286. package/dist/commands/cuckoo.js +0 -61
  287. package/dist/commands/dad.d.ts +0 -21
  288. package/dist/commands/dad.js +0 -47
  289. package/dist/commands/export/iso.d.ts +0 -19
  290. package/dist/commands/export/iso.js +0 -55
  291. package/dist/commands/export/pkg.d.ts +0 -29
  292. package/dist/commands/export/pkg.js +0 -173
  293. package/dist/commands/export/tarballs.d.ts +0 -27
  294. package/dist/commands/export/tarballs.js +0 -79
  295. package/dist/commands/install.d.ts +0 -38
  296. package/dist/commands/install.js +0 -91
  297. package/dist/commands/kill.d.ts +0 -24
  298. package/dist/commands/kill.js +0 -50
  299. package/dist/commands/love.d.ts +0 -21
  300. package/dist/commands/love.js +0 -73
  301. package/dist/commands/mom.d.ts +0 -16
  302. package/dist/commands/mom.js +0 -30
  303. package/dist/commands/pods.d.ts +0 -22
  304. package/dist/commands/pods.js +0 -92
  305. package/dist/commands/produce.d.ts +0 -35
  306. package/dist/commands/produce.js +0 -221
  307. package/dist/commands/status.d.ts +0 -23
  308. package/dist/commands/status.js +0 -31
  309. package/dist/commands/syncfrom.d.ts +0 -45
  310. package/dist/commands/syncfrom.js +0 -152
  311. package/dist/commands/syncto.d.ts +0 -40
  312. package/dist/commands/syncto.js +0 -175
  313. package/dist/commands/tools/clean.d.ts +0 -18
  314. package/dist/commands/tools/clean.js +0 -37
  315. package/dist/commands/tools/ppa.d.ts +0 -31
  316. package/dist/commands/tools/ppa.js +0 -176
  317. package/dist/commands/tools/skel.d.ts +0 -18
  318. package/dist/commands/tools/skel.js +0 -44
  319. package/dist/commands/tools/stat.d.ts +0 -31
  320. package/dist/commands/tools/stat.js +0 -70
  321. package/dist/commands/tools/yolk.d.ts +0 -24
  322. package/dist/commands/tools/yolk.js +0 -45
  323. package/dist/commands/update.d.ts +0 -46
  324. package/dist/commands/update.js +0 -238
  325. package/dist/commands/wardrobe/get.d.ts +0 -23
  326. package/dist/commands/wardrobe/get.js +0 -52
  327. package/dist/commands/wardrobe/list.d.ts +0 -24
  328. package/dist/commands/wardrobe/list.js +0 -125
  329. package/dist/commands/wardrobe/show.d.ts +0 -25
  330. package/dist/commands/wardrobe/show.js +0 -97
  331. package/dist/commands/wardrobe/wear.d.ts +0 -26
  332. package/dist/commands/wardrobe/wear.js +0 -84
  333. package/dist/dhcpd-proxy/classes/packet.d.ts +0 -36
  334. package/dist/dhcpd-proxy/classes/packet.js +0 -124
  335. package/dist/dhcpd-proxy/index.d.ts +0 -4
  336. package/dist/dhcpd-proxy/index.js +0 -4
  337. package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +0 -45
  338. package/dist/dhcpd-proxy/interfaces/i-pxe.js +0 -1
  339. package/dist/dhcpd-proxy/lib/packet/converters.d.ts +0 -11
  340. package/dist/dhcpd-proxy/lib/packet/converters.js +0 -395
  341. package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +0 -10
  342. package/dist/dhcpd-proxy/lib/packet/message-types.js +0 -12
  343. package/dist/dhcpd-proxy/lib/packet/options.d.ts +0 -8
  344. package/dist/dhcpd-proxy/lib/packet/options.js +0 -264
  345. package/dist/dhcpd-proxy/lib/sprintf.d.ts +0 -6
  346. package/dist/dhcpd-proxy/lib/sprintf.js +0 -130
  347. package/dist/dhcpd-proxy/lib/utils.d.ts +0 -126
  348. package/dist/dhcpd-proxy/lib/utils.js +0 -255
  349. package/dist/dhcpd-proxy/simple-proxy.d.ts +0 -11
  350. package/dist/dhcpd-proxy/simple-proxy.js +0 -118
  351. package/dist/index.d.ts +0 -8
  352. package/dist/index.js +0 -8
  353. package/dist/interfaces/i-addons.d.ts +0 -12
  354. package/dist/interfaces/i-addons.js +0 -8
  355. package/dist/interfaces/i-analyze.d.ts +0 -17
  356. package/dist/interfaces/i-analyze.js +0 -17
  357. package/dist/interfaces/i-app.d.ts +0 -14
  358. package/dist/interfaces/i-app.js +0 -8
  359. package/dist/interfaces/i-branding.d.ts +0 -36
  360. package/dist/interfaces/i-branding.js +0 -8
  361. package/dist/interfaces/i-calamares-displaymanager.d.ts +0 -17
  362. package/dist/interfaces/i-calamares-displaymanager.js +0 -1
  363. package/dist/interfaces/i-calamares-finished.d.ts +0 -12
  364. package/dist/interfaces/i-calamares-finished.js +0 -1
  365. package/dist/interfaces/i-calamares-packages.d.ts +0 -28
  366. package/dist/interfaces/i-calamares-packages.js +0 -1
  367. package/dist/interfaces/i-calamares-partition.d.ts +0 -40
  368. package/dist/interfaces/i-calamares-partition.js +0 -1
  369. package/dist/interfaces/i-config-tools.d.ts +0 -15
  370. package/dist/interfaces/i-config-tools.js +0 -8
  371. package/dist/interfaces/i-devices.d.ts +0 -20
  372. package/dist/interfaces/i-devices.js +0 -8
  373. package/dist/interfaces/i-distro.d.ts +0 -23
  374. package/dist/interfaces/i-distro.js +0 -8
  375. package/dist/interfaces/i-drive-list.d.ts +0 -33
  376. package/dist/interfaces/i-drive-list.js +0 -8
  377. package/dist/interfaces/i-eggs-config.d.ts +0 -32
  378. package/dist/interfaces/i-eggs-config.js +0 -8
  379. package/dist/interfaces/i-excludes.d.ts +0 -14
  380. package/dist/interfaces/i-excludes.js +0 -8
  381. package/dist/interfaces/i-exec.d.ts +0 -11
  382. package/dist/interfaces/i-exec.js +0 -8
  383. package/dist/interfaces/i-initrd.d.ts +0 -13
  384. package/dist/interfaces/i-initrd.js +0 -8
  385. package/dist/interfaces/i-install.d.ts +0 -16
  386. package/dist/interfaces/i-install.js +0 -8
  387. package/dist/interfaces/i-installer.d.ts +0 -17
  388. package/dist/interfaces/i-installer.js +0 -8
  389. package/dist/interfaces/i-luks-passphrase.d.ts +0 -11
  390. package/dist/interfaces/i-luks-passphrase.js +0 -8
  391. package/dist/interfaces/i-materia.d.ts +0 -36
  392. package/dist/interfaces/i-materia.js +0 -8
  393. package/dist/interfaces/i-net.d.ts +0 -16
  394. package/dist/interfaces/i-net.js +0 -8
  395. package/dist/interfaces/i-os-release.d.ts +0 -5
  396. package/dist/interfaces/i-os-release.js +0 -1
  397. package/dist/interfaces/i-packages.d.ts +0 -16
  398. package/dist/interfaces/i-packages.js +0 -8
  399. package/dist/interfaces/i-partitions.d.ts +0 -16
  400. package/dist/interfaces/i-partitions.js +0 -8
  401. package/dist/interfaces/i-pxe.d.ts +0 -45
  402. package/dist/interfaces/i-pxe.js +0 -1
  403. package/dist/interfaces/i-remix.d.ts +0 -21
  404. package/dist/interfaces/i-remix.js +0 -8
  405. package/dist/interfaces/i-settings.d.ts +0 -33
  406. package/dist/interfaces/i-settings.js +0 -8
  407. package/dist/interfaces/i-user.d.ts +0 -14
  408. package/dist/interfaces/i-user.js +0 -8
  409. package/dist/interfaces/i-workdir.d.ts +0 -14
  410. package/dist/interfaces/i-workdir.js +0 -8
  411. package/dist/interfaces/i-xkb-model.d.ts +0 -24
  412. package/dist/interfaces/i-xkb-model.js +0 -8
  413. package/dist/interfaces/index.d.ts +0 -26
  414. package/dist/interfaces/index.js +0 -8
  415. package/dist/krill/classes/cfs.d.ts +0 -17
  416. package/dist/krill/classes/cfs.js +0 -39
  417. package/dist/krill/classes/krill_enums.d.ts +0 -37
  418. package/dist/krill/classes/krill_enums.js +0 -41
  419. package/dist/krill/classes/prepare.d/confirm.d.ts +0 -5
  420. package/dist/krill/classes/prepare.d/confirm.js +0 -30
  421. package/dist/krill/classes/prepare.d/keyboard.d.ts +0 -14
  422. package/dist/krill/classes/prepare.d/keyboard.js +0 -62
  423. package/dist/krill/classes/prepare.d/location.d.ts +0 -17
  424. package/dist/krill/classes/prepare.d/location.js +0 -59
  425. package/dist/krill/classes/prepare.d/network.d.ts +0 -14
  426. package/dist/krill/classes/prepare.d/network.js +0 -68
  427. package/dist/krill/classes/prepare.d/partitions.d.ts +0 -14
  428. package/dist/krill/classes/prepare.d/partitions.js +0 -86
  429. package/dist/krill/classes/prepare.d/summary.d.ts +0 -15
  430. package/dist/krill/classes/prepare.d/summary.js +0 -69
  431. package/dist/krill/classes/prepare.d/users.d.ts +0 -6
  432. package/dist/krill/classes/prepare.d/users.js +0 -63
  433. package/dist/krill/classes/prepare.d/welcome.d.ts +0 -6
  434. package/dist/krill/classes/prepare.d/welcome.js +0 -30
  435. package/dist/krill/classes/prepare.d.ts +0 -89
  436. package/dist/krill/classes/prepare.js +0 -314
  437. package/dist/krill/classes/sequence.d/add_user.d.ts +0 -20
  438. package/dist/krill/classes/sequence.d/add_user.js +0 -77
  439. package/dist/krill/classes/sequence.d/bootloader.d.ts +0 -14
  440. package/dist/krill/classes/sequence.d/bootloader.js +0 -117
  441. package/dist/krill/classes/sequence.d/bootloader_config.d.ts +0 -14
  442. package/dist/krill/classes/sequence.d/bootloader_config.js +0 -192
  443. package/dist/krill/classes/sequence.d/change_password.d.ts +0 -15
  444. package/dist/krill/classes/sequence.d/change_password.js +0 -18
  445. package/dist/krill/classes/sequence.d/del_live_user.d.ts +0 -14
  446. package/dist/krill/classes/sequence.d/del_live_user.js +0 -39
  447. package/dist/krill/classes/sequence.d/fstab.d.ts +0 -14
  448. package/dist/krill/classes/sequence.d/fstab.js +0 -177
  449. package/dist/krill/classes/sequence.d/grubcfg.d.ts +0 -17
  450. package/dist/krill/classes/sequence.d/grubcfg.js +0 -35
  451. package/dist/krill/classes/sequence.d/hostname.d.ts +0 -13
  452. package/dist/krill/classes/sequence.d/hostname.js +0 -50
  453. package/dist/krill/classes/sequence.d/initramfs.d.ts +0 -13
  454. package/dist/krill/classes/sequence.d/initramfs.js +0 -54
  455. package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +0 -14
  456. package/dist/krill/classes/sequence.d/initramfs_cfg.js +0 -35
  457. package/dist/krill/classes/sequence.d/locale.d.ts +0 -13
  458. package/dist/krill/classes/sequence.d/locale.js +0 -91
  459. package/dist/krill/classes/sequence.d/locale_cfg.d.ts +0 -10
  460. package/dist/krill/classes/sequence.d/locale_cfg.js +0 -58
  461. package/dist/krill/classes/sequence.d/m_keyboard.d.ts +0 -14
  462. package/dist/krill/classes/sequence.d/m_keyboard.js +0 -58
  463. package/dist/krill/classes/sequence.d/machine_id.d.ts +0 -15
  464. package/dist/krill/classes/sequence.d/machine_id.js +0 -33
  465. package/dist/krill/classes/sequence.d/mkfs.d.ts +0 -15
  466. package/dist/krill/classes/sequence.d/mkfs.js +0 -75
  467. package/dist/krill/classes/sequence.d/mount_fs.d.ts +0 -17
  468. package/dist/krill/classes/sequence.d/mount_fs.js +0 -68
  469. package/dist/krill/classes/sequence.d/mount_vfs.d.ts +0 -17
  470. package/dist/krill/classes/sequence.d/mount_vfs.js +0 -59
  471. package/dist/krill/classes/sequence.d/network_cfg.d.ts +0 -19
  472. package/dist/krill/classes/sequence.d/network_cfg.js +0 -73
  473. package/dist/krill/classes/sequence.d/packages.d.ts +0 -14
  474. package/dist/krill/classes/sequence.d/packages.js +0 -111
  475. package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +0 -17
  476. package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +0 -73
  477. package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +0 -16
  478. package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +0 -51
  479. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +0 -17
  480. package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +0 -78
  481. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +0 -10
  482. package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +0 -33
  483. package/dist/krill/classes/sequence.d/partition.d.ts +0 -14
  484. package/dist/krill/classes/sequence.d/partition.js +0 -84
  485. package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +0 -13
  486. package/dist/krill/classes/sequence.d/remove_installer_link.js +0 -35
  487. package/dist/krill/classes/sequence.d/umount.d.ts +0 -14
  488. package/dist/krill/classes/sequence.d/umount.js +0 -28
  489. package/dist/krill/classes/sequence.d/unpackfs.d.ts +0 -13
  490. package/dist/krill/classes/sequence.d/unpackfs.js +0 -20
  491. package/dist/krill/classes/sequence.d.ts +0 -133
  492. package/dist/krill/classes/sequence.js +0 -396
  493. package/dist/krill/components/finished.d.ts +0 -16
  494. package/dist/krill/components/finished.js +0 -56
  495. package/dist/krill/components/information.d.ts +0 -8
  496. package/dist/krill/components/information.js +0 -162
  497. package/dist/krill/components/install.d.ts +0 -15
  498. package/dist/krill/components/install.js +0 -60
  499. package/dist/krill/components/keyboard.d.ts +0 -16
  500. package/dist/krill/components/keyboard.js +0 -54
  501. package/dist/krill/components/location.d.ts +0 -16
  502. package/dist/krill/components/location.js +0 -59
  503. package/dist/krill/components/network.d.ts +0 -19
  504. package/dist/krill/components/network.js +0 -65
  505. package/dist/krill/components/partitions.d.ts +0 -18
  506. package/dist/krill/components/partitions.js +0 -89
  507. package/dist/krill/components/steps.d.ts +0 -13
  508. package/dist/krill/components/steps.js +0 -148
  509. package/dist/krill/components/summary.d.ts +0 -25
  510. package/dist/krill/components/summary.js +0 -77
  511. package/dist/krill/components/title.d.ts +0 -11
  512. package/dist/krill/components/title.js +0 -35
  513. package/dist/krill/components/users.d.ts +0 -24
  514. package/dist/krill/components/users.js +0 -80
  515. package/dist/krill/components/welcome.d.ts +0 -13
  516. package/dist/krill/components/welcome.js +0 -63
  517. package/dist/krill/interfaces/i_krill.d.ts +0 -44
  518. package/dist/krill/interfaces/i_krill.js +0 -8
  519. package/dist/krill/interfaces/i_krill_config.d.ts +0 -35
  520. package/dist/krill/interfaces/i_krill_config.js +0 -8
  521. package/dist/krill/lib/get_address.d.ts +0 -8
  522. package/dist/krill/lib/get_address.js +0 -23
  523. package/dist/krill/lib/get_dns.d.ts +0 -8
  524. package/dist/krill/lib/get_dns.js +0 -23
  525. package/dist/krill/lib/get_domain.d.ts +0 -8
  526. package/dist/krill/lib/get_domain.js +0 -23
  527. package/dist/krill/lib/get_gateway.d.ts +0 -8
  528. package/dist/krill/lib/get_gateway.js +0 -23
  529. package/dist/krill/lib/get_hostname.d.ts +0 -8
  530. package/dist/krill/lib/get_hostname.js +0 -23
  531. package/dist/krill/lib/get_luks_passphrase.d.ts +0 -8
  532. package/dist/krill/lib/get_luks_passphrase.js +0 -40
  533. package/dist/krill/lib/get_netmask.d.ts +0 -8
  534. package/dist/krill/lib/get_netmask.js +0 -23
  535. package/dist/krill/lib/get_password.d.ts +0 -8
  536. package/dist/krill/lib/get_password.js +0 -36
  537. package/dist/krill/lib/get_userfullname.d.ts +0 -8
  538. package/dist/krill/lib/get_userfullname.js +0 -23
  539. package/dist/krill/lib/get_username.d.ts +0 -8
  540. package/dist/krill/lib/get_username.js +0 -23
  541. package/dist/krill/lib/select_address_type.d.ts +0 -8
  542. package/dist/krill/lib/select_address_type.js +0 -24
  543. package/dist/krill/lib/select_filesystem_type.d.ts +0 -8
  544. package/dist/krill/lib/select_filesystem_type.js +0 -40
  545. package/dist/krill/lib/select_installation_device.d.ts +0 -8
  546. package/dist/krill/lib/select_installation_device.js +0 -40
  547. package/dist/krill/lib/select_installation_mode.d.ts +0 -9
  548. package/dist/krill/lib/select_installation_mode.js +0 -25
  549. package/dist/krill/lib/select_interface.d.ts +0 -8
  550. package/dist/krill/lib/select_interface.js +0 -24
  551. package/dist/krill/lib/select_keyboard_layout.d.ts +0 -11
  552. package/dist/krill/lib/select_keyboard_layout.js +0 -36
  553. package/dist/krill/lib/select_keyboard_model.d.ts +0 -11
  554. package/dist/krill/lib/select_keyboard_model.js +0 -34
  555. package/dist/krill/lib/select_keyboard_option.d.ts +0 -11
  556. package/dist/krill/lib/select_keyboard_option.js +0 -34
  557. package/dist/krill/lib/select_keyboard_variant.d.ts +0 -11
  558. package/dist/krill/lib/select_keyboard_variant.js +0 -35
  559. package/dist/krill/lib/select_languages.d.ts +0 -8
  560. package/dist/krill/lib/select_languages.js +0 -28
  561. package/dist/krill/lib/select_regions.d.ts +0 -8
  562. package/dist/krill/lib/select_regions.js +0 -24
  563. package/dist/krill/lib/select_replaced_partition.d.ts +0 -8
  564. package/dist/krill/lib/select_replaced_partition.js +0 -31
  565. package/dist/krill/lib/select_user_swap_choice.d.ts +0 -9
  566. package/dist/krill/lib/select_user_swap_choice.js +0 -35
  567. package/dist/krill/lib/select_zones.d.ts +0 -8
  568. package/dist/krill/lib/select_zones.js +0 -518
  569. package/dist/lib/kill_me_softly.d.ts +0 -11
  570. package/dist/lib/kill_me_softly.js +0 -61
  571. package/dist/lib/utils.d.ts +0 -19
  572. package/dist/lib/utils.js +0 -65
@@ -1,175 +0,0 @@
1
- /**
2
- * ./src/commands/syncto.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
- // https://gist.github.com/ansemjo/6f1cf9d9b8f7ce8f70813f52c63b74a6
9
- import { Command, Flags } from '@oclif/core';
10
- import fs from 'node:fs';
11
- import Compressors from '../classes/compressors.js';
12
- import Settings from '../classes/settings.js';
13
- import Utils from '../classes/utils.js';
14
- import { exec } from '../lib/utils.js';
15
- /**
16
- *
17
- */
18
- export default class Syncto extends Command {
19
- static description = "Save users and users' data ENCRYPTED";
20
- static examples = ['sudo eggs syncto', 'sudo eggs syncto --file /path/to/luks-volume', 'sudo eggs syncto --excludes'];
21
- static flags = {
22
- excludes: Flags.boolean({ char: 'e', description: 'use: exclude.list.d/home.list' }),
23
- file: Flags.string({ char: 'f', description: 'file luks-volume encrypted' }),
24
- help: Flags.help({ char: 'h' }),
25
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
26
- };
27
- echo = {};
28
- exclude = false;
29
- excludeHome = '/etc/penguins-eggs.d/exclude.list.d/home.list';
30
- luksName = 'luks-volume';
31
- luksDevice = `/dev/mapper/${this.luksName}`;
32
- luksFile = `/tmp/${this.luksName}`;
33
- luksMountpoint = `/tmp/mnt/${this.luksName}`;
34
- privateSquashfs = `private.squashfs`;
35
- settings = {};
36
- verbose = false;
37
- /**
38
- *
39
- */
40
- async luksCreate() {
41
- await exec(`rm -rf ${this.luksFile}`);
42
- // ==========================================================================
43
- // Create squashfs
44
- // ==========================================================================
45
- Utils.warning(`Creating private.squashfs`);
46
- const compressors = new Compressors();
47
- await compressors.populate();
48
- // comp
49
- let comp = '';
50
- this.settings = new Settings();
51
- if (await this.settings.load()) {
52
- let compression = compressors.fast();
53
- if (this.settings.config.compression == `max`) {
54
- compression = compressors.max();
55
- }
56
- else if (this.settings.config.compression == `standard`) {
57
- compression = compressors.standard();
58
- }
59
- comp = `-comp ${compression}`;
60
- }
61
- // exclude /home/eggs
62
- let exclude_nest = '';
63
- if (fs.existsSync(this.settings.work_dir.workdir)) {
64
- exclude_nest = `-e ${this.settings.config.snapshot_dir}`;
65
- }
66
- // exclude file
67
- let exclude_home = '';
68
- if (this.exclude) {
69
- exclude_home = `-ef ${this.excludeHome}`;
70
- }
71
- // creato dummyfs per /etc/
72
- await exec(`mkdir -p /tmp/dummyfs/etc`, this.echo);
73
- await exec(`cp -a /etc/passwd /tmp/dummyfs/etc`, this.echo);
74
- await exec(`cp -a /etc/group /tmp/dummyfs/etc`, this.echo);
75
- await exec(`cp -a /etc/shadow /tmp/dummyfs/etc`, this.echo);
76
- await exec(`mkdir -p /tmp/dummyfs/etc/lightdm`, this.echo); // lightdm
77
- await exec(`cp -a /etc/lightdm/lightdm.conf /tmp/dummyfs/etc/lightdm/`, this.echo); // lightdm
78
- let mkPrivateSquashfs = `mksquashfs \
79
- /tmp/dummyfs/etc \
80
- /home \
81
- /tmp/${this.privateSquashfs} \
82
- ${comp} \
83
- ${exclude_nest} \
84
- ${exclude_home} \
85
- -keep-as-directory \
86
- -noappend`;
87
- mkPrivateSquashfs = mkPrivateSquashfs.replaceAll(/\s\s+/g, ` `);
88
- await exec(mkPrivateSquashfs, Utils.setEcho(true));
89
- // remove dummyfs
90
- await exec(`rm /tmp/dummyfs/ -rf`, this.echo);
91
- // ==========================================================================
92
- // Create LUKS volume
93
- // ==========================================================================
94
- Utils.titles('Creating LUKS Volume');
95
- // calcolo size
96
- const sizeString = (await exec(`unsquashfs -s /tmp/${this.privateSquashfs} | grep "Filesystem size" | sed -e 's/.*size //' -e 's/ .*//'`, { capture: true, echo: false })).data;
97
- let size = Number.parseInt(sizeString) + 2048;
98
- console.log('size private.squashfs:', bytesToGB(size), size);
99
- const luksBlockSize = 512;
100
- const luksBlocks = Math.ceil(size / luksBlockSize);
101
- size = luksBlockSize * luksBlocks;
102
- // Aggiungo un 20% in più per ottenere luksSize
103
- const luksSize = Math.ceil(size * 1.2);
104
- console.log('luksSize:', bytesToGB(luksSize), luksSize);
105
- // truncate * 2048 è cruciale
106
- const truncateAt = luksSize * 2048;
107
- Utils.warning(`Preparing file ${this.luksFile} for ${this.luksDevice}, size ${truncateAt}`);
108
- await exec(`truncate --size ${luksSize} ${this.luksFile}`, this.echo);
109
- Utils.warning(`Creating LUKS Volume on ${this.luksFile}`);
110
- await exec(`cryptsetup --batch-mode luksFormat ${this.luksFile}`, Utils.setEcho(true));
111
- console.log('');
112
- // open LUKS volume temp
113
- Utils.warning(`Opening LUKS Volume on ${this.luksFile}`);
114
- const { code } = await exec(`cryptsetup luksOpen ${this.luksFile} ${this.luksName}`, Utils.setEcho(true));
115
- if (code != 0) {
116
- Utils.error(`cryptsetup luksOpen ${this.luksFile} ${this.luksName} failed`);
117
- process.exit(code);
118
- }
119
- await exec('udevadm settle', this.echo);
120
- // formatta ext4 il volume
121
- await exec(`mkfs.ext4 ${this.luksDevice}`, this.echo);
122
- console.log('');
123
- // mount LUKS volume
124
- if (!fs.existsSync(`this.luksMountpoint)`)) {
125
- Utils.warning(`creating mountpoint ${this.luksMountpoint}`);
126
- await exec(`mkdir -p ${this.luksMountpoint}`, this.echo);
127
- }
128
- if (!Utils.isMountpoint(`${this.luksMountpoint}`)) {
129
- Utils.warning(`mounting volume: ${this.luksDevice} on ${this.luksMountpoint}`);
130
- const { code } = await exec(`mount ${this.luksDevice} ${this.luksMountpoint}`, Utils.setEcho(true));
131
- if (code != 0) {
132
- Utils.error(`mount ${this.luksDevice} ${this.luksMountpoint} failed`);
133
- process.exit(code);
134
- }
135
- }
136
- // copy private.squashfs
137
- Utils.warning(`moving /tmp/${this.privateSquashfs} to ${this.luksMountpoint}`);
138
- await exec(`mv /tmp/${this.privateSquashfs} ${this.luksMountpoint}`, this.echo);
139
- Utils.warning(`Umounting ${this.luksMountpoint}`);
140
- await exec(`umount ${this.luksMountpoint}`, this.echo);
141
- Utils.warning(`Vlosing ${this.luksMountpoint}`);
142
- await exec(`cryptsetup luksClose ${this.luksName}`, this.echo);
143
- }
144
- /**
145
- *
146
- */
147
- async run() {
148
- Utils.titles(this.id + ' ' + this.argv);
149
- const { flags } = await this.parse(Syncto);
150
- if (flags.verbose) {
151
- this.verbose = true;
152
- }
153
- this.echo = Utils.setEcho(this.verbose);
154
- let fileLuks = '';
155
- if (flags.file) {
156
- fileLuks = flags.file;
157
- }
158
- if (flags.excludes) {
159
- this.exclude = true;
160
- }
161
- if (Utils.isRoot()) {
162
- await this.luksCreate();
163
- }
164
- else {
165
- Utils.useRoot(this.id);
166
- }
167
- }
168
- }
169
- /**
170
- * Convert bytes to gigabytes
171
- */
172
- function bytesToGB(bytes) {
173
- const gigabytes = bytes / 1_073_741_824;
174
- return gigabytes.toFixed(2) + ' GB';
175
- }
@@ -1,18 +0,0 @@
1
- /**
2
- * ./src/commands/tools/clean.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 Clean extends Command {
10
- static description: string;
11
- static examples: string[];
12
- static flags: {
13
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
14
- nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
- };
17
- run(): Promise<void>;
18
- }
@@ -1,37 +0,0 @@
1
- /**
2
- * ./src/commands/tools/clean.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 Bleach from '../../classes/bleach.js';
10
- import Utils from '../../classes/utils.js';
11
- export default class Clean extends Command {
12
- static description = 'clean system log, apt, etc';
13
- static examples = ['sudo eggs tools clean'];
14
- static flags = {
15
- help: Flags.help({ char: 'h' }),
16
- nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
17
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
18
- };
19
- async run() {
20
- const { flags } = await this.parse(Clean);
21
- Utils.titles(this.id + ' ' + this.argv);
22
- let verbose = false;
23
- if (flags.verbose) {
24
- verbose = true;
25
- }
26
- const { nointeractive } = flags;
27
- if (Utils.isRoot()) {
28
- if (nointeractive || (await Utils.customConfirm('Select yes to continue...'))) {
29
- const bleach = new Bleach();
30
- bleach.clean(verbose);
31
- }
32
- }
33
- else {
34
- Utils.useRoot(this.id);
35
- }
36
- }
37
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * ./src/commands/tools/ppa.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 } from '@oclif/core';
14
- /**
15
- *
16
- */
17
- export default class Ppa extends Command {
18
- static description: string;
19
- static examples: string[];
20
- static flags: {
21
- add: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
- help: import("@oclif/core/interfaces").BooleanFlag<void>;
23
- nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
24
- remove: import("@oclif/core/interfaces").BooleanFlag<boolean>;
25
- verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
26
- };
27
- /**
28
- *
29
- */
30
- run(): Promise<void>;
31
- }
@@ -1,176 +0,0 @@
1
- /**
2
- * ./src/commands/tools/ppa.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 ppaKeyUrl = 'https://pieroproietti.github.io/penguins-eggs/deb/key.asc';
21
- const ppaKeyPath = '/usr/share/keyrings/penguins-eggs.gpg';
22
- const ppaSourcesPath = '/etc/apt/sources.list.d/penguins-eggs'; // Base path without extension
23
- /**
24
- *
25
- */
26
- export default class Ppa extends Command {
27
- static description = 'add/remove repo';
28
- static examples = ['sudo eggs tools ppa --add', 'sudo eggs tools ppa --remove'];
29
- static flags = {
30
- add: Flags.boolean({ char: 'a', description: 'add penguins-eggs PPA repository' }),
31
- help: Flags.help({ char: 'h' }),
32
- nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
33
- remove: Flags.boolean({ char: 'r', description: 'remove penguins-eggs PPA repository' }),
34
- verbose: Flags.boolean({ char: 'v', description: 'verbose' })
35
- };
36
- /**
37
- *
38
- */
39
- async run() {
40
- const { flags } = await this.parse(Ppa);
41
- Utils.titles(this.id + ' ' + this.argv);
42
- const { nointeractive } = flags;
43
- if (Utils.isRoot()) {
44
- const distro = new Distro();
45
- if (distro.familyId === 'archlinux' && !Diversions.isManjaroBased(distro.distroId)) {
46
- if (flags.add) {
47
- Utils.warning(`Are you sure to add Chaotic-AUR to your repositories?`);
48
- if (await Utils.customConfirm('Select yes to continue...')) {
49
- await archAdd();
50
- }
51
- }
52
- else if (flags.remove) {
53
- Utils.warning(`Are you sure to remove Chaotic-AUR to your repositories?`);
54
- if (await Utils.customConfirm('Select yes to continue...')) {
55
- await archRemove();
56
- }
57
- }
58
- }
59
- else if (distro.familyId === 'debian') {
60
- /**
61
- * Debian
62
- */
63
- if (flags.add) {
64
- Utils.warning(`Are you sure to add source ${path.basename(ppaSourcesPath)} to your repositories?`);
65
- if (nointeractive || (await Utils.customConfirm('Select yes to continue...'))) {
66
- // Rimuove sempre le vecchie configurazioni per uno stato pulito
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(ppaSourcesPath)} 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
- * Alle the others
85
- */
86
- }
87
- else {
88
- Utils.warning(`Distro: ${distro.distroId}/${distro.codenameId}, cannot use penguins-eggs-repo nor chaotic-aur!`);
89
- }
90
- }
91
- }
92
- }
93
- /**
94
- * archAdd
95
- */
96
- async function archAdd() {
97
- const path = '/var/cache/pacman/pkg/';
98
- const keyring = 'chaotic-keyring.pkg.tar.zst';
99
- const mirrorlist = 'chaotic-mirrorlist.pkg.tar.zst';
100
- const echo = Utils.setEcho(true);
101
- if (fs.existsSync(path + keyring) && fs.existsSync(path + mirrorlist)) {
102
- console.log('repository Chaotic-AUR, already present!');
103
- await archRemove();
104
- process.exit();
105
- }
106
- await exec('pacman-key --recv-key FBA220DFC880C036 --keyserver keyserver.ubuntu.com', echo);
107
- await exec('pacman-key --lsign-key FBA220DFC880C036', echo);
108
- 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);
109
- // Append to /etc/pacman.conf
110
- const chaoticAppend = '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist\n\n';
111
- fs.appendFileSync('/etc/pacman.conf', chaoticAppend);
112
- }
113
- /**
114
- * archRemove
115
- */
116
- async function archRemove() {
117
- const path = '/var/cache/pacman/pkg/';
118
- const keyring = 'chaotic-keyring.pkg.tar.zst';
119
- const mirrorlist = 'chaotic-mirrorlist.pkg.tar.zst';
120
- if (fs.existsSync(path + keyring) && fs.existsSync(path + mirrorlist)) {
121
- console.log('to remove chaotic-aur:\n');
122
- console.log(`sudo rm ${path}${keyring}`);
123
- console.log(`sudo rm ${path}${mirrorlist}`);
124
- console.log(`sudo nano /etc/pacman.conf`);
125
- console.log(`remove at the end:`);
126
- console.log(`[chaotic-aur]`);
127
- console.log(`Include = /etc/pacman.d/chaotic-mirrorlist`);
128
- }
129
- }
130
- /**
131
- * debianAdd822 - For modern Debian/Ubuntu with .sources files
132
- */
133
- async function debianAdd822() {
134
- // --- FIX: Correct GPG key URL ---
135
- await exec(`curl -fsSL ${ppaKeyUrl} | gpg --dearmor -o ${ppaKeyPath}`);
136
- let content = '';
137
- content += 'Types: deb\n';
138
- content += 'URIs: https://pieroproietti.github.io/penguins-eggs/deb\n'; // Correct URI for packages
139
- content += 'Suites: stable\n'; // It's better to be specific
140
- content += 'Components: main\n';
141
- content += `Signed-By: ${ppaKeyPath}\n`;
142
- // --- IMPROVEMENT: Use the standard .sources extension ---
143
- fs.writeFileSync(`${ppaSourcesPath}.sources`, content);
144
- // --- IMPROVEMENT: Removed unnecessary `touch` command ---
145
- }
146
- /**
147
- * debianAdd - For traditional Debian/Ubuntu with .list files
148
- */
149
- async function debianAdd() {
150
- // --- FIX: Correct GPG key URL and remove redundant sudo ---
151
- await exec(`curl -fsSL ${ppaKeyUrl} | gpg --dearmor -o ${ppaKeyPath}`);
152
- const content = `deb [signed-by=${ppaKeyPath}] https://pieroproietti.github.io/penguins-eggs/deb stable main\n`;
153
- fs.writeFileSync(`${ppaSourcesPath}.list`, content);
154
- }
155
- /**
156
- * is822 (checks if the system uses the deb822 format)
157
- */
158
- async function is822() {
159
- let retval = false;
160
- const test = `([ -f /etc/apt/sources.list.d/ubuntu.sources ] || [ -f /etc/apt/sources.list.d/debian.sources ]) && echo "1" || echo "0"`;
161
- const is822Result = (await exec(test, { capture: true, echo: false }));
162
- if (is822Result.code === 0) {
163
- if (is822Result.data.trim() === '1') {
164
- retval = true;
165
- }
166
- }
167
- return retval;
168
- }
169
- /**
170
- * debianRemove - Cleans up all related PPA files
171
- */
172
- async function debianRemove() {
173
- // The script runs as root, so sudo inside exec is not needed here
174
- await exec(`rm -f ${ppaKeyPath}`);
175
- await exec(`rm -f ${ppaSourcesPath}*`);
176
- }
@@ -1,18 +0,0 @@
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
- }
@@ -1,44 +0,0 @@
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
- }
@@ -1,31 +0,0 @@
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
- }
@@ -1,70 +0,0 @@
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
- }
@@ -1,24 +0,0 @@
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
- }
@@ -1,45 +0,0 @@
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
- }