penguins-eggs 25.10.3 → 25.10.6
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 +1 -1
- package/README.md +826 -0
- package/conf/distros/archlinux/calamares/modules/bootloader.yml +86 -0
- package/conf/distros/archlinux/calamares/modules/partition.yml +8 -386
- package/conf/distros/archlinux/calamares/settings.yml +0 -4
- package/conf/distros/fedora/calamares/modules/README.md +4 -0
- package/conf/distros/fedora/calamares/modules/bootloader.yml +2 -1
- package/conf/distros/fedora/calamares/modules/mount.yml +6 -1
- package/conf/distros/fedora/calamares/settings.yml +6 -1
- package/conf/distros/focal/calamares/modules/mount.yml +23 -5
- package/conf/distros/noble/calamares/libexec/calamares-l10n-helper.sh +3 -0
- package/conf/distros/opensuse/calamares/calamares-modules/bootloaderspecification/bootloaderspecification.sh +1 -1
- package/conf/distros/opensuse/calamares/modules/dracut.mustache +7 -0
- package/conf/distros/opensuse/calamares/modules/packages.mustache +1 -0
- package/conf/distros/opensuse/calamares/modules/removeuser.mustache +2 -1
- package/conf/distros/opensuse/calamares/modules/unpackfs.mustache +2 -1
- package/conf/distros/opensuse/calamares/settings.yml +1 -1
- package/dist/classes/bleach.d.ts +37 -0
- package/dist/classes/bleach.js +148 -0
- package/dist/classes/cli-autologin.d.ts +52 -0
- package/dist/classes/cli-autologin.js +252 -0
- package/dist/classes/compressors.d.ts +54 -0
- package/dist/classes/compressors.js +109 -0
- package/dist/classes/daddy.d.ts +26 -0
- package/dist/classes/daddy.js +175 -0
- package/dist/classes/distro.d.ts +32 -0
- package/dist/classes/distro.js +356 -0
- package/dist/classes/diversions.d.ts +53 -0
- package/dist/classes/diversions.js +133 -0
- package/dist/classes/incubation/branding.d.ts +17 -0
- package/dist/classes/incubation/branding.js +85 -0
- package/dist/classes/incubation/customize/customize-partitions.d.ts +4 -0
- package/dist/classes/incubation/customize/customize-partitions.js +29 -0
- package/dist/classes/incubation/fisherman-helper/initcpio.d.ts +1 -0
- package/dist/classes/incubation/fisherman-helper/initcpio.js +69 -0
- package/dist/classes/incubation/fisherman-helper/packages.d.ts +20 -0
- package/dist/classes/incubation/fisherman-helper/packages.js +72 -0
- package/dist/classes/incubation/fisherman-helper/settings.d.ts +15 -0
- package/dist/classes/incubation/fisherman-helper/settings.js +116 -0
- package/dist/classes/incubation/fisherman.d.ts +71 -0
- package/dist/classes/incubation/fisherman.js +281 -0
- package/dist/classes/incubation/incubator.d/alpine.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/alpine.js +78 -0
- package/dist/classes/incubation/incubator.d/archlinux.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/archlinux.js +81 -0
- package/dist/classes/incubation/incubator.d/bionic.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/bionic.js +83 -0
- package/dist/classes/incubation/incubator.d/buster.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/buster.js +101 -0
- package/dist/classes/incubation/incubator.d/fedora.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/fedora.js +81 -0
- package/dist/classes/incubation/incubator.d/focal.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/focal.js +85 -0
- package/dist/classes/incubation/incubator.d/manjaro.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/manjaro.js +82 -0
- package/dist/classes/incubation/incubator.d/noble.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/noble.js +102 -0
- package/dist/classes/incubation/incubator.d/openmamba.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/openmamba.js +81 -0
- package/dist/classes/incubation/incubator.d/opensuse.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/opensuse.js +81 -0
- package/dist/classes/incubation/incubator.d/trixie.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/trixie.js +101 -0
- package/dist/classes/incubation/incubator.d.ts +48 -0
- package/dist/classes/incubation/incubator.js +378 -0
- package/dist/classes/incubation/installer.d.ts +13 -0
- package/dist/classes/incubation/installer.js +52 -0
- package/dist/classes/keyboards.d.ts +50 -0
- package/dist/classes/keyboards.js +287 -0
- package/dist/classes/locales.d.ts +21 -0
- package/dist/classes/locales.js +77 -0
- package/dist/classes/network.d.ts +37 -0
- package/dist/classes/network.js +98 -0
- package/dist/classes/ovary.d/bind-live-fs.d.ts +18 -0
- package/dist/classes/ovary.d/bind-live-fs.js +185 -0
- package/dist/classes/ovary.d/bind-vfs.d.ts +17 -0
- package/dist/classes/ovary.d/bind-vfs.js +37 -0
- package/dist/classes/ovary.d/create-xdg-autostart.d.ts +13 -0
- package/dist/classes/ovary.d/create-xdg-autostart.js +194 -0
- package/dist/classes/ovary.d/edit-live-fs.d.ts +20 -0
- package/dist/classes/ovary.d/edit-live-fs.js +245 -0
- package/dist/classes/ovary.d/fertilization.d.ts +12 -0
- package/dist/classes/ovary.d/fertilization.js +52 -0
- package/dist/classes/ovary.d/finished.d.ts +13 -0
- package/dist/classes/ovary.d/finished.js +44 -0
- package/dist/classes/ovary.d/initrd.d.ts +21 -0
- package/dist/classes/ovary.d/initrd.js +97 -0
- package/dist/classes/ovary.d/kernel-copy.d.ts +12 -0
- package/dist/classes/ovary.d/kernel-copy.js +22 -0
- package/dist/classes/ovary.d/live-create-structure.d.ts +12 -0
- package/dist/classes/ovary.d/live-create-structure.js +73 -0
- package/dist/classes/ovary.d/make-dot-disk.d.ts +12 -0
- package/dist/classes/ovary.d/make-dot-disk.js +62 -0
- package/dist/classes/ovary.d/make-efi.d.ts +14 -0
- package/dist/classes/ovary.d/make-efi.js +274 -0
- package/dist/classes/ovary.d/make-iso.d.ts +13 -0
- package/dist/classes/ovary.d/make-iso.js +45 -0
- package/dist/classes/ovary.d/make-squashfs.d.ts +18 -0
- package/dist/classes/ovary.d/make-squashfs.js +110 -0
- package/dist/classes/ovary.d/merged.d.ts +27 -0
- package/dist/classes/ovary.d/merged.js +78 -0
- package/dist/classes/ovary.d/produce.d.ts +23 -0
- package/dist/classes/ovary.d/produce.js +319 -0
- package/dist/classes/ovary.d/rexec.d.ts +13 -0
- package/dist/classes/ovary.d/rexec.js +34 -0
- package/dist/classes/ovary.d/syslinux.d.ts +12 -0
- package/dist/classes/ovary.d/syslinux.js +82 -0
- package/dist/classes/ovary.d/user-create-live.d.ts +14 -0
- package/dist/classes/ovary.d/user-create-live.js +97 -0
- package/dist/classes/ovary.d/users-remove.d.ts +9 -0
- package/dist/classes/ovary.d/users-remove.js +38 -0
- package/dist/classes/ovary.d/xorriso-command.d.ts +14 -0
- package/dist/classes/ovary.d/xorriso-command.js +123 -0
- package/dist/classes/ovary.d.ts +87 -0
- package/dist/classes/ovary.js +90 -0
- package/dist/classes/pacman.d/alpine.d.ts +56 -0
- package/dist/classes/pacman.d/alpine.js +167 -0
- package/dist/classes/pacman.d/archlinux.d.ts +62 -0
- package/dist/classes/pacman.d/archlinux.js +128 -0
- package/dist/classes/pacman.d/debian.d.ts +65 -0
- package/dist/classes/pacman.d/debian.js +143 -0
- package/dist/classes/pacman.d/fedora.d.ts +53 -0
- package/dist/classes/pacman.d/fedora.js +107 -0
- package/dist/classes/pacman.d/openmamba.d.ts +52 -0
- package/dist/classes/pacman.d/openmamba.js +106 -0
- package/dist/classes/pacman.d/opensuse.d.ts +53 -0
- package/dist/classes/pacman.d/opensuse.js +109 -0
- package/dist/classes/pacman.d.ts +139 -0
- package/dist/classes/pacman.js +683 -0
- package/dist/classes/pve-live.d.ts +17 -0
- package/dist/classes/pve-live.js +52 -0
- package/dist/classes/pxe.d.ts +76 -0
- package/dist/classes/pxe.js +353 -0
- package/dist/classes/settings.d.ts +52 -0
- package/dist/classes/settings.js +185 -0
- package/dist/classes/sources_list.d.ts +28 -0
- package/dist/classes/sources_list.js +89 -0
- package/dist/classes/systemctl.d.ts +47 -0
- package/dist/classes/systemctl.js +86 -0
- package/dist/classes/tailor.d.ts +50 -0
- package/dist/classes/tailor.js +563 -0
- package/dist/classes/tools.d.ts +26 -0
- package/dist/classes/tools.js +50 -0
- package/dist/classes/users.d.ts +28 -0
- package/dist/classes/users.js +143 -0
- package/dist/classes/utils.d/kernel.d.ts +39 -0
- package/dist/classes/utils.d/kernel.js +206 -0
- package/dist/classes/utils.d.ts +327 -0
- package/dist/classes/utils.js +955 -0
- package/dist/classes/xdg.d.ts +45 -0
- package/dist/classes/xdg.js +337 -0
- package/dist/classes/yolk.d.ts +33 -0
- package/dist/classes/yolk.js +114 -0
- package/dist/commands/adapt.d.ts +17 -0
- package/dist/commands/adapt.js +33 -0
- package/dist/commands/analyze.d.ts +26 -0
- package/dist/commands/analyze.js +95 -0
- package/dist/commands/calamares.d.ts +29 -0
- package/dist/commands/calamares.js +112 -0
- package/dist/commands/config.d.ts +35 -0
- package/dist/commands/config.js +120 -0
- package/dist/commands/cuckoo.d.ts +17 -0
- package/dist/commands/cuckoo.js +61 -0
- package/dist/commands/dad.d.ts +21 -0
- package/dist/commands/dad.js +47 -0
- package/dist/commands/export/iso.d.ts +19 -0
- package/dist/commands/export/iso.js +55 -0
- package/dist/commands/export/pkg.d.ts +29 -0
- package/dist/commands/export/pkg.js +173 -0
- package/dist/commands/export/tarballs.d.ts +27 -0
- package/dist/commands/export/tarballs.js +79 -0
- package/dist/commands/install.d.ts +39 -0
- package/dist/commands/install.js +113 -0
- package/dist/commands/kill.d.ts +24 -0
- package/dist/commands/kill.js +50 -0
- package/dist/commands/love.d.ts +21 -0
- package/dist/commands/love.js +73 -0
- package/dist/commands/mom.d.ts +16 -0
- package/dist/commands/mom.js +30 -0
- package/dist/commands/pods.d.ts +22 -0
- package/dist/commands/pods.js +92 -0
- package/dist/commands/produce.d.ts +35 -0
- package/dist/commands/produce.js +221 -0
- package/dist/commands/status.d.ts +23 -0
- package/dist/commands/status.js +31 -0
- package/dist/commands/syncfrom.d.ts +45 -0
- package/dist/commands/syncfrom.js +152 -0
- package/dist/commands/syncto.d.ts +40 -0
- package/dist/commands/syncto.js +175 -0
- package/dist/commands/tools/clean.d.ts +18 -0
- package/dist/commands/tools/clean.js +37 -0
- package/dist/commands/tools/ppa.d.ts +31 -0
- package/dist/commands/tools/ppa.js +244 -0
- package/dist/commands/tools/skel.d.ts +18 -0
- package/dist/commands/tools/skel.js +44 -0
- package/dist/commands/tools/stat.d.ts +31 -0
- package/dist/commands/tools/stat.js +70 -0
- package/dist/commands/tools/yolk.d.ts +24 -0
- package/dist/commands/tools/yolk.js +45 -0
- package/dist/commands/update.d.ts +46 -0
- package/dist/commands/update.js +238 -0
- package/dist/commands/wardrobe/get.d.ts +23 -0
- package/dist/commands/wardrobe/get.js +52 -0
- package/dist/commands/wardrobe/list.d.ts +24 -0
- package/dist/commands/wardrobe/list.js +125 -0
- package/dist/commands/wardrobe/show.d.ts +25 -0
- package/dist/commands/wardrobe/show.js +97 -0
- package/dist/commands/wardrobe/wear.d.ts +26 -0
- package/dist/commands/wardrobe/wear.js +84 -0
- package/dist/dhcpd-proxy/classes/packet.d.ts +36 -0
- package/dist/dhcpd-proxy/classes/packet.js +124 -0
- package/dist/dhcpd-proxy/index.d.ts +4 -0
- package/dist/dhcpd-proxy/index.js +4 -0
- package/dist/dhcpd-proxy/interfaces/i-pxe.d.ts +45 -0
- package/dist/dhcpd-proxy/interfaces/i-pxe.js +1 -0
- package/dist/dhcpd-proxy/lib/packet/converters.d.ts +11 -0
- package/dist/dhcpd-proxy/lib/packet/converters.js +395 -0
- package/dist/dhcpd-proxy/lib/packet/message-types.d.ts +10 -0
- package/dist/dhcpd-proxy/lib/packet/message-types.js +12 -0
- package/dist/dhcpd-proxy/lib/packet/options.d.ts +8 -0
- package/dist/dhcpd-proxy/lib/packet/options.js +264 -0
- package/dist/dhcpd-proxy/lib/sprintf.d.ts +6 -0
- package/dist/dhcpd-proxy/lib/sprintf.js +130 -0
- package/dist/dhcpd-proxy/lib/utils.d.ts +126 -0
- package/dist/dhcpd-proxy/lib/utils.js +255 -0
- package/dist/dhcpd-proxy/simple-proxy.d.ts +11 -0
- package/dist/dhcpd-proxy/simple-proxy.js +118 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +8 -0
- package/dist/interfaces/calamares/i-calamares-bootloader.d.ts +23 -0
- package/dist/interfaces/calamares/i-calamares-bootloader.js +7 -0
- package/dist/interfaces/calamares/i-calamares-branding.d.ts +46 -0
- package/dist/interfaces/calamares/i-calamares-branding.js +1 -0
- package/dist/interfaces/calamares/i-calamares-displaymanager.d.ts +34 -0
- package/dist/interfaces/calamares/i-calamares-displaymanager.js +1 -0
- package/dist/interfaces/calamares/i-calamares-finished.d.ts +14 -0
- package/dist/interfaces/calamares/i-calamares-finished.js +1 -0
- package/dist/interfaces/calamares/i-calamares-packages.d.ts +26 -0
- package/dist/interfaces/calamares/i-calamares-packages.js +1 -0
- package/dist/interfaces/calamares/i-calamares-partitions.d.ts +39 -0
- package/dist/interfaces/calamares/i-calamares-partitions.js +1 -0
- package/dist/interfaces/calamares/i-calamares-settings.d.ts +36 -0
- package/dist/interfaces/calamares/i-calamares-settings.js +1 -0
- package/dist/interfaces/i-addons.d.ts +12 -0
- package/dist/interfaces/i-addons.js +8 -0
- package/dist/interfaces/i-analyze.d.ts +17 -0
- package/dist/interfaces/i-analyze.js +17 -0
- package/dist/interfaces/i-app.d.ts +14 -0
- package/dist/interfaces/i-app.js +8 -0
- package/dist/interfaces/i-config-tools.d.ts +15 -0
- package/dist/interfaces/i-config-tools.js +8 -0
- package/dist/interfaces/i-devices.d.ts +20 -0
- package/dist/interfaces/i-devices.js +8 -0
- package/dist/interfaces/i-distro.d.ts +23 -0
- package/dist/interfaces/i-distro.js +8 -0
- package/dist/interfaces/i-drive-list.d.ts +33 -0
- package/dist/interfaces/i-drive-list.js +8 -0
- package/dist/interfaces/i-eggs-config.d.ts +32 -0
- package/dist/interfaces/i-eggs-config.js +8 -0
- package/dist/interfaces/i-excludes.d.ts +14 -0
- package/dist/interfaces/i-excludes.js +8 -0
- package/dist/interfaces/i-exec.d.ts +11 -0
- package/dist/interfaces/i-exec.js +8 -0
- package/dist/interfaces/i-initrd.d.ts +13 -0
- package/dist/interfaces/i-initrd.js +8 -0
- package/dist/interfaces/i-install.d.ts +16 -0
- package/dist/interfaces/i-install.js +8 -0
- package/dist/interfaces/i-installer.d.ts +17 -0
- package/dist/interfaces/i-installer.js +8 -0
- package/dist/interfaces/i-luks-passphrase.d.ts +11 -0
- package/dist/interfaces/i-luks-passphrase.js +8 -0
- package/dist/interfaces/i-materia.d.ts +36 -0
- package/dist/interfaces/i-materia.js +8 -0
- package/dist/interfaces/i-net.d.ts +16 -0
- package/dist/interfaces/i-net.js +8 -0
- package/dist/interfaces/i-os-release.d.ts +5 -0
- package/dist/interfaces/i-os-release.js +1 -0
- package/dist/interfaces/i-packages.d.ts +16 -0
- package/dist/interfaces/i-packages.js +8 -0
- package/dist/interfaces/i-partitions.d.ts +16 -0
- package/dist/interfaces/i-partitions.js +8 -0
- package/dist/interfaces/i-pxe.d.ts +45 -0
- package/dist/interfaces/i-pxe.js +1 -0
- package/dist/interfaces/i-remix.d.ts +21 -0
- package/dist/interfaces/i-remix.js +8 -0
- package/dist/interfaces/i-settings.d.ts +33 -0
- package/dist/interfaces/i-settings.js +8 -0
- package/dist/interfaces/i-user.d.ts +14 -0
- package/dist/interfaces/i-user.js +8 -0
- package/dist/interfaces/i-workdir.d.ts +14 -0
- package/dist/interfaces/i-workdir.js +8 -0
- package/dist/interfaces/i-xkb-model.d.ts +24 -0
- package/dist/interfaces/i-xkb-model.js +8 -0
- package/dist/interfaces/index.d.ts +26 -0
- package/dist/interfaces/index.js +8 -0
- package/dist/krill/classes/cfs.d.ts +17 -0
- package/dist/krill/classes/cfs.js +39 -0
- package/dist/krill/classes/krill_enums.d.ts +37 -0
- package/dist/krill/classes/krill_enums.js +41 -0
- package/dist/krill/classes/prepare.d/confirm.d.ts +5 -0
- package/dist/krill/classes/prepare.d/confirm.js +30 -0
- package/dist/krill/classes/prepare.d/keyboard.d.ts +14 -0
- package/dist/krill/classes/prepare.d/keyboard.js +62 -0
- package/dist/krill/classes/prepare.d/location.d.ts +17 -0
- package/dist/krill/classes/prepare.d/location.js +59 -0
- package/dist/krill/classes/prepare.d/network.d.ts +14 -0
- package/dist/krill/classes/prepare.d/network.js +68 -0
- package/dist/krill/classes/prepare.d/partitions.d.ts +14 -0
- package/dist/krill/classes/prepare.d/partitions.js +86 -0
- package/dist/krill/classes/prepare.d/summary.d.ts +15 -0
- package/dist/krill/classes/prepare.d/summary.js +72 -0
- package/dist/krill/classes/prepare.d/users.d.ts +6 -0
- package/dist/krill/classes/prepare.d/users.js +63 -0
- package/dist/krill/classes/prepare.d/welcome.d.ts +6 -0
- package/dist/krill/classes/prepare.d/welcome.js +30 -0
- package/dist/krill/classes/prepare.d.ts +89 -0
- package/dist/krill/classes/prepare.js +319 -0
- package/dist/krill/classes/sequence.d/add_user.d.ts +20 -0
- package/dist/krill/classes/sequence.d/add_user.js +77 -0
- package/dist/krill/classes/sequence.d/bootloader.d.ts +14 -0
- package/dist/krill/classes/sequence.d/bootloader.js +117 -0
- package/dist/krill/classes/sequence.d/bootloader_config.d.ts +14 -0
- package/dist/krill/classes/sequence.d/bootloader_config.js +192 -0
- package/dist/krill/classes/sequence.d/change_password.d.ts +15 -0
- package/dist/krill/classes/sequence.d/change_password.js +18 -0
- package/dist/krill/classes/sequence.d/del_live_user.d.ts +14 -0
- package/dist/krill/classes/sequence.d/del_live_user.js +39 -0
- package/dist/krill/classes/sequence.d/fstab.d.ts +14 -0
- package/dist/krill/classes/sequence.d/fstab.js +177 -0
- package/dist/krill/classes/sequence.d/grubcfg.d.ts +17 -0
- package/dist/krill/classes/sequence.d/grubcfg.js +35 -0
- package/dist/krill/classes/sequence.d/hostname.d.ts +13 -0
- package/dist/krill/classes/sequence.d/hostname.js +50 -0
- package/dist/krill/classes/sequence.d/initramfs.d.ts +13 -0
- package/dist/krill/classes/sequence.d/initramfs.js +54 -0
- package/dist/krill/classes/sequence.d/initramfs_cfg.d.ts +14 -0
- package/dist/krill/classes/sequence.d/initramfs_cfg.js +35 -0
- package/dist/krill/classes/sequence.d/locale.d.ts +13 -0
- package/dist/krill/classes/sequence.d/locale.js +91 -0
- package/dist/krill/classes/sequence.d/locale_cfg.d.ts +10 -0
- package/dist/krill/classes/sequence.d/locale_cfg.js +58 -0
- package/dist/krill/classes/sequence.d/m_keyboard.d.ts +14 -0
- package/dist/krill/classes/sequence.d/m_keyboard.js +58 -0
- package/dist/krill/classes/sequence.d/machine_id.d.ts +15 -0
- package/dist/krill/classes/sequence.d/machine_id.js +33 -0
- package/dist/krill/classes/sequence.d/mkfs.d.ts +15 -0
- package/dist/krill/classes/sequence.d/mkfs.js +88 -0
- package/dist/krill/classes/sequence.d/mount_fs.d.ts +17 -0
- package/dist/krill/classes/sequence.d/mount_fs.js +68 -0
- package/dist/krill/classes/sequence.d/mount_vfs.d.ts +17 -0
- package/dist/krill/classes/sequence.d/mount_vfs.js +59 -0
- package/dist/krill/classes/sequence.d/network_cfg.d.ts +19 -0
- package/dist/krill/classes/sequence.d/network_cfg.js +73 -0
- package/dist/krill/classes/sequence.d/packages.d.ts +14 -0
- package/dist/krill/classes/sequence.d/packages.js +111 -0
- package/dist/krill/classes/sequence.d/partition.d/bios_luks.d.ts +17 -0
- package/dist/krill/classes/sequence.d/partition.d/bios_luks.js +73 -0
- package/dist/krill/classes/sequence.d/partition.d/bios_standard.d.ts +16 -0
- package/dist/krill/classes/sequence.d/partition.d/bios_standard.js +51 -0
- package/dist/krill/classes/sequence.d/partition.d/uefi_luks.d.ts +17 -0
- package/dist/krill/classes/sequence.d/partition.d/uefi_luks.js +77 -0
- package/dist/krill/classes/sequence.d/partition.d/uefi_standard.d.ts +10 -0
- package/dist/krill/classes/sequence.d/partition.d/uefi_standard.js +33 -0
- package/dist/krill/classes/sequence.d/partition.d.ts +14 -0
- package/dist/krill/classes/sequence.d/partition.js +84 -0
- package/dist/krill/classes/sequence.d/remove_installer_link.d.ts +13 -0
- package/dist/krill/classes/sequence.d/remove_installer_link.js +35 -0
- package/dist/krill/classes/sequence.d/umount.d.ts +14 -0
- package/dist/krill/classes/sequence.d/umount.js +28 -0
- package/dist/krill/classes/sequence.d/unpackfs.d.ts +13 -0
- package/dist/krill/classes/sequence.d/unpackfs.js +20 -0
- package/dist/krill/classes/sequence.d.ts +134 -0
- package/dist/krill/classes/sequence.js +400 -0
- package/dist/krill/components/finished.d.ts +16 -0
- package/dist/krill/components/finished.js +56 -0
- package/dist/krill/components/information.d.ts +8 -0
- package/dist/krill/components/information.js +162 -0
- package/dist/krill/components/install.d.ts +15 -0
- package/dist/krill/components/install.js +60 -0
- package/dist/krill/components/keyboard.d.ts +16 -0
- package/dist/krill/components/keyboard.js +54 -0
- package/dist/krill/components/location.d.ts +16 -0
- package/dist/krill/components/location.js +59 -0
- package/dist/krill/components/network.d.ts +19 -0
- package/dist/krill/components/network.js +65 -0
- package/dist/krill/components/partitions.d.ts +18 -0
- package/dist/krill/components/partitions.js +89 -0
- package/dist/krill/components/steps.d.ts +13 -0
- package/dist/krill/components/steps.js +148 -0
- package/dist/krill/components/summary.d.ts +25 -0
- package/dist/krill/components/summary.js +77 -0
- package/dist/krill/components/title.d.ts +11 -0
- package/dist/krill/components/title.js +35 -0
- package/dist/krill/components/users.d.ts +24 -0
- package/dist/krill/components/users.js +80 -0
- package/dist/krill/components/welcome.d.ts +13 -0
- package/dist/krill/components/welcome.js +63 -0
- package/dist/krill/interfaces/i_krill.d.ts +44 -0
- package/dist/krill/interfaces/i_krill.js +8 -0
- package/dist/krill/interfaces/i_krill_config.d.ts +35 -0
- package/dist/krill/interfaces/i_krill_config.js +8 -0
- package/dist/krill/lib/get_address.d.ts +8 -0
- package/dist/krill/lib/get_address.js +23 -0
- package/dist/krill/lib/get_dns.d.ts +8 -0
- package/dist/krill/lib/get_dns.js +23 -0
- package/dist/krill/lib/get_domain.d.ts +8 -0
- package/dist/krill/lib/get_domain.js +23 -0
- package/dist/krill/lib/get_gateway.d.ts +8 -0
- package/dist/krill/lib/get_gateway.js +23 -0
- package/dist/krill/lib/get_hostname.d.ts +8 -0
- package/dist/krill/lib/get_hostname.js +23 -0
- package/dist/krill/lib/get_luks_passphrase.d.ts +8 -0
- package/dist/krill/lib/get_luks_passphrase.js +32 -0
- package/dist/krill/lib/get_netmask.d.ts +8 -0
- package/dist/krill/lib/get_netmask.js +23 -0
- package/dist/krill/lib/get_password.d.ts +8 -0
- package/dist/krill/lib/get_password.js +36 -0
- package/dist/krill/lib/get_userfullname.d.ts +8 -0
- package/dist/krill/lib/get_userfullname.js +23 -0
- package/dist/krill/lib/get_username.d.ts +8 -0
- package/dist/krill/lib/get_username.js +23 -0
- package/dist/krill/lib/select_address_type.d.ts +8 -0
- package/dist/krill/lib/select_address_type.js +24 -0
- package/dist/krill/lib/select_filesystem_type.d.ts +8 -0
- package/dist/krill/lib/select_filesystem_type.js +40 -0
- package/dist/krill/lib/select_installation_device.d.ts +8 -0
- package/dist/krill/lib/select_installation_device.js +40 -0
- package/dist/krill/lib/select_installation_mode.d.ts +9 -0
- package/dist/krill/lib/select_installation_mode.js +25 -0
- package/dist/krill/lib/select_interface.d.ts +8 -0
- package/dist/krill/lib/select_interface.js +24 -0
- package/dist/krill/lib/select_keyboard_layout.d.ts +11 -0
- package/dist/krill/lib/select_keyboard_layout.js +36 -0
- package/dist/krill/lib/select_keyboard_model.d.ts +11 -0
- package/dist/krill/lib/select_keyboard_model.js +34 -0
- package/dist/krill/lib/select_keyboard_option.d.ts +11 -0
- package/dist/krill/lib/select_keyboard_option.js +34 -0
- package/dist/krill/lib/select_keyboard_variant.d.ts +11 -0
- package/dist/krill/lib/select_keyboard_variant.js +35 -0
- package/dist/krill/lib/select_languages.d.ts +8 -0
- package/dist/krill/lib/select_languages.js +28 -0
- package/dist/krill/lib/select_regions.d.ts +8 -0
- package/dist/krill/lib/select_regions.js +24 -0
- package/dist/krill/lib/select_replaced_partition.d.ts +8 -0
- package/dist/krill/lib/select_replaced_partition.js +31 -0
- package/dist/krill/lib/select_user_swap_choice.d.ts +9 -0
- package/dist/krill/lib/select_user_swap_choice.js +35 -0
- package/dist/krill/lib/select_zones.d.ts +8 -0
- package/dist/krill/lib/select_zones.js +518 -0
- package/dist/lib/kill_me_softly.d.ts +11 -0
- package/dist/lib/kill_me_softly.js +61 -0
- package/dist/lib/utils.d.ts +19 -0
- package/dist/lib/utils.js +65 -0
- package/package.json +5 -5
- package/conf/distros/archlinux/calamares/modules/shellprocess@sync.yml +0 -5
- package/conf/distros/opensuse/calamares/modules/dracut.yml +0 -14
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/tools/yolk.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from '@oclif/core';
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export default class ToolsYolk extends Command {
|
|
13
|
+
static description: string;
|
|
14
|
+
static dir: string;
|
|
15
|
+
static examples: string[];
|
|
16
|
+
static flags: {
|
|
17
|
+
help: import("@oclif/core/interfaces").BooleanFlag<void>;
|
|
18
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
*/
|
|
23
|
+
run(): Promise<void>;
|
|
24
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/tools/yolk.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command, Flags } from '@oclif/core';
|
|
9
|
+
import fs from 'node:fs';
|
|
10
|
+
import shx from 'shelljs';
|
|
11
|
+
import Utils from '../../classes/utils.js';
|
|
12
|
+
import Yolk from '../../classes/yolk.js';
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
16
|
+
export default class ToolsYolk extends Command {
|
|
17
|
+
static description = 'configure eggs to install without internet';
|
|
18
|
+
static dir = '/var/local/yolk';
|
|
19
|
+
static examples = ['sudo eggs tools yolk'];
|
|
20
|
+
static flags = {
|
|
21
|
+
help: Flags.help({ char: 'h' }),
|
|
22
|
+
verbose: Flags.boolean({ char: 'v' })
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
*/
|
|
27
|
+
async run() {
|
|
28
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
29
|
+
const { flags } = await this.parse(ToolsYolk);
|
|
30
|
+
let verbose = false;
|
|
31
|
+
if (flags.verbose) {
|
|
32
|
+
verbose = true;
|
|
33
|
+
}
|
|
34
|
+
if (Utils.isRoot()) {
|
|
35
|
+
if (fs.existsSync(ToolsYolk.dir)) {
|
|
36
|
+
shx.exec(`rm ${ToolsYolk.dir} -rf `);
|
|
37
|
+
}
|
|
38
|
+
const yolk = new Yolk();
|
|
39
|
+
await yolk.create(verbose);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
Utils.useRoot(this.id);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/syncfrom.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from '@oclif/core';
|
|
9
|
+
import Distro from '../classes/distro.js';
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
export default class Update extends Command {
|
|
14
|
+
static description: string;
|
|
15
|
+
static examples: string[];
|
|
16
|
+
static flags: {
|
|
17
|
+
help: import("@oclif/core/interfaces").BooleanFlag<void>;
|
|
18
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
19
|
+
};
|
|
20
|
+
distro: Distro;
|
|
21
|
+
/**
|
|
22
|
+
* run
|
|
23
|
+
*/
|
|
24
|
+
run(): Promise<void>;
|
|
25
|
+
chooseUpdate(): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
*/
|
|
29
|
+
choosePkg(): Promise<string>;
|
|
30
|
+
/**
|
|
31
|
+
*
|
|
32
|
+
*/
|
|
33
|
+
getPkgFromPackageManager(): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* download da LAN
|
|
36
|
+
*/
|
|
37
|
+
getPkgFromLan(): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
*
|
|
40
|
+
*/
|
|
41
|
+
getFromSource(): void;
|
|
42
|
+
/**
|
|
43
|
+
* show
|
|
44
|
+
*/
|
|
45
|
+
show(url: string): Promise<void>;
|
|
46
|
+
}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/syncfrom.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command, Flags } from '@oclif/core';
|
|
9
|
+
import inquirer from 'inquirer';
|
|
10
|
+
import Distro from '../classes/distro.js';
|
|
11
|
+
import Tools from '../classes/tools.js';
|
|
12
|
+
import Utils from '../classes/utils.js';
|
|
13
|
+
import Diversions from '../classes/diversions.js';
|
|
14
|
+
import { exec } from '../lib/utils.js';
|
|
15
|
+
import axios from 'axios';
|
|
16
|
+
import https from 'node:https';
|
|
17
|
+
const agent = new https.Agent({
|
|
18
|
+
rejectUnauthorized: false
|
|
19
|
+
});
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
*/
|
|
23
|
+
export default class Update extends Command {
|
|
24
|
+
static description = "update the Penguins' eggs tool";
|
|
25
|
+
static examples = ['eggs update'];
|
|
26
|
+
static flags = {
|
|
27
|
+
help: Flags.help({ char: 'h' }),
|
|
28
|
+
verbose: Flags.boolean({ char: 'v', description: 'verbose' })
|
|
29
|
+
};
|
|
30
|
+
distro = new Distro();
|
|
31
|
+
/**
|
|
32
|
+
* run
|
|
33
|
+
*/
|
|
34
|
+
async run() {
|
|
35
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
36
|
+
const { flags } = await this.parse(Update);
|
|
37
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
38
|
+
if (Utils.isRoot()) {
|
|
39
|
+
if (Utils.isSources()) {
|
|
40
|
+
Utils.warning(`You are on penguins-eggs v. ${Utils.getPackageVersion()} from sources`);
|
|
41
|
+
}
|
|
42
|
+
else if (Utils.isPackage()) {
|
|
43
|
+
Utils.warning(`You are on eggs-${Utils.getPackageVersion()} installed as package`);
|
|
44
|
+
}
|
|
45
|
+
await this.chooseUpdate();
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
Utils.useRoot(this.id);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
async chooseUpdate() {
|
|
52
|
+
console.log();
|
|
53
|
+
const choose = await this.choosePkg();
|
|
54
|
+
Utils.titles(`updating via ${choose}`);
|
|
55
|
+
switch (choose) {
|
|
56
|
+
case 'LAN': {
|
|
57
|
+
await this.getPkgFromLan();
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
case 'Package_Manager': {
|
|
61
|
+
await this.getPkgFromPackageManager();
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
case 'Source': {
|
|
65
|
+
this.getFromSource();
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
// No default
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
*
|
|
73
|
+
*/
|
|
74
|
+
async choosePkg() {
|
|
75
|
+
const choices = ['Abort'];
|
|
76
|
+
choices.push('LAN', 'Package_Manager', 'Source');
|
|
77
|
+
const questions = [
|
|
78
|
+
{
|
|
79
|
+
choices,
|
|
80
|
+
message: 'Select update method',
|
|
81
|
+
name: 'selected',
|
|
82
|
+
type: 'list'
|
|
83
|
+
}
|
|
84
|
+
];
|
|
85
|
+
const answer = await inquirer.prompt(questions);
|
|
86
|
+
if (answer.selected === 'Abort') {
|
|
87
|
+
process.exit(0);
|
|
88
|
+
}
|
|
89
|
+
return answer.selected;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
*
|
|
93
|
+
*/
|
|
94
|
+
async getPkgFromPackageManager() {
|
|
95
|
+
let cmd = "";
|
|
96
|
+
if (this.distro.familyId === 'alpine') {
|
|
97
|
+
cmd = `doas apk add penguins-egga`;
|
|
98
|
+
}
|
|
99
|
+
else if (this.distro.familyId === 'archlinux') {
|
|
100
|
+
cmd = 'sudo pacman -S penguins-eggs';
|
|
101
|
+
}
|
|
102
|
+
else if (this.distro.familyId === "debian") {
|
|
103
|
+
cmd = 'sudo apt install penguins-eggs\nsudo apt reinstall penguins-eggs';
|
|
104
|
+
}
|
|
105
|
+
else if (this.distro.familyId === "fedora") {
|
|
106
|
+
cmd = 'sudo dnf install penguins-eggs\nsudo dnf reinstall penguins-eggs';
|
|
107
|
+
}
|
|
108
|
+
else if (this.distro.familyId === "openmamba") {
|
|
109
|
+
cmd = 'sudo dnf install penguins-eggs\nsudo dnf reinstall penguins-eggs';
|
|
110
|
+
}
|
|
111
|
+
else if (this.distro.familyId === "opensuse") {
|
|
112
|
+
cmd = 'sudo zypper install penguins-eggs\\zypper install --force penguins-eggs';
|
|
113
|
+
}
|
|
114
|
+
Utils.titles(`update`);
|
|
115
|
+
Utils.warning(`To install/update penguins-eggs cut and copy one of the follow commands`);
|
|
116
|
+
console.log();
|
|
117
|
+
console.log(cmd);
|
|
118
|
+
console.log();
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* download da LAN
|
|
122
|
+
*/
|
|
123
|
+
async getPkgFromLan() {
|
|
124
|
+
const Tu = new Tools();
|
|
125
|
+
await Tu.loadSettings();
|
|
126
|
+
Utils.warning('Update penguins-eggs from LAN');
|
|
127
|
+
let filter = '';
|
|
128
|
+
let copy = '';
|
|
129
|
+
let install = '';
|
|
130
|
+
/**
|
|
131
|
+
* Alpine
|
|
132
|
+
*/
|
|
133
|
+
if (this.distro.familyId === 'alpine') {
|
|
134
|
+
let repo = `alpine/x86_64`;
|
|
135
|
+
filter = `penguins-eggs-*-*.*.?-r?.apk`;
|
|
136
|
+
copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
|
|
137
|
+
install = `apk add /tmp/${filter}`;
|
|
138
|
+
/**
|
|
139
|
+
* Arch
|
|
140
|
+
*/
|
|
141
|
+
}
|
|
142
|
+
else if (this.distro.familyId === 'archlinux') {
|
|
143
|
+
let repo = "aur";
|
|
144
|
+
filter = `penguins-eggs-??.*.*-?-any.pkg.tar.zst`;
|
|
145
|
+
if (Diversions.isManjaroBased(this.distro.distroId)) {
|
|
146
|
+
repo = 'manjaro';
|
|
147
|
+
filter = `penguins-eggs-??.*.*-?-any.pkg.tar.*`;
|
|
148
|
+
}
|
|
149
|
+
copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
|
|
150
|
+
install = `pacman -U /tmp/${filter}`;
|
|
151
|
+
/**
|
|
152
|
+
* Devuan/Debian/Ubuntu
|
|
153
|
+
*/
|
|
154
|
+
}
|
|
155
|
+
else if (this.distro.familyId === "debian") {
|
|
156
|
+
let repo = 'debs';
|
|
157
|
+
filter = `penguins-eggs_??.*.*-?_${Utils.uefiArch()}.deb`;
|
|
158
|
+
copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
|
|
159
|
+
install = `apt reinstall /tmp/${filter}`;
|
|
160
|
+
/**
|
|
161
|
+
* fedora/el9
|
|
162
|
+
*/
|
|
163
|
+
}
|
|
164
|
+
else if (this.distro.familyId === "fedora") {
|
|
165
|
+
let repo = 'fedora';
|
|
166
|
+
let ftype = 'fc??';
|
|
167
|
+
if (this.distro.distroId !== 'Fedora') {
|
|
168
|
+
repo = 'el9';
|
|
169
|
+
ftype = 'el?';
|
|
170
|
+
}
|
|
171
|
+
filter = `penguins-eggs-??.*.*-?.${ftype}.x86_64.rpm`;
|
|
172
|
+
copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
|
|
173
|
+
install = `dnf reinstall /tmp/${filter} || dnf install /tmp/${filter}`;
|
|
174
|
+
/**
|
|
175
|
+
* openmamba
|
|
176
|
+
*/
|
|
177
|
+
}
|
|
178
|
+
else if (this.distro.familyId === "openmamba") {
|
|
179
|
+
let repo = 'openmamba';
|
|
180
|
+
filter = `penguins-eggs-??.*.*-?mamba.x86_64.rpm`;
|
|
181
|
+
copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
|
|
182
|
+
install = `dnf reinstall /tmp/${filter} || dnf install /tmp/${filter}`;
|
|
183
|
+
/**
|
|
184
|
+
* opensuse
|
|
185
|
+
*/
|
|
186
|
+
}
|
|
187
|
+
else if (this.distro.familyId === "opensuse") {
|
|
188
|
+
let repo = 'opensuse';
|
|
189
|
+
filter = `penguins-eggs-*.*.*-?.opensuse.x86_64.rpm`;
|
|
190
|
+
copy = `scp ${Tu.config.remoteUser}@${Tu.config.remoteHost}:${Tu.config.remotePathPackages}/${repo}/${filter} /tmp`;
|
|
191
|
+
install = `zypper install --force /tmp/${filter} || zypper install /tmp/${filter}`;
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* copy and install
|
|
195
|
+
*/
|
|
196
|
+
if (await Utils.customConfirm(`Want to update/reinstall penguins-eggs`)) {
|
|
197
|
+
await exec(copy, { capture: true, echo: true });
|
|
198
|
+
await exec(install);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
*
|
|
203
|
+
*/
|
|
204
|
+
getFromSource() {
|
|
205
|
+
console.log('Use the following commands to use penguins-eggs from source:');
|
|
206
|
+
console.log('');
|
|
207
|
+
console.log('cd ~');
|
|
208
|
+
console.log('git clone https://github.com/pieroproietti/penguins-eggs');
|
|
209
|
+
console.log('cd penguins-eggs');
|
|
210
|
+
console.log('pnpm install');
|
|
211
|
+
console.log('pnpm build');
|
|
212
|
+
console.log('./eggs');
|
|
213
|
+
console.log('');
|
|
214
|
+
console.log('NOTE: requires nodejs>18 and pnpm installed');
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* show
|
|
218
|
+
*/
|
|
219
|
+
async show(url) {
|
|
220
|
+
url += `/stats/json`;
|
|
221
|
+
const yesterday = new Date();
|
|
222
|
+
yesterday.setDate(yesterday.getDate() - 1);
|
|
223
|
+
// adjust 0 before single digit date
|
|
224
|
+
const day = ('0' + yesterday.getDate()).slice(-2);
|
|
225
|
+
const month = ('0' + (yesterday.getMonth() + 1)).slice(-2);
|
|
226
|
+
const year = yesterday.getFullYear();
|
|
227
|
+
const end = year + '-' + month + '-' + day;
|
|
228
|
+
let start = year + '-' + month + '-' + day;
|
|
229
|
+
const request = '?start_date=' + start + '&end_date=' + end;
|
|
230
|
+
url += request;
|
|
231
|
+
const res = await axios.get(url, { httpsAgent: agent });
|
|
232
|
+
console.log("\nStatistics to get an idea: yesterday downloads");
|
|
233
|
+
console.log();
|
|
234
|
+
for (const country of res.data.countries) {
|
|
235
|
+
console.log('- ' + country[0] + ': ' + country[1]);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/wardrobe/get.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from '@oclif/core';
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export default class Get extends Command {
|
|
13
|
+
static args: {
|
|
14
|
+
repo: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
15
|
+
};
|
|
16
|
+
static description: string;
|
|
17
|
+
static examples: string[];
|
|
18
|
+
static flags: {
|
|
19
|
+
help: import("@oclif/core/interfaces").BooleanFlag<void>;
|
|
20
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
21
|
+
};
|
|
22
|
+
run(): Promise<void>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/wardrobe/get.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Args, Command, Flags } from '@oclif/core';
|
|
9
|
+
import { basename } from 'node:path';
|
|
10
|
+
import Utils from '../../classes/utils.js';
|
|
11
|
+
// libraries
|
|
12
|
+
import { exec } from '../../lib/utils.js';
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
16
|
+
export default class Get extends Command {
|
|
17
|
+
static args = {
|
|
18
|
+
repo: Args.string({ description: 'repository to get', name: 'repo', required: false })
|
|
19
|
+
};
|
|
20
|
+
// static args ={name: 'repo', description: 'repository to get', required: false}
|
|
21
|
+
static description = 'get warorobe';
|
|
22
|
+
static examples = ['eggs wardrobe get', 'eggs wardrobe get your-wardrobe'];
|
|
23
|
+
static flags = {
|
|
24
|
+
help: Flags.help({ char: 'h' }),
|
|
25
|
+
verbose: Flags.boolean({ char: 'v' })
|
|
26
|
+
};
|
|
27
|
+
async run() {
|
|
28
|
+
const { args, flags } = await this.parse(Get);
|
|
29
|
+
let verbose = false;
|
|
30
|
+
if (flags.verbose) {
|
|
31
|
+
verbose = true;
|
|
32
|
+
}
|
|
33
|
+
const echo = Utils.setEcho(verbose);
|
|
34
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
35
|
+
let repo = 'https://github.com/pieroproietti/penguins-wardrobe';
|
|
36
|
+
if (this.argv['0'] !== undefined) {
|
|
37
|
+
repo = this.argv['0'];
|
|
38
|
+
}
|
|
39
|
+
// No sudo for get
|
|
40
|
+
if (process.getuid && process.getuid() === 0) {
|
|
41
|
+
Utils.warning('You must run: eggs wardrobe get without sudo');
|
|
42
|
+
process.exit(0);
|
|
43
|
+
}
|
|
44
|
+
const wardrobe = basename(repo); // ~/.eggs-wardrobe
|
|
45
|
+
// git clone -b <branchname> --single-branch
|
|
46
|
+
// const result = await exec(`git clone -b devel --single-branch --depth 1 ${repo} ${await Utils.wardrobe()}`)
|
|
47
|
+
const result = await exec(`git clone --single-branch --depth 1 ${repo} ${await Utils.wardrobe()}`);
|
|
48
|
+
if (result.code === 0) {
|
|
49
|
+
Utils.warning(`you get new wardrobe from repo: ${repo} in ${await Utils.wardrobe()}`);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/wardrobe/list.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from '@oclif/core';
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export default class List extends Command {
|
|
13
|
+
static args: {
|
|
14
|
+
repo: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
15
|
+
};
|
|
16
|
+
static description: string;
|
|
17
|
+
static examples: string[];
|
|
18
|
+
static flags: {
|
|
19
|
+
distro: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
help: import("@oclif/core/interfaces").BooleanFlag<void>;
|
|
21
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
};
|
|
23
|
+
run(): Promise<void>;
|
|
24
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/wardrobe/list.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Args, Command, Flags } from '@oclif/core';
|
|
9
|
+
// libraries
|
|
10
|
+
import chalk from 'chalk';
|
|
11
|
+
import yaml from 'js-yaml';
|
|
12
|
+
import fs from 'node:fs';
|
|
13
|
+
import path from 'node:path';
|
|
14
|
+
import Distro from '../../classes/distro.js';
|
|
15
|
+
import Utils from '../../classes/utils.js';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
*/
|
|
19
|
+
export default class List extends Command {
|
|
20
|
+
static args = {
|
|
21
|
+
repo: Args.string({ description: 'wardrobe to get', name: 'wardrobe', required: false })
|
|
22
|
+
};
|
|
23
|
+
// static args = [{ name: 'wardrobe', description: 'wardrobe', required: false }]
|
|
24
|
+
static description = 'list costumes and accessoires in wardrobe';
|
|
25
|
+
static examples = ['eggs wardrobe list', 'eggs wardrobe list your-wardrobe', 'eggs wardrobe list --distro arch'];
|
|
26
|
+
static flags = {
|
|
27
|
+
distro: Flags.string({ char: 'd', description: 'distro' }),
|
|
28
|
+
help: Flags.help({ char: 'h' }),
|
|
29
|
+
verbose: Flags.boolean({ char: 'v' })
|
|
30
|
+
};
|
|
31
|
+
async run() {
|
|
32
|
+
const { args, flags } = await this.parse(List);
|
|
33
|
+
let verbose = false;
|
|
34
|
+
if (flags.verbose) {
|
|
35
|
+
verbose = true;
|
|
36
|
+
}
|
|
37
|
+
const echo = Utils.setEcho(verbose);
|
|
38
|
+
Utils.titles(this.id + ' ' + this.argv);
|
|
39
|
+
/**
|
|
40
|
+
* wardobe
|
|
41
|
+
*/
|
|
42
|
+
let wardrobe = await Utils.wardrobe();
|
|
43
|
+
if (flags.distro === undefined && this.argv['0'] !== undefined) {
|
|
44
|
+
wardrobe = this.argv['0'];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* seleziona distro
|
|
48
|
+
*/
|
|
49
|
+
let index = '';
|
|
50
|
+
const distro = new Distro();
|
|
51
|
+
switch (distro.distroLike) {
|
|
52
|
+
case 'Arch': {
|
|
53
|
+
index = 'arch';
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
case 'Debian':
|
|
57
|
+
case 'Devuan': {
|
|
58
|
+
index = 'debian';
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
case 'Ubuntu': {
|
|
62
|
+
index = 'ubuntu';
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
// No default
|
|
66
|
+
}
|
|
67
|
+
if (flags.distro !== undefined) {
|
|
68
|
+
index = flags.distro;
|
|
69
|
+
}
|
|
70
|
+
index += '.yml';
|
|
71
|
+
console.log(chalk.green('wardrobe: ') + wardrobe);
|
|
72
|
+
console.log();
|
|
73
|
+
wardrobe = `${path.resolve(process.cwd(), wardrobe)}/`;
|
|
74
|
+
if (!fs.existsSync(wardrobe)) {
|
|
75
|
+
Utils.warning(`wardrobe: ${wardrobe} not found!`);
|
|
76
|
+
process.exit();
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* costumes
|
|
80
|
+
*/
|
|
81
|
+
const costumes = fs.readdirSync(`${wardrobe}costumes/`);
|
|
82
|
+
console.log(chalk.green('costumes: '));
|
|
83
|
+
for (const costume of costumes) {
|
|
84
|
+
if (fs.existsSync(`${wardrobe}costumes/${costume}/${index}`)) {
|
|
85
|
+
const materials = yaml.load(fs.readFileSync(`${wardrobe}costumes/${costume}/${index}`, 'utf8'));
|
|
86
|
+
console.log('- ' + chalk.cyan(costume) + ': ' + materials.description);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
console.log();
|
|
90
|
+
/**
|
|
91
|
+
* accessories
|
|
92
|
+
*/
|
|
93
|
+
const accessories = fs.readdirSync(`${wardrobe}/accessories/`);
|
|
94
|
+
console.log(chalk.green('accessories: '));
|
|
95
|
+
for (const accessory of accessories) {
|
|
96
|
+
if (fs.existsSync(`${wardrobe}/accessories/${accessory}/${index}`)) {
|
|
97
|
+
const materials = yaml.load(fs.readFileSync(`${wardrobe}/accessories/${accessory}/${index}`, 'utf8'));
|
|
98
|
+
console.log('- ' + chalk.cyan(accessory) + ': ' + materials.description);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
console.log();
|
|
102
|
+
/**
|
|
103
|
+
* servers
|
|
104
|
+
*/
|
|
105
|
+
const servers = fs.readdirSync(`${wardrobe}/servers/`);
|
|
106
|
+
console.log(chalk.green('servers: '));
|
|
107
|
+
for (const server of servers) {
|
|
108
|
+
if (fs.existsSync(`${wardrobe}/servers/${server}/${index}`)) {
|
|
109
|
+
const materials = yaml.load(fs.readFileSync(`${wardrobe}/servers/${server}/${index}`, 'utf8'));
|
|
110
|
+
console.log('- ' + chalk.cyan(server) + ': ' + materials.description);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
console.log();
|
|
114
|
+
/**
|
|
115
|
+
* vendors
|
|
116
|
+
*/
|
|
117
|
+
const vendors = fs.readdirSync(`${wardrobe}/vendors/`);
|
|
118
|
+
console.log(chalk.green('vendors/themes: '));
|
|
119
|
+
for (const vendor of vendors) {
|
|
120
|
+
if (fs.existsSync(`${wardrobe}/vendors/${vendor}/theme`)) {
|
|
121
|
+
console.log('- ' + chalk.cyan(vendor));
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/commands/wardrobe/show.ts
|
|
3
|
+
* penguins-eggs v.25.7.x / ecmascript 2020
|
|
4
|
+
* author: Piero Proietti
|
|
5
|
+
* email: piero.proietti@gmail.com
|
|
6
|
+
* license: MIT
|
|
7
|
+
*/
|
|
8
|
+
import { Command } from '@oclif/core';
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
export default class Show extends Command {
|
|
13
|
+
static args: {
|
|
14
|
+
repo: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
15
|
+
};
|
|
16
|
+
static description: string;
|
|
17
|
+
static example: string[];
|
|
18
|
+
static flags: {
|
|
19
|
+
help: import("@oclif/core/interfaces").BooleanFlag<void>;
|
|
20
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
21
|
+
verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
wardrobe: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
};
|
|
24
|
+
run(): Promise<void>;
|
|
25
|
+
}
|