CNT4603 — 2019 Fall
Assignment 7
No journal for this assignment

Assignment: QEMU and NixOS




Your objective is to install the current NixOS version as a virtual server using QEMU. You should cd into qemu.images directory to do this assignment.

Once you have changed directory to qemu.images, you will need to download NixOS; one link to do is to this current NixOS image.

Now create a nixos.img image file; please make it 25G in size: qemu-img create -f qcow2 nixos.img 25G

You can now boot into your ISO image with your new NixOS image file as an adjunct:

~/qemu.images $ qemu-system-x86_64 -enable-kvm -m 8192 -boot d -cdrom nixos-graphical-19.09.891.80b42e630b2-x86_64-linux.iso -hda nixos.img 

Now follow the installation instructions at NixOS manual.

As in the previous exercise, please bear in mind that your nixos.img file is visible as /dev/sda; you will need to partition this. I recommend fdisk /dev/sda, but there are lots of partitioning tools, such as cfdisk and parted. I would strongly recommend creating only one partition; I definitely recommend not creating swap or separate partitions for subdirectories since these do not help you, and make the installation process unnecessarily complex.

You don't need to worry about EFI/BIOS/MBR issues; by default, your QEMU image is using BIOS/MBR, and you should assume that's the best choice for NixOS. Likewise, the keyboard set-up is fine as-is.

You don't have to worry about a boot loader, except for making sure that you have set the boot.loader.grub.device option in the /etc/nixos/configuration.nix file.

Once you have generated, configured, and installed the system, it's time to reboot:

~/qemu.images $ qemu-system-x86_64 -enable-kvm -m 8192 -boot a -hda nixos.img     

The final steps that I would like you to do are

Please let me know when you have finished, and I will check your work.