From a61c4cb08ca7213ba69a21c00e2df8d944f68b2d Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 9 Jan 2024 21:50:29 -0600 Subject: [PATCH] Fix Alpine on VirtualBox --- distros/alpine/3.19.0/amd64.pkrvars.hcl | 2 +- distros/alpine/3.19.0/http/in-chroot.sh | 18 +++++++++++++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/distros/alpine/3.19.0/amd64.pkrvars.hcl b/distros/alpine/3.19.0/amd64.pkrvars.hcl index 5bd7124..47936c3 100644 --- a/distros/alpine/3.19.0/amd64.pkrvars.hcl +++ b/distros/alpine/3.19.0/amd64.pkrvars.hcl @@ -6,7 +6,7 @@ iso = { } boot_command = [ "root", - "echo 'iface eth0 inet dhcp' > /etc/network/interfaces", + "echo 'iface eth0 inet dhcp' > /etc/network/interfaces", "ifup eth0", "wget -O answers.cfg.sh http://{{ .HTTPIP }}:{{ .HTTPPort }}/answers.cfg.sh", "", diff --git a/distros/alpine/3.19.0/http/in-chroot.sh b/distros/alpine/3.19.0/http/in-chroot.sh index 650bbba..0f66e9c 100644 --- a/distros/alpine/3.19.0/http/in-chroot.sh +++ b/distros/alpine/3.19.0/http/in-chroot.sh @@ -6,7 +6,6 @@ sed -i 's/#\(.*\/community\)/\1/' /etc/apk/repositories # Install bare minimal packages apk add curl efibootmgr openssh sudo virt-what -efibootmgr --bootnext "$(efibootmgr | grep 'Misc' | awk '{print $1}' | sed -E 's/[^0-9]//g')" rc-update add sshd default @@ -35,15 +34,24 @@ virt="$(virt-what)" # "microsoft" == Hyper-V # "oracle" == VirtualBox # "KVM" == KVM/Qemu -if [ "${virt}" = "microsoft" ]; then +case "${virt}" in +microsoft) apk add hvtools rc-update add hv_fcopy_daemon rc-update add hv_kvp_daemon rc-update add hv_vss_daemon -elif [ "${virt}" = "kvm" ] || [ "${virt}" = "qemu" ]; then + target="0002" # Placeholder for now + ;; +kvm | qemu) apk add qemu-guest-agent rc-update add qemu-guest-agent -elif [ "${virt}" = "virtualbox" ]; then + target="$(efibootmgr | grep 'Misc' | awk '{print $1}' | sed -E 's/[^0-9]//g')" + ;; +virtualbox*) apk add virtualbox-guest-additions rc-update add virtualbox-guest-additions boot -fi + target="$(efibootmgr | grep 'VBOX HARD' | awk '{print $1}' | sed -E 's/[^0-9]//g')" + ;; +esac + +efibootmgr --bootnext "${target}" \ No newline at end of file