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.
- package/.oclif.manifest.json +62 -62
- package/README.md +43 -40
- package/bin/dev.cmd +1 -1
- package/bin/dev.js +6 -6
- package/bin/run.js +3 -5
- package/conf/tools.yaml +1 -1
- package/dist/classes/bleach.d.ts +37 -0
- package/dist/classes/bleach.js +43 -91
- package/dist/classes/cfs.d.ts +17 -0
- package/dist/classes/cfs.js +15 -12
- package/dist/classes/compressors.d.ts +53 -0
- package/dist/classes/compressors.js +42 -47
- package/dist/classes/daddy.d.ts +18 -0
- package/dist/classes/daddy.js +92 -98
- package/dist/classes/distro.d.ts +26 -0
- package/dist/classes/distro.js +36 -37
- package/dist/classes/families/archlinux.d.ts +61 -0
- package/dist/classes/families/archlinux.js +52 -107
- package/dist/classes/families/debian.d.ts +65 -0
- package/dist/classes/families/debian.js +67 -142
- package/dist/classes/families/fedora.d.ts +52 -0
- package/dist/classes/families/fedora.js +42 -98
- package/dist/classes/families/mockup.d.ts +60 -0
- package/dist/classes/families/mockup.js +27 -46
- package/dist/classes/families/suse.d.ts +52 -0
- package/dist/classes/families/suse.js +44 -96
- package/dist/classes/incubation/branding.d.ts +17 -0
- package/dist/classes/incubation/branding.js +32 -36
- package/dist/classes/incubation/distros/bionic.d.ts +32 -0
- package/dist/classes/incubation/distros/bionic.js +11 -16
- package/dist/classes/incubation/distros/buster.d.ts +32 -0
- package/dist/classes/incubation/distros/buster.js +13 -18
- package/dist/classes/incubation/distros/focal.d.ts +32 -0
- package/dist/classes/incubation/distros/focal.js +11 -16
- package/dist/classes/incubation/distros/jessie.d.ts +31 -0
- package/dist/classes/incubation/distros/jessie.js +8 -13
- package/dist/classes/incubation/distros/rolling.d.ts +32 -0
- package/dist/classes/incubation/distros/rolling.js +11 -16
- package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +11 -0
- package/dist/classes/incubation/fisherman-helper/displaymanager.js +8 -9
- package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
- package/dist/classes/incubation/fisherman-helper/packages.js +17 -20
- package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
- package/dist/classes/incubation/fisherman-helper/settings.js +30 -28
- package/dist/classes/incubation/fisherman.d.ts +77 -0
- package/dist/classes/incubation/fisherman.js +135 -131
- package/dist/classes/incubation/incubator.d.ts +40 -0
- package/dist/classes/incubation/incubator.js +90 -89
- package/dist/classes/incubation/installer.d.ts +13 -0
- package/dist/classes/incubation/installer.js +27 -12
- package/dist/classes/initrd.d.ts +41 -0
- package/dist/classes/initrd.js +40 -42
- package/dist/classes/keyboards.d.ts +50 -0
- package/dist/classes/keyboards.js +108 -105
- package/dist/classes/locales.d.ts +21 -0
- package/dist/classes/locales.js +30 -34
- package/dist/classes/n8.d.ts +17 -0
- package/dist/classes/n8.js +16 -22
- package/dist/classes/network.d.ts +37 -0
- package/dist/classes/network.js +14 -18
- package/dist/classes/ovary.d.ts +205 -0
- package/dist/classes/ovary.js +1281 -1294
- package/dist/classes/pacman.d.ts +149 -0
- package/dist/classes/pacman.js +344 -418
- package/dist/classes/pve-live.d.ts +17 -0
- package/dist/classes/pve-live.js +22 -24
- package/dist/classes/pxe.d.ts +65 -0
- package/dist/classes/pxe.js +204 -206
- package/dist/classes/settings.d.ts +53 -0
- package/dist/classes/settings.js +91 -94
- package/dist/classes/sources_list.d.ts +28 -0
- package/dist/classes/sources_list.js +35 -39
- package/dist/classes/systemctl.d.ts +47 -0
- package/dist/classes/systemctl.js +34 -38
- package/dist/classes/tailor.d.ts +46 -0
- package/dist/classes/tailor.js +223 -239
- package/dist/classes/tools.d.ts +30 -0
- package/dist/classes/tools.js +18 -22
- package/dist/classes/users.d.ts +28 -0
- package/dist/classes/users.js +18 -22
- package/dist/classes/utils.d.ts +318 -0
- package/dist/classes/utils.js +78 -78
- package/dist/classes/xdg.d.ts +45 -0
- package/dist/classes/xdg.js +129 -133
- package/dist/classes/yolk.d.ts +33 -0
- package/dist/classes/yolk.js +53 -57
- package/dist/commands/adapt.d.ts +17 -0
- package/dist/commands/adapt.js +17 -21
- package/dist/commands/analyze.d.ts +26 -0
- package/dist/commands/analyze.js +56 -67
- package/dist/commands/calamares.d.ts +29 -0
- package/dist/commands/calamares.js +44 -48
- package/dist/commands/config.d.ts +36 -0
- package/dist/commands/config.js +115 -137
- package/dist/commands/cuckoo.d.ts +16 -0
- package/dist/commands/cuckoo.js +20 -24
- package/dist/commands/dad.d.ts +19 -0
- package/dist/commands/dad.js +20 -24
- package/dist/commands/export/deb.d.ts +19 -0
- package/dist/commands/export/deb.js +19 -23
- package/dist/commands/export/iso.d.ts +19 -0
- package/dist/commands/export/iso.js +19 -23
- package/dist/commands/install.d.ts +37 -0
- package/dist/commands/install.js +46 -50
- package/dist/commands/kill.d.ts +24 -0
- package/dist/commands/kill.js +25 -29
- package/dist/commands/mom.d.ts +16 -0
- package/dist/commands/mom.js +16 -18
- package/dist/commands/produce.d.ts +33 -0
- package/dist/commands/produce.js +64 -66
- package/dist/commands/status.d.ts +23 -0
- package/dist/commands/status.js +10 -14
- package/dist/commands/syncfrom.d.ts +45 -0
- package/dist/commands/syncfrom.js +85 -89
- package/dist/commands/syncto.d.ts +40 -0
- package/dist/commands/syncto.js +91 -95
- package/dist/commands/tools/clean.d.ts +18 -0
- package/dist/commands/tools/clean.js +17 -21
- package/dist/commands/tools/ppa.d.ts +26 -0
- package/dist/commands/tools/ppa.js +41 -45
- package/dist/commands/tools/skel.d.ts +18 -0
- package/dist/commands/tools/skel.js +22 -26
- package/dist/commands/tools/stat.d.ts +31 -0
- package/dist/commands/tools/stat.js +15 -19
- package/dist/commands/tools/yolk.d.ts +24 -0
- package/dist/commands/tools/yolk.js +19 -23
- package/dist/commands/update.d.ts +47 -0
- package/dist/commands/update.js +62 -66
- package/dist/commands/wardrobe/get.d.ts +23 -0
- package/dist/commands/wardrobe/get.js +19 -23
- package/dist/commands/wardrobe/list.d.ts +24 -0
- package/dist/commands/wardrobe/list.js +61 -60
- package/dist/commands/wardrobe/show.d.ts +25 -0
- package/dist/commands/wardrobe/show.js +50 -47
- package/dist/commands/wardrobe/wear.d.ts +26 -0
- package/dist/commands/wardrobe/wear.js +32 -36
- package/dist/components/finished.d.ts +15 -0
- package/dist/components/finished.js +37 -42
- package/dist/components/information.d.ts +8 -0
- package/dist/components/information.js +155 -0
- package/dist/components/install.d.ts +15 -0
- package/dist/components/install.js +31 -35
- package/dist/components/keyboard.d.ts +16 -0
- package/dist/components/keyboard.js +37 -40
- package/dist/components/location.d.ts +16 -0
- package/dist/components/location.js +38 -38
- package/dist/components/network.d.ts +19 -0
- package/dist/components/network.js +47 -48
- package/dist/components/partitions.d.ts +16 -0
- package/dist/components/partitions.js +47 -51
- package/dist/components/steps.d.ts +13 -0
- package/dist/components/steps.js +148 -0
- package/dist/components/summary.d.ts +24 -0
- package/dist/components/summary.js +50 -54
- package/dist/components/title.d.ts +12 -0
- package/dist/components/title.js +35 -0
- package/dist/components/users.d.ts +24 -0
- package/dist/components/users.js +43 -43
- package/dist/components/welcome.d.ts +13 -0
- package/dist/components/welcome.js +37 -38
- package/dist/index.d.ts +8 -0
- package/dist/index.js +8 -5
- package/dist/interfaces/i-addons.d.ts +13 -0
- package/dist/interfaces/i-addons.js +8 -3
- package/dist/interfaces/i-analyze.d.ts +17 -0
- package/dist/interfaces/i-analyze.js +7 -10
- package/dist/interfaces/i-app.d.ts +14 -0
- package/dist/interfaces/i-app.js +8 -2
- package/dist/interfaces/i-branding.d.ts +36 -0
- package/dist/interfaces/i-branding.js +8 -2
- package/dist/interfaces/i-calamares-partition.d.ts +18 -0
- package/dist/interfaces/i-calamares-partition.js +3 -4
- package/dist/interfaces/i-config-tools.d.ts +18 -0
- package/dist/interfaces/i-config-tools.js +8 -2
- package/dist/interfaces/i-devices.d.ts +20 -0
- package/dist/interfaces/i-devices.js +8 -2
- package/dist/interfaces/i-distro.d.ts +27 -0
- package/dist/interfaces/i-distro.js +3 -4
- package/dist/interfaces/i-drive-list.d.ts +33 -0
- package/dist/interfaces/i-drive-list.js +3 -4
- package/dist/interfaces/i-eggs-config.d.ts +32 -0
- package/dist/interfaces/i-eggs-config.js +3 -4
- package/dist/interfaces/i-excludes.d.ts +14 -0
- package/dist/interfaces/i-excludes.js +8 -2
- package/dist/interfaces/i-exec.d.ts +11 -0
- package/dist/interfaces/i-exec.js +3 -4
- package/dist/interfaces/i-initrd.d.ts +13 -0
- package/dist/interfaces/i-initrd.js +8 -2
- package/dist/interfaces/i-install.d.ts +16 -0
- package/dist/interfaces/i-install.js +8 -2
- package/dist/interfaces/i-installer.d.ts +17 -0
- package/dist/interfaces/i-installer.js +8 -2
- package/dist/interfaces/i-krill-config.d.ts +33 -0
- package/dist/interfaces/i-krill-config.js +3 -4
- package/dist/interfaces/i-krill.d.ts +42 -0
- package/dist/interfaces/i-krill.js +8 -2
- package/dist/interfaces/i-materia.d.ts +41 -0
- package/dist/interfaces/i-materia.js +8 -2
- package/dist/interfaces/i-net.d.ts +16 -0
- package/dist/interfaces/i-net.js +8 -2
- package/dist/interfaces/i-packages.d.ts +29 -0
- package/dist/interfaces/i-packages.js +3 -4
- package/dist/interfaces/i-partitions.d.ts +16 -0
- package/dist/interfaces/i-partitions.js +8 -2
- package/dist/interfaces/i-pxe.d.ts +21 -0
- package/dist/interfaces/i-pxe.js +8 -39
- package/dist/interfaces/i-remix.d.ts +21 -0
- package/dist/interfaces/i-remix.js +3 -4
- package/dist/interfaces/i-settings.d.ts +39 -0
- package/dist/interfaces/i-settings.js +8 -2
- package/dist/interfaces/i-user.d.ts +14 -0
- package/dist/interfaces/i-user.js +8 -2
- package/dist/interfaces/i-workdir.d.ts +14 -0
- package/dist/interfaces/i-workdir.js +8 -2
- package/dist/interfaces/i-xkb-model.d.ts +24 -0
- package/dist/interfaces/i-xkb-model.js +8 -2
- package/dist/interfaces/index.d.ts +25 -0
- package/dist/interfaces/index.js +3 -4
- package/dist/krill/modules/add-user.d.ts +20 -0
- package/dist/krill/modules/add-user.js +11 -15
- package/dist/krill/modules/bootloader-config-arch.d.ts +14 -0
- package/dist/krill/modules/bootloader-config-arch.js +15 -11
- package/dist/krill/modules/bootloader-config-debian.d.ts +10 -0
- package/dist/krill/modules/bootloader-config-debian.js +20 -16
- package/dist/krill/modules/bootloader-config.d.ts +10 -0
- package/dist/krill/modules/bootloader-config.js +3 -6
- package/dist/krill/modules/bootloader.d.ts +14 -0
- package/dist/krill/modules/bootloader.js +9 -13
- package/dist/krill/modules/change-password.d.ts +15 -0
- package/dist/krill/modules/change-password.js +5 -8
- package/dist/krill/modules/del-live-user.d.ts +14 -0
- package/dist/krill/modules/del-live-user.js +8 -12
- package/dist/krill/modules/fstab.d.ts +14 -0
- package/dist/krill/modules/fstab.js +33 -37
- package/dist/krill/modules/grubcfg.d.ts +17 -0
- package/dist/krill/modules/grubcfg.js +8 -17
- package/dist/krill/modules/hostname.d.ts +13 -0
- package/dist/krill/modules/hostname.js +11 -17
- package/dist/krill/modules/initramfs-cfg.d.ts +14 -0
- package/dist/krill/modules/initramfs-cfg.js +6 -15
- package/dist/krill/modules/initramfs.d.ts +13 -0
- package/dist/krill/modules/initramfs.js +17 -19
- package/dist/krill/modules/locale-cfg.d.ts +10 -0
- package/dist/krill/modules/locale-cfg.js +8 -12
- package/dist/krill/modules/locale.d.ts +13 -0
- package/dist/krill/modules/locale.js +7 -11
- package/dist/krill/modules/m-keyboard.d.ts +14 -0
- package/dist/krill/modules/m-keyboard.js +14 -18
- package/dist/krill/modules/m-timezone.d.ts +14 -0
- package/dist/krill/modules/m-timezone.js +8 -12
- package/dist/krill/modules/machine-id.d.ts +15 -0
- package/dist/krill/modules/machine-id.js +6 -10
- package/dist/krill/modules/mkfs.d.ts +13 -0
- package/dist/krill/modules/mkfs.js +10 -13
- package/dist/krill/modules/mount-fs.d.ts +17 -0
- package/dist/krill/modules/mount-fs.js +20 -26
- package/dist/krill/modules/mount-vfs.d.ts +17 -0
- package/dist/krill/modules/mount-vfs.js +16 -21
- package/dist/krill/modules/network-cfg.d.ts +19 -0
- package/dist/krill/modules/network-cfg.js +16 -20
- package/dist/krill/modules/packages.d.ts +14 -0
- package/dist/krill/modules/packages.js +17 -21
- package/dist/krill/modules/partition.d.ts +20 -0
- package/dist/krill/modules/partition.js +78 -84
- package/dist/krill/modules/remove-installer-link.d.ts +13 -0
- package/dist/krill/modules/remove-installer-link.js +7 -11
- package/dist/krill/modules/umount.d.ts +14 -0
- package/dist/krill/modules/umount.js +9 -13
- package/dist/krill/modules/unpackfs.d.ts +13 -0
- package/dist/krill/modules/unpackfs.js +7 -11
- package/dist/krill/prepare.d.ts +77 -0
- package/dist/krill/{krill-prepare.js → prepare.js} +118 -124
- package/dist/krill/sequence.d.ts +156 -0
- package/dist/krill/{krill-sequence.js → sequence.js} +166 -170
- package/dist/lib/cli-autologin.d.ts +43 -0
- package/dist/lib/cli-autologin.js +88 -92
- package/dist/lib/get_address.d.ts +8 -0
- package/dist/lib/get_address.js +9 -11
- package/dist/lib/get_dns.d.ts +8 -0
- package/dist/lib/get_dns.js +9 -11
- package/dist/lib/get_domain.d.ts +8 -0
- package/dist/lib/get_domain.js +9 -11
- package/dist/lib/get_gateway.d.ts +8 -0
- package/dist/lib/get_gateway.js +9 -11
- package/dist/lib/get_hostname.d.ts +8 -0
- package/dist/lib/get_hostname.js +9 -11
- package/dist/lib/get_netmask.d.ts +8 -0
- package/dist/lib/get_netmask.js +9 -11
- package/dist/lib/get_password.d.ts +8 -0
- package/dist/lib/get_password.js +10 -13
- package/dist/lib/get_userfullname.d.ts +8 -0
- package/dist/lib/get_userfullname.js +9 -11
- package/dist/lib/get_username.d.ts +8 -0
- package/dist/lib/get_username.js +9 -12
- package/dist/lib/kill_me_softly.d.ts +11 -0
- package/dist/lib/kill_me_softly.js +19 -24
- package/dist/lib/select_address_type.d.ts +8 -0
- package/dist/lib/select_address_type.js +9 -12
- package/dist/lib/select_filesystem_type.d.ts +8 -0
- package/dist/lib/select_filesystem_type.js +15 -18
- package/dist/lib/select_installation_device.d.ts +8 -0
- package/dist/lib/select_installation_device.js +11 -15
- package/dist/lib/select_installation_mode.d.ts +8 -0
- package/dist/lib/select_installation_mode.js +9 -11
- package/dist/lib/select_interface.d.ts +8 -0
- package/dist/lib/select_interface.js +9 -12
- package/dist/lib/select_keyboard_layout.d.ts +11 -0
- package/dist/lib/select_keyboard_layout.js +11 -15
- package/dist/lib/select_keyboard_model.d.ts +11 -0
- package/dist/lib/select_keyboard_model.js +11 -15
- package/dist/lib/select_keyboard_option.d.ts +11 -0
- package/dist/lib/select_keyboard_option.js +11 -15
- package/dist/lib/select_keyboard_variant.d.ts +11 -0
- package/dist/lib/select_keyboard_variant.js +11 -15
- package/dist/lib/select_languages.d.ts +8 -0
- package/dist/lib/select_languages.js +11 -15
- package/dist/lib/select_regions.d.ts +8 -0
- package/dist/lib/select_regions.js +9 -11
- package/dist/lib/select_user_swap_choice.d.ts +8 -0
- package/dist/lib/select_user_swap_choice.js +13 -17
- package/dist/lib/select_zones.d.ts +8 -0
- package/dist/lib/select_zones.js +9 -11
- package/dist/lib/utils.d.ts +34 -0
- package/dist/lib/utils.js +24 -14
- package/manpages/doc/man/eggs.1.gz +0 -0
- package/manpages/doc/man/eggs.html +10 -10
- package/package.json +48 -69
- package/LICENSE +0 -339
- package/bin/dev +0 -17
- package/bin/run +0 -5
- package/dist/components/elements/information.js +0 -194
- package/dist/components/elements/steps.js +0 -152
- package/dist/components/elements/title.js +0 -36
- package/dist/lib/dependencies.js +0 -121
package/dist/commands/config.js
CHANGED
|
@@ -1,80 +1,84 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
1
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
2
|
+
* ./src/commands/config.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
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const utils_2 = require("../lib/utils");
|
|
8
|
+
import { Command, Flags } from '@oclif/core';
|
|
9
|
+
import chalk from 'chalk';
|
|
10
|
+
import Bleach from '../classes/bleach.js';
|
|
11
|
+
import Pacman from '../classes/pacman.js';
|
|
12
|
+
import Utils from '../classes/utils.js';
|
|
13
|
+
import { exec } from '../lib/utils.js';
|
|
18
14
|
/**
|
|
19
15
|
*
|
|
20
16
|
*/
|
|
21
|
-
class Config extends
|
|
22
|
-
static
|
|
23
|
-
clean: core_1.Flags.boolean({ char: 'c', description: 'remove old configuration before to create new one' }),
|
|
24
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
25
|
-
nointeractive: core_1.Flags.boolean({ char: 'n', description: 'no user interaction' }),
|
|
26
|
-
noicons: core_1.Flags.boolean({ char: 'N', description: 'no icons' }),
|
|
27
|
-
verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' }),
|
|
28
|
-
};
|
|
29
|
-
static description = 'Configure and install prerequisites deb packages to run it';
|
|
17
|
+
export default class Config extends Command {
|
|
18
|
+
static description = 'Configure eggs to run it';
|
|
30
19
|
static examples = [
|
|
31
20
|
'sudo eggs config',
|
|
32
21
|
'sudo eggs config --clean',
|
|
33
22
|
'sudo eggs config --clean --nointeractive',
|
|
34
23
|
];
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
24
|
+
static flags = {
|
|
25
|
+
clean: Flags.boolean({ char: 'c', description: 'remove old configuration before to create new one' }),
|
|
26
|
+
help: Flags.help({ char: 'h' }),
|
|
27
|
+
noicons: Flags.boolean({ char: 'N', description: 'no icons' }),
|
|
28
|
+
nointeractive: Flags.boolean({ char: 'n', description: 'no user interaction' }),
|
|
29
|
+
verbose: Flags.boolean({ char: 'v', description: 'verbose' }),
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
* @param i
|
|
34
|
+
* @param verbose
|
|
35
|
+
*/
|
|
36
|
+
static async install(i, nointeractive = false, noicons = false, verbose = false) {
|
|
37
|
+
const echo = Utils.setEcho(verbose);
|
|
38
|
+
Utils.warning('config: so, we install');
|
|
39
|
+
if (i.configurationInstall) {
|
|
40
|
+
Utils.warning('creating configuration...');
|
|
41
|
+
await Pacman.configurationInstall(verbose);
|
|
42
|
+
}
|
|
43
|
+
if (i.configurationRefresh) {
|
|
44
|
+
Utils.warning('refreshing configuration for new machine...');
|
|
45
|
+
await Pacman.configurationMachineNew(verbose);
|
|
46
|
+
}
|
|
47
|
+
if (i.distroTemplate) {
|
|
48
|
+
Utils.warning('copying distro templates...');
|
|
49
|
+
await Pacman.distroTemplateInstall(verbose);
|
|
50
|
+
}
|
|
51
|
+
if (i.needApt && !nointeractive && !nointeractive && Pacman.distro().familyId === 'debian') {
|
|
52
|
+
Utils.warning('updating system...');
|
|
53
|
+
await exec('apt-get update --yes', echo);
|
|
54
|
+
}
|
|
55
|
+
if (i.efi) {
|
|
56
|
+
if (nointeractive) {
|
|
57
|
+
Utils.error('config: you are on a system UEFI');
|
|
58
|
+
Utils.warning('I suggest You to install grub-efi-' + Utils.uefiArch() + '-bin before to produce your ISO.\nJust write:\n sudo apt install grub-efi-' + Utils.uefiArch());
|
|
44
59
|
}
|
|
45
|
-
else if (
|
|
46
|
-
|
|
60
|
+
else if (Pacman.distro().familyId === 'debian') {
|
|
61
|
+
Utils.warning('Installing uefi support...');
|
|
62
|
+
await exec('apt-get install grub-efi-' + Utils.uefiArch() + '-bin --yes', echo);
|
|
47
63
|
}
|
|
48
64
|
}
|
|
49
|
-
if (
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Se stiamo utilizzando eggs da sorgenti
|
|
56
|
-
* Aggiungo autocomplete e manPage
|
|
57
|
-
*/
|
|
58
|
-
if (utils_1.default.isSources()) {
|
|
59
|
-
utils_1.default.warning('creating autocomplete...');
|
|
60
|
-
await pacman_1.default.autocompleteInstall(verbose);
|
|
61
|
-
utils_1.default.warning('creating eggs man page...');
|
|
62
|
-
await pacman_1.default.manPageInstall(verbose);
|
|
65
|
+
if (!noicons && // se VOGLIO le icone
|
|
66
|
+
i.calamares && Pacman.isCalamaresAvailable()) {
|
|
67
|
+
if (nointeractive) {
|
|
68
|
+
Utils.warning('I suggest You to install calamares GUI installer before to produce your ISO.\nJust write:\n sudo eggs calamares --install');
|
|
63
69
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
if (nointeractive) {
|
|
69
|
-
await Config.install(i, nointeractive, noicons, verbose);
|
|
70
|
-
}
|
|
71
|
-
else if (await utils_1.default.customConfirm()) {
|
|
72
|
-
await Config.install(i, nointeractive, noicons, verbose);
|
|
73
|
-
}
|
|
70
|
+
else {
|
|
71
|
+
Utils.warning('Installing calamares...');
|
|
72
|
+
await Pacman.calamaresInstall(verbose);
|
|
73
|
+
await Pacman.calamaresPolicies();
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
if (i.needApt && !nointeractive) {
|
|
77
|
+
Utils.warning('cleaning the system...');
|
|
78
|
+
if (Pacman.distro().familyId === 'debian') {
|
|
79
|
+
const bleach = new Bleach();
|
|
80
|
+
await bleach.clean(verbose);
|
|
81
|
+
}
|
|
78
82
|
}
|
|
79
83
|
}
|
|
80
84
|
/**
|
|
@@ -84,25 +88,24 @@ class Config extends core_1.Command {
|
|
|
84
88
|
*/
|
|
85
89
|
static async thatWeNeed(nointeractive = false, noicons = false, verbose = false, cryptedclone = false) {
|
|
86
90
|
const i = {};
|
|
87
|
-
i.distroTemplate = !
|
|
88
|
-
if (
|
|
89
|
-
i.efi = !
|
|
91
|
+
i.distroTemplate = !Pacman.distroTemplateCheck();
|
|
92
|
+
if (Utils.uefiArch() !== 'i386') {
|
|
93
|
+
i.efi = !Pacman.isUefi();
|
|
90
94
|
}
|
|
91
|
-
if (!cryptedclone && !(
|
|
95
|
+
if (!cryptedclone && !(Pacman.calamaresExists()) && Pacman.isInstalledGui() && Pacman.isCalamaresAvailable() && !Pacman.packageIsInstalled('live-installer')) {
|
|
92
96
|
if (noicons) {
|
|
93
97
|
i.calamares = false;
|
|
94
98
|
}
|
|
95
99
|
else {
|
|
96
|
-
|
|
97
|
-
i.calamares = nointeractive ? false : await
|
|
100
|
+
Utils.warning('Config: you are on a graphic system, I suggest to install the GUI installer calamares');
|
|
101
|
+
i.calamares = nointeractive ? false : await Utils.customConfirm('Want You install calamares?');
|
|
98
102
|
}
|
|
99
103
|
}
|
|
100
|
-
i.configurationInstall = !
|
|
104
|
+
i.configurationInstall = !Pacman.configurationCheck();
|
|
101
105
|
if (!i.configurationInstall) {
|
|
102
|
-
i.configurationRefresh = !
|
|
106
|
+
i.configurationRefresh = !Pacman.configurationMachineNew();
|
|
103
107
|
}
|
|
104
|
-
i.
|
|
105
|
-
if (i.efi || i.calamares || i.prerequisites) {
|
|
108
|
+
if (i.efi || i.calamares) {
|
|
106
109
|
i.needApt = true;
|
|
107
110
|
}
|
|
108
111
|
/**
|
|
@@ -111,37 +114,30 @@ class Config extends core_1.Command {
|
|
|
111
114
|
if (!nointeractive) {
|
|
112
115
|
if (i.needApt) {
|
|
113
116
|
console.log('- update the system');
|
|
114
|
-
if (
|
|
115
|
-
console.log(
|
|
117
|
+
if (Pacman.distro().familyId === 'debian') {
|
|
118
|
+
console.log(chalk.yellow(' apt-get update --yes\n'));
|
|
116
119
|
}
|
|
117
120
|
}
|
|
118
|
-
if (i.efi &&
|
|
121
|
+
if (i.efi && Pacman.distro().familyId === 'debian' && Utils.uefiArch() !== 'i386') {
|
|
119
122
|
console.log('- install efi packages');
|
|
120
|
-
console.log(
|
|
121
|
-
}
|
|
122
|
-
if (i.prerequisites) {
|
|
123
|
-
console.log('- install packages prerequisites');
|
|
124
|
-
const packages = pacman_1.default.packages(verbose);
|
|
125
|
-
if (packages.length > 0) {
|
|
126
|
-
console.log(chalk_1.default.yellow(' will install: ' + (0, dependencies_1.array2spaced)(packages)));
|
|
127
|
-
}
|
|
123
|
+
console.log(chalk.yellow(' apt install -y grub-efi-' + Utils.uefiArch() + '-bin\n'));
|
|
128
124
|
}
|
|
129
125
|
if (i.configurationInstall) {
|
|
130
126
|
console.log("- creating configuration's files...");
|
|
131
|
-
|
|
127
|
+
Pacman.configurationInstall(verbose);
|
|
132
128
|
}
|
|
133
129
|
if (i.configurationRefresh) {
|
|
134
130
|
console.log("- refreshing configuration's files...");
|
|
135
|
-
|
|
131
|
+
Pacman.configurationFresh();
|
|
136
132
|
}
|
|
137
133
|
if (i.distroTemplate) {
|
|
138
134
|
console.log('- copy distro template\n');
|
|
139
135
|
}
|
|
140
136
|
if (i.calamares) {
|
|
141
137
|
console.log('- install calamares');
|
|
142
|
-
if (
|
|
143
|
-
const packages =
|
|
144
|
-
console.log(
|
|
138
|
+
if (Pacman.distro().familyId === 'debian') {
|
|
139
|
+
const packages = Pacman.debs4calamares;
|
|
140
|
+
console.log(chalk.yellow(' will install: ' + packages.join(' ') + '\n'));
|
|
145
141
|
}
|
|
146
142
|
}
|
|
147
143
|
if (i.needApt) {
|
|
@@ -149,78 +145,60 @@ class Config extends core_1.Command {
|
|
|
149
145
|
}
|
|
150
146
|
if (i.configurationInstall) {
|
|
151
147
|
console.log('- creating/updating configuration');
|
|
152
|
-
console.log(' files: ' +
|
|
148
|
+
console.log(' files: ' + chalk.yellow('/etc/penguins-eggs.d/eggs.yaml'));
|
|
153
149
|
}
|
|
154
150
|
else if (i.configurationRefresh) {
|
|
155
151
|
console.log('- refreshing configuration for new machine');
|
|
156
152
|
}
|
|
157
153
|
if (i.needApt) {
|
|
158
|
-
|
|
154
|
+
Utils.warning("Be sure! It's just a series of apt install from your repo.\nYou can follows them using flag --verbose");
|
|
159
155
|
}
|
|
160
156
|
}
|
|
161
157
|
return i;
|
|
162
158
|
}
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
utils_1.default.warning('creating configuration...');
|
|
173
|
-
await pacman_1.default.configurationInstall(verbose);
|
|
174
|
-
}
|
|
175
|
-
if (i.configurationRefresh) {
|
|
176
|
-
utils_1.default.warning('refreshing configuration for new machine...');
|
|
177
|
-
await pacman_1.default.configurationMachineNew(verbose);
|
|
178
|
-
}
|
|
179
|
-
if (i.distroTemplate) {
|
|
180
|
-
utils_1.default.warning('copying distro templates...');
|
|
181
|
-
await pacman_1.default.distroTemplateInstall(verbose);
|
|
182
|
-
}
|
|
183
|
-
if (i.needApt && !nointeractive && !nointeractive && pacman_1.default.distro().familyId === 'debian') {
|
|
184
|
-
utils_1.default.warning('updating system...');
|
|
185
|
-
await (0, utils_2.exec)('apt-get update --yes', echo);
|
|
186
|
-
}
|
|
187
|
-
if (i.efi) {
|
|
188
|
-
if (nointeractive) {
|
|
189
|
-
utils_1.default.error('config: you are on a system UEFI');
|
|
190
|
-
utils_1.default.warning('I suggest You to install grub-efi-' + utils_1.default.uefiArch() + '-bin before to produce your ISO.\nJust write:\n sudo apt install grub-efi-' + utils_1.default.uefiArch());
|
|
159
|
+
async run() {
|
|
160
|
+
const { flags } = await this.parse(Config);
|
|
161
|
+
const { nointeractive } = flags;
|
|
162
|
+
const { noicons } = flags;
|
|
163
|
+
const { verbose } = flags;
|
|
164
|
+
if (!nointeractive) {
|
|
165
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
166
|
+
if (Utils.isDebPackage()) {
|
|
167
|
+
Utils.warning('running as package .deb');
|
|
191
168
|
}
|
|
192
|
-
else if (
|
|
193
|
-
|
|
194
|
-
await (0, utils_2.exec)('apt-get install grub-efi-' + utils_1.default.uefiArch() + '-bin --yes', echo);
|
|
169
|
+
else if (Utils.isSources()) {
|
|
170
|
+
Utils.warning('running as sources');
|
|
195
171
|
}
|
|
196
172
|
}
|
|
197
|
-
if (
|
|
198
|
-
if (
|
|
199
|
-
|
|
173
|
+
if (Utils.isRoot(this.id)) {
|
|
174
|
+
if (flags.clean) {
|
|
175
|
+
Utils.warning('removing old configurations');
|
|
176
|
+
await exec('rm /etc/penguins-eggs.d -rf');
|
|
200
177
|
}
|
|
201
|
-
|
|
202
|
-
|
|
178
|
+
/**
|
|
179
|
+
* Se stiamo utilizzando eggs da sorgenti
|
|
180
|
+
* Aggiungo autocomplete e manPage
|
|
181
|
+
*/
|
|
182
|
+
if (Utils.isSources()) {
|
|
183
|
+
Utils.warning('creating autocomplete...');
|
|
184
|
+
await Pacman.autocompleteInstall(verbose);
|
|
185
|
+
Utils.warning('creating eggs man page...');
|
|
186
|
+
await Pacman.manPageInstall(verbose);
|
|
203
187
|
}
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
188
|
+
// Vediamo che cosa c'è da fare...
|
|
189
|
+
Utils.warning('what we need?');
|
|
190
|
+
const i = await Config.thatWeNeed(nointeractive, noicons, verbose);
|
|
191
|
+
if (i.needApt || i.configurationInstall || i.configurationRefresh || i.distroTemplate) {
|
|
207
192
|
if (nointeractive) {
|
|
208
|
-
|
|
193
|
+
await Config.install(i, nointeractive, noicons, verbose);
|
|
209
194
|
}
|
|
210
|
-
else {
|
|
211
|
-
|
|
212
|
-
await pacman_1.default.calamaresInstall(verbose);
|
|
213
|
-
await pacman_1.default.calamaresPolicies();
|
|
195
|
+
else if (await Utils.customConfirm()) {
|
|
196
|
+
await Config.install(i, nointeractive, noicons, verbose);
|
|
214
197
|
}
|
|
215
198
|
}
|
|
216
199
|
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
if (pacman_1.default.distro().familyId === 'debian') {
|
|
220
|
-
const bleach = new bleach_1.default();
|
|
221
|
-
await bleach.clean(verbose);
|
|
222
|
-
}
|
|
200
|
+
else {
|
|
201
|
+
Utils.useRoot(this.id);
|
|
223
202
|
}
|
|
224
203
|
}
|
|
225
204
|
}
|
|
226
|
-
exports.default = Config;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/cuckoo.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 Cuckoo 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
|
+
};
|
|
15
|
+
run(nest?: string): Promise<void>;
|
|
16
|
+
}
|
package/dist/commands/cuckoo.js
CHANGED
|
@@ -1,55 +1,52 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
1
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
2
|
+
* ./src/commands/cuckoo.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
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const tftp = require('tftp')
|
|
16
|
-
class Cuckoo extends
|
|
17
|
-
static flags = {
|
|
18
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
19
|
-
};
|
|
8
|
+
import { Command, Flags } from '@oclif/core';
|
|
9
|
+
import network from '../classes/network.js';
|
|
10
|
+
import Pxe from '../classes/pxe.js';
|
|
11
|
+
import Utils from '../classes/utils.js';
|
|
12
|
+
// const tftp = require('tftp')
|
|
13
|
+
export default class Cuckoo extends Command {
|
|
20
14
|
static description = 'PXE start with proxy-dhcp';
|
|
21
15
|
static examples = [
|
|
22
16
|
'sudo eggs cuckoo',
|
|
23
17
|
];
|
|
18
|
+
static flags = {
|
|
19
|
+
help: Flags.help({ char: 'h' }),
|
|
20
|
+
};
|
|
24
21
|
async run(nest = '/home/eggs/mnt') {
|
|
25
22
|
const { args, flags } = await this.parse(Cuckoo);
|
|
26
|
-
|
|
27
|
-
if (
|
|
23
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
24
|
+
if (Utils.isRoot()) {
|
|
28
25
|
const pxeRoot = nest + '/pxe';
|
|
29
|
-
const pxe = new
|
|
26
|
+
const pxe = new Pxe();
|
|
30
27
|
await pxe.fertilization();
|
|
31
28
|
await pxe.build();
|
|
32
|
-
const n = new
|
|
29
|
+
const n = new network();
|
|
33
30
|
/**
|
|
34
31
|
* service proxy-dhcp
|
|
35
32
|
*/
|
|
36
33
|
const dhcpOptions = {
|
|
37
|
-
subnet: n.cidr,
|
|
38
|
-
host: n.address,
|
|
39
|
-
tftpserver: n.address,
|
|
40
34
|
bios_filename: 'lpxelinux.0',
|
|
41
35
|
efi32_filename: 'ipxe32.efi',
|
|
42
36
|
efi64_filename: 'ipxe.efi',
|
|
37
|
+
host: n.address,
|
|
38
|
+
subnet: n.cidr,
|
|
39
|
+
tftpserver: n.address,
|
|
43
40
|
};
|
|
44
41
|
pxe.dhcpStart(dhcpOptions);
|
|
45
42
|
/**
|
|
46
43
|
* service tftp
|
|
47
44
|
*/
|
|
48
45
|
const tftpOptions = {
|
|
46
|
+
denyPUT: true,
|
|
49
47
|
host: n.address,
|
|
50
48
|
port: 69,
|
|
51
49
|
root: pxeRoot,
|
|
52
|
-
denyPUT: true,
|
|
53
50
|
};
|
|
54
51
|
await pxe.tftpStart(tftpOptions);
|
|
55
52
|
/**
|
|
@@ -58,8 +55,7 @@ class Cuckoo extends core_1.Command {
|
|
|
58
55
|
await pxe.httpStart();
|
|
59
56
|
}
|
|
60
57
|
else {
|
|
61
|
-
|
|
58
|
+
Utils.useRoot(this.id);
|
|
62
59
|
}
|
|
63
60
|
}
|
|
64
61
|
}
|
|
65
|
-
exports.default = Cuckoo;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/dad.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 Dad extends Command {
|
|
10
|
+
static description: string;
|
|
11
|
+
static examples: string[];
|
|
12
|
+
static flags: {
|
|
13
|
+
clean: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
14
|
+
default: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
15
|
+
help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
|
|
16
|
+
verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<void>;
|
|
19
|
+
}
|
package/dist/commands/dad.js
CHANGED
|
@@ -1,45 +1,41 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
1
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
2
|
+
* ./src/commands/dad.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
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class Dad extends
|
|
17
|
-
static flags = {
|
|
18
|
-
clean: core_1.Flags.boolean({ char: 'c', description: 'remove old configuration before to create' }),
|
|
19
|
-
default: core_1.Flags.boolean({ char: 'd', description: 'remove old configuration and force default' }),
|
|
20
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
21
|
-
verbose: core_1.Flags.boolean({ char: 'v' }),
|
|
22
|
-
};
|
|
8
|
+
import { Command, Flags } from '@oclif/core';
|
|
9
|
+
import chalk from 'chalk';
|
|
10
|
+
import Daddy from '../classes/daddy.js';
|
|
11
|
+
import Utils from '../classes/utils.js';
|
|
12
|
+
import { exec } from '../lib/utils.js';
|
|
13
|
+
export default class Dad extends Command {
|
|
23
14
|
static description = 'ask help from daddy - TUI configuration helper';
|
|
24
15
|
static examples = [
|
|
25
16
|
'sudo dad',
|
|
26
17
|
'sudo dad --clean',
|
|
27
18
|
'sudo dad --default',
|
|
28
19
|
];
|
|
20
|
+
static flags = {
|
|
21
|
+
clean: Flags.boolean({ char: 'c', description: 'remove old configuration before to create' }),
|
|
22
|
+
default: Flags.boolean({ char: 'd', description: 'remove old configuration and force default' }),
|
|
23
|
+
help: Flags.help({ char: 'h' }),
|
|
24
|
+
verbose: Flags.boolean({ char: 'v' }),
|
|
25
|
+
};
|
|
29
26
|
async run() {
|
|
30
|
-
|
|
31
|
-
console.log(
|
|
27
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
28
|
+
console.log(chalk.cyan('Daddy, what else did you leave for me?'));
|
|
32
29
|
const { flags } = await this.parse(Dad);
|
|
33
|
-
if (
|
|
30
|
+
if (Utils.isRoot(this.id)) {
|
|
34
31
|
if (flags.clean || flags.default) {
|
|
35
|
-
await
|
|
32
|
+
await exec('rm /etc/penguins-eggs.d -rf');
|
|
36
33
|
}
|
|
37
|
-
const daddy = new
|
|
34
|
+
const daddy = new Daddy();
|
|
38
35
|
daddy.helpMe(flags.default, flags.verbose);
|
|
39
36
|
}
|
|
40
37
|
else {
|
|
41
|
-
|
|
38
|
+
Utils.useRoot(this.id);
|
|
42
39
|
}
|
|
43
40
|
}
|
|
44
41
|
}
|
|
45
|
-
exports.default = Dad;
|
|
@@ -0,0 +1,19 @@
|
|
|
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
|
+
export default class ExportDeb extends Command {
|
|
10
|
+
static description: string;
|
|
11
|
+
static examples: string[];
|
|
12
|
+
static flags: {
|
|
13
|
+
all: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
14
|
+
clean: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
15
|
+
help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
|
|
16
|
+
verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<void>;
|
|
19
|
+
}
|
|
@@ -1,38 +1,35 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
1
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
2
|
+
* ./src/commands/export/deb.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
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class ExportDeb extends
|
|
16
|
-
static flags = {
|
|
17
|
-
all: core_1.Flags.boolean({ char: 'a', description: 'export all archs' }),
|
|
18
|
-
clean: core_1.Flags.boolean({ char: 'c', description: 'remove old .deb before to copy' }),
|
|
19
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
20
|
-
verbose: core_1.Flags.boolean({ char: 'v', description: 'verbose' }),
|
|
21
|
-
};
|
|
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
|
+
export default class ExportDeb extends Command {
|
|
22
13
|
static description = 'export deb/docs/iso to the destination host';
|
|
23
14
|
static examples = [
|
|
24
15
|
'eggs export deb',
|
|
25
16
|
'eggs export deb --clean',
|
|
26
17
|
'eggs export deb --all',
|
|
27
18
|
];
|
|
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
|
+
};
|
|
28
25
|
async run() {
|
|
29
26
|
const { args, flags } = await this.parse(ExportDeb);
|
|
30
|
-
|
|
31
|
-
const Tu = new
|
|
32
|
-
|
|
27
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
28
|
+
const Tu = new Tools();
|
|
29
|
+
Utils.warning(ExportDeb.description);
|
|
33
30
|
await Tu.loadSettings();
|
|
34
|
-
const echo =
|
|
35
|
-
let arch =
|
|
31
|
+
const echo = Utils.setEcho(flags.verbose);
|
|
32
|
+
let arch = Utils.uefiArch();
|
|
36
33
|
if (flags.all) {
|
|
37
34
|
arch = '*';
|
|
38
35
|
}
|
|
@@ -53,7 +50,6 @@ class ExportDeb extends core_1.Command {
|
|
|
53
50
|
}
|
|
54
51
|
console.log(`copy: ${Tu.config.localPathDeb}${Tu.config.filterDeb}${arch} to ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathDeb}`);
|
|
55
52
|
}
|
|
56
|
-
await
|
|
53
|
+
await exec(cmd, echo);
|
|
57
54
|
}
|
|
58
55
|
}
|
|
59
|
-
exports.default = ExportDeb;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/export/iso.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 ExportIso extends Command {
|
|
10
|
+
static description: string;
|
|
11
|
+
static examples: string[];
|
|
12
|
+
static flags: {
|
|
13
|
+
checksum: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
14
|
+
clean: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
15
|
+
help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
|
|
16
|
+
verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<void>;
|
|
19
|
+
}
|