penguins-eggs 10.1.0 → 25.7.7
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 -32
- package/README.md +119 -93
- package/assets/calamares/install-system.sh +2 -1
- package/conf/derivatives.yaml +8 -1
- package/conf/distros/alpine/calamares/modules/packages.yml +1 -1
- package/conf/distros/alpine/calamares/settings.yml +16 -29
- package/conf/distros/buster/calamares/modules/fstab.yml +1 -1
- package/conf/distros/buster/calamares/modules/mount.yml +4 -12
- package/conf/distros/buster/calamares/modules/users.yml +1 -0
- package/conf/distros/fedora/calamares/modules/bootloader.yml +46 -17
- package/conf/distros/fedora/calamares/modules/fstab.yml +36 -11
- package/conf/distros/fedora/calamares/modules/mount.yml +101 -39
- package/conf/distros/fedora/calamares/modules/partition.yml +173 -23
- package/conf/distros/fedora/calamares/modules/users.yml +7 -9
- package/conf/distros/noble/calamares/modules/users.yml +1 -0
- package/conf/distros/openmamba/calamares/settings.yml +0 -2
- package/conf/distros/opensuse/calamares/modules/bootloader.yml +46 -17
- package/conf/distros/opensuse/calamares/modules/displaymanager.yml +9 -5
- package/conf/distros/opensuse/calamares/modules/finished.yml +1 -1
- package/conf/distros/opensuse/calamares/modules/fstab.yml +36 -11
- package/conf/distros/opensuse/calamares/modules/grubcfg.yml +51 -0
- package/conf/distros/opensuse/calamares/modules/mount.yml +104 -39
- package/conf/distros/opensuse/calamares/modules/packages.yml +3 -3
- package/conf/distros/opensuse/calamares/modules/partition.yml +30 -237
- package/conf/distros/opensuse/calamares/modules/removeuser.yml +1 -14
- package/conf/distros/opensuse/calamares/modules/unpackfs.yml +0 -1
- package/conf/distros/opensuse/calamares/modules/users.yml +296 -16
- package/conf/distros/opensuse/calamares/modules/welcome.yml +91 -16
- package/conf/distros/opensuse/calamares/settings.yml +34 -120
- package/conf/distros/opensuse/calamares/zstd2lzo.sh +2 -0
- package/conf/distros/rolling/calamares/modules/shellprocess_sync.yml +5 -0
- package/conf/distros/rolling/calamares/settings.yml +4 -5
- 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 +56 -0
- package/dist/classes/distro.js +404 -0
- package/dist/classes/diversions.d.ts +52 -0
- package/dist/classes/diversions.js +126 -0
- package/dist/classes/incubation/branding.d.ts +17 -0
- package/dist/classes/incubation/branding.js +85 -0
- package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +11 -0
- package/dist/classes/incubation/fisherman-helper/displaymanager.js +40 -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 +83 -0
- package/dist/classes/incubation/fisherman.d.ts +70 -0
- package/dist/classes/incubation/fisherman.js +263 -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/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 +85 -0
- package/dist/classes/incubation/incubator.d/fedora.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/fedora.js +79 -0
- package/dist/classes/incubation/incubator.d/jessie.d.ts +31 -0
- package/dist/classes/incubation/incubator.d/jessie.js +44 -0
- package/dist/classes/incubation/incubator.d/noble.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/noble.js +85 -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 +79 -0
- package/dist/classes/incubation/incubator.d/rolling.d.ts +32 -0
- package/dist/classes/incubation/incubator.d/rolling.js +78 -0
- package/dist/classes/incubation/incubator.d.ts +44 -0
- package/dist/classes/incubation/incubator.js +377 -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 +177 -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 +51 -0
- package/dist/classes/ovary.d/finished.d.ts +13 -0
- package/dist/classes/ovary.d/finished.js +41 -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 +90 -0
- package/dist/classes/ovary.d/make-dot-disk.d.ts +12 -0
- package/dist/classes/ovary.d/make-dot-disk.js +50 -0
- package/dist/classes/ovary.d/make-efi.d.ts +12 -0
- package/dist/classes/ovary.d/make-efi.js +273 -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 +294 -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 +79 -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 +119 -0
- package/dist/classes/ovary.d.ts +82 -0
- package/dist/classes/ovary.js +86 -0
- package/dist/classes/pacman.d/aldos.d.ts +52 -0
- package/dist/classes/pacman.d/aldos.js +100 -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 +136 -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 +101 -0
- package/dist/classes/pacman.d/openmamba.d.ts +52 -0
- package/dist/classes/pacman.d/openmamba.js +100 -0
- package/dist/classes/pacman.d/opensuse.d.ts +53 -0
- package/dist/classes/pacman.d/opensuse.js +103 -0
- package/dist/classes/pacman.d/voidlinux.d.ts +52 -0
- package/dist/classes/pacman.d/voidlinux.js +90 -0
- package/dist/classes/pacman.d.ts +139 -0
- package/dist/classes/pacman.js +767 -0
- package/dist/classes/pve-live.d.ts +17 -0
- package/dist/classes/pve-live.js +52 -0
- package/dist/classes/pxe.d.ts +77 -0
- package/dist/classes/pxe.js +343 -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/architecture.d.ts +41 -0
- package/dist/classes/utils.d/architecture.js +87 -0
- package/dist/classes/utils.d/console-output.d.ts +26 -0
- package/dist/classes/utils.d/console-output.js +46 -0
- package/dist/classes/utils.d/filesystem.d.ts +53 -0
- package/dist/classes/utils.d/filesystem.js +154 -0
- package/dist/classes/utils.d/formatters.d.ts +32 -0
- package/dist/classes/utils.d/formatters.js +64 -0
- package/dist/classes/utils.d/kernel.d.ts +83 -0
- package/dist/classes/utils.d/kernel.js +298 -0
- package/dist/classes/utils.d/network.d.ts +43 -0
- package/dist/classes/utils.d/network.js +133 -0
- package/dist/classes/utils.d/package-info.d.ts +55 -0
- package/dist/classes/utils.d/package-info.js +137 -0
- package/dist/classes/utils.d/snapshot.d.ts +44 -0
- package/dist/classes/utils.d/snapshot.js +102 -0
- package/dist/classes/utils.d/system.d.ts +63 -0
- package/dist/classes/utils.d/system.js +200 -0
- package/dist/classes/utils.d/user-interaction.d.ts +39 -0
- package/dist/classes/utils.d/user-interaction.js +104 -0
- package/dist/classes/utils.d.ts +95 -0
- package/dist/classes/utils.js +111 -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 +16 -0
- package/dist/commands/cuckoo.js +60 -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 +179 -0
- package/dist/commands/export/tarballs.d.ts +27 -0
- package/dist/commands/export/tarballs.js +79 -0
- package/dist/commands/install.d.ts +38 -0
- package/dist/commands/install.js +91 -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 +26 -0
- package/dist/commands/tools/ppa.js +138 -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 +51 -0
- package/dist/commands/update.js +219 -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/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-branding.d.ts +36 -0
- package/dist/interfaces/i-branding.js +8 -0
- package/dist/interfaces/i-calamares-displaymanager.d.ts +17 -0
- package/dist/interfaces/i-calamares-displaymanager.js +1 -0
- package/dist/interfaces/i-calamares-finished.d.ts +12 -0
- package/dist/interfaces/i-calamares-finished.js +1 -0
- package/dist/interfaces/i-calamares-packages.d.ts +28 -0
- package/dist/interfaces/i-calamares-packages.js +1 -0
- package/dist/interfaces/i-calamares-partition.d.ts +40 -0
- package/dist/interfaces/i-calamares-partition.js +1 -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 +69 -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 +314 -0
- package/dist/krill/classes/sequence.d/add_user.d.ts +20 -0
- package/dist/krill/classes/sequence.d/add_user.js +71 -0
- package/dist/krill/classes/sequence.d/bootloader.d.ts +14 -0
- package/dist/krill/classes/sequence.d/bootloader.js +95 -0
- package/dist/krill/classes/sequence.d/bootloader_config.d.ts +14 -0
- package/dist/krill/classes/sequence.d/bootloader_config.js +142 -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 +71 -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 +40 -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 +78 -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 +31 -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 +133 -0
- package/dist/krill/classes/sequence.js +396 -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 +40 -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 +64 -0
- package/dist/penguins-eggs_25.7.7-1_amd64.deb +0 -0
- package/dist/penguins-eggs_25.7.7-1_amd64.deb.sha256 +1 -0
- package/dracut/README.md +14 -0
- package/dracut/dracut.conf +3 -3
- package/dracut/dracut.conf.d/10-persistent_policy.conf +1 -0
- package/dracut/dracut.conf.d/{01-live.conf → 50-live.conf} +3 -2
- package/ipxe/grub/acpi.mod +0 -0
- package/ipxe/grub/adler32.mod +0 -0
- package/ipxe/grub/affs.mod +0 -0
- package/ipxe/grub/afs.mod +0 -0
- package/ipxe/grub/afsplitter.mod +0 -0
- package/ipxe/grub/ahci.mod +0 -0
- package/ipxe/grub/all_video.mod +0 -0
- package/ipxe/grub/aout.mod +0 -0
- package/ipxe/grub/appleldr.mod +0 -0
- package/ipxe/grub/archelp.mod +0 -0
- package/ipxe/grub/at_keyboard.mod +0 -0
- package/ipxe/grub/ata.mod +0 -0
- package/ipxe/grub/backtrace.mod +0 -0
- package/ipxe/grub/bfs.mod +0 -0
- package/ipxe/grub/bitmap.mod +0 -0
- package/ipxe/grub/bitmap_scale.mod +0 -0
- package/ipxe/grub/blocklist.mod +0 -0
- package/ipxe/grub/boot.mod +0 -0
- package/ipxe/grub/bsd.mod +0 -0
- package/ipxe/grub/bswap_test.mod +0 -0
- package/ipxe/grub/btrfs.mod +0 -0
- package/ipxe/grub/bufio.mod +0 -0
- package/ipxe/grub/cat.mod +0 -0
- package/ipxe/grub/cbfs.mod +0 -0
- package/ipxe/grub/cbls.mod +0 -0
- package/ipxe/grub/cbmemc.mod +0 -0
- package/ipxe/grub/cbtable.mod +0 -0
- package/ipxe/grub/cbtime.mod +0 -0
- package/ipxe/grub/chain.mod +0 -0
- package/ipxe/grub/cmdline_cat_test.mod +0 -0
- package/ipxe/grub/cmp.mod +0 -0
- package/ipxe/grub/cmp_test.mod +0 -0
- package/ipxe/grub/command.lst +194 -0
- package/ipxe/grub/config.h +69 -0
- package/ipxe/grub/configfile.mod +0 -0
- package/ipxe/grub/cpio.mod +0 -0
- package/ipxe/grub/cpio_be.mod +0 -0
- package/ipxe/grub/cpuid.mod +0 -0
- package/ipxe/grub/crc64.mod +0 -0
- package/ipxe/grub/crypto.lst +45 -0
- package/ipxe/grub/crypto.mod +0 -0
- package/ipxe/grub/cryptodisk.mod +0 -0
- package/ipxe/grub/cs5536.mod +0 -0
- package/ipxe/grub/ctz_test.mod +0 -0
- package/ipxe/grub/date.mod +0 -0
- package/ipxe/grub/datehook.mod +0 -0
- package/ipxe/grub/datetime.mod +0 -0
- package/ipxe/grub/disk.mod +0 -0
- package/ipxe/grub/diskfilter.mod +0 -0
- package/ipxe/grub/div.mod +0 -0
- package/ipxe/grub/div_test.mod +0 -0
- package/ipxe/grub/dm_nv.mod +0 -0
- package/ipxe/grub/echo.mod +0 -0
- package/ipxe/grub/efi_gop.mod +0 -0
- package/ipxe/grub/efi_uga.mod +0 -0
- package/ipxe/grub/efifwsetup.mod +0 -0
- package/ipxe/grub/efinet.mod +0 -0
- package/ipxe/grub/ehci.mod +0 -0
- package/ipxe/grub/elf.mod +0 -0
- package/ipxe/grub/eval.mod +0 -0
- package/ipxe/grub/exfat.mod +0 -0
- package/ipxe/grub/exfctest.mod +0 -0
- package/ipxe/grub/ext2.mod +0 -0
- package/ipxe/grub/extcmd.mod +0 -0
- package/ipxe/grub/f2fs.mod +0 -0
- package/ipxe/grub/fat.mod +0 -0
- package/ipxe/grub/fdt.lst +0 -0
- package/ipxe/grub/file.mod +0 -0
- package/ipxe/grub/fixvideo.mod +0 -0
- package/ipxe/grub/font.mod +0 -0
- package/ipxe/grub/fs.lst +37 -0
- package/ipxe/grub/fshelp.mod +0 -0
- package/ipxe/grub/functional_test.mod +0 -0
- package/ipxe/grub/gcry_arcfour.mod +0 -0
- package/ipxe/grub/gcry_blowfish.mod +0 -0
- package/ipxe/grub/gcry_camellia.mod +0 -0
- package/ipxe/grub/gcry_cast5.mod +0 -0
- package/ipxe/grub/gcry_crc.mod +0 -0
- package/ipxe/grub/gcry_des.mod +0 -0
- package/ipxe/grub/gcry_dsa.mod +0 -0
- package/ipxe/grub/gcry_idea.mod +0 -0
- package/ipxe/grub/gcry_md4.mod +0 -0
- package/ipxe/grub/gcry_md5.mod +0 -0
- package/ipxe/grub/gcry_rfc2268.mod +0 -0
- package/ipxe/grub/gcry_rijndael.mod +0 -0
- package/ipxe/grub/gcry_rmd160.mod +0 -0
- package/ipxe/grub/gcry_rsa.mod +0 -0
- package/ipxe/grub/gcry_seed.mod +0 -0
- package/ipxe/grub/gcry_serpent.mod +0 -0
- package/ipxe/grub/gcry_sha1.mod +0 -0
- package/ipxe/grub/gcry_sha256.mod +0 -0
- package/ipxe/grub/gcry_sha512.mod +0 -0
- package/ipxe/grub/gcry_tiger.mod +0 -0
- package/ipxe/grub/gcry_twofish.mod +0 -0
- package/ipxe/grub/gcry_whirlpool.mod +0 -0
- package/ipxe/grub/geli.mod +0 -0
- package/ipxe/grub/gettext.mod +0 -0
- package/ipxe/grub/gfxmenu.mod +0 -0
- package/ipxe/grub/gfxterm.mod +0 -0
- package/ipxe/grub/gfxterm_background.mod +0 -0
- package/ipxe/grub/gfxterm_menu.mod +0 -0
- package/ipxe/grub/gptsync.mod +0 -0
- package/ipxe/grub/gzio.mod +0 -0
- package/ipxe/grub/halt.mod +0 -0
- package/ipxe/grub/hashsum.mod +0 -0
- package/ipxe/grub/hdparm.mod +0 -0
- package/ipxe/grub/hello.mod +0 -0
- package/ipxe/grub/help.mod +0 -0
- package/ipxe/grub/hexdump.mod +0 -0
- package/ipxe/grub/hfs.mod +0 -0
- package/ipxe/grub/hfsplus.mod +0 -0
- package/ipxe/grub/hfspluscomp.mod +0 -0
- package/ipxe/grub/http.mod +0 -0
- package/ipxe/grub/iorw.mod +0 -0
- package/ipxe/grub/iso9660.mod +0 -0
- package/ipxe/grub/jfs.mod +0 -0
- package/ipxe/grub/jpeg.mod +0 -0
- package/ipxe/grub/json.mod +0 -0
- package/ipxe/grub/kernel.img +0 -0
- package/ipxe/grub/keylayouts.mod +0 -0
- package/ipxe/grub/keystatus.mod +0 -0
- package/ipxe/grub/ldm.mod +0 -0
- package/ipxe/grub/legacy_password_test.mod +0 -0
- package/ipxe/grub/legacycfg.mod +0 -0
- package/ipxe/grub/linux.mod +0 -0
- package/ipxe/grub/linux16.mod +0 -0
- package/ipxe/grub/linuxefi.mod +0 -0
- package/ipxe/grub/loadbios.mod +0 -0
- package/ipxe/grub/loadenv.mod +0 -0
- package/ipxe/grub/loopback.mod +0 -0
- package/ipxe/grub/ls.mod +0 -0
- package/ipxe/grub/lsacpi.mod +0 -0
- package/ipxe/grub/lsefi.mod +0 -0
- package/ipxe/grub/lsefimmap.mod +0 -0
- package/ipxe/grub/lsefisystab.mod +0 -0
- package/ipxe/grub/lsmmap.mod +0 -0
- package/ipxe/grub/lspci.mod +0 -0
- package/ipxe/grub/lssal.mod +0 -0
- package/ipxe/grub/luks.mod +0 -0
- package/ipxe/grub/luks2.mod +0 -0
- package/ipxe/grub/lvm.mod +0 -0
- package/ipxe/grub/lzopio.mod +0 -0
- package/ipxe/grub/macbless.mod +0 -0
- package/ipxe/grub/macho.mod +0 -0
- package/ipxe/grub/mdraid09.mod +0 -0
- package/ipxe/grub/mdraid09_be.mod +0 -0
- package/ipxe/grub/mdraid1x.mod +0 -0
- package/ipxe/grub/memdisk.mod +0 -0
- package/ipxe/grub/memrw.mod +0 -0
- package/ipxe/grub/minicmd.mod +0 -0
- package/ipxe/grub/minix.mod +0 -0
- package/ipxe/grub/minix2.mod +0 -0
- package/ipxe/grub/minix2_be.mod +0 -0
- package/ipxe/grub/minix3.mod +0 -0
- package/ipxe/grub/minix3_be.mod +0 -0
- package/ipxe/grub/minix_be.mod +0 -0
- package/ipxe/grub/mmap.mod +0 -0
- package/ipxe/grub/moddep.lst +267 -0
- package/ipxe/grub/modinfo.sh +40 -0
- package/ipxe/grub/monolithic/gcdx64.efi +0 -0
- package/ipxe/grub/monolithic/grubnetx64-installer.efi +0 -0
- package/ipxe/grub/monolithic/grubnetx64.efi +0 -0
- package/ipxe/grub/monolithic/grubx64.efi +0 -0
- package/ipxe/grub/morse.mod +0 -0
- package/ipxe/grub/mpi.mod +0 -0
- package/ipxe/grub/msdospart.mod +0 -0
- package/ipxe/grub/mul_test.mod +0 -0
- package/ipxe/grub/multiboot.mod +0 -0
- package/ipxe/grub/multiboot2.mod +0 -0
- package/ipxe/grub/nativedisk.mod +0 -0
- package/ipxe/grub/net.mod +0 -0
- package/ipxe/grub/newc.mod +0 -0
- package/ipxe/grub/nilfs2.mod +0 -0
- package/ipxe/grub/normal.mod +0 -0
- package/ipxe/grub/ntfs.mod +0 -0
- package/ipxe/grub/ntfscomp.mod +0 -0
- package/ipxe/grub/odc.mod +0 -0
- package/ipxe/grub/offsetio.mod +0 -0
- package/ipxe/grub/ohci.mod +0 -0
- package/ipxe/grub/part_acorn.mod +0 -0
- package/ipxe/grub/part_amiga.mod +0 -0
- package/ipxe/grub/part_apple.mod +0 -0
- package/ipxe/grub/part_bsd.mod +0 -0
- package/ipxe/grub/part_dfly.mod +0 -0
- package/ipxe/grub/part_dvh.mod +0 -0
- package/ipxe/grub/part_gpt.mod +0 -0
- package/ipxe/grub/part_msdos.mod +0 -0
- package/ipxe/grub/part_plan.mod +0 -0
- package/ipxe/grub/part_sun.mod +0 -0
- package/ipxe/grub/part_sunpc.mod +0 -0
- package/ipxe/grub/partmap.lst +11 -0
- package/ipxe/grub/parttool.lst +1 -0
- package/ipxe/grub/parttool.mod +0 -0
- package/ipxe/grub/password.mod +0 -0
- package/ipxe/grub/password_pbkdf2.mod +0 -0
- package/ipxe/grub/pata.mod +0 -0
- package/ipxe/grub/pbkdf2.mod +0 -0
- package/ipxe/grub/pbkdf2_test.mod +0 -0
- package/ipxe/grub/pcidump.mod +0 -0
- package/ipxe/grub/pgp.mod +0 -0
- package/ipxe/grub/play.mod +0 -0
- package/ipxe/grub/png.mod +0 -0
- package/ipxe/grub/priority_queue.mod +0 -0
- package/ipxe/grub/probe.mod +0 -0
- package/ipxe/grub/procfs.mod +0 -0
- package/ipxe/grub/progress.mod +0 -0
- package/ipxe/grub/raid5rec.mod +0 -0
- package/ipxe/grub/raid6rec.mod +0 -0
- package/ipxe/grub/random.mod +0 -0
- package/ipxe/grub/rdmsr.mod +0 -0
- package/ipxe/grub/read.mod +0 -0
- package/ipxe/grub/reboot.mod +0 -0
- package/ipxe/grub/regexp.mod +0 -0
- package/ipxe/grub/reiserfs.mod +0 -0
- package/ipxe/grub/relocator.mod +0 -0
- package/ipxe/grub/romfs.mod +0 -0
- package/ipxe/grub/scsi.mod +0 -0
- package/ipxe/grub/search.mod +0 -0
- package/ipxe/grub/search_fs_file.mod +0 -0
- package/ipxe/grub/search_fs_uuid.mod +0 -0
- package/ipxe/grub/search_label.mod +0 -0
- package/ipxe/grub/serial.mod +0 -0
- package/ipxe/grub/setjmp.mod +0 -0
- package/ipxe/grub/setjmp_test.mod +0 -0
- package/ipxe/grub/setpci.mod +0 -0
- package/ipxe/grub/sfs.mod +0 -0
- package/ipxe/grub/shift_test.mod +0 -0
- package/ipxe/grub/signature_test.mod +0 -0
- package/ipxe/grub/sleep.mod +0 -0
- package/ipxe/grub/sleep_test.mod +0 -0
- package/ipxe/grub/smbios.mod +0 -0
- package/ipxe/grub/spkmodem.mod +0 -0
- package/ipxe/grub/squash4.mod +0 -0
- package/ipxe/grub/strtoull_test.mod +0 -0
- package/ipxe/grub/syslinuxcfg.mod +0 -0
- package/ipxe/grub/tar.mod +0 -0
- package/ipxe/grub/terminal.lst +9 -0
- package/ipxe/grub/terminal.mod +0 -0
- package/ipxe/grub/terminfo.mod +0 -0
- package/ipxe/grub/test.mod +0 -0
- package/ipxe/grub/test_blockarg.mod +0 -0
- package/ipxe/grub/testload.mod +0 -0
- package/ipxe/grub/testspeed.mod +0 -0
- package/ipxe/grub/tftp.mod +0 -0
- package/ipxe/grub/tga.mod +0 -0
- package/ipxe/grub/time.mod +0 -0
- package/ipxe/grub/tpm.mod +0 -0
- package/ipxe/grub/tr.mod +0 -0
- package/ipxe/grub/trig.mod +0 -0
- package/ipxe/grub/true.mod +0 -0
- package/ipxe/grub/udf.mod +0 -0
- package/ipxe/grub/ufs1.mod +0 -0
- package/ipxe/grub/ufs1_be.mod +0 -0
- package/ipxe/grub/ufs2.mod +0 -0
- package/ipxe/grub/uhci.mod +0 -0
- package/ipxe/grub/usb.mod +0 -0
- package/ipxe/grub/usb_keyboard.mod +0 -0
- package/ipxe/grub/usbms.mod +0 -0
- package/ipxe/grub/usbserial_common.mod +0 -0
- package/ipxe/grub/usbserial_ftdi.mod +0 -0
- package/ipxe/grub/usbserial_pl2303.mod +0 -0
- package/ipxe/grub/usbserial_usbdebug.mod +0 -0
- package/ipxe/grub/usbtest.mod +0 -0
- package/ipxe/grub/video.lst +4 -0
- package/ipxe/grub/video.mod +0 -0
- package/ipxe/grub/video_bochs.mod +0 -0
- package/ipxe/grub/video_cirrus.mod +0 -0
- package/ipxe/grub/video_colors.mod +0 -0
- package/ipxe/grub/video_fb.mod +0 -0
- package/ipxe/grub/videoinfo.mod +0 -0
- package/ipxe/grub/videotest.mod +0 -0
- package/ipxe/grub/videotest_checksum.mod +0 -0
- package/ipxe/grub/wrmsr.mod +0 -0
- package/ipxe/grub/xfs.mod +0 -0
- package/ipxe/grub/xnu.mod +0 -0
- package/ipxe/grub/xnu_uuid.mod +0 -0
- package/ipxe/grub/xnu_uuid_test.mod +0 -0
- package/ipxe/grub/xzio.mod +0 -0
- package/ipxe/grub/zfs.mod +0 -0
- package/ipxe/grub/zfscrypt.mod +0 -0
- package/ipxe/grub/zfsinfo.mod +0 -0
- package/ipxe/grub/zstd.mod +0 -0
- package/ipxe/grubnetx64.efi.signed +0 -0
- package/ipxe/ipxe.pxe +0 -0
- package/ipxe/undionly.kpxe +0 -0
- package/mkinitcpio/arch/live.conf +3 -2
- package/mkinitcpio/manjaro/live.conf +1 -1
- package/mkinitfs/README.md +10 -49
- package/mkinitfs/live.conf +2 -0
- package/package.json +35 -30
- package/pods/ci/minimal/opensuse-container2host.sh +1 -1
- package/scripts/99clean +42 -0
- package/scripts/_eggs +6 -12
- package/scripts/eggs.bash +1 -2
- package/conf/distros/aldos/calamares/modules/bootloader.yml +0 -85
- package/conf/distros/aldos/calamares/modules/displaymanager.yml +0 -22
- package/conf/distros/aldos/calamares/modules/finished.yml +0 -5
- package/conf/distros/aldos/calamares/modules/fstab.yml +0 -12
- package/conf/distros/aldos/calamares/modules/locale.yml +0 -97
- package/conf/distros/aldos/calamares/modules/luksopenswaphookcfg.yml +0 -5
- package/conf/distros/aldos/calamares/modules/machineid.yml +0 -17
- package/conf/distros/aldos/calamares/modules/mount.yml +0 -56
- package/conf/distros/aldos/calamares/modules/packages.yml +0 -6
- package/conf/distros/aldos/calamares/modules/partition.yml +0 -242
- package/conf/distros/aldos/calamares/modules/removeuser.yml +0 -15
- package/conf/distros/aldos/calamares/modules/unpackfs.yml +0 -6
- package/conf/distros/aldos/calamares/modules/users.yml +0 -19
- package/conf/distros/aldos/calamares/modules/welcome.yml +0 -19
- package/conf/distros/aldos/calamares/settings.yml +0 -124
- package/conf/distros/fedora/calamares/modules/bootloader.conf +0 -85
- package/conf/distros/opensuse/calamares/modules/bootloader.conf +0 -86
- package/conf/distros/opensuse/calamares/modules/locale.yml +0 -98
- package/conf/distros/opensuse/calamares/modules/luksopenswaphookcfg.yml +0 -5
- package/conf/distros/opensuse/calamares/modules/machineid.yml +0 -17
- package/conf/distros/rolling/calamares/modules/shellprocess_removelink.yml +0 -8
- package/dracut/sidecar.sh +0 -19
- package/ipxe/ipxe.efi +0 -0
- package/mkinitfs/initramfs-init.in +0 -1051
- package/mkinitfs/sidecar.sh +0 -52
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/package-info.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* Package information and installation mode detection utilities
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
import path from 'path';
|
|
10
|
+
import os from 'os';
|
|
11
|
+
import System from './system.js';
|
|
12
|
+
// pjson
|
|
13
|
+
import { createRequire } from 'module';
|
|
14
|
+
const require = createRequire(import.meta.url);
|
|
15
|
+
const pjson = require('../../../package.json');
|
|
16
|
+
// __dirname
|
|
17
|
+
const __dirname = path.dirname(new URL(import.meta.url).pathname);
|
|
18
|
+
export default class PackageInfo {
|
|
19
|
+
/**
|
|
20
|
+
* return the name of the package: penguins-eggs
|
|
21
|
+
* @returns penguins-eggs
|
|
22
|
+
*/
|
|
23
|
+
static getPackageName() {
|
|
24
|
+
return pjson.shortName;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* return the short name of the package: eggs
|
|
28
|
+
* @returns eggs
|
|
29
|
+
*/
|
|
30
|
+
static getFriendName() {
|
|
31
|
+
return pjson.shortName;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* return the version of the package
|
|
35
|
+
* @returns version example 8.0.0
|
|
36
|
+
*/
|
|
37
|
+
static getPackageVersion() {
|
|
38
|
+
return pjson.version;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Get author name
|
|
42
|
+
*/
|
|
43
|
+
static getAuthorName() {
|
|
44
|
+
return 'Piero Proietti piero.proietti@gmail.com';
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Controlla se è un pacchetto deb
|
|
48
|
+
* /usr/lib/penguins-eggs/bin/node
|
|
49
|
+
*/
|
|
50
|
+
static isPackage() {
|
|
51
|
+
let ret = false;
|
|
52
|
+
//if (process.execPath !== '/usr/bin/node') {
|
|
53
|
+
if (process.execPath === '/usr/lib/penguins-eggs/bin/node') {
|
|
54
|
+
ret = true;
|
|
55
|
+
}
|
|
56
|
+
return ret;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Controlla se è un pacchetto sorgente
|
|
60
|
+
*/
|
|
61
|
+
static isSources() {
|
|
62
|
+
let ret = false;
|
|
63
|
+
if (__dirname.substring(0, 6) === '/home/') {
|
|
64
|
+
ret = true;
|
|
65
|
+
}
|
|
66
|
+
return ret;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Controlla se è un pacchetto npm
|
|
70
|
+
*/
|
|
71
|
+
static isNpmPackage() {
|
|
72
|
+
return !(this.isPackage() || this.isSources());
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
*
|
|
76
|
+
*/
|
|
77
|
+
static rootPenguin() {
|
|
78
|
+
return path.resolve(__dirname, '../../../');
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
*
|
|
82
|
+
* @returns wardrobe
|
|
83
|
+
*/
|
|
84
|
+
static async wardrobe() {
|
|
85
|
+
let wardrobe = `${os.homedir()}/.wardrobe`;
|
|
86
|
+
if (System.isRoot()) {
|
|
87
|
+
wardrobe = `/home/${await PackageInfo.getPrimaryUser()}/.wardrobe`;
|
|
88
|
+
}
|
|
89
|
+
return wardrobe;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Return the primary user's name
|
|
93
|
+
*/
|
|
94
|
+
static async getPrimaryUser() {
|
|
95
|
+
const { execSync } = require('child_process');
|
|
96
|
+
let primaryUser = '';
|
|
97
|
+
try {
|
|
98
|
+
// Attempt to get the user from logname
|
|
99
|
+
primaryUser = execSync('/usr/bin/logname 2>/dev/null', { encoding: 'utf-8' }).trim();
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
// console.log("logname failed, so we continue with other methods")
|
|
103
|
+
}
|
|
104
|
+
if (primaryUser === 'root') {
|
|
105
|
+
primaryUser = '';
|
|
106
|
+
}
|
|
107
|
+
if (primaryUser === '') {
|
|
108
|
+
try {
|
|
109
|
+
// Check if doas is installed and get the DOAS_USER
|
|
110
|
+
execSync('command -v doas', { stdio: 'ignore' });
|
|
111
|
+
primaryUser = execSync('echo $DOAS_USER', { encoding: 'utf-8' }).trim();
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
// console.log("doas is not installed or DOAS_USER is not set, continue with the next method")
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
if (primaryUser === '') {
|
|
118
|
+
try {
|
|
119
|
+
// Check for the SUDO_USER
|
|
120
|
+
primaryUser = execSync('echo $SUDO_USER', { encoding: 'utf-8' }).trim();
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
// console.log("SUDO_USER is not set, continue with the next method")
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (primaryUser === '') {
|
|
127
|
+
// console.log("Fallback to the USER environment variable")
|
|
128
|
+
primaryUser = process.env.USER || '';
|
|
129
|
+
}
|
|
130
|
+
if (primaryUser === '') {
|
|
131
|
+
primaryUser = 'dummy';
|
|
132
|
+
// console.error('Cannot determine the primary user.');
|
|
133
|
+
// process.exit(1);
|
|
134
|
+
}
|
|
135
|
+
return primaryUser;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/snapshot.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* Snapshot management utilities - ISO, prefixes, volid
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
export default class Snapshot {
|
|
10
|
+
/**
|
|
11
|
+
* Restituisce il prefisso della iso
|
|
12
|
+
* @param distroId
|
|
13
|
+
* @param codenameId
|
|
14
|
+
*/
|
|
15
|
+
static snapshotPrefix(distroId: string, codenameId: string): string;
|
|
16
|
+
/**
|
|
17
|
+
* Count the eggs present in the nest
|
|
18
|
+
* @returns {number} Numero degli snapshot presenti
|
|
19
|
+
*/
|
|
20
|
+
static getSnapshotCount(snapshot_dir?: string): number;
|
|
21
|
+
/**
|
|
22
|
+
* Get the syze of the snapshot
|
|
23
|
+
* @returns {string} grandezza dello snapshot in Byte
|
|
24
|
+
*/
|
|
25
|
+
static getSnapshotSize(snapshot_dir?: string): number;
|
|
26
|
+
/**
|
|
27
|
+
*
|
|
28
|
+
* @param prefix
|
|
29
|
+
* @param backup
|
|
30
|
+
* @returns
|
|
31
|
+
*/
|
|
32
|
+
static getPrefix(prefix: string, backup?: boolean): string;
|
|
33
|
+
/**
|
|
34
|
+
*
|
|
35
|
+
* @param volid
|
|
36
|
+
*/
|
|
37
|
+
static getVolid(volid?: string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Return postfix
|
|
40
|
+
* @param basename
|
|
41
|
+
* @returns eggName
|
|
42
|
+
*/
|
|
43
|
+
static getPostfix(): string;
|
|
44
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/snapshot.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* Snapshot management utilities - ISO, prefixes, volid
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
import fs from 'fs';
|
|
10
|
+
import shx from 'shelljs';
|
|
11
|
+
import Filesystem from './filesystem.js';
|
|
12
|
+
import Formatters from './formatters.js';
|
|
13
|
+
export default class Snapshot {
|
|
14
|
+
/**
|
|
15
|
+
* Restituisce il prefisso della iso
|
|
16
|
+
* @param distroId
|
|
17
|
+
* @param codenameId
|
|
18
|
+
*/
|
|
19
|
+
static snapshotPrefix(distroId, codenameId) {
|
|
20
|
+
let result = `egg-of_${distroId.toLowerCase()}-`;
|
|
21
|
+
if (codenameId === 'rolling' || codenameId === '') {
|
|
22
|
+
const releaseId = Filesystem.getOsRelease().VERSION_ID.trim();
|
|
23
|
+
if (releaseId !== '') {
|
|
24
|
+
result += `${releaseId}-`;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
result += `${codenameId.toLowerCase()}-`;
|
|
29
|
+
}
|
|
30
|
+
// result = result.replace(`/`, '-')
|
|
31
|
+
return result;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Count the eggs present in the nest
|
|
35
|
+
* @returns {number} Numero degli snapshot presenti
|
|
36
|
+
*/
|
|
37
|
+
static getSnapshotCount(snapshot_dir = '/') {
|
|
38
|
+
if (fs.existsSync(snapshot_dir)) {
|
|
39
|
+
const files = fs.readdirSync(snapshot_dir);
|
|
40
|
+
let nIsos = 0;
|
|
41
|
+
for (const f of files) {
|
|
42
|
+
if (f.endsWith('.iso')) {
|
|
43
|
+
nIsos++;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return nIsos;
|
|
47
|
+
}
|
|
48
|
+
return 0;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get the syze of the snapshot
|
|
52
|
+
* @returns {string} grandezza dello snapshot in Byte
|
|
53
|
+
*/
|
|
54
|
+
static getSnapshotSize(snapshot_dir = '/') {
|
|
55
|
+
let fileSizeInBytes = 0;
|
|
56
|
+
const size = shx.exec(`/usr/bin/find ${snapshot_dir} -maxdepth 1 -type f -name '*.iso' -exec du -sc {} + | tail -1 | awk '{print $1}'`, { silent: true }).stdout.trim();
|
|
57
|
+
if (size === '') {
|
|
58
|
+
fileSizeInBytes = 0;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
fileSizeInBytes = Number(size);
|
|
62
|
+
}
|
|
63
|
+
return fileSizeInBytes;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
*
|
|
67
|
+
* @param prefix
|
|
68
|
+
* @param backup
|
|
69
|
+
* @returns
|
|
70
|
+
*/
|
|
71
|
+
static getPrefix(prefix, backup = false) {
|
|
72
|
+
if (backup) {
|
|
73
|
+
if (prefix.substring(0, 7) === 'egg-of_') {
|
|
74
|
+
prefix = 'egg-bk_' + prefix.substring(7);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
prefix = 'egg-bk_' + prefix;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return prefix;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
*
|
|
84
|
+
* @param volid
|
|
85
|
+
*/
|
|
86
|
+
static getVolid(volid = 'unknown') {
|
|
87
|
+
// // 28 + 4 .iso = 32 lunghezza max di volid
|
|
88
|
+
if (volid.length >= 32) {
|
|
89
|
+
volid = volid.substring(0, 32);
|
|
90
|
+
}
|
|
91
|
+
return volid;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Return postfix
|
|
95
|
+
* @param basename
|
|
96
|
+
* @returns eggName
|
|
97
|
+
*/
|
|
98
|
+
static getPostfix() {
|
|
99
|
+
let postfix = '_' + Formatters.formatDate(new Date()) + '.iso';
|
|
100
|
+
return postfix;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/system.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* System detection utilities - init systems, containers, live/installed detection
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
export default class System {
|
|
10
|
+
/**
|
|
11
|
+
* Detect if running inside a container (Docker or LXC)
|
|
12
|
+
*/
|
|
13
|
+
static isContainer(): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Check if the system uses Systemd
|
|
16
|
+
*/
|
|
17
|
+
static isSystemd(): boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Check if the system uses SysVinit
|
|
20
|
+
*/
|
|
21
|
+
static isSysvinit(): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Check if the system uses OpenRC
|
|
24
|
+
*/
|
|
25
|
+
static isOpenRc(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Return true if live system
|
|
28
|
+
* @returns {boolean} isLive
|
|
29
|
+
*/
|
|
30
|
+
static isLive(): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Ritorna vero se path è un mountpoint
|
|
33
|
+
* @param path
|
|
34
|
+
*/
|
|
35
|
+
static isMountpoint(path?: string): boolean;
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param device
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
static isBlockDevice(device?: string): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* return true if eggs run as root
|
|
44
|
+
* @returns isRoot
|
|
45
|
+
*/
|
|
46
|
+
static isRoot(command?: string): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Occore vedere un modo per creare machine-id dove non esiste
|
|
49
|
+
*/
|
|
50
|
+
static machineId(): string;
|
|
51
|
+
/**
|
|
52
|
+
* Return the Debian version
|
|
53
|
+
* @returns {number} Versione di Debian
|
|
54
|
+
*/
|
|
55
|
+
static getDebianVersion(): number;
|
|
56
|
+
/**
|
|
57
|
+
* Extimate the linuxfs dimension
|
|
58
|
+
* probably is better to rename it as
|
|
59
|
+
* getLiveSpaceRootNeed
|
|
60
|
+
* @returns {number} Byte
|
|
61
|
+
*/
|
|
62
|
+
static getLiveRootSpace(type?: string): number;
|
|
63
|
+
}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/system.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* System detection utilities - init systems, containers, live/installed detection
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
import fs from 'fs';
|
|
10
|
+
import shx from 'shelljs';
|
|
11
|
+
import { execSync } from 'child_process';
|
|
12
|
+
import Distro from '../distro.js';
|
|
13
|
+
export default class System {
|
|
14
|
+
/**
|
|
15
|
+
* Detect if running inside a container (Docker or LXC)
|
|
16
|
+
*/
|
|
17
|
+
static isContainer() {
|
|
18
|
+
let isContainer = false;
|
|
19
|
+
let pathToCheck = '/ci/README.md';
|
|
20
|
+
if (fs.existsSync(pathToCheck)) {
|
|
21
|
+
isContainer = true;
|
|
22
|
+
}
|
|
23
|
+
return isContainer;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Check if the system uses Systemd
|
|
27
|
+
*/
|
|
28
|
+
static isSystemd() {
|
|
29
|
+
let isSystemd = false;
|
|
30
|
+
if (!this.isContainer()) {
|
|
31
|
+
isSystemd = fs.readFileSync("/proc/1/comm").includes('systemd');
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
isSystemd = true;
|
|
35
|
+
let distro = new Distro();
|
|
36
|
+
if (distro.distroId === "Alpine" || distro.distroId === "Devuan") {
|
|
37
|
+
isSystemd = false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return isSystemd;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Check if the system uses SysVinit
|
|
44
|
+
*/
|
|
45
|
+
static isSysvinit() {
|
|
46
|
+
let isSysvinit = false;
|
|
47
|
+
if (!this.isContainer()) {
|
|
48
|
+
isSysvinit = fs.readFileSync("/proc/1/comm").includes('init');
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
let distro = new Distro();
|
|
52
|
+
if (distro.distroId === "Alpine" || distro.distroId === "Devuan") {
|
|
53
|
+
isSysvinit = true;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return isSysvinit;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Check if the system uses OpenRC
|
|
60
|
+
*/
|
|
61
|
+
static isOpenRc() {
|
|
62
|
+
let isOpenRc = false;
|
|
63
|
+
if (!this.isContainer()) {
|
|
64
|
+
try {
|
|
65
|
+
execSync('command -v openrc');
|
|
66
|
+
isOpenRc = true;
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
isOpenRc = false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return isOpenRc;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Return true if live system
|
|
76
|
+
* @returns {boolean} isLive
|
|
77
|
+
*/
|
|
78
|
+
static isLive() {
|
|
79
|
+
let retVal = false;
|
|
80
|
+
const paths = [
|
|
81
|
+
'/lib/live/mount', // debian-live
|
|
82
|
+
'/run/live/rootfs/filesystem.squashfs', // debian trixie
|
|
83
|
+
'/lib/live/mount/rootfs/filesystem.squashfs', // ubuntu bionic
|
|
84
|
+
'/live/aufs', // mx-linux
|
|
85
|
+
'/media/root-rw', // AlpineLinux
|
|
86
|
+
'/run/archiso/airootfs', // Arch
|
|
87
|
+
'/run/miso/sfs/livefs', // Manjarolinux
|
|
88
|
+
'/run/rootfsbase' // Fedora
|
|
89
|
+
];
|
|
90
|
+
for (let i = 0; i < paths.length; i++) {
|
|
91
|
+
if (System.isMountpoint(paths[i])) {
|
|
92
|
+
retVal = true;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return retVal;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Ritorna vero se path è un mountpoint
|
|
99
|
+
* @param path
|
|
100
|
+
*/
|
|
101
|
+
static isMountpoint(path = '') {
|
|
102
|
+
const cmd = `mountpoint -q ${path}`;
|
|
103
|
+
// return 0 if the directory is a mountpoint, non-zero if not.
|
|
104
|
+
const result = shx.exec(cmd, { silent: true }).code;
|
|
105
|
+
return result === 0;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
*
|
|
109
|
+
* @param device
|
|
110
|
+
* @returns
|
|
111
|
+
*/
|
|
112
|
+
static isBlockDevice(device = '') {
|
|
113
|
+
const cmd = `lsblk -d -o name | grep ${device}`;
|
|
114
|
+
const result = shx.exec(cmd, { silent: true }).code;
|
|
115
|
+
return result === 0;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* return true if eggs run as root
|
|
119
|
+
* @returns isRoot
|
|
120
|
+
*/
|
|
121
|
+
static isRoot(command = '') {
|
|
122
|
+
if (process.getuid && process.getuid() === 0) {
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Occore vedere un modo per creare machine-id dove non esiste
|
|
129
|
+
*/
|
|
130
|
+
static machineId() {
|
|
131
|
+
let result = '';
|
|
132
|
+
if (fs.existsSync('/etc/machine-id')) {
|
|
133
|
+
result = fs.readFileSync('/etc/machine-id', 'utf-8').trim();
|
|
134
|
+
}
|
|
135
|
+
else if (fs.existsSync('/var/lib/dbus/machine-id')) {
|
|
136
|
+
result = fs.readFileSync('/var/lib/dbus/machine-id', 'utf-8').trim();
|
|
137
|
+
}
|
|
138
|
+
return result;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Return the Debian version
|
|
142
|
+
* @returns {number} Versione di Debian
|
|
143
|
+
*/
|
|
144
|
+
static getDebianVersion() {
|
|
145
|
+
const cmd = "cat /etc/debian_version | /usr/bin/cut -f1 -d'.'";
|
|
146
|
+
const version = Number(shx.exec(cmd, { silent: true }).stdout);
|
|
147
|
+
return version;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Extimate the linuxfs dimension
|
|
151
|
+
* probably is better to rename it as
|
|
152
|
+
* getLiveSpaceRootNeed
|
|
153
|
+
* @returns {number} Byte
|
|
154
|
+
*/
|
|
155
|
+
static getLiveRootSpace(type = 'debian-live') {
|
|
156
|
+
let squashFs = '/run/live/medium/live/filesystem.squashfs';
|
|
157
|
+
if (type === 'mx') {
|
|
158
|
+
squashFs = '/live/boot-dev/antiX/linuxfs';
|
|
159
|
+
}
|
|
160
|
+
// Ottengo la dimensione del file compresso
|
|
161
|
+
const compressedFs = fs.statSync(squashFs).size;
|
|
162
|
+
// get compression factor by reading the linuxfs squasfs file, if available
|
|
163
|
+
const compressedFs_compression_type = shx.exec(`dd if=${compressedFs} bs=1 skip=20 count=2 status=none 2>/dev/null| /usr/bin/od -An -tdI`);
|
|
164
|
+
let compression_factor = 0;
|
|
165
|
+
if (compressedFs_compression_type === '1') {
|
|
166
|
+
compression_factor = 37; // gzip
|
|
167
|
+
}
|
|
168
|
+
else if (compressedFs_compression_type === '2') {
|
|
169
|
+
compression_factor = 52; // lzo, not used by antiX
|
|
170
|
+
}
|
|
171
|
+
else if (compressedFs_compression_type === '3') {
|
|
172
|
+
compression_factor = 52; // lzma, not used by antiX
|
|
173
|
+
}
|
|
174
|
+
else if (compressedFs_compression_type === '4') {
|
|
175
|
+
compression_factor = 31; // xz
|
|
176
|
+
}
|
|
177
|
+
else if (compressedFs_compression_type === '5') {
|
|
178
|
+
compression_factor = 52; // lz4
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
compression_factor = 30; // anything else or linuxfs not reachable (toram), should be pretty conservative
|
|
182
|
+
}
|
|
183
|
+
let rootfs_file_size = 0;
|
|
184
|
+
const linuxfs_file_size = (Number(shx.exec('df /live/linux --output=used --total | /usr/bin/tail -n1').stdout.trim()) * 1024 * 100) / compression_factor;
|
|
185
|
+
if (fs.existsSync('/live/persist-root')) {
|
|
186
|
+
rootfs_file_size = Number(shx.exec('df /live/persist-root --output=used --total | /usr/bin/tail -n1').stdout.trim()) * 1024;
|
|
187
|
+
}
|
|
188
|
+
let rootSpaceNeeded;
|
|
189
|
+
if (type === 'mx') {
|
|
190
|
+
/**
|
|
191
|
+
* add rootfs file size to the calculated linuxfs file size. Probaby conservative, as rootfs will likely have some overlap with linuxfs
|
|
192
|
+
*/
|
|
193
|
+
rootSpaceNeeded = linuxfs_file_size + rootfs_file_size;
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
rootSpaceNeeded = linuxfs_file_size;
|
|
197
|
+
}
|
|
198
|
+
return rootSpaceNeeded / 1073741824.0; // Converte in GB
|
|
199
|
+
}
|
|
200
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/user-interaction.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* User interaction utilities - prompts, confirmations, user input
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
export default class UserInteraction {
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
* @param msg
|
|
13
|
+
*/
|
|
14
|
+
static customConfirm(msg?: string): Promise<boolean>;
|
|
15
|
+
/**
|
|
16
|
+
*
|
|
17
|
+
* @param msg
|
|
18
|
+
*/
|
|
19
|
+
static customConfirmCompanion(msg?: string): Promise<any>;
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
* @param msg
|
|
23
|
+
*/
|
|
24
|
+
static customConfirmAbort(msg?: string): Promise<any>;
|
|
25
|
+
/**
|
|
26
|
+
*
|
|
27
|
+
*/
|
|
28
|
+
static pressKeyToExit(warming?: string, procContinue?: boolean): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
*
|
|
31
|
+
* @param command
|
|
32
|
+
*/
|
|
33
|
+
static useRoot(command?: string): void;
|
|
34
|
+
/**
|
|
35
|
+
*
|
|
36
|
+
* @param verbose
|
|
37
|
+
*/
|
|
38
|
+
static setEcho(verbose?: boolean): object;
|
|
39
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ./src/classes/utils.d/user-interaction.ts
|
|
3
|
+
* penguins-eggs v.10.0.0 / ecmascript 2020
|
|
4
|
+
* User interaction utilities - prompts, confirmations, user input
|
|
5
|
+
* author: Piero Proietti
|
|
6
|
+
* email: piero.proietti@gmail.com
|
|
7
|
+
* license: MIT
|
|
8
|
+
*/
|
|
9
|
+
import inquirer from 'inquirer';
|
|
10
|
+
import { spawnSync } from 'child_process';
|
|
11
|
+
import ConsoleOutput from './console-output.js';
|
|
12
|
+
// pjson
|
|
13
|
+
import { createRequire } from 'module';
|
|
14
|
+
const require = createRequire(import.meta.url);
|
|
15
|
+
const pjson = require('../../../package.json');
|
|
16
|
+
export default class UserInteraction {
|
|
17
|
+
/**
|
|
18
|
+
*
|
|
19
|
+
* @param msg
|
|
20
|
+
*/
|
|
21
|
+
static async customConfirm(msg = 'Select yes to continue... ') {
|
|
22
|
+
const varResult = await UserInteraction.customConfirmCompanion(msg);
|
|
23
|
+
const result = JSON.parse(varResult);
|
|
24
|
+
if (result.confirm === 'Yes') {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
* @param msg
|
|
34
|
+
*/
|
|
35
|
+
static async customConfirmCompanion(msg = 'Select yes to continue... ') {
|
|
36
|
+
return new Promise(function (resolve) {
|
|
37
|
+
const questions = [
|
|
38
|
+
{
|
|
39
|
+
type: 'list',
|
|
40
|
+
name: 'confirm',
|
|
41
|
+
message: msg,
|
|
42
|
+
choices: ['No', 'Yes'],
|
|
43
|
+
default: 'No'
|
|
44
|
+
}
|
|
45
|
+
];
|
|
46
|
+
inquirer.prompt(questions).then(function (options) {
|
|
47
|
+
resolve(JSON.stringify(options));
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
*
|
|
53
|
+
* @param msg
|
|
54
|
+
*/
|
|
55
|
+
static async customConfirmAbort(msg = 'Confirm') {
|
|
56
|
+
return new Promise(function (resolve) {
|
|
57
|
+
const questions = [
|
|
58
|
+
{
|
|
59
|
+
type: 'list',
|
|
60
|
+
name: 'confirm',
|
|
61
|
+
message: msg,
|
|
62
|
+
choices: ['No', 'Yes', 'Abort'],
|
|
63
|
+
default: 'Yes'
|
|
64
|
+
}
|
|
65
|
+
];
|
|
66
|
+
inquirer.prompt(questions).then(function (options) {
|
|
67
|
+
resolve(JSON.stringify(options));
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
*
|
|
73
|
+
*/
|
|
74
|
+
static async pressKeyToExit(warming = 'Process will end', procContinue = true) {
|
|
75
|
+
ConsoleOutput.warning(warming);
|
|
76
|
+
let msg = 'Press a key to exit...';
|
|
77
|
+
if (procContinue) {
|
|
78
|
+
msg = 'Press a key to continue...';
|
|
79
|
+
}
|
|
80
|
+
console.log(msg);
|
|
81
|
+
const pressKeyToExit = spawnSync('read _ ', { shell: true, stdio: [0, 1, 2] });
|
|
82
|
+
if (!procContinue) {
|
|
83
|
+
process.exit(0);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
*
|
|
88
|
+
* @param command
|
|
89
|
+
*/
|
|
90
|
+
static useRoot(command = '') {
|
|
91
|
+
ConsoleOutput.titles(pjson.shortName + ' ' + command + ` need to run with root privileges. Please, prefix it with sudo`);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
*
|
|
95
|
+
* @param verbose
|
|
96
|
+
*/
|
|
97
|
+
static setEcho(verbose = false) {
|
|
98
|
+
let echo = { echo: false, ignore: true };
|
|
99
|
+
if (verbose) {
|
|
100
|
+
echo = { echo: true, ignore: false };
|
|
101
|
+
}
|
|
102
|
+
return echo;
|
|
103
|
+
}
|
|
104
|
+
}
|