I am in the process of installing Void Linux inside a virtual machine on my M1 MacBook. I have followed the guide for chroot installation and I am having trouble getting it to work.
This is what I have done, and please correct me if I am wrong:
1- Created an empty virtual hard drive
2- Booted a live image of Arch Linux aarch64 due to the lack of Void Linux live image.
3- Using cfdisk, I create a gpt partition label and write 2 partitions (500MB /dev/vda1
) and (Remaining free space /dev/vda2
) with mount points (/boot/efi/
) and (/
), respectively.
4- Format as vfat and ext4, respectively.
5- Mount them as per the guide and then manually enter chroot.
6- Again, do pretty much everything as listed in the guide.
7- For (/etc/fstab
), I do the following
# Corresponds to /dev/vda1
UUID=1a2b.....uvw /boot/efi vfat defaults 0 2
# Corresponds to /dev/vda2
UUID=3c4d.....xyz / ext4 defaults 0 1
tmpfs /tmp tmpfs defaults,nosuid,nodev 0 0
I am not using swap for sake of simplicity.
8- I install grub-arm64-efi
and then issue the command grub-install --target=arm64-efi --efi-directory=/boot/efi --bootloader-id="Void" --no-nvram
. Note the --no-nvram
because for some reason EFI variables are not available to me in UTM.
9- After the xbps-reconfigure -fa
command, I exit and them attempt to unmount using umount -R /mnt
only to be told that the device is busy
. Using lsof
returns nothing so I shutdown, remove the live Arch Linux image, and boot the system again only to be greeted with the UEFI shell.
I am not sure where my issue is and I would appreciate any help, advice, and/or guidance anyone can provide.
Thank you
I have a crappy old laptop and I wanted to extend its life and usability by installing a resource light OS on it. I decided on Void Linux and proceeded to try it out in a VM on my MacBook before I installed it on the potato laptop.
I know I could emulate it using UTM but I figured that attempting a chroot installation would be a nice learning experience. I also haven’t seen much guides on it online — especially for aarch64 machines — and figured I could contribute and fill some of the void (pun not intended but very welcome).