penguins-eggs 10.0.53 → 10.0.54

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 (344) hide show
  1. package/.oclif.manifest.json +1548 -2
  2. package/README.md +788 -0
  3. package/addons/eggs/theme/livecd/grub.main.simple.cfg +49 -0
  4. package/addons/eggs/theme/livecd/isolinux.theme.cfg +6 -5
  5. package/conf/distros/fedora/calamares/settings.yml +0 -6
  6. package/dist/classes/bleach.d.ts +32 -0
  7. package/dist/classes/bleach.js +135 -0
  8. package/dist/classes/cfs.d.ts +17 -0
  9. package/dist/classes/cfs.js +39 -0
  10. package/dist/classes/cli-autologin.d.ts +52 -0
  11. package/dist/classes/cli-autologin.js +247 -0
  12. package/dist/classes/compressors.d.ts +54 -0
  13. package/dist/classes/compressors.js +109 -0
  14. package/dist/classes/daddy.d.ts +26 -0
  15. package/dist/classes/daddy.js +167 -0
  16. package/dist/classes/distro.d.ts +32 -0
  17. package/dist/classes/distro.js +341 -0
  18. package/dist/classes/diversions.d.ts +48 -0
  19. package/dist/classes/diversions.js +116 -0
  20. package/dist/classes/incubation/branding.d.ts +17 -0
  21. package/dist/classes/incubation/branding.js +85 -0
  22. package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +11 -0
  23. package/dist/classes/incubation/fisherman-helper/displaymanager.js +40 -0
  24. package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
  25. package/dist/classes/incubation/fisherman-helper/packages.js +72 -0
  26. package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
  27. package/dist/classes/incubation/fisherman-helper/settings.js +83 -0
  28. package/dist/classes/incubation/fisherman.d.ts +70 -0
  29. package/dist/classes/incubation/fisherman.js +263 -0
  30. package/dist/classes/incubation/incubator.d/alpine.d.ts +32 -0
  31. package/dist/classes/incubation/incubator.d/alpine.js +78 -0
  32. package/dist/classes/incubation/incubator.d/bionic.d.ts +32 -0
  33. package/dist/classes/incubation/incubator.d/bionic.js +83 -0
  34. package/dist/classes/incubation/incubator.d/buster.d.ts +32 -0
  35. package/dist/classes/incubation/incubator.d/buster.js +85 -0
  36. package/dist/classes/incubation/incubator.d/jessie.d.ts +31 -0
  37. package/dist/classes/incubation/incubator.d/jessie.js +44 -0
  38. package/dist/classes/incubation/incubator.d/noble.d.ts +32 -0
  39. package/dist/classes/incubation/incubator.d/noble.js +85 -0
  40. package/dist/classes/incubation/incubator.d/openmamba.d.ts +32 -0
  41. package/dist/classes/incubation/incubator.d/openmamba.js +81 -0
  42. package/dist/classes/incubation/incubator.d/opensuse.d.ts +32 -0
  43. package/dist/classes/incubation/incubator.d/opensuse.js +81 -0
  44. package/dist/classes/incubation/incubator.d/rolling.d.ts +32 -0
  45. package/dist/classes/incubation/incubator.d/rolling.js +80 -0
  46. package/dist/classes/incubation/incubator.d.ts +44 -0
  47. package/dist/classes/incubation/incubator.js +382 -0
  48. package/dist/classes/incubation/installer.d.ts +13 -0
  49. package/dist/classes/incubation/installer.js +52 -0
  50. package/dist/classes/keyboards.d.ts +50 -0
  51. package/dist/classes/keyboards.js +287 -0
  52. package/dist/classes/locales.d.ts +21 -0
  53. package/dist/classes/locales.js +77 -0
  54. package/dist/classes/network.d.ts +37 -0
  55. package/dist/classes/network.js +98 -0
  56. package/dist/classes/ovary.d.ts +198 -0
  57. package/dist/classes/ovary.js +1849 -0
  58. package/dist/classes/pacman.d/aldos.d.ts +52 -0
  59. package/dist/classes/pacman.d/aldos.js +100 -0
  60. package/dist/classes/pacman.d/alpine.d.ts +56 -0
  61. package/dist/classes/pacman.d/alpine.js +162 -0
  62. package/dist/classes/pacman.d/archlinux.d.ts +62 -0
  63. package/dist/classes/pacman.d/archlinux.js +137 -0
  64. package/dist/classes/pacman.d/debian.d.ts +65 -0
  65. package/dist/classes/pacman.d/debian.js +143 -0
  66. package/dist/classes/pacman.d/fedora.d.ts +53 -0
  67. package/dist/classes/pacman.d/fedora.js +101 -0
  68. package/dist/classes/pacman.d/openmamba.d.ts +52 -0
  69. package/dist/classes/pacman.d/openmamba.js +100 -0
  70. package/dist/classes/pacman.d/opensuse.d.ts +53 -0
  71. package/dist/classes/pacman.d/opensuse.js +102 -0
  72. package/dist/classes/pacman.d/voidlinux.d.ts +52 -0
  73. package/dist/classes/pacman.d/voidlinux.js +90 -0
  74. package/dist/classes/pacman.d.ts +139 -0
  75. package/dist/classes/pacman.js +775 -0
  76. package/dist/classes/pve-live.d.ts +17 -0
  77. package/dist/classes/pve-live.js +52 -0
  78. package/dist/classes/pxe.d.ts +74 -0
  79. package/dist/classes/pxe.js +410 -0
  80. package/dist/classes/settings.d.ts +53 -0
  81. package/dist/classes/settings.js +185 -0
  82. package/dist/classes/sources_list.d.ts +28 -0
  83. package/dist/classes/sources_list.js +89 -0
  84. package/dist/classes/systemctl.d.ts +47 -0
  85. package/dist/classes/systemctl.js +86 -0
  86. package/dist/classes/tailor.d.ts +50 -0
  87. package/dist/classes/tailor.js +526 -0
  88. package/dist/classes/tools.d.ts +26 -0
  89. package/dist/classes/tools.js +50 -0
  90. package/dist/classes/users.d.ts +28 -0
  91. package/dist/classes/users.js +143 -0
  92. package/dist/classes/utils.d.ts +324 -0
  93. package/dist/classes/utils.js +984 -0
  94. package/dist/classes/xdg.d.ts +45 -0
  95. package/dist/classes/xdg.js +337 -0
  96. package/dist/classes/yolk.d.ts +33 -0
  97. package/dist/classes/yolk.js +114 -0
  98. package/dist/commands/adapt.d.ts +17 -0
  99. package/dist/commands/adapt.js +33 -0
  100. package/dist/commands/analyze.d.ts +26 -0
  101. package/dist/commands/analyze.js +95 -0
  102. package/dist/commands/calamares.d.ts +29 -0
  103. package/dist/commands/calamares.js +112 -0
  104. package/dist/commands/config.d.ts +35 -0
  105. package/dist/commands/config.js +120 -0
  106. package/dist/commands/cuckoo.d.ts +16 -0
  107. package/dist/commands/cuckoo.js +62 -0
  108. package/dist/commands/dad.d.ts +20 -0
  109. package/dist/commands/dad.js +46 -0
  110. package/dist/commands/export/iso.d.ts +19 -0
  111. package/dist/commands/export/iso.js +55 -0
  112. package/dist/commands/export/pkg.d.ts +29 -0
  113. package/dist/commands/export/pkg.js +163 -0
  114. package/dist/commands/export/tarballs.d.ts +27 -0
  115. package/dist/commands/export/tarballs.js +84 -0
  116. package/dist/commands/install.d.ts +37 -0
  117. package/dist/commands/install.js +88 -0
  118. package/dist/commands/kill.d.ts +24 -0
  119. package/dist/commands/kill.js +50 -0
  120. package/dist/commands/love.d.ts +20 -0
  121. package/dist/commands/love.js +59 -0
  122. package/dist/commands/mom.d.ts +16 -0
  123. package/dist/commands/mom.js +30 -0
  124. package/dist/commands/produce.d.ts +34 -0
  125. package/dist/commands/produce.js +201 -0
  126. package/dist/commands/status.d.ts +23 -0
  127. package/dist/commands/status.js +31 -0
  128. package/dist/commands/syncfrom.d.ts +45 -0
  129. package/dist/commands/syncfrom.js +152 -0
  130. package/dist/commands/syncto.d.ts +40 -0
  131. package/dist/commands/syncto.js +175 -0
  132. package/dist/commands/tools/clean.d.ts +18 -0
  133. package/dist/commands/tools/clean.js +37 -0
  134. package/dist/commands/tools/ppa.d.ts +26 -0
  135. package/dist/commands/tools/ppa.js +138 -0
  136. package/dist/commands/tools/skel.d.ts +18 -0
  137. package/dist/commands/tools/skel.js +44 -0
  138. package/dist/commands/tools/stat.d.ts +31 -0
  139. package/dist/commands/tools/stat.js +70 -0
  140. package/dist/commands/tools/yolk.d.ts +24 -0
  141. package/dist/commands/tools/yolk.js +45 -0
  142. package/dist/commands/update.d.ts +51 -0
  143. package/dist/commands/update.js +219 -0
  144. package/dist/commands/wardrobe/get.d.ts +23 -0
  145. package/dist/commands/wardrobe/get.js +52 -0
  146. package/dist/commands/wardrobe/list.d.ts +24 -0
  147. package/dist/commands/wardrobe/list.js +125 -0
  148. package/dist/commands/wardrobe/show.d.ts +25 -0
  149. package/dist/commands/wardrobe/show.js +97 -0
  150. package/dist/commands/wardrobe/wear.d.ts +26 -0
  151. package/dist/commands/wardrobe/wear.js +84 -0
  152. package/dist/components/finished.d.ts +16 -0
  153. package/dist/components/finished.js +56 -0
  154. package/dist/components/information.d.ts +8 -0
  155. package/dist/components/information.js +154 -0
  156. package/dist/components/install.d.ts +15 -0
  157. package/dist/components/install.js +60 -0
  158. package/dist/components/keyboard.d.ts +16 -0
  159. package/dist/components/keyboard.js +54 -0
  160. package/dist/components/location.d.ts +16 -0
  161. package/dist/components/location.js +59 -0
  162. package/dist/components/network.d.ts +19 -0
  163. package/dist/components/network.js +65 -0
  164. package/dist/components/partitions.d.ts +16 -0
  165. package/dist/components/partitions.js +73 -0
  166. package/dist/components/steps.d.ts +13 -0
  167. package/dist/components/steps.js +148 -0
  168. package/dist/components/summary.d.ts +24 -0
  169. package/dist/components/summary.js +81 -0
  170. package/dist/components/title.d.ts +11 -0
  171. package/dist/components/title.js +35 -0
  172. package/dist/components/users.d.ts +24 -0
  173. package/dist/components/users.js +80 -0
  174. package/dist/components/welcome.d.ts +13 -0
  175. package/dist/components/welcome.js +63 -0
  176. package/dist/index-old.d.ts +8 -0
  177. package/dist/index-old.js +8 -0
  178. package/dist/index.d.ts +54 -0
  179. package/dist/index.js +147 -0
  180. package/dist/interfaces/i-addons.d.ts +12 -0
  181. package/dist/interfaces/i-addons.js +8 -0
  182. package/dist/interfaces/i-analyze.d.ts +17 -0
  183. package/dist/interfaces/i-analyze.js +17 -0
  184. package/dist/interfaces/i-app.d.ts +14 -0
  185. package/dist/interfaces/i-app.js +8 -0
  186. package/dist/interfaces/i-branding.d.ts +36 -0
  187. package/dist/interfaces/i-branding.js +8 -0
  188. package/dist/interfaces/i-calamares-displaymanager.d.ts +17 -0
  189. package/dist/interfaces/i-calamares-displaymanager.js +1 -0
  190. package/dist/interfaces/i-calamares-finished.d.ts +12 -0
  191. package/dist/interfaces/i-calamares-finished.js +1 -0
  192. package/dist/interfaces/i-calamares-packages.d.ts +28 -0
  193. package/dist/interfaces/i-calamares-packages.js +1 -0
  194. package/dist/interfaces/i-calamares-partition.d.ts +40 -0
  195. package/dist/interfaces/i-calamares-partition.js +1 -0
  196. package/dist/interfaces/i-config-tools.d.ts +15 -0
  197. package/dist/interfaces/i-config-tools.js +8 -0
  198. package/dist/interfaces/i-devices.d.ts +20 -0
  199. package/dist/interfaces/i-devices.js +8 -0
  200. package/dist/interfaces/i-distro.d.ts +23 -0
  201. package/dist/interfaces/i-distro.js +8 -0
  202. package/dist/interfaces/i-drive-list.d.ts +33 -0
  203. package/dist/interfaces/i-drive-list.js +8 -0
  204. package/dist/interfaces/i-eggs-config.d.ts +32 -0
  205. package/dist/interfaces/i-eggs-config.js +8 -0
  206. package/dist/interfaces/i-excludes.d.ts +14 -0
  207. package/dist/interfaces/i-excludes.js +8 -0
  208. package/dist/interfaces/i-exec.d.ts +11 -0
  209. package/dist/interfaces/i-exec.js +8 -0
  210. package/dist/interfaces/i-initrd.d.ts +13 -0
  211. package/dist/interfaces/i-initrd.js +8 -0
  212. package/dist/interfaces/i-install.d.ts +16 -0
  213. package/dist/interfaces/i-install.js +8 -0
  214. package/dist/interfaces/i-installer.d.ts +17 -0
  215. package/dist/interfaces/i-installer.js +8 -0
  216. package/dist/interfaces/i-krill-config.d.ts +33 -0
  217. package/dist/interfaces/i-krill-config.js +8 -0
  218. package/dist/interfaces/i-krill.d.ts +42 -0
  219. package/dist/interfaces/i-krill.js +8 -0
  220. package/dist/interfaces/i-materia.d.ts +36 -0
  221. package/dist/interfaces/i-materia.js +8 -0
  222. package/dist/interfaces/i-net.d.ts +16 -0
  223. package/dist/interfaces/i-net.js +8 -0
  224. package/dist/interfaces/i-packages.d.ts +16 -0
  225. package/dist/interfaces/i-packages.js +8 -0
  226. package/dist/interfaces/i-partitions.d.ts +16 -0
  227. package/dist/interfaces/i-partitions.js +8 -0
  228. package/dist/interfaces/i-pxe.d.ts +45 -0
  229. package/dist/interfaces/i-pxe.js +1 -0
  230. package/dist/interfaces/i-remix.d.ts +21 -0
  231. package/dist/interfaces/i-remix.js +8 -0
  232. package/dist/interfaces/i-settings.d.ts +33 -0
  233. package/dist/interfaces/i-settings.js +8 -0
  234. package/dist/interfaces/i-user.d.ts +14 -0
  235. package/dist/interfaces/i-user.js +8 -0
  236. package/dist/interfaces/i-workdir.d.ts +14 -0
  237. package/dist/interfaces/i-workdir.js +8 -0
  238. package/dist/interfaces/i-xkb-model.d.ts +24 -0
  239. package/dist/interfaces/i-xkb-model.js +8 -0
  240. package/dist/interfaces/index.d.ts +25 -0
  241. package/dist/interfaces/index.js +8 -0
  242. package/dist/krill/modules/add-user.d.ts +20 -0
  243. package/dist/krill/modules/add-user.js +48 -0
  244. package/dist/krill/modules/bootloader-config.d.ts +14 -0
  245. package/dist/krill/modules/bootloader-config.js +165 -0
  246. package/dist/krill/modules/bootloader.d.ts +14 -0
  247. package/dist/krill/modules/bootloader.js +157 -0
  248. package/dist/krill/modules/change-password.d.ts +15 -0
  249. package/dist/krill/modules/change-password.js +18 -0
  250. package/dist/krill/modules/del-live-user.d.ts +14 -0
  251. package/dist/krill/modules/del-live-user.js +39 -0
  252. package/dist/krill/modules/fstab.d.ts +14 -0
  253. package/dist/krill/modules/fstab.js +123 -0
  254. package/dist/krill/modules/grubcfg.d.ts +17 -0
  255. package/dist/krill/modules/grubcfg.js +29 -0
  256. package/dist/krill/modules/hostname.d.ts +13 -0
  257. package/dist/krill/modules/hostname.js +50 -0
  258. package/dist/krill/modules/initramfs-cfg.d.ts +14 -0
  259. package/dist/krill/modules/initramfs-cfg.js +22 -0
  260. package/dist/krill/modules/initramfs.d.ts +13 -0
  261. package/dist/krill/modules/initramfs.js +54 -0
  262. package/dist/krill/modules/locale-cfg.d.ts +10 -0
  263. package/dist/krill/modules/locale-cfg.js +58 -0
  264. package/dist/krill/modules/locale.d.ts +13 -0
  265. package/dist/krill/modules/locale.js +91 -0
  266. package/dist/krill/modules/m-keyboard.d.ts +14 -0
  267. package/dist/krill/modules/m-keyboard.js +58 -0
  268. package/dist/krill/modules/machine-id.d.ts +15 -0
  269. package/dist/krill/modules/machine-id.js +33 -0
  270. package/dist/krill/modules/mkfs.d.ts +15 -0
  271. package/dist/krill/modules/mkfs.js +50 -0
  272. package/dist/krill/modules/mount-fs.d.ts +17 -0
  273. package/dist/krill/modules/mount-fs.js +62 -0
  274. package/dist/krill/modules/mount-vfs.d.ts +17 -0
  275. package/dist/krill/modules/mount-vfs.js +40 -0
  276. package/dist/krill/modules/network-cfg.d.ts +19 -0
  277. package/dist/krill/modules/network-cfg.js +64 -0
  278. package/dist/krill/modules/packages.d.ts +14 -0
  279. package/dist/krill/modules/packages.js +111 -0
  280. package/dist/krill/modules/partition.d.ts +20 -0
  281. package/dist/krill/modules/partition.js +324 -0
  282. package/dist/krill/modules/remove-installer-link.d.ts +13 -0
  283. package/dist/krill/modules/remove-installer-link.js +35 -0
  284. package/dist/krill/modules/umount.d.ts +14 -0
  285. package/dist/krill/modules/umount.js +28 -0
  286. package/dist/krill/modules/unpackfs.d.ts +13 -0
  287. package/dist/krill/modules/unpackfs.js +20 -0
  288. package/dist/krill/prepare.d.ts +78 -0
  289. package/dist/krill/prepare.js +624 -0
  290. package/dist/krill/sequence.d.ts +154 -0
  291. package/dist/krill/sequence.js +652 -0
  292. package/dist/lib/get_address.d.ts +8 -0
  293. package/dist/lib/get_address.js +23 -0
  294. package/dist/lib/get_dns.d.ts +8 -0
  295. package/dist/lib/get_dns.js +23 -0
  296. package/dist/lib/get_domain.d.ts +8 -0
  297. package/dist/lib/get_domain.js +23 -0
  298. package/dist/lib/get_gateway.d.ts +8 -0
  299. package/dist/lib/get_gateway.js +23 -0
  300. package/dist/lib/get_hostname.d.ts +8 -0
  301. package/dist/lib/get_hostname.js +23 -0
  302. package/dist/lib/get_netmask.d.ts +8 -0
  303. package/dist/lib/get_netmask.js +23 -0
  304. package/dist/lib/get_password.d.ts +8 -0
  305. package/dist/lib/get_password.js +36 -0
  306. package/dist/lib/get_userfullname.d.ts +8 -0
  307. package/dist/lib/get_userfullname.js +23 -0
  308. package/dist/lib/get_username.d.ts +8 -0
  309. package/dist/lib/get_username.js +23 -0
  310. package/dist/lib/kill_me_softly.d.ts +11 -0
  311. package/dist/lib/kill_me_softly.js +61 -0
  312. package/dist/lib/select_address_type.d.ts +8 -0
  313. package/dist/lib/select_address_type.js +24 -0
  314. package/dist/lib/select_filesystem_type.d.ts +8 -0
  315. package/dist/lib/select_filesystem_type.js +46 -0
  316. package/dist/lib/select_installation_device.d.ts +8 -0
  317. package/dist/lib/select_installation_device.js +30 -0
  318. package/dist/lib/select_installation_mode.d.ts +8 -0
  319. package/dist/lib/select_installation_mode.js +24 -0
  320. package/dist/lib/select_interface.d.ts +8 -0
  321. package/dist/lib/select_interface.js +24 -0
  322. package/dist/lib/select_keyboard_layout.d.ts +11 -0
  323. package/dist/lib/select_keyboard_layout.js +36 -0
  324. package/dist/lib/select_keyboard_model.d.ts +11 -0
  325. package/dist/lib/select_keyboard_model.js +34 -0
  326. package/dist/lib/select_keyboard_option.d.ts +11 -0
  327. package/dist/lib/select_keyboard_option.js +34 -0
  328. package/dist/lib/select_keyboard_variant.d.ts +11 -0
  329. package/dist/lib/select_keyboard_variant.js +35 -0
  330. package/dist/lib/select_languages.d.ts +8 -0
  331. package/dist/lib/select_languages.js +28 -0
  332. package/dist/lib/select_regions.d.ts +8 -0
  333. package/dist/lib/select_regions.js +24 -0
  334. package/dist/lib/select_user_swap_choice.d.ts +8 -0
  335. package/dist/lib/select_user_swap_choice.js +34 -0
  336. package/dist/lib/select_zones.d.ts +8 -0
  337. package/dist/lib/select_zones.js +518 -0
  338. package/dist/lib/utils.d.ts +34 -0
  339. package/dist/lib/utils.js +79 -0
  340. package/dist/penguins-eggs-tarball-10.0.54-1-linux-x64.tar.gz +0 -0
  341. package/package.json +11 -7
  342. package/scripts/_eggs +10 -1
  343. package/scripts/eggs.bash +1 -0
  344. /package/addons/eggs/theme/livecd/{grub.main.cfg → grub.main.full.cfg} +0 -0
@@ -0,0 +1,163 @@
1
+ /**
2
+ * ./src/commands/export/deb.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, Flags } from '@oclif/core';
9
+ import Distro from '../../classes/distro.js';
10
+ import Diversions from '../../classes/diversions.js';
11
+ import Tools from '../../classes/tools.js';
12
+ import Utils from '../../classes/utils.js';
13
+ import { exec } from '../../lib/utils.js';
14
+ import os from 'node:os';
15
+ import { execSync } from 'node:child_process';
16
+ export default class ExportPkg extends Command {
17
+ static description = 'export pkg/iso to the destination host';
18
+ static examples = ['eggs export pkg', 'eggs export pkg --clean', 'eggs export pkg --all'];
19
+ static flags = {
20
+ all: Flags.boolean({ char: 'a', description: 'export all archs' }),
21
+ clean: Flags.boolean({ char: 'c', description: 'remove old .deb before to copy' }),
22
+ help: Flags.help({ char: 'h' }),
23
+ verbose: Flags.boolean({ char: 'v', description: 'verbose' })
24
+ };
25
+ user = '';
26
+ all = false;
27
+ clean = false;
28
+ verbose = false;
29
+ echo = {};
30
+ Tu = new Tools();
31
+ /**
32
+ *
33
+ */
34
+ async run() {
35
+ const { args, flags } = await this.parse(ExportPkg);
36
+ Utils.titles(this.id + ' ' + this.argv);
37
+ Utils.warning(ExportPkg.description);
38
+ // Ora servono in più parti
39
+ this.user = os.userInfo().username;
40
+ if (this.user === 'root') {
41
+ this.user = execSync('echo $SUDO_USER', { encoding: 'utf-8' }).trim();
42
+ if (this.user === '') {
43
+ this.user = execSync('echo $DOAS_USER', { encoding: 'utf-8' }).trim();
44
+ }
45
+ }
46
+ this.all = flags.all;
47
+ this.clean = flags.clean;
48
+ this.verbose = flags.verbose;
49
+ this.echo = Utils.setEcho(this.verbose);
50
+ await this.Tu.loadSettings();
51
+ let distro = new Distro();
52
+ const familyId = distro.familyId;
53
+ const distroId = distro.distroId;
54
+ const remoteMountpoint = `/tmp/eggs-${(Math.random() + 1).toString(36).slice(7)}`;
55
+ let localPath = '';
56
+ let remotePath = '';
57
+ let filter = '';
58
+ /**
59
+ * aldos
60
+ */
61
+ if (familyId === 'aldos') {
62
+ Utils.warning("aldos rpm");
63
+ process.exit();
64
+ /**
65
+ * alpine
66
+ */
67
+ }
68
+ else if (familyId === 'alpine') {
69
+ Utils.warning("alpine apk");
70
+ let arch = 'x86_64';
71
+ if (process.arch === 'ia32') {
72
+ arch = 'i386';
73
+ }
74
+ localPath = `/home/${this.user}/packages/alpine/${arch}`;
75
+ remotePath = `${this.Tu.config.remotePathPackages}/alpine/`;
76
+ filter = `penguins-eggs*10.?.*-r*.apk`;
77
+ /**
78
+ * Arch/Manjaro
79
+ */
80
+ }
81
+ else if (familyId === 'archlinux') {
82
+ /**
83
+ * Manjaro
84
+ */
85
+ if (Diversions.isManjaroBased(distroId)) {
86
+ Utils.warning("manjaro PKGBUILD");
87
+ localPath = `/home/${this.user}/penguins-eggs-pkgbuilds/manjaro/penguins-eggs`;
88
+ remotePath = this.Tu.config.remotePathPackages + "/manjaro";
89
+ filter = `penguins-eggs-10.?.*-?-any.pkg.tar.*`;
90
+ /**
91
+ * Arch
92
+ */
93
+ }
94
+ else {
95
+ Utils.warning("aur PKGBUILD");
96
+ localPath = `/home/${this.user}/penguins-eggs-pkgbuilds/aur/penguins-eggs`;
97
+ remotePath = this.Tu.config.remotePathPackages + "/aur";
98
+ filter = `penguins-eggs-10.?.*-?-any.pkg.tar.zst`;
99
+ }
100
+ /**
101
+ * Debian
102
+ */
103
+ }
104
+ else if (familyId === "debian") {
105
+ Utils.warning("debian deb");
106
+ localPath = `/home/${this.user}/penguins-eggs/perrisbrewery/workdir`;
107
+ remotePath = this.Tu.config.remotePathPackages + "/debs";
108
+ let arch = Utils.uefiArch();
109
+ if (this.all) {
110
+ arch = '*';
111
+ }
112
+ filter = `penguins-eggs_10.?.*-?_${arch}.deb`;
113
+ /**
114
+ * fedora
115
+ */
116
+ }
117
+ else if (familyId === 'fedora') {
118
+ Utils.warning("fedora rpm packages");
119
+ localPath = `/home/${this.user}/rpmbuild/RPMS/x86_64`;
120
+ remotePath = this.Tu.config.remotePathPackages + "/fedora";
121
+ filter = `penguins-eggs-10.?.*-?fedora.*.rpm`;
122
+ /**
123
+ * openmamba
124
+ */
125
+ }
126
+ else if (familyId === 'openmamba') {
127
+ Utils.warning("openmamba rpm packages");
128
+ localPath = `/usr/src/RPM/RPMS/x86_64`;
129
+ remotePath = this.Tu.config.remotePathPackages + "/openmamba";
130
+ filter = `penguins-eggs-10.?.*-?mamba.*.rpm`;
131
+ /**
132
+ * opensuse
133
+ */
134
+ }
135
+ else if (familyId === 'opensuse') {
136
+ Utils.warning("opensuse rpm packages");
137
+ process.exit();
138
+ /**
139
+ * voidlinux
140
+ */
141
+ }
142
+ else if (familyId === 'voidlinux') {
143
+ Utils.warning("voidlinux packages");
144
+ process.exit();
145
+ }
146
+ let cmd = `mkdir ${remoteMountpoint}\n`;
147
+ cmd += `sshfs ${this.Tu.config.remoteUser}@${this.Tu.config.remoteHost}:${remotePath} ${remoteMountpoint}\n`;
148
+ if (this.clean) {
149
+ cmd += `rm -f ${remoteMountpoint}/${filter}\n`;
150
+ }
151
+ cmd += `cp ${localPath}/${filter} ${remoteMountpoint}\n`;
152
+ cmd += 'sync\n';
153
+ cmd += `umount ${remoteMountpoint}\n`;
154
+ cmd += `rm -rf ${remoteMountpoint}\n`;
155
+ if (!this.verbose) {
156
+ if (this.clean) {
157
+ console.log(`remove: ${this.Tu.config.remoteUser}@${this.Tu.config.remoteHost}:${filter}`);
158
+ }
159
+ console.log(`copy: ${localPath}/${filter} to ${this.Tu.config.remoteUser}@${this.Tu.config.remoteHost}:${remotePath}`);
160
+ }
161
+ await exec(cmd, this.echo);
162
+ }
163
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * ./src/commands/export/deb.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 Tools from '../../classes/tools.js';
10
+ export default class ExportTarballs extends Command {
11
+ static description: string;
12
+ static examples: string[];
13
+ static flags: {
14
+ clean: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
16
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
+ };
18
+ user: string;
19
+ clean: boolean;
20
+ verbose: boolean;
21
+ echo: {};
22
+ Tu: Tools;
23
+ /**
24
+ *
25
+ */
26
+ run(): Promise<void>;
27
+ }
@@ -0,0 +1,84 @@
1
+ /**
2
+ * ./src/commands/export/deb.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, Flags } from '@oclif/core';
9
+ import Tools from '../../classes/tools.js';
10
+ import Utils from '../../classes/utils.js';
11
+ import { exec } from '../../lib/utils.js';
12
+ import os from 'node:os';
13
+ import fs from 'fs';
14
+ // pjson
15
+ import { createRequire } from 'module';
16
+ const require = createRequire(import.meta.url);
17
+ const pjson = require('../../../package.json');
18
+ import { execSync } from 'node:child_process';
19
+ export default class ExportTarballs extends Command {
20
+ static description = 'export pkg/iso/tarballs to the destination host';
21
+ static examples = ['eggs export tarballs', 'eggs export tarballs --clean'];
22
+ static flags = {
23
+ clean: Flags.boolean({ char: 'c', description: 'remove old .deb before to copy' }),
24
+ help: Flags.help({ char: 'h' }),
25
+ verbose: Flags.boolean({ char: 'v', description: 'verbose' })
26
+ };
27
+ user = '';
28
+ clean = false;
29
+ verbose = false;
30
+ echo = {};
31
+ Tu = new Tools();
32
+ /**
33
+ *
34
+ */
35
+ async run() {
36
+ const { args, flags } = await this.parse(ExportTarballs);
37
+ Utils.titles(this.id + ' ' + this.argv);
38
+ Utils.warning(ExportTarballs.description);
39
+ // Ora servono in più parti
40
+ this.user = os.userInfo().username;
41
+ if (this.user === 'root') {
42
+ this.user = execSync('echo $SUDO_USER', { encoding: 'utf-8' }).trim();
43
+ if (this.user === '') {
44
+ this.user = execSync('echo $DOAS_USER', { encoding: 'utf-8' }).trim();
45
+ }
46
+ }
47
+ this.clean = flags.clean;
48
+ this.verbose = flags.verbose;
49
+ this.echo = Utils.setEcho(this.verbose);
50
+ await this.Tu.loadSettings();
51
+ const remoteMountpoint = `/tmp/eggs-${(Math.random() + 1).toString(36).slice(7)}`;
52
+ const localPath = `/home/${this.user}/penguins-eggs/dist/`;
53
+ const remotePath = `${this.Tu.config.remotePathPackages}/tarballs/`;
54
+ const filter = `eggs-v10.?.*-*-linux-x64.tar.gz`;
55
+ const tarName = `penguins-eggs-tarball-${pjson.version}-1-linux-x64.tar.gz`;
56
+ // remove old tarball
57
+ let cmd = `rm -f ${localPath}${tarName}`;
58
+ await exec(cmd, this.echo);
59
+ // rename new tarball
60
+ cmd = `mv ${localPath}${filter} ${localPath}${tarName}`;
61
+ await exec(cmd, this.echo);
62
+ // check if new tarball exists
63
+ if (!fs.existsSync(`${localPath}${tarName}`)) {
64
+ console.log(`No ${tarName} exists!`);
65
+ console.log(`Create it using: pnpm tarballs`);
66
+ process.exit(1);
67
+ }
68
+ cmd = `mkdir ${remoteMountpoint}\n`;
69
+ cmd += `sshfs ${this.Tu.config.remoteUser}@${this.Tu.config.remoteHost}:${remotePath} ${remoteMountpoint}\n`;
70
+ if (this.clean) {
71
+ cmd += `rm -f ${remoteMountpoint}/*\n`;
72
+ }
73
+ cmd += `cp ${localPath}${tarName} ${remoteMountpoint}/${tarName}\n`;
74
+ cmd += 'sync\n';
75
+ cmd += `umount ${remoteMountpoint}\n`;
76
+ cmd += `rm -rf ${remoteMountpoint}\n`;
77
+ if (!this.verbose) {
78
+ if (this.clean) {
79
+ console.log(`remove: ${this.Tu.config.remoteUser}@${this.Tu.config.remoteHost}:${remotePath}*`);
80
+ }
81
+ }
82
+ await exec(cmd, this.echo);
83
+ }
84
+ }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * ./src/commands/install.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
+ /**
10
+ * Class Krill
11
+ */
12
+ export default class Install extends Command {
13
+ static aliases: string[];
14
+ static description: string;
15
+ static examples: string[];
16
+ static flags: {
17
+ btrfs: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ chroot: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ crypted: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
+ domain: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ halt: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
23
+ ip: import("@oclif/core/interfaces").BooleanFlag<boolean>;
24
+ nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
25
+ none: import("@oclif/core/interfaces").BooleanFlag<boolean>;
26
+ pve: import("@oclif/core/interfaces").BooleanFlag<boolean>;
27
+ random: import("@oclif/core/interfaces").BooleanFlag<boolean>;
28
+ small: import("@oclif/core/interfaces").BooleanFlag<boolean>;
29
+ suspend: import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
+ unattended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
31
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ };
33
+ /**
34
+ * Execute
35
+ */
36
+ run(): Promise<void>;
37
+ }
@@ -0,0 +1,88 @@
1
+ /**
2
+ * ./src/commands/install.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, Flags } from '@oclif/core';
9
+ import yaml from 'js-yaml';
10
+ import fs from 'node:fs';
11
+ import https from 'node:https';
12
+ import Utils from '../classes/utils.js';
13
+ import Krill from '../krill/prepare.js';
14
+ const agent = new https.Agent({
15
+ rejectUnauthorized: false
16
+ });
17
+ /**
18
+ * Class Krill
19
+ */
20
+ export default class Install extends Command {
21
+ static aliases = ['krill'];
22
+ static description = 'krill: the CLI system installer - the egg became a penguin!';
23
+ static examples = ['sudo eggs install', 'sudo eggs install --unattended --halt', 'sudo eggs install --chroot'];
24
+ static flags = {
25
+ btrfs: Flags.boolean({ char: 'b', description: 'Format btrfs' }),
26
+ chroot: Flags.boolean({ char: 'c', description: 'chroot before to end' }),
27
+ crypted: Flags.boolean({ char: 'k', description: 'Crypted CLI installation' }),
28
+ domain: Flags.string({ char: 'd', description: 'Domain name, defult: .local' }),
29
+ halt: Flags.boolean({ char: 'H', description: 'Halt the system after installation' }),
30
+ help: Flags.help({ char: 'h' }),
31
+ ip: Flags.boolean({ char: 'i', description: 'hostname as ip, eg: ip-192-168-1-33' }),
32
+ nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
33
+ none: Flags.boolean({ char: 'N', description: 'Swap none: 256M' }),
34
+ pve: Flags.boolean({ char: 'p', description: 'Proxmox VE install' }),
35
+ random: Flags.boolean({ char: 'r', description: 'Add random to hostname, eg: colibri-ay412dt' }),
36
+ small: Flags.boolean({ char: 's', description: 'Swap small: RAM' }),
37
+ suspend: Flags.boolean({ char: 'S', description: 'Swap suspend: RAM x 2' }),
38
+ unattended: Flags.boolean({ char: 'u', description: 'Unattended installation' }),
39
+ verbose: Flags.boolean({ char: 'v', description: 'Verbose' })
40
+ };
41
+ /**
42
+ * Execute
43
+ */
44
+ async run() {
45
+ Utils.titles(this.id + ' ' + this.argv);
46
+ const { flags } = await this.parse(Install);
47
+ const { unattended } = flags;
48
+ // krillConfig
49
+ let krillConfig = {};
50
+ const content = fs.readFileSync('/etc/penguins-eggs.d/krill.yaml', 'utf8');
51
+ krillConfig = yaml.load(content);
52
+ // nointeractive
53
+ const { nointeractive } = flags;
54
+ // halt
55
+ const { halt } = flags;
56
+ // hostname
57
+ const { ip } = flags;
58
+ const { random } = flags;
59
+ // chroot before to end
60
+ const { chroot } = flags;
61
+ let domain = '';
62
+ if (flags.domain) {
63
+ domain = flags.domain;
64
+ }
65
+ // swap
66
+ const { suspend } = flags;
67
+ const { small } = flags;
68
+ const { none } = flags;
69
+ let { crypted } = flags;
70
+ const { pve } = flags;
71
+ if (pve) {
72
+ crypted = false;
73
+ }
74
+ const { verbose } = flags;
75
+ if (Utils.isRoot()) {
76
+ if (Utils.isLive()) {
77
+ const krill = new Krill(unattended, nointeractive, halt, chroot);
78
+ await krill.prepare(krillConfig, ip, random, domain, suspend, small, none, crypted, pve, flags.btrfs, verbose);
79
+ }
80
+ else {
81
+ Utils.warning('You are in an installed system!');
82
+ }
83
+ }
84
+ else {
85
+ Utils.useRoot(this.id);
86
+ }
87
+ }
88
+ }
@@ -0,0 +1,24 @@
1
+ /**
2
+ * ./src/commands/kill.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
+ /**
10
+ *
11
+ */
12
+ export default class Kill extends Command {
13
+ static description: string;
14
+ static examples: string[];
15
+ static flags: {
16
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
17
+ isos: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
+ };
21
+ config_file: string;
22
+ snapshot_dir: string;
23
+ run(): Promise<void>;
24
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * ./src/commands/kill.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, Flags } from '@oclif/core';
9
+ import Settings from '../classes/settings.js';
10
+ import Utils from '../classes/utils.js';
11
+ import killMeSoftly from '../lib/kill_me_softly.js';
12
+ /**
13
+ *
14
+ */
15
+ export default class Kill extends Command {
16
+ static description = 'kill the eggs/free the nest';
17
+ static examples = ['sudo eggs kill'];
18
+ static flags = {
19
+ help: Flags.help({ char: 'h' }),
20
+ isos: Flags.boolean({ char: 'i', description: 'erase all ISOs on remote mount' }),
21
+ nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
22
+ verbose: Flags.boolean({ char: 'v', description: 'verbose' })
23
+ };
24
+ config_file = '/etc/penguins-eggs.d/eggs.yaml';
25
+ snapshot_dir = '';
26
+ async run() {
27
+ Utils.titles(this.id + ' ' + this.argv);
28
+ const { flags } = await this.parse(Kill);
29
+ const { verbose } = flags;
30
+ const { isos } = flags;
31
+ const { nointeractive } = flags;
32
+ const echo = Utils.setEcho(verbose);
33
+ if (Utils.isRoot()) {
34
+ const settings = new Settings();
35
+ await settings.load();
36
+ await settings.listFreeSpace();
37
+ if (Utils.isMountpoint(settings.config.snapshot_mnt)) {
38
+ console.log('==========================================');
39
+ Utils.warning('You are working on a mountpoint');
40
+ console.log('==========================================');
41
+ }
42
+ if (nointeractive || (await Utils.customConfirm())) {
43
+ await killMeSoftly(settings.config.snapshot_dir, settings.config.snapshot_mnt, isos);
44
+ }
45
+ }
46
+ else {
47
+ Utils.useRoot(this.id);
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,20 @@
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
+ /**
10
+ *
11
+ */
12
+ export default class Love extends Command {
13
+ static description: string;
14
+ static examples: string[];
15
+ static flags: {
16
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
17
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ };
19
+ run(): Promise<void>;
20
+ }
@@ -0,0 +1,59 @@
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, Flags } from '@oclif/core';
9
+ import yaml from 'js-yaml';
10
+ import fs from 'node:fs';
11
+ import path from 'node:path';
12
+ import Utils from '../classes/utils.js';
13
+ import { exec } from '../lib/utils.js';
14
+ // _dirname
15
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
16
+ /**
17
+ *
18
+ */
19
+ export default class Love extends Command {
20
+ static description = 'the simplest way to get an egg!';
21
+ static examples = ['eggs auto'];
22
+ static flags = {
23
+ help: Flags.help({ char: 'h' }),
24
+ verbose: Flags.boolean({ char: 'v' })
25
+ };
26
+ async run() {
27
+ const { args, flags } = await this.parse(Love);
28
+ let verbose = false;
29
+ if (flags.verbose) {
30
+ verbose = true;
31
+ }
32
+ const echo = Utils.setEcho(verbose);
33
+ Utils.titles(this.id + ' ' + this.argv);
34
+ // No sudo!
35
+ if (process.getuid && process.getuid() === 0) {
36
+ Utils.warning(`You must be kind in love, please don't use sudo!`);
37
+ process.exit(0);
38
+ }
39
+ let loveConf = '/etc/penguins-eggs.d/love.yaml';
40
+ if (!fs.existsSync(loveConf)) {
41
+ loveConf = __dirname + '/../../conf/love.yaml';
42
+ }
43
+ const cmds = yaml.load(fs.readFileSync(loveConf, 'utf8'));
44
+ console.log('The following commands will be executed:');
45
+ console.log();
46
+ for (const cmd of cmds) {
47
+ console.log(`- ${cmd}`);
48
+ }
49
+ console.log();
50
+ if (await Utils.customConfirm()) {
51
+ for (const cmd of cmds) {
52
+ await exec(cmd);
53
+ }
54
+ }
55
+ else {
56
+ console.log('Aborted!');
57
+ }
58
+ }
59
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * ./src/commands/mom.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 Mom extends Command {
10
+ static description: string;
11
+ static examples: string[];
12
+ static flags: {
13
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
14
+ };
15
+ run(): Promise<void>;
16
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ./src/commands/mom.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, Flags } from '@oclif/core';
9
+ import path from 'node:path';
10
+ import Utils from '../classes/utils.js';
11
+ import { exec } from '../lib/utils.js';
12
+ // _dirname
13
+ const __dirname = path.dirname(new URL(import.meta.url).pathname);
14
+ export default class Mom extends Command {
15
+ static description = 'ask help from mommy - TUI helper';
16
+ static examples = ['eggs mom'];
17
+ static flags = {
18
+ help: Flags.help({ char: 'h' })
19
+ };
20
+ async run() {
21
+ Utils.titles(this.id + ' ' + this.argv);
22
+ // No sudo!
23
+ if (process.getuid && process.getuid() === 0) {
24
+ Utils.warning('You must to be kind with your mom! Call her without sudo');
25
+ process.exit(0);
26
+ }
27
+ const cmd = path.resolve(__dirname, '../../scripts/mom.sh');
28
+ await exec(cmd);
29
+ }
30
+ }
@@ -0,0 +1,34 @@
1
+ /**
2
+ * ./src/commands/produce.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 Produce extends Command {
10
+ static description: string;
11
+ static examples: string[];
12
+ static flags: {
13
+ addons: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
14
+ basename: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
+ clone: import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ cryptedclone: import("@oclif/core/interfaces").BooleanFlag<boolean>;
17
+ excludes: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ help: import("@oclif/core/interfaces").BooleanFlag<void>;
19
+ links: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
20
+ max: import("@oclif/core/interfaces").BooleanFlag<boolean>;
21
+ noicon: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
+ nointeractive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
23
+ pendrive: import("@oclif/core/interfaces").BooleanFlag<boolean>;
24
+ prefix: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ release: import("@oclif/core/interfaces").BooleanFlag<boolean>;
26
+ script: import("@oclif/core/interfaces").BooleanFlag<boolean>;
27
+ standard: import("@oclif/core/interfaces").BooleanFlag<boolean>;
28
+ theme: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ unsecure: import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
+ verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
31
+ yolk: import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ };
33
+ run(): Promise<void>;
34
+ }