penguins-eggs 10.0.57 → 10.1.0
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 +100 -1
- package/README.md +84 -44
- package/addons/eggs/theme/calamares/modules/{_users.yml → users.yml} +3 -3
- package/addons/eggs/theme/livecd/grub.main.full.cfg +1 -7
- package/addons/eggs/theme/livecd/grub.main.simple.cfg +1 -1
- package/assets/config.cfg +30 -0
- package/conf/derivatives.yaml +1 -3
- package/conf/derivatives_fedora.yaml +6 -0
- package/conf/distros/alpine/calamares/modules/users.yml +3 -3
- package/conf/distros/bionic/calamares/calamares-modules/grubcfg/grubcfg.yml +1 -1
- package/conf/distros/bionic/calamares/modules/users.yml +3 -3
- package/conf/distros/buster/calamares/calamares-modules/cleanup/cleanup.sh +8 -1
- package/conf/distros/buster/calamares/modules/partition.yml +159 -23
- package/conf/distros/buster/calamares/modules/removeuser.yml +1 -1
- package/conf/distros/buster/calamares/modules/users.yml +3 -3
- package/conf/distros/fedora/calamares/modules/users.yml +3 -3
- package/conf/distros/noble/calamares/modules/focal-jammy/users.yml +3 -3
- package/conf/distros/opensuse/calamares/modules/users.yml +3 -3
- package/conf/distros/rolling/calamares/modules/users.yml +3 -3
- package/conf/eggs.yaml +1 -1
- package/conf/exclude.list.d/master.list +1 -0
- package/conf/krill.yaml +8 -0
- package/conf/love.yaml +4 -4
- package/package.json +33 -29
- package/perrisbrewery/scripts/postinst +98 -0
- package/perrisbrewery/scripts/postrm +82 -0
- package/perrisbrewery/scripts/preinst +40 -0
- package/perrisbrewery/scripts/prerm +47 -0
- package/perrisbrewery/template/control.template +17 -0
- package/perrisbrewery/template/dependencies-bionic.yaml +33 -0
- package/perrisbrewery/template/dependencies.yaml +37 -0
- package/perrisbrewery/template/man.template.md +110 -0
- package/pods/README.md +14 -0
- package/pods/almalinux.sh +10 -0
- package/pods/archlinux.sh +10 -0
- package/pods/ci/README.md +5 -0
- package/pods/ci/kernel-overlay-install.sh +114 -0
- package/pods/ci/minimal/almalinux-container2host.sh +165 -0
- package/pods/ci/minimal/archlinux-container2host.sh +125 -0
- package/pods/ci/minimal/debian-container2host.sh +173 -0
- package/pods/ci/minimal/fedora-container2host.sh +170 -0
- package/pods/ci/minimal/manjaro-container2host.sh +123 -0
- package/pods/ci/minimal/opensuse-container2host.sh +143 -0
- package/pods/ci/penguins-eggs-execute.sh +22 -0
- package/pods/ci/penguins-eggs-install.sh +115 -0
- package/pods/ci/run +34 -0
- package/pods/ci/run-on-almalinux.sh +50 -0
- package/pods/ci/run-on-archlinux.sh +64 -0
- package/pods/ci/run-on-debian.sh +51 -0
- package/pods/ci/run-on-devuan.sh +48 -0
- package/pods/ci/run-on-fedora.sh +51 -0
- package/pods/ci/run-on-manjaro.sh +61 -0
- package/pods/ci/run-on-opensuse.sh +58 -0
- package/pods/ci/run-on-rockylinux.sh +51 -0
- package/pods/ci/run-on-ubuntu.sh +52 -0
- package/pods/debian.sh +23 -0
- package/pods/devuan.sh +26 -0
- package/pods/fedora.sh +12 -0
- package/pods/lmde.sh +22 -0
- package/pods/manjaro.sh +10 -0
- package/pods/opensuse.sh +12 -0
- package/pods/podman.command.sh +85 -0
- package/pods/rocky.sh +12 -0
- package/pods/run-build-packages-debs.sh +45 -0
- package/pods/run-create-debs.sh +23 -0
- package/pods/ubuntu.sh +24 -0
- package/scripts/_eggs +23 -6
- package/scripts/eggs.bash +8 -6
- package/dist/classes/bleach.d.ts +0 -32
- package/dist/classes/bleach.js +0 -135
- package/dist/classes/cfs.d.ts +0 -17
- package/dist/classes/cfs.js +0 -39
- package/dist/classes/cli-autologin.d.ts +0 -52
- package/dist/classes/cli-autologin.js +0 -247
- package/dist/classes/compressors.d.ts +0 -54
- package/dist/classes/compressors.js +0 -109
- package/dist/classes/daddy.d.ts +0 -26
- package/dist/classes/daddy.js +0 -167
- package/dist/classes/distro.d.ts +0 -32
- package/dist/classes/distro.js +0 -341
- package/dist/classes/diversions.d.ts +0 -52
- package/dist/classes/diversions.js +0 -126
- package/dist/classes/incubation/branding.d.ts +0 -17
- package/dist/classes/incubation/branding.js +0 -85
- package/dist/classes/incubation/fisherman-helper/displaymanager.d.ts +0 -11
- package/dist/classes/incubation/fisherman-helper/displaymanager.js +0 -40
- package/dist/classes/incubation/fisherman-helper/packages.d.ts +0 -20
- package/dist/classes/incubation/fisherman-helper/packages.js +0 -72
- package/dist/classes/incubation/fisherman-helper/settings.d.ts +0 -15
- package/dist/classes/incubation/fisherman-helper/settings.js +0 -83
- package/dist/classes/incubation/fisherman.d.ts +0 -70
- package/dist/classes/incubation/fisherman.js +0 -263
- package/dist/classes/incubation/incubator.d/alpine.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/alpine.js +0 -78
- package/dist/classes/incubation/incubator.d/bionic.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/bionic.js +0 -83
- package/dist/classes/incubation/incubator.d/buster.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/buster.js +0 -85
- package/dist/classes/incubation/incubator.d/jessie.d.ts +0 -31
- package/dist/classes/incubation/incubator.d/jessie.js +0 -44
- package/dist/classes/incubation/incubator.d/noble.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/noble.js +0 -85
- package/dist/classes/incubation/incubator.d/openmamba.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/openmamba.js +0 -81
- package/dist/classes/incubation/incubator.d/opensuse.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/opensuse.js +0 -81
- package/dist/classes/incubation/incubator.d/rolling.d.ts +0 -32
- package/dist/classes/incubation/incubator.d/rolling.js +0 -80
- package/dist/classes/incubation/incubator.d.ts +0 -44
- package/dist/classes/incubation/incubator.js +0 -382
- package/dist/classes/incubation/installer.d.ts +0 -13
- package/dist/classes/incubation/installer.js +0 -52
- package/dist/classes/keyboards.d.ts +0 -50
- package/dist/classes/keyboards.js +0 -287
- package/dist/classes/locales.d.ts +0 -21
- package/dist/classes/locales.js +0 -77
- package/dist/classes/network.d.ts +0 -37
- package/dist/classes/network.js +0 -98
- package/dist/classes/ovary.d.ts +0 -198
- package/dist/classes/ovary.js +0 -1850
- package/dist/classes/pacman.d/aldos.d.ts +0 -52
- package/dist/classes/pacman.d/aldos.js +0 -100
- package/dist/classes/pacman.d/alpine.d.ts +0 -56
- package/dist/classes/pacman.d/alpine.js +0 -162
- package/dist/classes/pacman.d/archlinux.d.ts +0 -62
- package/dist/classes/pacman.d/archlinux.js +0 -139
- package/dist/classes/pacman.d/debian.d.ts +0 -65
- package/dist/classes/pacman.d/debian.js +0 -143
- package/dist/classes/pacman.d/fedora.d.ts +0 -53
- package/dist/classes/pacman.d/fedora.js +0 -101
- package/dist/classes/pacman.d/openmamba.d.ts +0 -52
- package/dist/classes/pacman.d/openmamba.js +0 -100
- package/dist/classes/pacman.d/opensuse.d.ts +0 -53
- package/dist/classes/pacman.d/opensuse.js +0 -102
- package/dist/classes/pacman.d/voidlinux.d.ts +0 -52
- package/dist/classes/pacman.d/voidlinux.js +0 -90
- package/dist/classes/pacman.d.ts +0 -139
- package/dist/classes/pacman.js +0 -775
- package/dist/classes/pve-live.d.ts +0 -17
- package/dist/classes/pve-live.js +0 -52
- package/dist/classes/pxe.d.ts +0 -74
- package/dist/classes/pxe.js +0 -410
- package/dist/classes/settings.d.ts +0 -53
- package/dist/classes/settings.js +0 -185
- package/dist/classes/sources_list.d.ts +0 -28
- package/dist/classes/sources_list.js +0 -89
- package/dist/classes/systemctl.d.ts +0 -47
- package/dist/classes/systemctl.js +0 -86
- package/dist/classes/tailor.d.ts +0 -50
- package/dist/classes/tailor.js +0 -526
- package/dist/classes/tools.d.ts +0 -26
- package/dist/classes/tools.js +0 -50
- package/dist/classes/users.d.ts +0 -28
- package/dist/classes/users.js +0 -143
- package/dist/classes/utils.d.ts +0 -326
- package/dist/classes/utils.js +0 -1025
- package/dist/classes/xdg.d.ts +0 -45
- package/dist/classes/xdg.js +0 -337
- package/dist/classes/yolk.d.ts +0 -33
- package/dist/classes/yolk.js +0 -114
- package/dist/commands/adapt.d.ts +0 -17
- package/dist/commands/adapt.js +0 -33
- package/dist/commands/analyze.d.ts +0 -26
- package/dist/commands/analyze.js +0 -95
- package/dist/commands/calamares.d.ts +0 -29
- package/dist/commands/calamares.js +0 -112
- package/dist/commands/config.d.ts +0 -35
- package/dist/commands/config.js +0 -120
- package/dist/commands/cuckoo.d.ts +0 -16
- package/dist/commands/cuckoo.js +0 -62
- package/dist/commands/dad.d.ts +0 -20
- package/dist/commands/dad.js +0 -46
- package/dist/commands/export/iso.d.ts +0 -19
- package/dist/commands/export/iso.js +0 -55
- package/dist/commands/export/pkg.d.ts +0 -29
- package/dist/commands/export/pkg.js +0 -163
- package/dist/commands/export/tarballs.d.ts +0 -27
- package/dist/commands/export/tarballs.js +0 -84
- package/dist/commands/install.d.ts +0 -37
- package/dist/commands/install.js +0 -88
- package/dist/commands/kill.d.ts +0 -24
- package/dist/commands/kill.js +0 -50
- package/dist/commands/love.d.ts +0 -20
- package/dist/commands/love.js +0 -59
- package/dist/commands/mom.d.ts +0 -16
- package/dist/commands/mom.js +0 -30
- package/dist/commands/produce.d.ts +0 -34
- package/dist/commands/produce.js +0 -201
- package/dist/commands/status.d.ts +0 -23
- package/dist/commands/status.js +0 -31
- package/dist/commands/syncfrom.d.ts +0 -45
- package/dist/commands/syncfrom.js +0 -152
- package/dist/commands/syncto.d.ts +0 -40
- package/dist/commands/syncto.js +0 -175
- package/dist/commands/tools/clean.d.ts +0 -18
- package/dist/commands/tools/clean.js +0 -37
- package/dist/commands/tools/ppa.d.ts +0 -26
- package/dist/commands/tools/ppa.js +0 -138
- package/dist/commands/tools/skel.d.ts +0 -18
- package/dist/commands/tools/skel.js +0 -44
- package/dist/commands/tools/stat.d.ts +0 -31
- package/dist/commands/tools/stat.js +0 -70
- package/dist/commands/tools/yolk.d.ts +0 -24
- package/dist/commands/tools/yolk.js +0 -45
- package/dist/commands/update.d.ts +0 -51
- package/dist/commands/update.js +0 -219
- package/dist/commands/wardrobe/get.d.ts +0 -23
- package/dist/commands/wardrobe/get.js +0 -52
- package/dist/commands/wardrobe/list.d.ts +0 -24
- package/dist/commands/wardrobe/list.js +0 -125
- package/dist/commands/wardrobe/show.d.ts +0 -25
- package/dist/commands/wardrobe/show.js +0 -97
- package/dist/commands/wardrobe/wear.d.ts +0 -26
- package/dist/commands/wardrobe/wear.js +0 -84
- package/dist/components/finished.d.ts +0 -16
- package/dist/components/finished.js +0 -56
- package/dist/components/information.d.ts +0 -8
- package/dist/components/information.js +0 -156
- package/dist/components/install.d.ts +0 -15
- package/dist/components/install.js +0 -60
- package/dist/components/keyboard.d.ts +0 -16
- package/dist/components/keyboard.js +0 -54
- package/dist/components/location.d.ts +0 -16
- package/dist/components/location.js +0 -59
- package/dist/components/network.d.ts +0 -19
- package/dist/components/network.js +0 -65
- package/dist/components/partitions.d.ts +0 -16
- package/dist/components/partitions.js +0 -73
- package/dist/components/steps.d.ts +0 -13
- package/dist/components/steps.js +0 -148
- package/dist/components/summary.d.ts +0 -24
- package/dist/components/summary.js +0 -81
- package/dist/components/title.d.ts +0 -11
- package/dist/components/title.js +0 -35
- package/dist/components/users.d.ts +0 -24
- package/dist/components/users.js +0 -80
- package/dist/components/welcome.d.ts +0 -13
- package/dist/components/welcome.js +0 -63
- package/dist/index-old.d.ts +0 -8
- package/dist/index-old.js +0 -8
- package/dist/index.d.ts +0 -54
- package/dist/index.js +0 -147
- package/dist/interfaces/i-addons.d.ts +0 -12
- package/dist/interfaces/i-addons.js +0 -8
- package/dist/interfaces/i-analyze.d.ts +0 -17
- package/dist/interfaces/i-analyze.js +0 -17
- package/dist/interfaces/i-app.d.ts +0 -14
- package/dist/interfaces/i-app.js +0 -8
- package/dist/interfaces/i-branding.d.ts +0 -36
- package/dist/interfaces/i-branding.js +0 -8
- package/dist/interfaces/i-calamares-displaymanager.d.ts +0 -17
- package/dist/interfaces/i-calamares-displaymanager.js +0 -1
- package/dist/interfaces/i-calamares-finished.d.ts +0 -12
- package/dist/interfaces/i-calamares-finished.js +0 -1
- package/dist/interfaces/i-calamares-packages.d.ts +0 -28
- package/dist/interfaces/i-calamares-packages.js +0 -1
- package/dist/interfaces/i-calamares-partition.d.ts +0 -40
- package/dist/interfaces/i-calamares-partition.js +0 -1
- package/dist/interfaces/i-config-tools.d.ts +0 -15
- package/dist/interfaces/i-config-tools.js +0 -8
- package/dist/interfaces/i-devices.d.ts +0 -20
- package/dist/interfaces/i-devices.js +0 -8
- package/dist/interfaces/i-distro.d.ts +0 -23
- package/dist/interfaces/i-distro.js +0 -8
- package/dist/interfaces/i-drive-list.d.ts +0 -33
- package/dist/interfaces/i-drive-list.js +0 -8
- package/dist/interfaces/i-eggs-config.d.ts +0 -32
- package/dist/interfaces/i-eggs-config.js +0 -8
- package/dist/interfaces/i-excludes.d.ts +0 -14
- package/dist/interfaces/i-excludes.js +0 -8
- package/dist/interfaces/i-exec.d.ts +0 -11
- package/dist/interfaces/i-exec.js +0 -8
- package/dist/interfaces/i-initrd.d.ts +0 -13
- package/dist/interfaces/i-initrd.js +0 -8
- package/dist/interfaces/i-install.d.ts +0 -16
- package/dist/interfaces/i-install.js +0 -8
- package/dist/interfaces/i-installer.d.ts +0 -17
- package/dist/interfaces/i-installer.js +0 -8
- package/dist/interfaces/i-krill-config.d.ts +0 -33
- package/dist/interfaces/i-krill-config.js +0 -8
- package/dist/interfaces/i-krill.d.ts +0 -42
- package/dist/interfaces/i-krill.js +0 -8
- package/dist/interfaces/i-materia.d.ts +0 -36
- package/dist/interfaces/i-materia.js +0 -8
- package/dist/interfaces/i-net.d.ts +0 -16
- package/dist/interfaces/i-net.js +0 -8
- package/dist/interfaces/i-os-release.d.ts +0 -5
- package/dist/interfaces/i-os-release.js +0 -1
- package/dist/interfaces/i-packages.d.ts +0 -16
- package/dist/interfaces/i-packages.js +0 -8
- package/dist/interfaces/i-partitions.d.ts +0 -16
- package/dist/interfaces/i-partitions.js +0 -8
- package/dist/interfaces/i-pxe.d.ts +0 -45
- package/dist/interfaces/i-pxe.js +0 -1
- package/dist/interfaces/i-remix.d.ts +0 -21
- package/dist/interfaces/i-remix.js +0 -8
- package/dist/interfaces/i-settings.d.ts +0 -33
- package/dist/interfaces/i-settings.js +0 -8
- package/dist/interfaces/i-user.d.ts +0 -14
- package/dist/interfaces/i-user.js +0 -8
- package/dist/interfaces/i-workdir.d.ts +0 -14
- package/dist/interfaces/i-workdir.js +0 -8
- package/dist/interfaces/i-xkb-model.d.ts +0 -24
- package/dist/interfaces/i-xkb-model.js +0 -8
- package/dist/interfaces/index.d.ts +0 -25
- package/dist/interfaces/index.js +0 -8
- package/dist/krill/modules/add-user.d.ts +0 -20
- package/dist/krill/modules/add-user.js +0 -48
- package/dist/krill/modules/bootloader-config.d.ts +0 -14
- package/dist/krill/modules/bootloader-config.js +0 -165
- package/dist/krill/modules/bootloader.d.ts +0 -14
- package/dist/krill/modules/bootloader.js +0 -95
- package/dist/krill/modules/change-password.d.ts +0 -15
- package/dist/krill/modules/change-password.js +0 -18
- package/dist/krill/modules/del-live-user.d.ts +0 -14
- package/dist/krill/modules/del-live-user.js +0 -39
- package/dist/krill/modules/fstab.d.ts +0 -14
- package/dist/krill/modules/fstab.js +0 -128
- package/dist/krill/modules/grubcfg.d.ts +0 -17
- package/dist/krill/modules/grubcfg.js +0 -29
- package/dist/krill/modules/hostname.d.ts +0 -13
- package/dist/krill/modules/hostname.js +0 -50
- package/dist/krill/modules/initramfs-cfg.d.ts +0 -14
- package/dist/krill/modules/initramfs-cfg.js +0 -22
- package/dist/krill/modules/initramfs.d.ts +0 -13
- package/dist/krill/modules/initramfs.js +0 -54
- package/dist/krill/modules/locale-cfg.d.ts +0 -10
- package/dist/krill/modules/locale-cfg.js +0 -58
- package/dist/krill/modules/locale.d.ts +0 -13
- package/dist/krill/modules/locale.js +0 -91
- package/dist/krill/modules/m-keyboard.d.ts +0 -14
- package/dist/krill/modules/m-keyboard.js +0 -58
- package/dist/krill/modules/machine-id.d.ts +0 -15
- package/dist/krill/modules/machine-id.js +0 -33
- package/dist/krill/modules/mkfs.d.ts +0 -15
- package/dist/krill/modules/mkfs.js +0 -50
- package/dist/krill/modules/mount-fs.d.ts +0 -17
- package/dist/krill/modules/mount-fs.js +0 -62
- package/dist/krill/modules/mount-vfs.d.ts +0 -17
- package/dist/krill/modules/mount-vfs.js +0 -40
- package/dist/krill/modules/network-cfg.d.ts +0 -19
- package/dist/krill/modules/network-cfg.js +0 -64
- package/dist/krill/modules/packages.d.ts +0 -14
- package/dist/krill/modules/packages.js +0 -111
- package/dist/krill/modules/partition.d.ts +0 -20
- package/dist/krill/modules/partition.js +0 -345
- package/dist/krill/modules/remove-installer-link.d.ts +0 -13
- package/dist/krill/modules/remove-installer-link.js +0 -35
- package/dist/krill/modules/umount.d.ts +0 -14
- package/dist/krill/modules/umount.js +0 -28
- package/dist/krill/modules/unpackfs.d.ts +0 -13
- package/dist/krill/modules/unpackfs.js +0 -20
- package/dist/krill/prepare.d.ts +0 -78
- package/dist/krill/prepare.js +0 -626
- package/dist/krill/sequence.d.ts +0 -154
- package/dist/krill/sequence.js +0 -652
- package/dist/lib/get_address.d.ts +0 -8
- package/dist/lib/get_address.js +0 -23
- package/dist/lib/get_dns.d.ts +0 -8
- package/dist/lib/get_dns.js +0 -23
- package/dist/lib/get_domain.d.ts +0 -8
- package/dist/lib/get_domain.js +0 -23
- package/dist/lib/get_gateway.d.ts +0 -8
- package/dist/lib/get_gateway.js +0 -23
- package/dist/lib/get_hostname.d.ts +0 -8
- package/dist/lib/get_hostname.js +0 -23
- package/dist/lib/get_netmask.d.ts +0 -8
- package/dist/lib/get_netmask.js +0 -23
- package/dist/lib/get_password.d.ts +0 -8
- package/dist/lib/get_password.js +0 -36
- package/dist/lib/get_userfullname.d.ts +0 -8
- package/dist/lib/get_userfullname.js +0 -23
- package/dist/lib/get_username.d.ts +0 -8
- package/dist/lib/get_username.js +0 -23
- package/dist/lib/kill_me_softly.d.ts +0 -11
- package/dist/lib/kill_me_softly.js +0 -61
- package/dist/lib/select_address_type.d.ts +0 -8
- package/dist/lib/select_address_type.js +0 -24
- package/dist/lib/select_filesystem_type.d.ts +0 -8
- package/dist/lib/select_filesystem_type.js +0 -46
- package/dist/lib/select_installation_device.d.ts +0 -8
- package/dist/lib/select_installation_device.js +0 -34
- package/dist/lib/select_installation_mode.d.ts +0 -8
- package/dist/lib/select_installation_mode.js +0 -24
- package/dist/lib/select_interface.d.ts +0 -8
- package/dist/lib/select_interface.js +0 -24
- package/dist/lib/select_keyboard_layout.d.ts +0 -11
- package/dist/lib/select_keyboard_layout.js +0 -36
- package/dist/lib/select_keyboard_model.d.ts +0 -11
- package/dist/lib/select_keyboard_model.js +0 -34
- package/dist/lib/select_keyboard_option.d.ts +0 -11
- package/dist/lib/select_keyboard_option.js +0 -34
- package/dist/lib/select_keyboard_variant.d.ts +0 -11
- package/dist/lib/select_keyboard_variant.js +0 -35
- package/dist/lib/select_languages.d.ts +0 -8
- package/dist/lib/select_languages.js +0 -28
- package/dist/lib/select_regions.d.ts +0 -8
- package/dist/lib/select_regions.js +0 -24
- package/dist/lib/select_user_swap_choice.d.ts +0 -8
- package/dist/lib/select_user_swap_choice.js +0 -34
- package/dist/lib/select_zones.d.ts +0 -8
- package/dist/lib/select_zones.js +0 -518
- package/dist/lib/utils.d.ts +0 -34
- package/dist/lib/utils.js +0 -79
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
# postrm script for penguins-eggs_9.7.8-1
|
|
3
|
+
#
|
|
4
|
+
# see: dh_installdeb(1)
|
|
5
|
+
|
|
6
|
+
set -e
|
|
7
|
+
|
|
8
|
+
# summary of how this script can be called:
|
|
9
|
+
# * <postrm> `remove'
|
|
10
|
+
# * <postrm> `purge'
|
|
11
|
+
# * <old-postrm> `upgrade' <new-version>
|
|
12
|
+
# * <new-postrm> `failed-upgrade' <old-version>
|
|
13
|
+
# * <new-postrm> `abort-install'
|
|
14
|
+
# * <new-postrm> `abort-install' <old-version>
|
|
15
|
+
# * <new-postrm> `abort-upgrade' <old-version>
|
|
16
|
+
# * <disappearer's-postrm> `disappear' <overwriter>
|
|
17
|
+
# <overwriter-version>
|
|
18
|
+
# for details, see https://www.debian.org/doc/debian-policy/ or
|
|
19
|
+
# the debian-policy package
|
|
20
|
+
|
|
21
|
+
#echo ">>> $0 $1 $2 $3 $4<<<"
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
case "$1" in
|
|
25
|
+
purge)
|
|
26
|
+
# eggs configurazione
|
|
27
|
+
rm -rf /etc/penguins-eggs.d/
|
|
28
|
+
|
|
29
|
+
# calamares config
|
|
30
|
+
rm -rf /etc/calamares/
|
|
31
|
+
;;
|
|
32
|
+
|
|
33
|
+
purge|remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
|
34
|
+
# scripts
|
|
35
|
+
rm -f /usr/bin/adapt
|
|
36
|
+
rm -f /usr/bin/love
|
|
37
|
+
rm -f /usr/sbin/resy
|
|
38
|
+
|
|
39
|
+
# sanitize /usr/lib/penguins-eggs/
|
|
40
|
+
rm -rf /usr/lib/penguins-eggs/distros
|
|
41
|
+
rm -rf /usr/lib/penguins-eggs/eui
|
|
42
|
+
rm -rf /usr/lib/penguins-eggs/krill
|
|
43
|
+
|
|
44
|
+
# sanitize applications links
|
|
45
|
+
rm -f /usr/share/applications/penguins-adapt.desktop
|
|
46
|
+
rm -f /usr/share/applications/penguins-clinstaller.desktop
|
|
47
|
+
rm -f /usr/share/applications/penguins-eggs.desktop
|
|
48
|
+
|
|
49
|
+
# sanitize xdg links
|
|
50
|
+
rm -f /etc/xdg/autostart/penguins-links-add.desktop
|
|
51
|
+
rm -f /usr/bin/penguins-links-add.sh
|
|
52
|
+
|
|
53
|
+
# sanitize others
|
|
54
|
+
rm -f /usr/bin/pve-live.sh
|
|
55
|
+
rm -f /etc/systemd/system/pve-live.service
|
|
56
|
+
|
|
57
|
+
# sanitize bash completion
|
|
58
|
+
rm -f /usr/share/bash-completion/completions/eggs.bash
|
|
59
|
+
rm -f /usr/share/zsh/functions/Completion/Zsh/_eggs
|
|
60
|
+
|
|
61
|
+
# sanitize yolk
|
|
62
|
+
rm -rf /var/local/yolk
|
|
63
|
+
|
|
64
|
+
# sanitize penguins-eggs multiarch (krill-modules)
|
|
65
|
+
rm -rf /usr/lib/i386-linux-gnu/penguins-eggs/
|
|
66
|
+
rm -rf /usr/lib/x86_64-linux-gnu/penguins-eggs/
|
|
67
|
+
# armel and arm64 have all in /usr/lib/penguins-eggs/
|
|
68
|
+
# so don't need to be removed
|
|
69
|
+
;;
|
|
70
|
+
|
|
71
|
+
*)
|
|
72
|
+
echo "postrm called with unknown argument \`$1'" >&2
|
|
73
|
+
exit 1
|
|
74
|
+
;;
|
|
75
|
+
esac
|
|
76
|
+
|
|
77
|
+
# dh_installdeb will replace this with shell code automatically
|
|
78
|
+
# generated by other debhelper scripts.
|
|
79
|
+
|
|
80
|
+
#DEBHELPER#
|
|
81
|
+
|
|
82
|
+
exit 0
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
# preinst script for penguins-eggs_9.7.8-1
|
|
3
|
+
#
|
|
4
|
+
# see: dh_installdeb(1)
|
|
5
|
+
|
|
6
|
+
set -e
|
|
7
|
+
|
|
8
|
+
# summary of how this script can be called:
|
|
9
|
+
# * <new-preinst> `install'
|
|
10
|
+
# * <new-preinst> `install' <old-version>
|
|
11
|
+
# * <new-preinst> `upgrade' <old-version>
|
|
12
|
+
# * <old-preinst> `abort-upgrade' <new-version>
|
|
13
|
+
# for details, see https://www.debian.org/doc/debian-policy/ or
|
|
14
|
+
# the debian-policy package
|
|
15
|
+
|
|
16
|
+
# vedere come accontentare adriano/julian
|
|
17
|
+
# https://stackoverflow.com/questions/18599599/apt-get-commands-from-within-a-deb-postinst
|
|
18
|
+
# calamares è installato se esiste /var/lib/dpkg/info/calamares.list
|
|
19
|
+
|
|
20
|
+
#echo ">>> $0 $1 $2 $3 $4<<<"
|
|
21
|
+
|
|
22
|
+
case "$1" in
|
|
23
|
+
install|upgrade)
|
|
24
|
+
;;
|
|
25
|
+
|
|
26
|
+
abort-upgrade)
|
|
27
|
+
;;
|
|
28
|
+
|
|
29
|
+
*)
|
|
30
|
+
echo "preinst called with unknown argument \`$1'" >&2
|
|
31
|
+
exit 1
|
|
32
|
+
;;
|
|
33
|
+
esac
|
|
34
|
+
|
|
35
|
+
# dh_installdeb will replace this with shell code automatically
|
|
36
|
+
# generated by other debhelper scripts.
|
|
37
|
+
|
|
38
|
+
#DEBHELPER#
|
|
39
|
+
|
|
40
|
+
exit 0
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# prerm script for penguins-eggs_9.7.8-1
|
|
3
|
+
#
|
|
4
|
+
#echo ">>> $0 $1 $2 $3 $4<<<"
|
|
5
|
+
|
|
6
|
+
# sanitize /usr/lib/penguins-eggs/
|
|
7
|
+
rm -rf /usr/lib/penguins-eggs/distros
|
|
8
|
+
rm -rf /usr/lib/penguins-eggs/eui
|
|
9
|
+
rm -rf /usr/lib/penguins-eggs/krill
|
|
10
|
+
|
|
11
|
+
# remove man eggs
|
|
12
|
+
if [ -f "/usr/share/man/man1/eggs.1.gz" ]; then
|
|
13
|
+
rm -f /usr/share/man/man1/eggs.1.gz
|
|
14
|
+
fi
|
|
15
|
+
|
|
16
|
+
# remove eggs.bash
|
|
17
|
+
if [ -f "/etc/bash_completion.d/eggs.bash" ]; then
|
|
18
|
+
rm -f /etc/bash_completion.d/eggs.bash
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# remove calamares customization
|
|
23
|
+
FILE=/var/lib/dpkg/info/calamares.list
|
|
24
|
+
if [ -f "$FILE" ]; then
|
|
25
|
+
rm -rf /etc/calamares
|
|
26
|
+
|
|
27
|
+
# remove scripts calamares/krill
|
|
28
|
+
rm -f /usr/sbin/bootloader-config.sh
|
|
29
|
+
rm -f /usr/sbin/remove-link.sh
|
|
30
|
+
rm -f /usr/sbin/sources-yolk.sh
|
|
31
|
+
|
|
32
|
+
# remove eggs calamares-modules x86_64
|
|
33
|
+
rm -rf /usr/lib/x86_64-linux-gnu/calamares/modules/bootloader-config
|
|
34
|
+
rm -rf /usr/lib/x86_64-linux-gnu/calamares/modules/remove-link
|
|
35
|
+
rm -rf /usr/lib/x86_64-linux-gnu/calamares/modules/sources-yolk
|
|
36
|
+
rm -rf /usr/lib/x86_64-linux-gnu/calamares/modules/sources-yolk-undo
|
|
37
|
+
rm -rf /usr/lib/x86_64-linux-gnu/calamares/modules/cleanup
|
|
38
|
+
|
|
39
|
+
# remove eggs calamares-modules i386
|
|
40
|
+
rm -rf /usr/lib/i386-linux-gnu/calamares/modules/bootloader-config
|
|
41
|
+
rm -rf /usr/lib/i386-linux-gnu/calamares/modules/remove-link
|
|
42
|
+
rm -rf /usr/lib/i386-linux-gnu/calamares/modules/sources-yolk
|
|
43
|
+
rm -rf /usr/lib/i386-linux-gnu/calamares/modules/sources-yolk-undo
|
|
44
|
+
rm -rf /usr/lib/i386-linux-gnu/calamares/modules/cleanup
|
|
45
|
+
fi
|
|
46
|
+
|
|
47
|
+
exit 0
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Source: {{{name}}}
|
|
2
|
+
Section: {{{section}}}
|
|
3
|
+
Priority: {{{priority}}}
|
|
4
|
+
Maintainer: {{{mantainer}}}
|
|
5
|
+
Standards-Version: 4.5.0
|
|
6
|
+
Package: {{{name}}}
|
|
7
|
+
Architecture: {{{arch}}}
|
|
8
|
+
Version: {{{version}}}
|
|
9
|
+
Depends: {{{depends}}}
|
|
10
|
+
Suggests: calamares
|
|
11
|
+
Conflicts: calamares-settings-debian, calamares-settings-ubuntu, eggs
|
|
12
|
+
Replaces: eggs
|
|
13
|
+
Description: {{{description}}}
|
|
14
|
+
Penguins-eggs is a versatile remastering tool that allows users to create
|
|
15
|
+
custom live ISO images. It supports multiple Linux distributions, including
|
|
16
|
+
Arch, Debian, Devuan, Ubuntu, and others.
|
|
17
|
+
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Description: This file contains the dependencies for the packages in the project.
|
|
2
|
+
---
|
|
3
|
+
##
|
|
4
|
+
# common dependencies
|
|
5
|
+
common:
|
|
6
|
+
- coreutils
|
|
7
|
+
- cryptsetup
|
|
8
|
+
- cryptsetup-initramfs
|
|
9
|
+
- curl # wardrobe
|
|
10
|
+
- dosfstools # eggs
|
|
11
|
+
- dpkg-dev # yolk
|
|
12
|
+
- git # wardrobe
|
|
13
|
+
- jq # mom
|
|
14
|
+
- live-boot # eggs
|
|
15
|
+
- live-boot-doc # eggs
|
|
16
|
+
- live-boot-initramfs-tools # eggs
|
|
17
|
+
- live-tools # eggs
|
|
18
|
+
- lvm2 # pvdisplay in krill
|
|
19
|
+
- nodejs (>= 16)
|
|
20
|
+
- live-boot # questo va reinstallato
|
|
21
|
+
- parted
|
|
22
|
+
- rsync
|
|
23
|
+
- squashfs-tools
|
|
24
|
+
- sshfs # eggs
|
|
25
|
+
- xorriso
|
|
26
|
+
|
|
27
|
+
# dependencies arch specific
|
|
28
|
+
arch:
|
|
29
|
+
amd64:
|
|
30
|
+
- grub-efi-amd64-bin
|
|
31
|
+
|
|
32
|
+
arm64:
|
|
33
|
+
- syslinux-efi
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Description: This file contains the dependencies for the packages in the project.
|
|
2
|
+
---
|
|
3
|
+
##
|
|
4
|
+
# common dependencies
|
|
5
|
+
common:
|
|
6
|
+
- coreutils
|
|
7
|
+
- cryptsetup
|
|
8
|
+
- cryptsetup-initramfs
|
|
9
|
+
- curl # wardrobe
|
|
10
|
+
- dbus-bin | uuidgen-runtime # uuid-runtime per devuan
|
|
11
|
+
- dosfstools # eggs
|
|
12
|
+
- dpkg-dev # yolk
|
|
13
|
+
- git # wardrobe
|
|
14
|
+
- jq # mom
|
|
15
|
+
- live-boot # eggs
|
|
16
|
+
- live-boot-doc # eggs
|
|
17
|
+
- live-boot-initramfs-tools # eggs
|
|
18
|
+
- live-config-systemd | live-config-sysvinit
|
|
19
|
+
- live-tools # eggs
|
|
20
|
+
- lvm2 # pvdisplay in krill
|
|
21
|
+
- nodejs (>= 18)
|
|
22
|
+
- parted
|
|
23
|
+
- rsync
|
|
24
|
+
- squashfs-tools
|
|
25
|
+
- sshfs # eggs
|
|
26
|
+
- xorriso | genisoimage
|
|
27
|
+
|
|
28
|
+
# dependencies arch specific
|
|
29
|
+
arch:
|
|
30
|
+
amd64:
|
|
31
|
+
- grub-efi-amd64-bin
|
|
32
|
+
|
|
33
|
+
arm64:
|
|
34
|
+
- syslinux-efi
|
|
35
|
+
|
|
36
|
+
i386:
|
|
37
|
+
- curl # repeated
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
eggs(1) -- the reproductive system of penguins: eggs v{{{packageVersion}}}
|
|
2
|
+
==========================================================================
|
|
3
|
+
|
|
4
|
+
{{toc}}
|
|
5
|
+
|
|
6
|
+
# SYNOPSIS
|
|
7
|
+
eggs is a console utility, in active development, who let you to remaster your system and redistribuite it as live ISO image.
|
|
8
|
+
|
|
9
|
+
# INSTALL
|
|
10
|
+
|
|
11
|
+
AlpineLinux
|
|
12
|
+
```
|
|
13
|
+
$ doas apk add penguins-eggs@testing
|
|
14
|
+
```
|
|
15
|
+
AlmaLinux/RockyLinux
|
|
16
|
+
```
|
|
17
|
+
$ sudo dnf install ./{{{packageNameVersioned}}}-1rocky9.5..x86_64.rpm
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
Arch
|
|
21
|
+
```
|
|
22
|
+
$ sudo pacman -S penguins-eggs
|
|
23
|
+
$ sudo pacman -U {{{packageNameVersioned}}}-1-x86_64.pkg.tar.zst
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Debian/Devuan/Ubuntu
|
|
27
|
+
```
|
|
28
|
+
$ sudo apt install penguins-eggs
|
|
29
|
+
$ sudo dpkg -i {{{packageNameVersioned}}}.deb
|
|
30
|
+
```
|
|
31
|
+
Fedora
|
|
32
|
+
```
|
|
33
|
+
$ sudo dnf install ./{{{packageNameVersioned}}}-1fedora.x86_64.rpm
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Manjaro
|
|
37
|
+
```
|
|
38
|
+
$ sudo pamac install penguins-eggs
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
OpenMamba
|
|
42
|
+
```
|
|
43
|
+
$ sudo dnf install ./{{{packageNameVersioned}}}-1mamba.x86_64.rpm
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
# USAGE
|
|
47
|
+
|
|
48
|
+
```
|
|
49
|
+
$ eggs (-v|--version|version)
|
|
50
|
+
|
|
51
|
+
penguins-eggs/{{{packageVersion}}} {{{linuxVersion}}} {{{nodeVersion}}}
|
|
52
|
+
$ eggs --help [COMMAND]
|
|
53
|
+
|
|
54
|
+
USAGE
|
|
55
|
+
$ eggs COMMAND
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Most of the commands of eggs need sudo, but there are exceptions for export, info and mom.
|
|
59
|
+
|
|
60
|
+
examples:
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
sudo eggs produce
|
|
64
|
+
sudo eggs produce --pendrive --clone
|
|
65
|
+
sudo eggs kill
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
There are too two interactive helpers, probably you already know:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
eggs mom
|
|
72
|
+
sudo eggs dad
|
|
73
|
+
```
|
|
74
|
+
We have a comprehensive guide at https://penguins-eggs.net, help yorself signing on telegram https://t.me/penguins_eggs on facebook group, or writing me.
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
# DESCRIPTION
|
|
78
|
+
|
|
79
|
+
The scope of this project is to implement the process of remastering your version of Linux, generate it as ISO image, to burn on a CD/DVD or copy to a usb key, to boot your system live. Of course, You can easily install your live image using GUI installer (calamares) or CLI installer (krill) always included.
|
|
80
|
+
|
|
81
|
+
# COMMANDS
|
|
82
|
+
|
|
83
|
+
{{{commands}}}
|
|
84
|
+
|
|
85
|
+
# FILES
|
|
86
|
+
/etc/penguins-eggs.d
|
|
87
|
+
all eggs configurations are here
|
|
88
|
+
|
|
89
|
+
/etc/penguins-eggs.d/exclude.list
|
|
90
|
+
exclude.list
|
|
91
|
+
|
|
92
|
+
/usr/lib/penguins-eggs
|
|
93
|
+
where eggs is installed
|
|
94
|
+
|
|
95
|
+
# TROUBLES
|
|
96
|
+
|
|
97
|
+
## BUGS
|
|
98
|
+
|
|
99
|
+
Report problems o new ideas in: <https://github.com/pieroproietti/penguins-eggs/issues>
|
|
100
|
+
|
|
101
|
+
# RESOURCES AND DOCUMENTATION
|
|
102
|
+
Consult website to find documentation
|
|
103
|
+
|
|
104
|
+
* website: **https://penguins-eggs.net**
|
|
105
|
+
* gitHub repository: **https://github.com/pieroproietti/penguins-eggs**
|
|
106
|
+
* telegram: **https://t.me/penguins_eggs**
|
|
107
|
+
|
|
108
|
+
# AUTHOR
|
|
109
|
+
|
|
110
|
+
Piero Proietti <piero.proietti@gmail.com>
|
package/pods/README.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# pods
|
|
2
|
+
|
|
3
|
+
Here we have scripts to build differents minimal live ISO on local system, using podman container.
|
|
4
|
+
* `almalinux.sh`
|
|
5
|
+
* `archlinux.sh`
|
|
6
|
+
* `debian.sh`
|
|
7
|
+
* `devuan.sh`
|
|
8
|
+
* `fedora.sh`
|
|
9
|
+
* `manjaro.sh`
|
|
10
|
+
* `opensuse.sh`
|
|
11
|
+
* `ubuntu.sh`
|
|
12
|
+
|
|
13
|
+
Example: to create a minimal debian ISO, run `eggs pods debian.sh`.
|
|
14
|
+
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -x
|
|
4
|
+
export CMD_PATH=$(cd `dirname $0`; pwd)
|
|
5
|
+
export PROJECT_NAME="${CMD_PATH##*/}"
|
|
6
|
+
export NEEDRESTART_MODE=a
|
|
7
|
+
export DEBIAN_FRONTEND=noninteractive
|
|
8
|
+
|
|
9
|
+
cd $CMD_PATH
|
|
10
|
+
|
|
11
|
+
if [[ -f /etc/os-release ]]; then
|
|
12
|
+
. /etc/os-release
|
|
13
|
+
if [[ "$ID" == "almalinux" ]]; then
|
|
14
|
+
echo "install the package of capsh"
|
|
15
|
+
mkdir /boot
|
|
16
|
+
dnf -y install kernel
|
|
17
|
+
kernel_version=$(rpm -q kernel --qf "%{VERSION}-%{RELEASE}.%{ARCH}\n" | tail -n 1)
|
|
18
|
+
cp /usr/lib/modules/$kernel_version/vmlinuz /boot/vmlinuz-$kernel_version
|
|
19
|
+
dracut --force --kver $kernel_version
|
|
20
|
+
|
|
21
|
+
elif [[ "$ID" == "arch" ]]; then
|
|
22
|
+
echo "install the package of capsh"
|
|
23
|
+
pacman -S --needed --noconfirm linux linux-headers
|
|
24
|
+
pacman -S --needed --noconfirm libcap
|
|
25
|
+
pacman -S --needed --noconfirmkmod
|
|
26
|
+
|
|
27
|
+
elif [[ "$ID" == "debian" ]]; then
|
|
28
|
+
echo "install the package of capsh"
|
|
29
|
+
apt update -y
|
|
30
|
+
apt install linux-image-amd64 -y
|
|
31
|
+
apt install -y kmod
|
|
32
|
+
apt install -y libcap2-bin
|
|
33
|
+
|
|
34
|
+
elif [[ "$ID" == "devuan" ]]; then
|
|
35
|
+
echo "install the package of capsh"
|
|
36
|
+
apt update -y
|
|
37
|
+
apt install linux-image-amd64 -y
|
|
38
|
+
apt install -y kmod
|
|
39
|
+
apt install -y libcap2-bin
|
|
40
|
+
|
|
41
|
+
elif [[ "$ID" == "fedora" ]]; then
|
|
42
|
+
echo "install the package of capsh"
|
|
43
|
+
mkdir /boot
|
|
44
|
+
dnf -y install kernel
|
|
45
|
+
kernel_version=$(rpm -q kernel --qf "%{VERSION}-%{RELEASE}.%{ARCH}\n" | tail -n 1)
|
|
46
|
+
cp /usr/lib/modules/$kernel_version/vmlinuz /boot/vmlinuz-$kernel_version
|
|
47
|
+
dracut --force --kver $kernel_version
|
|
48
|
+
|
|
49
|
+
elif [[ "$ID" == "manjaro" ]]; then
|
|
50
|
+
echo "install the package of capsh"
|
|
51
|
+
pacman -S --needed --noconfirm linux linux-headers
|
|
52
|
+
pacman -S --needed --noconfirm libcap
|
|
53
|
+
pacman -S --needed --noconfirmkmod
|
|
54
|
+
|
|
55
|
+
elif [[ "$ID" == "opensuse" ]]; then
|
|
56
|
+
mkdir /boot
|
|
57
|
+
zypper install --force kernel-default kernel-default-devel
|
|
58
|
+
kernel_version=$(rpm -q kernel --qf "%{VERSION}-%{RELEASE}.%{ARCH}\n" | tail -n 1)
|
|
59
|
+
cp /usr/lib/modules/$kernel_version/vmlinuz /boot/vmlinuz-$kernel_version
|
|
60
|
+
#dracut --force --kver $kernel_version
|
|
61
|
+
|
|
62
|
+
elif [[ "$ID" == "opensuse-tumbleweed" ]]; then
|
|
63
|
+
echo "install the package of capsh"
|
|
64
|
+
zypper install -y kernel
|
|
65
|
+
zypper install -y libcap-progs
|
|
66
|
+
|
|
67
|
+
elif [[ "$ID" == "rocky" ]]; then
|
|
68
|
+
echo "install the package of capsh"
|
|
69
|
+
mkdir /boot
|
|
70
|
+
dnf -y install kernel
|
|
71
|
+
kernel_version=$(rpm -q kernel --qf "%{VERSION}-%{RELEASE}.%{ARCH}\n" | tail -n 1)
|
|
72
|
+
cp /usr/lib/modules/$kernel_version/vmlinuz /boot/vmlinuz-$kernel_version
|
|
73
|
+
dracut --force --kver $kernel_version
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
elif [[ "$ID" == "ubuntu" ]]; then
|
|
77
|
+
echo "install the package of capsh"
|
|
78
|
+
apt install linux-image-generic -y
|
|
79
|
+
apt install -y kmod
|
|
80
|
+
apt install -y libcap2-bin
|
|
81
|
+
|
|
82
|
+
else
|
|
83
|
+
# DEFAULT Debian
|
|
84
|
+
echo "install the package of capsh"
|
|
85
|
+
apt update -y
|
|
86
|
+
apt install linux-image-amd64 -y
|
|
87
|
+
apt install -y kmod
|
|
88
|
+
apt install -y libcap2-bin
|
|
89
|
+
fi
|
|
90
|
+
fi
|
|
91
|
+
|
|
92
|
+
grep overlay /proc/filesystems
|
|
93
|
+
modprobe overlay
|
|
94
|
+
|
|
95
|
+
capsh --print
|
|
96
|
+
|
|
97
|
+
mkdir -p $CMD_PATH/lower $CMD_PATH/upper $CMD_PATH/work $CMD_PATH/merged
|
|
98
|
+
|
|
99
|
+
# Add test files
|
|
100
|
+
echo "Lower File" > $CMD_PATH/lower/test.txt
|
|
101
|
+
echo "Upper File" > $CMD_PATH/upper/test.txt
|
|
102
|
+
|
|
103
|
+
mount -t overlay overlay -o lowerdir=$CMD_PATH/lower,upperdir=$CMD_PATH/upper,workdir=$CMD_PATH/work $CMD_PATH/merged
|
|
104
|
+
|
|
105
|
+
ls $CMD_PATH/merged
|
|
106
|
+
cat $CMD_PATH/merged/test.txt
|
|
107
|
+
|
|
108
|
+
umount $CMD_PATH/merged
|
|
109
|
+
|
|
110
|
+
rm -rf $CMD_PATH/lower
|
|
111
|
+
rm -rf $CMD_PATH/upper
|
|
112
|
+
rm -rf $CMD_PATH/work
|
|
113
|
+
rm -rf $CMD_PATH/merged
|
|
114
|
+
date
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# This script build an almalinux system from container
|
|
4
|
+
|
|
5
|
+
set -x
|
|
6
|
+
|
|
7
|
+
# check if we are root
|
|
8
|
+
if [ "$(id -u)" -ne 0 ]; then
|
|
9
|
+
echo "This script must be run as root"
|
|
10
|
+
exit 1
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
# check if we are on rocky or almalinux
|
|
14
|
+
if [ ! -f /etc/almalinux-release ]; then
|
|
15
|
+
if [ ! -f /etc/rocky-release ]; then
|
|
16
|
+
echo "This script is intended for almalinux or rocky!"
|
|
17
|
+
exit 1
|
|
18
|
+
fi
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
# update
|
|
22
|
+
dnf -y update
|
|
23
|
+
|
|
24
|
+
# add epel-release
|
|
25
|
+
dnf -y install epel-release
|
|
26
|
+
|
|
27
|
+
# enable crb
|
|
28
|
+
dnf config-manager --set-enabled crb
|
|
29
|
+
|
|
30
|
+
# update
|
|
31
|
+
dnf -y update
|
|
32
|
+
|
|
33
|
+
# enable crb
|
|
34
|
+
dnf config-manager --set-enabled crb
|
|
35
|
+
|
|
36
|
+
# echo "base: system e init"
|
|
37
|
+
# echo "package manager"
|
|
38
|
+
# echo "login e console"
|
|
39
|
+
# echo "networking"
|
|
40
|
+
# echo "filesystem and disk support"
|
|
41
|
+
# echo "drivers and hw support"
|
|
42
|
+
# echo "tools"
|
|
43
|
+
# echo "optional tools debug/live ISO"
|
|
44
|
+
# echo "systemd configure/enable"
|
|
45
|
+
# echo "generate /etc/default/grub"
|
|
46
|
+
# echo "eggs requirements"
|
|
47
|
+
|
|
48
|
+
echo "base: system e init"
|
|
49
|
+
dnf -y --nobest install \
|
|
50
|
+
systemd \
|
|
51
|
+
dracut \
|
|
52
|
+
kernel \
|
|
53
|
+
grub2 \
|
|
54
|
+
passwd \
|
|
55
|
+
sudo
|
|
56
|
+
|
|
57
|
+
echo "package manager"
|
|
58
|
+
dnf -y --nobest install \
|
|
59
|
+
dnf \
|
|
60
|
+
dnf-plugins-core
|
|
61
|
+
|
|
62
|
+
echo "login e console"
|
|
63
|
+
dnf -y --nobest install \
|
|
64
|
+
util-linux \
|
|
65
|
+
e2fsprogs \
|
|
66
|
+
shadow-utils \
|
|
67
|
+
hostname \
|
|
68
|
+
iproute \
|
|
69
|
+
iputils \
|
|
70
|
+
procps-ng
|
|
71
|
+
|
|
72
|
+
echo "networking"
|
|
73
|
+
dnf -y --nobest install \
|
|
74
|
+
NetworkManager \
|
|
75
|
+
dhclient \
|
|
76
|
+
nss-altfiles \
|
|
77
|
+
openssh-server
|
|
78
|
+
|
|
79
|
+
echo "filesystem and disk support"
|
|
80
|
+
dnf -y --nobest install \
|
|
81
|
+
btrfs-progs \
|
|
82
|
+
xfsprogs \
|
|
83
|
+
dosfstools \
|
|
84
|
+
ntfs-3g \
|
|
85
|
+
lvm2 \
|
|
86
|
+
mdadm \
|
|
87
|
+
cryptsetup
|
|
88
|
+
|
|
89
|
+
echo "drivers and hw support"
|
|
90
|
+
dnf -y --nobest install \
|
|
91
|
+
linux-firmware \
|
|
92
|
+
efibootmgr \
|
|
93
|
+
grub2-efi \
|
|
94
|
+
shim
|
|
95
|
+
|
|
96
|
+
echo "tools"
|
|
97
|
+
dnf -y --nobest install \
|
|
98
|
+
bash-completion \
|
|
99
|
+
vim \
|
|
100
|
+
nano \
|
|
101
|
+
less \
|
|
102
|
+
rsyslog \
|
|
103
|
+
coreutils \
|
|
104
|
+
findutils \
|
|
105
|
+
grep \
|
|
106
|
+
sed \
|
|
107
|
+
awk \
|
|
108
|
+
tar \
|
|
109
|
+
gzip \
|
|
110
|
+
xz
|
|
111
|
+
|
|
112
|
+
echo "optional tools debug/live ISO"
|
|
113
|
+
dnf -y --nobest install \
|
|
114
|
+
strace \
|
|
115
|
+
lsof \
|
|
116
|
+
htop \
|
|
117
|
+
mc \
|
|
118
|
+
curl \
|
|
119
|
+
wget \
|
|
120
|
+
bind-utils
|
|
121
|
+
|
|
122
|
+
echo "systemd configure/enable"
|
|
123
|
+
systemctl set-default multi-user.target
|
|
124
|
+
systemctl enable getty@tty1.service
|
|
125
|
+
systemctl enable systemd-networkd.service
|
|
126
|
+
systemctl enable NetworkManager.service
|
|
127
|
+
systemctl enable NetworkManager-dispatcher.service
|
|
128
|
+
|
|
129
|
+
echo "generate /etc/default/grub"
|
|
130
|
+
|
|
131
|
+
echo "disable selinux"
|
|
132
|
+
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
|
|
133
|
+
|
|
134
|
+
echo "eggs requirements"
|
|
135
|
+
dnf -y --nobest --allowerasing install \
|
|
136
|
+
bash-completion \
|
|
137
|
+
cryptsetup \
|
|
138
|
+
curl \
|
|
139
|
+
device-mapper \
|
|
140
|
+
dosfstools \
|
|
141
|
+
dracut \
|
|
142
|
+
dracut-live \
|
|
143
|
+
efibootmgr \
|
|
144
|
+
fuse \
|
|
145
|
+
git \
|
|
146
|
+
grub2-efi-x64 \
|
|
147
|
+
grub2-efi-modules \
|
|
148
|
+
grub2-efi-x64-modules \
|
|
149
|
+
grub2-tools-extra \
|
|
150
|
+
jq \
|
|
151
|
+
lvm2 \
|
|
152
|
+
nvme-cli \
|
|
153
|
+
parted \
|
|
154
|
+
rsync \
|
|
155
|
+
shim \
|
|
156
|
+
squashfs-tools \
|
|
157
|
+
sshfs \
|
|
158
|
+
tar \
|
|
159
|
+
wget \
|
|
160
|
+
xdg-user-dirs \
|
|
161
|
+
xorriso \
|
|
162
|
+
zstd
|
|
163
|
+
|
|
164
|
+
# mkdir /usr/share/icons
|
|
165
|
+
mkdir -p /usr/share/icons
|