penguins-eggs 9.6.34 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/.oclif.manifest.json +1458 -1
  2. package/README.md +823 -8
  3. package/addons/eggs/theme/livecd/grub.main.cfg +4 -4
  4. package/addons/eggs/theme/livecd/isolinux.main.cfg +5 -5
  5. package/bin/dev.cmd +1 -1
  6. package/bin/dev.js +6 -0
  7. package/bin/run.js +5 -0
  8. package/conf/derivatives.yaml +2 -0
  9. package/conf/distros/buster/calamares/calamares-modules/bootloader-config/bootloader-config.sh +3 -3
  10. package/conf/distros/buster/calamares/calamares-modules/sources-yolk/sources-yolk.sh +1 -1
  11. package/conf/distros/buster/calamares/modules/fstab.yml +1 -1
  12. package/conf/distros/focal/calamares/modules/fstab.yml +1 -1
  13. package/conf/{exclude.list.homes → exclude.list.d/home.list} +6 -1
  14. package/conf/{exclude.list.template → exclude.list.d/master.list} +15 -24
  15. package/conf/exclude.list.d/var.list +21 -0
  16. package/conf/tools.yaml +1 -3
  17. package/dist/classes/bleach.d.ts +37 -0
  18. package/dist/classes/bleach.js +43 -91
  19. package/dist/classes/cfs.d.ts +17 -0
  20. package/dist/classes/cfs.js +15 -12
  21. package/dist/classes/compressors.d.ts +53 -0
  22. package/dist/classes/compressors.js +51 -58
  23. package/dist/classes/daddy.d.ts +18 -0
  24. package/dist/classes/daddy.js +93 -101
  25. package/dist/classes/distro.d.ts +26 -0
  26. package/dist/classes/distro.js +45 -27
  27. package/dist/classes/families/archlinux.d.ts +61 -0
  28. package/dist/classes/families/archlinux.js +56 -113
  29. package/dist/classes/families/debian.d.ts +65 -0
  30. package/dist/classes/families/debian.js +68 -143
  31. package/dist/classes/families/fedora.d.ts +52 -0
  32. package/dist/classes/families/fedora.js +43 -99
  33. package/dist/classes/families/mockup.d.ts +60 -0
  34. package/dist/classes/families/mockup.js +27 -46
  35. package/dist/classes/families/suse.d.ts +52 -0
  36. package/dist/classes/families/suse.js +45 -97
  37. package/dist/classes/incubation/branding.d.ts +17 -0
  38. package/dist/classes/incubation/branding.js +33 -32
  39. package/dist/classes/incubation/distros/bionic.d.ts +32 -0
  40. package/dist/classes/incubation/distros/bionic.js +15 -15
  41. package/dist/classes/incubation/distros/buster.d.ts +32 -0
  42. package/dist/classes/incubation/distros/buster.js +15 -15
  43. package/dist/classes/incubation/distros/focal.d.ts +32 -0
  44. package/dist/classes/incubation/distros/focal.js +15 -15
  45. package/dist/classes/incubation/distros/jessie.d.ts +31 -0
  46. package/dist/classes/incubation/distros/jessie.js +11 -13
  47. package/dist/classes/incubation/distros/rolling.d.ts +32 -0
  48. package/dist/classes/incubation/distros/rolling.js +15 -16
  49. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +11 -0
  50. package/dist/classes/incubation/fisherman-helper/displaymanager.js +8 -9
  51. package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
  52. package/dist/classes/incubation/fisherman-helper/packages.js +17 -17
  53. package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
  54. package/dist/classes/incubation/fisherman-helper/settings.js +30 -28
  55. package/dist/classes/incubation/fisherman.d.ts +77 -0
  56. package/dist/classes/incubation/fisherman.js +137 -132
  57. package/dist/classes/incubation/incubator.d.ts +40 -0
  58. package/dist/classes/incubation/incubator.js +93 -87
  59. package/dist/classes/incubation/installer.d.ts +13 -0
  60. package/dist/classes/incubation/installer.js +27 -12
  61. package/dist/classes/initrd.d.ts +41 -0
  62. package/dist/classes/initrd.js +42 -44
  63. package/dist/classes/keyboards.d.ts +50 -0
  64. package/dist/classes/keyboards.js +110 -107
  65. package/dist/classes/locales.d.ts +21 -0
  66. package/dist/classes/locales.js +30 -34
  67. package/dist/classes/n8.d.ts +17 -0
  68. package/dist/classes/n8.js +16 -22
  69. package/dist/classes/network.d.ts +37 -0
  70. package/dist/classes/network.js +21 -25
  71. package/dist/classes/ovary.d.ts +205 -0
  72. package/dist/classes/ovary.js +1262 -1334
  73. package/dist/classes/pacman.d.ts +149 -0
  74. package/dist/classes/pacman.js +347 -426
  75. package/dist/classes/pve-live.d.ts +17 -0
  76. package/dist/classes/pve-live.js +23 -25
  77. package/dist/classes/pxe.d.ts +65 -0
  78. package/dist/classes/pxe.js +206 -210
  79. package/dist/classes/settings.d.ts +53 -0
  80. package/dist/classes/settings.js +99 -102
  81. package/dist/classes/sources_list.d.ts +28 -0
  82. package/dist/classes/sources_list.js +35 -39
  83. package/dist/classes/systemctl.d.ts +47 -0
  84. package/dist/classes/systemctl.js +35 -39
  85. package/dist/classes/tailor.d.ts +46 -0
  86. package/dist/classes/tailor.js +225 -241
  87. package/dist/classes/tools.d.ts +30 -0
  88. package/dist/classes/tools.js +20 -26
  89. package/dist/classes/users.d.ts +28 -0
  90. package/dist/classes/users.js +22 -16
  91. package/dist/classes/utils.d.ts +318 -0
  92. package/dist/classes/utils.js +91 -76
  93. package/dist/classes/xdg.d.ts +45 -0
  94. package/dist/classes/xdg.js +129 -133
  95. package/dist/classes/yolk.d.ts +33 -0
  96. package/dist/classes/yolk.js +54 -60
  97. package/dist/commands/adapt.d.ts +17 -0
  98. package/dist/commands/adapt.js +21 -25
  99. package/dist/commands/analyze.d.ts +26 -0
  100. package/dist/commands/analyze.js +60 -74
  101. package/dist/commands/calamares.d.ts +29 -0
  102. package/dist/commands/calamares.js +53 -60
  103. package/dist/commands/config.d.ts +36 -0
  104. package/dist/commands/config.js +120 -142
  105. package/dist/commands/cuckoo.d.ts +16 -0
  106. package/dist/commands/cuckoo.js +24 -28
  107. package/dist/commands/dad.d.ts +19 -0
  108. package/dist/commands/dad.js +26 -30
  109. package/dist/commands/export/deb.d.ts +19 -0
  110. package/dist/commands/export/deb.js +33 -42
  111. package/dist/commands/export/iso.d.ts +19 -0
  112. package/dist/commands/export/iso.js +24 -28
  113. package/dist/commands/install.d.ts +37 -0
  114. package/dist/commands/install.js +68 -68
  115. package/dist/commands/kill.d.ts +24 -0
  116. package/dist/commands/kill.js +31 -38
  117. package/dist/commands/mom.d.ts +16 -0
  118. package/dist/commands/mom.js +20 -22
  119. package/dist/commands/produce.d.ts +33 -0
  120. package/dist/commands/produce.js +100 -92
  121. package/dist/commands/status.d.ts +23 -0
  122. package/dist/commands/status.js +14 -20
  123. package/dist/commands/syncfrom.d.ts +45 -0
  124. package/dist/commands/syncfrom.js +99 -109
  125. package/dist/commands/syncto.d.ts +40 -0
  126. package/dist/commands/syncto.js +152 -216
  127. package/dist/commands/tools/clean.d.ts +18 -0
  128. package/dist/commands/tools/clean.js +21 -25
  129. package/dist/commands/tools/ppa.d.ts +26 -0
  130. package/dist/commands/tools/ppa.js +46 -50
  131. package/dist/commands/tools/skel.d.ts +18 -0
  132. package/dist/commands/tools/skel.js +27 -31
  133. package/dist/commands/tools/stat.d.ts +31 -0
  134. package/dist/commands/tools/stat.js +21 -25
  135. package/dist/commands/tools/yolk.d.ts +24 -0
  136. package/dist/commands/tools/yolk.js +23 -27
  137. package/dist/commands/update.d.ts +47 -0
  138. package/dist/commands/update.js +66 -70
  139. package/dist/commands/wardrobe/get.d.ts +23 -0
  140. package/dist/commands/wardrobe/get.js +26 -28
  141. package/dist/commands/wardrobe/list.d.ts +24 -0
  142. package/dist/commands/wardrobe/list.js +69 -67
  143. package/dist/commands/wardrobe/show.d.ts +25 -0
  144. package/dist/commands/wardrobe/show.js +57 -52
  145. package/dist/commands/wardrobe/wear.d.ts +26 -0
  146. package/dist/commands/wardrobe/wear.js +39 -41
  147. package/dist/components/finished.d.ts +15 -0
  148. package/dist/components/finished.js +37 -42
  149. package/dist/components/information.d.ts +8 -0
  150. package/dist/components/information.js +155 -0
  151. package/dist/components/install.d.ts +15 -0
  152. package/dist/components/install.js +31 -35
  153. package/dist/components/keyboard.d.ts +16 -0
  154. package/dist/components/keyboard.js +37 -40
  155. package/dist/components/location.d.ts +16 -0
  156. package/dist/components/location.js +38 -38
  157. package/dist/components/network.d.ts +19 -0
  158. package/dist/components/network.js +47 -48
  159. package/dist/components/partitions.d.ts +16 -0
  160. package/dist/components/partitions.js +47 -51
  161. package/dist/components/steps.d.ts +13 -0
  162. package/dist/components/steps.js +148 -0
  163. package/dist/components/summary.d.ts +24 -0
  164. package/dist/components/summary.js +53 -54
  165. package/dist/components/title.d.ts +12 -0
  166. package/dist/components/title.js +35 -0
  167. package/dist/components/users.d.ts +24 -0
  168. package/dist/components/users.js +43 -43
  169. package/dist/components/welcome.d.ts +13 -0
  170. package/dist/components/welcome.js +37 -38
  171. package/dist/index.d.ts +8 -0
  172. package/dist/index.js +8 -5
  173. package/dist/interfaces/i-addons.d.ts +13 -0
  174. package/dist/interfaces/i-addons.js +8 -3
  175. package/dist/interfaces/i-analyze.d.ts +17 -0
  176. package/dist/interfaces/i-analyze.js +11 -16
  177. package/dist/interfaces/i-app.d.ts +14 -0
  178. package/dist/interfaces/i-app.js +8 -2
  179. package/dist/interfaces/i-branding.d.ts +36 -0
  180. package/dist/interfaces/i-branding.js +8 -2
  181. package/dist/interfaces/i-calamares-partition.d.ts +18 -0
  182. package/dist/interfaces/i-calamares-partition.js +3 -4
  183. package/dist/interfaces/i-config-tools.d.ts +18 -0
  184. package/dist/interfaces/i-config-tools.js +8 -2
  185. package/dist/interfaces/i-devices.d.ts +20 -0
  186. package/dist/interfaces/i-devices.js +8 -2
  187. package/dist/interfaces/i-distro.d.ts +27 -0
  188. package/dist/interfaces/i-distro.js +3 -4
  189. package/dist/interfaces/i-drive-list.d.ts +33 -0
  190. package/dist/interfaces/i-drive-list.js +3 -4
  191. package/dist/interfaces/i-eggs-config.d.ts +32 -0
  192. package/dist/interfaces/i-eggs-config.js +3 -4
  193. package/dist/interfaces/i-excludes.d.ts +14 -0
  194. package/dist/interfaces/i-excludes.js +8 -0
  195. package/dist/interfaces/i-exec.d.ts +11 -0
  196. package/dist/interfaces/i-exec.js +3 -4
  197. package/dist/interfaces/i-initrd.d.ts +13 -0
  198. package/dist/interfaces/i-initrd.js +8 -2
  199. package/dist/interfaces/i-install.d.ts +16 -0
  200. package/dist/interfaces/i-install.js +8 -2
  201. package/dist/interfaces/i-installer.d.ts +17 -0
  202. package/dist/interfaces/i-installer.js +8 -2
  203. package/dist/interfaces/i-krill-config.d.ts +33 -0
  204. package/dist/interfaces/i-krill-config.js +3 -4
  205. package/dist/interfaces/i-krill.d.ts +42 -0
  206. package/dist/interfaces/i-krill.js +8 -2
  207. package/dist/interfaces/i-materia.d.ts +41 -0
  208. package/dist/interfaces/i-materia.js +8 -2
  209. package/dist/interfaces/i-net.d.ts +16 -0
  210. package/dist/interfaces/i-net.js +8 -2
  211. package/dist/interfaces/i-packages.d.ts +29 -0
  212. package/dist/interfaces/i-packages.js +3 -4
  213. package/dist/interfaces/i-partitions.d.ts +16 -0
  214. package/dist/interfaces/i-partitions.js +8 -2
  215. package/dist/interfaces/i-pxe.d.ts +21 -0
  216. package/dist/interfaces/i-pxe.js +8 -39
  217. package/dist/interfaces/i-remix.d.ts +21 -0
  218. package/dist/interfaces/i-remix.js +3 -4
  219. package/dist/interfaces/i-settings.d.ts +39 -0
  220. package/dist/interfaces/i-settings.js +8 -2
  221. package/dist/interfaces/i-user.d.ts +14 -0
  222. package/dist/interfaces/i-user.js +8 -2
  223. package/dist/interfaces/i-workdir.d.ts +14 -0
  224. package/dist/interfaces/i-workdir.js +8 -2
  225. package/dist/interfaces/i-xkb-model.d.ts +24 -0
  226. package/dist/interfaces/i-xkb-model.js +8 -2
  227. package/dist/interfaces/index.d.ts +25 -0
  228. package/dist/interfaces/index.js +3 -4
  229. package/dist/krill/modules/add-user.d.ts +20 -0
  230. package/dist/krill/modules/add-user.js +11 -15
  231. package/dist/krill/modules/bootloader-config-arch.d.ts +14 -0
  232. package/dist/krill/modules/bootloader-config-arch.js +15 -11
  233. package/dist/krill/modules/bootloader-config-debian.d.ts +10 -0
  234. package/dist/krill/modules/bootloader-config-debian.js +20 -16
  235. package/dist/krill/modules/bootloader-config.d.ts +10 -0
  236. package/dist/krill/modules/bootloader-config.js +3 -6
  237. package/dist/krill/modules/bootloader.d.ts +14 -0
  238. package/dist/krill/modules/bootloader.js +9 -13
  239. package/dist/krill/modules/change-password.d.ts +15 -0
  240. package/dist/krill/modules/change-password.js +5 -8
  241. package/dist/krill/modules/del-live-user.d.ts +14 -0
  242. package/dist/krill/modules/del-live-user.js +8 -12
  243. package/dist/krill/modules/fstab.d.ts +14 -0
  244. package/dist/krill/modules/fstab.js +69 -46
  245. package/dist/krill/modules/grubcfg.d.ts +17 -0
  246. package/dist/krill/modules/grubcfg.js +8 -17
  247. package/dist/krill/modules/hostname.d.ts +13 -0
  248. package/dist/krill/modules/hostname.js +11 -17
  249. package/dist/krill/modules/initramfs-cfg.d.ts +14 -0
  250. package/dist/krill/modules/initramfs-cfg.js +6 -15
  251. package/dist/krill/modules/initramfs.d.ts +13 -0
  252. package/dist/krill/modules/initramfs.js +17 -19
  253. package/dist/krill/modules/locale-cfg.d.ts +10 -0
  254. package/dist/krill/modules/locale-cfg.js +8 -12
  255. package/dist/krill/modules/locale.d.ts +13 -0
  256. package/dist/krill/modules/locale.js +7 -11
  257. package/dist/krill/modules/m-keyboard.d.ts +14 -0
  258. package/dist/krill/modules/m-keyboard.js +14 -18
  259. package/dist/krill/modules/m-timezone.d.ts +14 -0
  260. package/dist/krill/modules/m-timezone.js +8 -12
  261. package/dist/krill/modules/machine-id.d.ts +15 -0
  262. package/dist/krill/modules/machine-id.js +6 -10
  263. package/dist/krill/modules/mkfs.d.ts +13 -0
  264. package/dist/krill/modules/mkfs.js +33 -23
  265. package/dist/krill/modules/mount-fs.d.ts +17 -0
  266. package/dist/krill/modules/mount-fs.js +20 -26
  267. package/dist/krill/modules/mount-vfs.d.ts +17 -0
  268. package/dist/krill/modules/mount-vfs.js +16 -21
  269. package/dist/krill/modules/network-cfg.d.ts +19 -0
  270. package/dist/krill/modules/network-cfg.js +28 -31
  271. package/dist/krill/modules/packages.d.ts +14 -0
  272. package/dist/krill/modules/packages.js +17 -21
  273. package/dist/krill/modules/partition.d.ts +20 -0
  274. package/dist/krill/modules/partition.js +80 -86
  275. package/dist/krill/modules/remove-installer-link.d.ts +13 -0
  276. package/dist/krill/modules/remove-installer-link.js +7 -11
  277. package/dist/krill/modules/umount.d.ts +14 -0
  278. package/dist/krill/modules/umount.js +9 -13
  279. package/dist/krill/modules/unpackfs.d.ts +13 -0
  280. package/dist/krill/modules/unpackfs.js +7 -11
  281. package/dist/krill/prepare.d.ts +77 -0
  282. package/dist/krill/{krill-prepare.js → prepare.js} +136 -130
  283. package/dist/krill/sequence.d.ts +156 -0
  284. package/dist/krill/sequence.js +640 -0
  285. package/dist/lib/cli-autologin.d.ts +43 -0
  286. package/dist/lib/cli-autologin.js +88 -92
  287. package/dist/lib/get_address.d.ts +8 -0
  288. package/dist/lib/get_address.js +9 -11
  289. package/dist/lib/get_dns.d.ts +8 -0
  290. package/dist/lib/get_dns.js +9 -11
  291. package/dist/lib/get_domain.d.ts +8 -0
  292. package/dist/lib/get_domain.js +9 -11
  293. package/dist/lib/get_gateway.d.ts +8 -0
  294. package/dist/lib/get_gateway.js +9 -11
  295. package/dist/lib/get_hostname.d.ts +8 -0
  296. package/dist/lib/get_hostname.js +9 -11
  297. package/dist/lib/get_netmask.d.ts +8 -0
  298. package/dist/lib/get_netmask.js +9 -11
  299. package/dist/lib/get_password.d.ts +8 -0
  300. package/dist/lib/get_password.js +10 -13
  301. package/dist/lib/get_userfullname.d.ts +8 -0
  302. package/dist/lib/get_userfullname.js +9 -11
  303. package/dist/lib/get_username.d.ts +8 -0
  304. package/dist/lib/get_username.js +9 -12
  305. package/dist/lib/kill_me_softly.d.ts +11 -0
  306. package/dist/lib/kill_me_softly.js +19 -24
  307. package/dist/lib/select_address_type.d.ts +8 -0
  308. package/dist/lib/select_address_type.js +9 -12
  309. package/dist/lib/select_filesystem_type.d.ts +8 -0
  310. package/dist/lib/select_filesystem_type.js +19 -17
  311. package/dist/lib/select_installation_device.d.ts +8 -0
  312. package/dist/lib/select_installation_device.js +11 -15
  313. package/dist/lib/select_installation_mode.d.ts +8 -0
  314. package/dist/lib/select_installation_mode.js +9 -11
  315. package/dist/lib/select_interface.d.ts +8 -0
  316. package/dist/lib/select_interface.js +9 -12
  317. package/dist/lib/select_keyboard_layout.d.ts +11 -0
  318. package/dist/lib/select_keyboard_layout.js +11 -15
  319. package/dist/lib/select_keyboard_model.d.ts +11 -0
  320. package/dist/lib/select_keyboard_model.js +11 -15
  321. package/dist/lib/select_keyboard_option.d.ts +11 -0
  322. package/dist/lib/select_keyboard_option.js +11 -15
  323. package/dist/lib/select_keyboard_variant.d.ts +11 -0
  324. package/dist/lib/select_keyboard_variant.js +11 -15
  325. package/dist/lib/select_languages.d.ts +8 -0
  326. package/dist/lib/select_languages.js +11 -15
  327. package/dist/lib/select_regions.d.ts +8 -0
  328. package/dist/lib/select_regions.js +9 -11
  329. package/dist/lib/select_user_swap_choice.d.ts +8 -0
  330. package/dist/lib/select_user_swap_choice.js +13 -17
  331. package/dist/lib/select_zones.d.ts +8 -0
  332. package/dist/lib/select_zones.js +9 -11
  333. package/dist/lib/utils.d.ts +34 -0
  334. package/dist/lib/utils.js +24 -14
  335. package/manpages/doc/man/eggs.1.gz +0 -0
  336. package/manpages/doc/man/eggs.html +130 -76
  337. package/package.json +55 -74
  338. package/scripts/_eggs +9 -7
  339. package/scripts/eggs.bash +4 -4
  340. package/LICENSE +0 -339
  341. package/bin/dev +0 -17
  342. package/bin/run +0 -5
  343. package/conf/exclude.list.custom +0 -3
  344. package/dist/components/elements/information.js +0 -194
  345. package/dist/components/elements/steps.js +0 -152
  346. package/dist/components/elements/title.js +0 -36
  347. package/dist/interfaces/i-filters.js +0 -3
  348. package/dist/krill/krill-sequence.js +0 -645
  349. package/dist/lib/dependencies.js +0 -120
  350. package/manpages/doc/man/README.md +0 -0
  351. /package/conf/{exclude.list.usr → exclude.list.d/usr.list} +0 -0
@@ -0,0 +1,17 @@
1
+ /**
2
+ * ./src/commands/adapt.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import { Command } from '@oclif/core';
9
+ export default class Adapt extends Command {
10
+ static description: string;
11
+ static examples: string[];
12
+ static flags: {
13
+ help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
14
+ verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
15
+ };
16
+ run(): Promise<void>;
17
+ }
@@ -1,39 +1,35 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
1
  /**
5
- * penguins-eggs
6
- * command: adapt.ts
2
+ * ./src/commands/adapt.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
7
4
  * author: Piero Proietti
8
5
  * email: piero.proietti@gmail.com
9
6
  * license: MIT
10
7
  */
11
- const core_1 = require("@oclif/core");
12
- const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
13
- const utils_2 = require("../lib/utils");
14
- class Adapt extends core_1.Command {
8
+ import { Command, Flags } from '@oclif/core';
9
+ import Utils from '../classes/utils.js';
10
+ import { exec } from '../lib/utils.js';
11
+ export default class Adapt extends Command {
12
+ static description = 'adapt monitor resolution for VM only';
13
+ static examples = [
14
+ 'eggs adapt',
15
+ ];
16
+ static flags = {
17
+ help: Flags.help({ char: 'h' }),
18
+ verbose: Flags.boolean({ char: 'v' }),
19
+ };
15
20
  async run() {
16
21
  const { args, flags } = await this.parse(Adapt);
17
22
  let verbose = false;
18
23
  if (flags.verbose) {
19
24
  verbose = true;
20
25
  }
21
- const echo = utils_1.default.setEcho(verbose);
26
+ const echo = Utils.setEcho(verbose);
22
27
  // const {args, flags} = this.parse(Adjust)
23
- utils_1.default.titles(this.id + ' ' + this.argv);
24
- utils_1.default.warning('Adapt monitor resolutions to the size of window in virtual machines');
25
- await (0, utils_2.exec)('xrandr --output Virtual-0 --auto', echo);
26
- await (0, utils_2.exec)('xrandr --output Virtual-1 --auto', echo);
27
- await (0, utils_2.exec)('xrandr --output Virtual-2 --auto', echo);
28
- await (0, utils_2.exec)('xrandr --output Virtual-3 --auto', echo);
28
+ Utils.titles(this.id + ' ' + this.argv);
29
+ Utils.warning('Adapt monitor resolutions to the size of window in virtual machines');
30
+ await exec('xrandr --output Virtual-0 --auto', echo);
31
+ await exec('xrandr --output Virtual-1 --auto', echo);
32
+ await exec('xrandr --output Virtual-2 --auto', echo);
33
+ await exec('xrandr --output Virtual-3 --auto', echo);
29
34
  }
30
35
  }
31
- Adapt.flags = {
32
- help: core_1.Flags.help({ char: 'h' }),
33
- verbose: core_1.Flags.boolean({ char: 'v' }),
34
- };
35
- Adapt.description = 'adapt monitor resolution for VM only';
36
- Adapt.examples = [
37
- 'eggs adapt',
38
- ];
39
- exports.default = Adapt;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * ./src/commands/analyze.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import { Command } from '@oclif/core';
9
+ import Users from '../classes/users.js';
10
+ import { IWorkDir } from '../interfaces/i-workdir.js';
11
+ export default class Analyze extends Command {
12
+ static description: string;
13
+ static examples: string[];
14
+ static flags: {
15
+ help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
16
+ verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
17
+ };
18
+ config_file: string;
19
+ snapshot_dir: string;
20
+ work_dir: IWorkDir;
21
+ /**
22
+ * fill
23
+ */
24
+ fill(): Promise<Users[]>;
25
+ run(): Promise<void>;
26
+ }
@@ -1,45 +1,68 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
1
  /**
5
- * penguins-eggs
6
- * command: analyze.ts
2
+ * ./src/commands/analyze.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
7
4
  * author: Piero Proietti
8
5
  * email: piero.proietti@gmail.com
9
6
  * license: MIT
10
7
  */
11
- const core_1 = require("@oclif/core");
12
- const fs_1 = tslib_1.__importDefault(require("fs"));
13
- const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
14
- const promises_1 = require("fs/promises");
15
- const fs_2 = require("fs");
16
- const users_1 = tslib_1.__importDefault(require("../classes/users"));
17
- const systeminformation_1 = tslib_1.__importDefault(require("systeminformation"));
18
- class Analyze extends core_1.Command {
19
- constructor() {
20
- super(...arguments);
21
- this.config_file = '/etc/penguins-eggs.d/eggs.yaml';
22
- this.snapshot_dir = '';
23
- this.work_dir = {};
8
+ import { Command, Flags } from '@oclif/core';
9
+ import fs, { constants } from 'node:fs';
10
+ import { access } from 'node:fs/promises';
11
+ import si from 'systeminformation';
12
+ import Users from '../classes/users.js';
13
+ import Utils from '../classes/utils.js';
14
+ export default class Analyze extends Command {
15
+ static description = 'analyze for syncto';
16
+ static examples = ['sudo eggs analyze'];
17
+ static flags = {
18
+ help: Flags.help({ char: 'h' }),
19
+ verbose: Flags.boolean({ char: 'v', description: 'verbose' }),
20
+ };
21
+ config_file = '/etc/penguins-eggs.d/eggs.yaml';
22
+ snapshot_dir = '';
23
+ work_dir = {};
24
+ /**
25
+ * fill
26
+ */
27
+ async fill() {
28
+ try {
29
+ const usersArray = [];
30
+ await access('/etc/passwd', constants.R_OK | constants.W_OK);
31
+ const passwd = fs.readFileSync('/etc/passwd', 'utf8').split('\n');
32
+ for (const element of passwd) {
33
+ const line = element.split(':');
34
+ const users = new Users(line[0], line[1], line[2], line[3], line[4], line[5], line[6]);
35
+ await users.getValues();
36
+ if (users.password !== undefined) {
37
+ usersArray.push(users);
38
+ }
39
+ }
40
+ return usersArray;
41
+ }
42
+ catch {
43
+ console.error("can't read /etc/passwd");
44
+ process.exit(1);
45
+ }
24
46
  }
25
47
  async run() {
26
- utils_1.default.titles(this.id + ' ' + this.argv);
48
+ Utils.titles(this.id + ' ' + this.argv);
27
49
  const { flags } = await this.parse(Analyze);
28
50
  let verbose = false;
29
51
  if (flags.verbose) {
30
52
  verbose = true;
31
53
  }
32
- const echo = utils_1.default.setEcho(verbose);
54
+ Utils.warning('eggs will analyze your system, and get users data');
55
+ const echo = Utils.setEcho(verbose);
33
56
  let totalSize = 0;
34
- if (utils_1.default.isRoot(this.id)) {
35
- const audio = await systeminformation_1.default.audio();
36
- const bios = await systeminformation_1.default.bios();
37
- const blockDevices = await systeminformation_1.default.blockDevices();
38
- const chassis = await systeminformation_1.default.chassis();
39
- const cpu = await systeminformation_1.default.cpu();
40
- const diskLayout = await systeminformation_1.default.diskLayout();
41
- const mem = await systeminformation_1.default.mem();
42
- const usb = await systeminformation_1.default.usb();
57
+ if (Utils.isRoot(this.id)) {
58
+ const audio = await si.audio();
59
+ const bios = await si.bios();
60
+ const blockDevices = await si.blockDevices();
61
+ const chassis = await si.chassis();
62
+ const cpu = await si.cpu();
63
+ const diskLayout = await si.diskLayout();
64
+ const mem = await si.mem();
65
+ const usb = await si.usb();
43
66
  console.log(`chassis: ${chassis.manufacturer} model: ${chassis.manufacturer}`);
44
67
  console.log(`bios vendor: ${bios.vendor} version: ${bios.version} revision: ${bios.revision}`);
45
68
  console.log(`processor: ${cpu.brand} core: ${cpu.cores} `);
@@ -52,58 +75,21 @@ class Analyze extends core_1.Command {
52
75
  if (diskLayout[2] !== undefined) {
53
76
  console.log(`disk1: ${diskLayout[2].device}`);
54
77
  }
55
- console.log(`name: ${blockDevices[0].name} fs: ${blockDevices[0].fsType}`);
56
- console.log(`name: ${blockDevices[1].name} fs: ${blockDevices[1].fsType}`);
57
- console.log(`name: ${blockDevices[2].name} fs: ${blockDevices[2].fsType}`);
58
- console.log(`name: ${blockDevices[3].name} fs: ${blockDevices[3].fsType}`);
59
- console.log(`usb: ${usb[0].name}`);
60
- /**
61
- * Windows: "/Documents and Settings", "/Programs", "/AppData"
62
- * MacOS: "/Users"
63
- * Linux: "/home"
64
- */
65
- utils_1.default.warning('eggs will analyze your system, to get users and servers data');
78
+ // console.log(`name: ${blockDevices[0].name} fs: ${blockDevices[0].fsType}`)
79
+ // console.log(`name: ${blockDevices[1].name} fs: ${blockDevices[1].fsType}`)
80
+ // console.log(`name: ${blockDevices[2].name} fs: ${blockDevices[2].fsType}`)
81
+ // console.log(`name: ${blockDevices[3].name} fs: ${blockDevices[3].fsType}`)
82
+ // console.log(`usb: ${usb[0].name}`)
66
83
  const users = await this.fill();
67
84
  for (let i = 0; i < users.length; i++)
68
85
  if (users[i].saveIt) {
69
- console.log(`user: ${users[i].login} \thome: ${users[i].home.padEnd(16)} \tsize: ${utils_1.default.formatBytes(users[i].size)} \tBytes: ${users[i].size} `);
70
- // console.log(`user: ${users[i].login} \thome: ${users[i].home} \tsize: ${users[i].size}`)
86
+ console.log(`user: ${users[i].login} \thome: ${users[i].home.padEnd(16)} \tsize: ${Utils.formatBytes(users[i].size)} \tBytes: ${users[i].size} `);
71
87
  totalSize += users[i].size;
72
88
  }
73
- console.log(`Total\t\t\t\t\tSize: ${utils_1.default.formatBytes(totalSize)} \tBytes: ${totalSize}`);
89
+ console.log(`Total\t\t\t\t\tSize: ${Utils.formatBytes(totalSize)} \tBytes: ${totalSize}`);
74
90
  }
75
91
  else {
76
- utils_1.default.useRoot(this.id);
77
- }
78
- }
79
- /**
80
- * fill
81
- */
82
- async fill() {
83
- try {
84
- const usersArray = [];
85
- await (0, promises_1.access)('/etc/passwd', fs_2.constants.R_OK | fs_2.constants.W_OK);
86
- const passwd = fs_1.default.readFileSync('/etc/passwd', 'utf-8').split('\n');
87
- for (const element of passwd) {
88
- const line = element.split(':');
89
- const users = new users_1.default(line[0], line[1], line[2], line[3], line[4], line[5], line[6]);
90
- await users.getValues();
91
- if (users.password !== undefined) {
92
- usersArray.push(users);
93
- }
94
- }
95
- return usersArray;
96
- }
97
- catch {
98
- console.error("can't read /etc/passwd");
99
- process.exit(1);
92
+ Utils.useRoot(this.id);
100
93
  }
101
94
  }
102
95
  }
103
- Analyze.flags = {
104
- help: core_1.Flags.help({ char: 'h' }),
105
- verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' }),
106
- };
107
- Analyze.description = 'analyze for syncto';
108
- Analyze.examples = ['sudo eggs analyze'];
109
- exports.default = Analyze;
@@ -0,0 +1,29 @@
1
+ /**
2
+ * ./src/commands/calamares.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import { Command } from '@oclif/core';
9
+ import Incubator from '../classes/incubation/incubator.js';
10
+ import Settings from '../classes/settings.js';
11
+ import { IRemix } from '../interfaces/index.js';
12
+ export default class Calamares extends Command {
13
+ static description: string;
14
+ static examples: string[];
15
+ static flags: {
16
+ help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
17
+ install: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
18
+ nointeractive: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
19
+ policies: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
20
+ release: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
21
+ remove: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
22
+ theme: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
23
+ verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
24
+ };
25
+ incubator: Incubator;
26
+ remix: IRemix;
27
+ settings: Settings;
28
+ run(): Promise<void>;
29
+ }
@@ -1,66 +1,77 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
1
  /**
5
- * penguins-eggs
6
- * command: calamares.ts
2
+ * ./src/commands/calamares.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
7
4
  * author: Piero Proietti
8
5
  * email: piero.proietti@gmail.com
9
6
  * license: MIT
10
7
  */
11
- const core_1 = require("@oclif/core");
12
- const path_1 = tslib_1.__importDefault(require("path"));
13
- const fs_1 = tslib_1.__importDefault(require("fs"));
14
- const utils_1 = tslib_1.__importDefault(require("../classes/utils"));
15
- const settings_1 = tslib_1.__importDefault(require("../classes/settings"));
16
- const incubator_1 = tslib_1.__importDefault(require("../classes/incubation/incubator"));
17
- const pacman_1 = tslib_1.__importDefault(require("../classes/pacman"));
18
- class Calamares extends core_1.Command {
19
- constructor() {
20
- super(...arguments);
21
- this.remix = {};
22
- this.incubator = {};
23
- this.settings = {};
24
- }
8
+ import { Command, Flags } from '@oclif/core';
9
+ import fs from 'node:fs';
10
+ import path from 'node:path';
11
+ import Incubator from '../classes/incubation/incubator.js';
12
+ import Pacman from '../classes/pacman.js';
13
+ import Settings from '../classes/settings.js';
14
+ import Utils from '../classes/utils.js';
15
+ export default class Calamares extends Command {
16
+ static description = 'configure calamares or install or configure it';
17
+ static examples = [
18
+ 'sudo eggs calamares',
19
+ 'sudo eggs calamares --install',
20
+ 'sudo eggs calamares --install --theme=/path/to/theme',
21
+ 'sudo eggs calamares --remove',
22
+ ];
23
+ static flags = {
24
+ help: Flags.help({ char: 'h' }),
25
+ install: Flags.boolean({ char: 'i', description: "install calamares and its dependencies" }),
26
+ nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
27
+ policies: Flags.boolean({ char: 'p', description: 'configure calamares policies' }),
28
+ release: Flags.boolean({ char: 'r', description: "release: remove calamares and all its dependencies after the installation" }),
29
+ remove: Flags.boolean({ description: "remove calamares and its dependencies" }),
30
+ theme: Flags.string({ description: 'theme/branding for eggs and calamares' }),
31
+ verbose: Flags.boolean({ char: 'v' }),
32
+ };
33
+ incubator = {};
34
+ remix = {};
35
+ settings = {};
25
36
  async run() {
26
- utils_1.default.titles(this.id + ' ' + this.argv);
27
- this.settings = new settings_1.default();
37
+ Utils.titles(this.id + ' ' + this.argv);
38
+ this.settings = new Settings();
28
39
  const { flags } = await this.parse(Calamares);
29
- let verbose = flags.verbose;
30
- let remove = flags.remove;
31
- let install = flags.install;
32
- let release = flags.release;
40
+ const { verbose } = flags;
41
+ const { remove } = flags;
42
+ const { install } = flags;
43
+ const { release } = flags;
33
44
  let theme = 'eggs';
34
45
  if (flags.theme !== undefined) {
35
46
  theme = flags.theme;
36
47
  if (theme.includes('/')) {
37
48
  if (theme.endsWith('/')) {
38
- theme = theme.substring(0, theme.length - 1);
49
+ theme = theme.slice(0, Math.max(0, theme.length - 1));
39
50
  }
40
51
  }
41
52
  else {
42
- const wpath = `/home/${await utils_1.default.getPrimaryUser()}/.wardrobe/vendors/`;
53
+ const wpath = `/home/${await Utils.getPrimaryUser()}/.wardrobe/vendors/`;
43
54
  theme = wpath + flags.theme;
44
55
  }
45
- theme = path_1.default.resolve(theme);
46
- if (!fs_1.default.existsSync(theme + '/theme')) {
56
+ theme = path.resolve(theme);
57
+ if (!fs.existsSync(theme + '/theme')) {
47
58
  console.log('Cannot find theme: ' + theme);
48
59
  process.exit();
49
60
  }
50
61
  }
51
62
  console.log(`theme: ${theme}`);
52
- let policies = flags.policies;
53
- const nointeractive = flags.nointeractive;
54
- if (utils_1.default.isRoot(this.id)) {
63
+ let { policies } = flags;
64
+ const { nointeractive } = flags;
65
+ if (Utils.isRoot(this.id)) {
55
66
  let installer = 'krill';
56
- if (pacman_1.default.isInstalledGui()) {
67
+ if (Pacman.isInstalledGui()) {
57
68
  installer = 'calamares';
58
69
  }
59
70
  if (installer === 'calamares') {
60
- if (!nointeractive || await utils_1.default.customConfirm('Select yes to continue...')) {
71
+ if (!nointeractive || await Utils.customConfirm('Select yes to continue...')) {
61
72
  if (remove) {
62
- if (pacman_1.default.calamaresExists()) {
63
- await pacman_1.default.calamaresRemove();
73
+ if (Pacman.calamaresExists()) {
74
+ await Pacman.calamaresRemove();
64
75
  if (await this.settings.load()) {
65
76
  this.settings.config.force_installer = false;
66
77
  this.settings.save(this.settings.config);
@@ -72,8 +83,8 @@ class Calamares extends core_1.Command {
72
83
  * Install
73
84
  */
74
85
  if (install) {
75
- utils_1.default.warning('Installing calamares');
76
- await pacman_1.default.calamaresInstall();
86
+ Utils.warning('Installing calamares');
87
+ await Pacman.calamaresInstall();
77
88
  if (await this.settings.load()) {
78
89
  this.settings.config.force_installer = true;
79
90
  this.settings.save(this.settings.config);
@@ -85,38 +96,20 @@ class Calamares extends core_1.Command {
85
96
  * Configure
86
97
  */
87
98
  if (await this.settings.load()) {
88
- utils_1.default.warning(`Configuring ${installer}`);
99
+ Utils.warning(`Configuring ${installer}`);
89
100
  await this.settings.loadRemix(this.settings.config.snapshot_basename, theme);
90
101
  const isClone = false;
91
- this.incubator = new incubator_1.default(this.settings.remix, this.settings.distro, this.settings.config.user_opt, theme, isClone, verbose);
102
+ this.incubator = new Incubator(this.settings.remix, this.settings.distro, this.settings.config.user_opt, theme, isClone, verbose);
92
103
  await this.incubator.config(release);
93
104
  /**
94
105
  * policies
95
106
  */
96
107
  if (policies) {
97
- utils_1.default.warning('Configuring policies');
98
- await pacman_1.default.calamaresPolicies();
108
+ Utils.warning('Configuring policies');
109
+ await Pacman.calamaresPolicies();
99
110
  }
100
111
  }
101
112
  }
102
113
  }
103
114
  }
104
115
  }
105
- Calamares.flags = {
106
- help: core_1.Flags.help({ char: 'h' }),
107
- install: core_1.Flags.boolean({ char: 'i', description: "install calamares and its dependencies" }),
108
- nointeractive: core_1.Flags.boolean({ char: 'n', description: 'no user interaction' }),
109
- policies: core_1.Flags.boolean({ char: 'p', description: 'configure calamares policies' }),
110
- release: core_1.Flags.boolean({ char: 'r', description: "release: remove calamares and all its dependencies after the installation" }),
111
- remove: core_1.Flags.boolean({ description: "remove calamares and its dependencies" }),
112
- theme: core_1.Flags.string({ description: 'theme/branding for eggs and calamares' }),
113
- verbose: core_1.Flags.boolean({ char: 'v' }),
114
- };
115
- Calamares.description = 'configure calamares or install or configure it';
116
- Calamares.examples = [
117
- 'sudo eggs calamares',
118
- 'sudo eggs calamares --install',
119
- 'sudo eggs calamares --install --theme=/path/to/theme',
120
- 'sudo eggs calamares --remove',
121
- ];
122
- exports.default = Calamares;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * ./src/commands/config.ts
3
+ * penguins-eggs v.10.0.0 / ecmascript 2020
4
+ * author: Piero Proietti
5
+ * email: piero.proietti@gmail.com
6
+ * license: MIT
7
+ */
8
+ import { Command } from '@oclif/core';
9
+ import { IInstall } from '../interfaces/index.js';
10
+ /**
11
+ *
12
+ */
13
+ export default class Config extends Command {
14
+ static description: string;
15
+ static examples: string[];
16
+ static flags: {
17
+ clean: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
18
+ help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
19
+ noicons: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
20
+ nointeractive: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
21
+ verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
22
+ };
23
+ /**
24
+ *
25
+ * @param i
26
+ * @param verbose
27
+ */
28
+ static install(i: IInstall, nointeractive?: boolean, noicons?: boolean, verbose?: boolean): Promise<void>;
29
+ /**
30
+ *
31
+ *
32
+ * @param verbose
33
+ */
34
+ static thatWeNeed(nointeractive?: boolean, noicons?: boolean, verbose?: boolean, cryptedclone?: boolean): Promise<IInstall>;
35
+ run(): Promise<void>;
36
+ }