Add an automatic install option to the initramfs.
This commit is contained in:
11
mklive.sh.in
11
mklive.sh.in
@@ -30,7 +30,7 @@ trap 'error_out $? $LINENO' INT TERM 0
|
||||
umask 022
|
||||
|
||||
readonly REQUIRED_PKGS="base-files libgcc dash coreutils sed tar gawk syslinux grub-i386-efi grub-x86_64-efi squashfs-tools xorriso"
|
||||
readonly INITRAMFS_PKGS="binutils xz device-mapper"
|
||||
readonly INITRAMFS_PKGS="binutils xz device-mapper dhclient dracut-network"
|
||||
readonly PROGNAME=$(basename $0)
|
||||
|
||||
info_msg() {
|
||||
@@ -103,6 +103,11 @@ copy_dracut_files() {
|
||||
cp dracut/* $1/usr/lib/dracut/modules.d/01vmklive/
|
||||
}
|
||||
|
||||
copy_autoinstaller_files() {
|
||||
mkdir -p $1/usr/lib/dracut/modules.d/01autoinstaller
|
||||
cp autoinstaller/* $1/usr/lib/dracut/modules.d/01autoinstaller/
|
||||
}
|
||||
|
||||
install_prereqs() {
|
||||
copy_void_conf $VOIDHOSTDIR
|
||||
XBPS_ARCH=$ARCH $XBPS_INSTALL_CMD -r $VOIDHOSTDIR $XBPS_REPOSITORY \
|
||||
@@ -149,13 +154,14 @@ generate_initramfs() {
|
||||
local _args
|
||||
|
||||
copy_dracut_files $ROOTFS
|
||||
copy_autoinstaller_files $ROOTFS
|
||||
if [ "$BASE_SYSTEM_PKG" = "base-system-systemd" ]; then
|
||||
_args="--add systemd"
|
||||
else
|
||||
_args="--omit systemd"
|
||||
fi
|
||||
chroot $ROOTFS env -i /usr/bin/dracut -N --${INITRAMFS_COMPRESSION} \
|
||||
--add-drivers "ahci" --force-add "vmklive" ${_args} "/boot/initrd" $KERNELVERSION
|
||||
--add-drivers "ahci" --force-add "vmklive autoinstaller" ${_args} "/boot/initrd" $KERNELVERSION
|
||||
[ $? -ne 0 ] && die "Failed to generate the initramfs"
|
||||
|
||||
mv $ROOTFS/boot/initrd $BOOT_DIR
|
||||
@@ -172,6 +178,7 @@ cleanup_rootfs() {
|
||||
fi
|
||||
done
|
||||
rm -r $ROOTFS/usr/lib/dracut/modules.d/01vmklive
|
||||
rm -r $ROOTFS/usr/lib/dracut/modules.d/01autoinstaller
|
||||
}
|
||||
|
||||
generate_isolinux_boot() {
|
||||
|
||||
Reference in New Issue
Block a user