ref: ed7dcf0c2b44c0c8a6d5f800ad16ab22ac568575
dir: /vmx.md/
VMX === ## Installing Void Linux This guide describes a "chroot" installation type, full manual. Basic ideas are the same if you want to follow the more usual TUI installation method. As always, refer to the [docs](https://docs.voidlinux.org/installation/live-images/guide.html). Download a live ISO image, copy the kernel and initrd. hget https://alpha.de.repo.voidlinux.org/live/current/void-live-x86_64-20210218.iso > void.iso 9660srv mount /srv/9660 /n/void void.iso cp /n/void/boot/^(vmlinuz initrd) . unmount /n/void rm /srv/9660 Generate a random MAC address (12 characters). It might make sense to keep it static across vmx restarts so it's possible to pin virtualized Void to a specific IP address. # hold my beer dd -quiet 1 -if /dev/random -bs 6 -count 1 | xd -1 | awk '{$1=""; print $0}' | tr -d ' ' # replace XXXXXXXXXXXX with the MAC address # replace /dev/sdN0/linux with the disk file allocated to The Void vmx -M 4G -n 'ea:XXXXXXXXXXXX!/net/ether0' -v text -d /dev/sdN0/linux -d void.iso -m initrd vmlinuz 'root=live:CDLABEL=VOID_LIVE loglevel=4' Enter The Void as root with "voidlinux" password and continue with installation. ip addr # notice the ip address Ssh to Void. It could be a bit easier to type. ssh anon@ipaddress # see the line with the thumbprint and execute it vt -rxb 'ssh anon@ipaddress' # the password is "voidlinux" Continue with the installation process. bash # just for completion su # work as root mkfs.ext4 -L voidroot /dev/vda # root parition, ext4 mount /dev/vda /mnt cd /tmp export REPO=https://alpha.de.repo.voidlinux.org/current export XBPS_ARCH=x86_64 xbps-install -Sy -r /tmp -R $REPO xz # need xz to unpack rootfs xbps-fetch https://alpha.de.repo.voidlinux.org/live/current/void-x86_64-ROOTFS-20210218.tar.xz cp usr/bin/xz /usr/bin tar xvf void-x86_64-ROOTFS-*.tar.xz -C /mnt/ mount --rbind /sys /mnt/sys && mount --make-rslave /mnt/sys/ mount --rbind /dev /mnt/dev && mount --make-rslave /mnt/dev/ mount --rbind /proc/ /mnt/proc/ && mount --make-rslave /mnt/proc/ cp /etc/resolv.conf /mnt/etc/ PS1='(void) ' chroot /mnt/ /bin/bash xbps-install -Suy xbps xbps-install -uy xbps-install -y base-system xbps-remove -y base-voidstrap echo void > /etc/hostname vi /etc/rc.conf # optional, edit a few options (use UTC for clock) passwd # type the new root password cp /proc/mounts /etc/fstab vi /etc/fstab # remove proc, sys, devtmpfs and pts, change /dev/vda to LABEL=voidroot xbps-reconfigure -fa xbps-install chrony # OPTIONAL, to keep clock in sync ln -s /etc/sv/chronyd /var/service/ # check out (and enable) other services in /etc/sv that you might need Switch to another rio window and `cd` to where your void files are. Now update the kernel and initramfs with the ones installed. sshfs -m /n/void -r /mnt/boot root@ipaddress cp /n/void/initram* initrd # overwrite cp /n/void/vmlinuz* vmlinuz # overwrite unmount /n/void *NOTE* you'll need to repeat the above procedure each time the kernel gets updated in Void. Otherwise expect various shenanigans. Switch back to `vt`. exit poweroff Kill vmx, update its arguments, and run again. vmx -M 4G -n 'ea:XXXXXXXXXXXX!/net/ether0' -v text -d /dev/sdN0/linux -m initrd vmlinuz 'root=LABEL=voidroot loglevel=4' Voila, you got yourself some Void. Continue with [postinstallation](https://wiki.voidlinux.org/Post_Installation).