penguins-eggs 9.8.1 → 10.0.1

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