penguins-eggs 10.0.60 → 10.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.oclif.manifest.json +62 -1
- package/README.md +145 -75
- package/addons/eggs/theme/calamares/modules/{_users.yml → users.yml} +3 -3
- package/addons/eggs/theme/livecd/grub.main.full.cfg +1 -1
- package/addons/eggs/theme/livecd/grub.main.simple.cfg +1 -1
- package/conf/derivatives.yaml +4 -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/modules/users.yml +4 -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/noble/calamares/modules/users.yml +1 -0
- 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/love.yaml +4 -4
- package/dist/classes/compressors.js +1 -1
- package/dist/classes/distro.d.ts +27 -3
- package/dist/classes/distro.js +361 -289
- package/dist/classes/ovary.d/bind-live-fs.js +22 -30
- package/dist/classes/ovary.d/edit-live-fs.d.ts +1 -0
- package/dist/classes/ovary.d/edit-live-fs.js +9 -13
- package/dist/classes/ovary.d/fertilization.js +6 -1
- package/dist/classes/ovary.d/initrd.js +11 -15
- package/dist/classes/ovary.d/kernel-copy.js +2 -16
- package/dist/classes/ovary.d/make-efi.js +8 -5
- package/dist/classes/ovary.d/make-squashfs.d.ts +1 -1
- package/dist/classes/ovary.d/make-squashfs.js +17 -24
- package/dist/classes/ovary.d/merged.d.ts +9 -13
- package/dist/classes/ovary.d/merged.js +38 -48
- package/dist/classes/ovary.d/produce.d.ts +1 -1
- package/dist/classes/ovary.d/produce.js +38 -32
- package/dist/classes/ovary.d/syslinux.js +4 -4
- package/dist/classes/ovary.d/user-create-live.js +12 -5
- package/dist/classes/ovary.d.ts +8 -3
- package/dist/classes/ovary.js +8 -3
- package/dist/classes/pacman.d/archlinux.js +1 -5
- package/dist/classes/pacman.js +2 -1
- package/dist/classes/systemctl.d.ts +1 -1
- package/dist/classes/systemctl.js +1 -1
- package/dist/classes/tailor.js +2 -1
- 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 +152 -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 +288 -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 +90 -322
- package/dist/classes/utils.js +105 -1013
- package/dist/commands/dad.d.ts +1 -0
- package/dist/commands/dad.js +1 -0
- package/dist/commands/export/pkg.js +6 -6
- package/dist/commands/export/tarballs.js +11 -16
- package/dist/commands/kill.js +1 -1
- package/dist/commands/love.d.ts +1 -0
- package/dist/commands/love.js +21 -7
- package/dist/commands/pods.d.ts +22 -0
- package/dist/commands/pods.js +92 -0
- package/dist/commands/produce.d.ts +1 -0
- package/dist/commands/produce.js +21 -1
- package/dist/commands/update.js +2 -2
- package/dist/index.d.ts +6 -52
- package/dist/index.js +6 -145
- package/dist/krill/classes/krill_enums.d.ts +14 -1
- package/dist/krill/classes/krill_enums.js +16 -1
- package/dist/krill/classes/prepare.d/partitions.js +3 -3
- package/dist/krill/classes/prepare.d.ts +46 -21
- package/dist/krill/classes/prepare.js +187 -187
- package/dist/krill/classes/sequence.d/add_user.js +21 -3
- package/dist/krill/classes/sequence.d/partition.js +2 -2
- package/dist/krill/classes/sequence.d.ts +18 -21
- package/dist/krill/classes/sequence.js +156 -423
- package/dist/krill/components/information.js +13 -7
- package/dist/{krill/lib → lib}/kill_me_softly.js +2 -2
- package/dist/penguins-eggs_10.1.1-0_amd64.deb +0 -0
- package/dist/penguins-eggs_10.1.1-0_amd64.deb.sha256 +1 -0
- package/package.json +32 -27
- 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 +14 -5
- package/scripts/eggs.bash +5 -4
- /package/dist/{krill/lib → lib}/kill_me_softly.d.ts +0 -0
|
@@ -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
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# This script build an arch system from container
|
|
4
|
+
|
|
5
|
+
set -x
|
|
6
|
+
|
|
7
|
+
# check if we are root
|
|
8
|
+
if [ "$EUID" -ne 0 ]
|
|
9
|
+
then echo "Please run as root"
|
|
10
|
+
exit
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
# check if we are on arch
|
|
14
|
+
if [ -f /etc/os-release ]; then
|
|
15
|
+
source /etc/os-release
|
|
16
|
+
if [[ "$ID" != "arch" ]]; then
|
|
17
|
+
echo "This script is only for Arch"
|
|
18
|
+
exit
|
|
19
|
+
fi
|
|
20
|
+
fi
|
|
21
|
+
|
|
22
|
+
# echo "base: system e init"
|
|
23
|
+
# echo "package manager"
|
|
24
|
+
# echo "login e console"
|
|
25
|
+
# echo "networking"
|
|
26
|
+
# echo "filesystem and disk support"
|
|
27
|
+
# echo "drivers and hw support"
|
|
28
|
+
# echo "tools"
|
|
29
|
+
# echo "optional tools debug/live ISO"
|
|
30
|
+
# echo "systemd configure/enable"
|
|
31
|
+
# echo "generate /etc/default/grub"
|
|
32
|
+
# echo "eggs requirements"
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
echo "base: system e init"
|
|
36
|
+
pacman -Syu --needed --noconfirm \
|
|
37
|
+
base-devel \
|
|
38
|
+
bash-completion \
|
|
39
|
+
linux-firmware \
|
|
40
|
+
linux-firmware-whence
|
|
41
|
+
|
|
42
|
+
echo "package manager"
|
|
43
|
+
pacman -Syu --needed --noconfirm \
|
|
44
|
+
fakeroot \
|
|
45
|
+
pkgconf
|
|
46
|
+
|
|
47
|
+
echo "login e console"
|
|
48
|
+
pacman -Syu --needed --noconfirm \
|
|
49
|
+
sudo \
|
|
50
|
+
dialog \
|
|
51
|
+
nano
|
|
52
|
+
|
|
53
|
+
echo "networking"
|
|
54
|
+
pacman -Syu --needed --noconfirm \
|
|
55
|
+
networkmanager \
|
|
56
|
+
inetutils \
|
|
57
|
+
openssh
|
|
58
|
+
|
|
59
|
+
echo "filesystem and disk support"
|
|
60
|
+
pacman -Syu --needed --noconfirm \
|
|
61
|
+
zram-generator \
|
|
62
|
+
syslinux
|
|
63
|
+
|
|
64
|
+
echo "drivers and hw support"
|
|
65
|
+
pacman -Syu --needed --noconfirm \
|
|
66
|
+
linux-firmware \
|
|
67
|
+
linux-firmware-whence
|
|
68
|
+
|
|
69
|
+
echo "tools"
|
|
70
|
+
pacman -Syu --needed --noconfirm \
|
|
71
|
+
which \
|
|
72
|
+
patch \
|
|
73
|
+
make \
|
|
74
|
+
gcc \
|
|
75
|
+
gc \
|
|
76
|
+
man-db \
|
|
77
|
+
texinfo
|
|
78
|
+
|
|
79
|
+
echo "optional tools debug/live ISO"
|
|
80
|
+
pacman -Syu --needed --noconfirm \
|
|
81
|
+
debugedit \
|
|
82
|
+
groff \
|
|
83
|
+
guile \
|
|
84
|
+
m4
|
|
85
|
+
|
|
86
|
+
echo "systemd configure/enable"
|
|
87
|
+
systemctl set-default multi-user.target
|
|
88
|
+
systemctl enable getty@tty1.service
|
|
89
|
+
systemctl enable systemd-networkd.service
|
|
90
|
+
systemctl enable NetworkManager.service
|
|
91
|
+
systemctl enable NetworkManager-dispatcher.service
|
|
92
|
+
|
|
93
|
+
echo "eggs requirements"
|
|
94
|
+
pacman -Syu --noconfirm --needed \
|
|
95
|
+
arch-install-scripts \
|
|
96
|
+
cryptsetup \
|
|
97
|
+
dosfstools \
|
|
98
|
+
efibootmgr \
|
|
99
|
+
erofs-utils \
|
|
100
|
+
findutils \
|
|
101
|
+
git \
|
|
102
|
+
grub \
|
|
103
|
+
jq \
|
|
104
|
+
libarchive \
|
|
105
|
+
libisoburn \
|
|
106
|
+
lvm2 \
|
|
107
|
+
mkinitcpio-archiso \
|
|
108
|
+
mkinitcpio-nfs-utils \
|
|
109
|
+
mtools \
|
|
110
|
+
nbd \
|
|
111
|
+
nodejs \
|
|
112
|
+
pacman-contrib \
|
|
113
|
+
parted \
|
|
114
|
+
procps-ng \
|
|
115
|
+
pv \
|
|
116
|
+
python \
|
|
117
|
+
rsync \
|
|
118
|
+
squashfs-tools \
|
|
119
|
+
sshfs \
|
|
120
|
+
wget \
|
|
121
|
+
xorriso \
|
|
122
|
+
xdg-utils
|
|
123
|
+
|
|
124
|
+
# mkdir /usr/share/icons
|
|
125
|
+
mkdir -p /usr/share/icons
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
# This script build a debian system from container
|
|
4
|
+
|
|
5
|
+
set -x
|
|
6
|
+
|
|
7
|
+
export CMD_PATH=$(cd `dirname $0`; pwd)
|
|
8
|
+
export PROJECT_NAME="${CMD_PATH##*/}"
|
|
9
|
+
echo $PROJECT_NAME
|
|
10
|
+
export NEEDRESTART_MODE=a
|
|
11
|
+
export DEBIAN_FRONTEND=noninteractive
|
|
12
|
+
|
|
13
|
+
# check if we are on Debian/Devuan/Ubuntu
|
|
14
|
+
if [ -f /etc/os-release ]; then
|
|
15
|
+
source /etc/os-release
|
|
16
|
+
if [[ "$ID" != "debian" && "$ID_LIKE" != *"debian"* ]]; then
|
|
17
|
+
echo "This script is only for Debian/Devuan/Ubuntu based systems"
|
|
18
|
+
exit
|
|
19
|
+
fi
|
|
20
|
+
fi
|
|
21
|
+
|
|
22
|
+
# echo "base: system e init"
|
|
23
|
+
# echo "package manager"
|
|
24
|
+
# echo "login e console"
|
|
25
|
+
# echo "networking"
|
|
26
|
+
# echo "filesystem and disk support"
|
|
27
|
+
# echo "drivers and hw support"
|
|
28
|
+
# echo "tools"
|
|
29
|
+
# echo "optional tools debug/live ISO"
|
|
30
|
+
# echo "systemd configure/enable"
|
|
31
|
+
# echo "generate /etc/default/grub"
|
|
32
|
+
# echo "eggs requirements"
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
echo "base: system e init"
|
|
37
|
+
apt install -y \
|
|
38
|
+
init \
|
|
39
|
+
cron \
|
|
40
|
+
cron-daemon-common \
|
|
41
|
+
locales \
|
|
42
|
+
linux-image-amd64 \
|
|
43
|
+
logrotate \
|
|
44
|
+
procps \
|
|
45
|
+
tzdata \
|
|
46
|
+
util-linux-locales \
|
|
47
|
+
ucf
|
|
48
|
+
|
|
49
|
+
echo "package manager"
|
|
50
|
+
apt install -y \
|
|
51
|
+
apt-utils \
|
|
52
|
+
apt-listchanges \
|
|
53
|
+
python3-apt \
|
|
54
|
+
python-apt-common \
|
|
55
|
+
python3-debconf \
|
|
56
|
+
tasksel \
|
|
57
|
+
tasksel-data
|
|
58
|
+
|
|
59
|
+
echo "login e console"
|
|
60
|
+
apt install -y \
|
|
61
|
+
sudo \
|
|
62
|
+
bash-completion \
|
|
63
|
+
dialog \
|
|
64
|
+
whiptail \
|
|
65
|
+
nano \
|
|
66
|
+
less \
|
|
67
|
+
vim \
|
|
68
|
+
vim-tiny \
|
|
69
|
+
ncurses-term \
|
|
70
|
+
man \
|
|
71
|
+
man-db \
|
|
72
|
+
manpages
|
|
73
|
+
|
|
74
|
+
echo "networking"
|
|
75
|
+
apt install -y \
|
|
76
|
+
isc-dhcp-client \
|
|
77
|
+
isc-dhcp-common \
|
|
78
|
+
dnsutils \
|
|
79
|
+
inetutils-telnet \
|
|
80
|
+
ifupdown \
|
|
81
|
+
iproute2 \
|
|
82
|
+
iputils-ping \
|
|
83
|
+
net-tools \
|
|
84
|
+
netcat-traditional \
|
|
85
|
+
nftables \
|
|
86
|
+
traceroute \
|
|
87
|
+
wget \
|
|
88
|
+
python3-requests \
|
|
89
|
+
python3-certifi \
|
|
90
|
+
python3-chardet \
|
|
91
|
+
python3-charset-normalizer \
|
|
92
|
+
python3-idna \
|
|
93
|
+
python3-urllib3 \
|
|
94
|
+
python3-pycurl \
|
|
95
|
+
python3-httplib2 \
|
|
96
|
+
python3-pyparsing \
|
|
97
|
+
python3-pysimplesoap \
|
|
98
|
+
python3-six
|
|
99
|
+
|
|
100
|
+
echo "filesystem and disk support"
|
|
101
|
+
apt install -y \
|
|
102
|
+
fdisk \
|
|
103
|
+
eject \
|
|
104
|
+
usbutils \
|
|
105
|
+
lsof \
|
|
106
|
+
lsb-release
|
|
107
|
+
|
|
108
|
+
echo "drivers and hw support"
|
|
109
|
+
apt install -y \
|
|
110
|
+
discover \
|
|
111
|
+
discover-data \
|
|
112
|
+
libdiscover2 \
|
|
113
|
+
laptop-detect \
|
|
114
|
+
pciutils \
|
|
115
|
+
pci.ids \
|
|
116
|
+
iucode-tool \
|
|
117
|
+
libpci3 \
|
|
118
|
+
qemu-guest-agent
|
|
119
|
+
|
|
120
|
+
echo "tools"
|
|
121
|
+
apt install -y \
|
|
122
|
+
file \
|
|
123
|
+
libmagic1 \
|
|
124
|
+
libmagic-mgc \
|
|
125
|
+
git \
|
|
126
|
+
debian-faq \
|
|
127
|
+
doc-debian \
|
|
128
|
+
installation-report \
|
|
129
|
+
iso-codes \
|
|
130
|
+
python3-debian \
|
|
131
|
+
python3-debianbts \
|
|
132
|
+
reportbug \
|
|
133
|
+
sensible-utils
|
|
134
|
+
|
|
135
|
+
echo "optional tools debug/live ISO"
|
|
136
|
+
apt install -y \
|
|
137
|
+
emacsen-common \
|
|
138
|
+
ispell \
|
|
139
|
+
iamerican \
|
|
140
|
+
ibritish \
|
|
141
|
+
wamerican \
|
|
142
|
+
ienglish-common \
|
|
143
|
+
dictionaries-common
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
echo "eggs requirements"
|
|
148
|
+
LIVE_CONFIG_INIT_SYSTEM="live-config-systemd"
|
|
149
|
+
if [[ "$ID" == "devuan" ]]; then
|
|
150
|
+
LIVE_CONFIG_INIT_SYSTEM="live-config-sysvinit"
|
|
151
|
+
fi
|
|
152
|
+
|
|
153
|
+
apt-get install -y \
|
|
154
|
+
coreutils \
|
|
155
|
+
cryptsetup \
|
|
156
|
+
curl \
|
|
157
|
+
dosfstools \
|
|
158
|
+
dpkg-dev \
|
|
159
|
+
git \
|
|
160
|
+
grub-efi-amd64-bin \
|
|
161
|
+
jq \
|
|
162
|
+
live-boot \
|
|
163
|
+
live-boot-doc \
|
|
164
|
+
live-boot-initramfs-tools \
|
|
165
|
+
$LIVE_CONFIG_INIT_SYSTEM \
|
|
166
|
+
live-tools \
|
|
167
|
+
lvm2 \
|
|
168
|
+
parted \
|
|
169
|
+
rsync \
|
|
170
|
+
squashfs-tools \
|
|
171
|
+
sshfs \
|
|
172
|
+
wget \
|
|
173
|
+
xorriso
|