SystemCrafters / guix-installer

A GNU Guix installer image with the full Linux kernel!
GNU General Public License v3.0
243 stars 29 forks source link

Installing in QEMU #34

Closed Jesse-Millwood closed 1 week ago

Jesse-Millwood commented 1 week ago

I'm trying to install in a QEMU VM. I'm trying to follow https://systemcrafters.net/craft-your-system-with-guix/full-system-install/ but there are some differences and I'm not sure if it is for some reason due to using a VM or if something has changed.

Setting up the VM:

On the host:

wget https://github.com/SystemCrafters/guix-installer/releases/download/v202411080129/guix-installer-202411080129.iso
qemu-img create -f qcow2 guix-system.img 100G

Running the VM:

On the host:

qemu-system-x86_64 -m 1024 -smp 1 -enable-kvm -boot menu=on,order=d -drive file=guix-system.img \
                                       -nic user,model=virtio-net-pci,hostfwd=tcp::10022-:22 \
                                       -drive media=cdrom,file=guix-installer-202411080129.iso

In the VM:

This lands me at, what I can assume, is what I am supposed to see: image

I can follow the prompts all the way to Editing the generated configuration. For what it's worth, I intend on just ssh'ing into this VM to test running web services so I don't choose a DE, I choose the defaults for the disk partitioning.

Now when I'm here: image

I go to another tty by going to the QEMU monitor and doing sendkey ctrl-alt-f3. This lands me here: image

The first difference I notice is if I try and use emacs it isn't installed and the channels.scm file doesn't appear to be in the /etc/ directory: image

I'm struggling to see what the difference between running this on an actual computer and in a VM is so I don't think that would be an issue. I'm seeing the graphical install prompts and am able to go through them. However, the extras used in this installer don't seem to be there. Does anyone have any ideas to look for clues as to why I'm not seeing the channels file or even emacs installed? If this is more appropriate for the forum I can post there but I thought this might be more related to this than just general help.

Jesse-Millwood commented 1 week ago

If I mount this iso and take a look at it, I should be able to find the emacs binary and channels.scm right? I mounted it to a local directory on my host machine like this:

➜ mkdir tmpmnt
➜ sudo mount guix-system-install-1.4.0.x86_64-linux.iso tmpmnt -o loop
➜ cd tmpmnt

I should be able to find the channels.scm here right?

➜ find -name "channels.scm"
./gnu/store/5kj8lyybjrdl7xd0fx9g9vzkz8sklqsy-guix-1.4.0/share/guile/site/3.0/guix/channels.scm
./gnu/store/8gy0gjw2i17p9m3kd5w0acybfp2nj1m2-guix-989a3916d-modules/share/guile/site/3.0/guix/channels
./gnu/store/9q24nr1cbwfzf3axk9cyq2alrq705anj-guix-extra-source/guix/channels.scm
./gnu/store/vpvx5l47y0336mmpdkd6xbrjnrf63rl3-guile-fibers-1.1.1/share/guile/site/3.0/fibers/channels.s

I don't think any of these channels files are the ones are included from here.

When I search for nano and emacs, I only find nano:

➜ find -type f -name "emacs"

➜ find -type f -name "nano"
./gnu/store/88wn8nirsynadws3z5sbpzbmzpm66ddr-nano-7.0/bin/nano

Did I miss a step somewhere? Isn't this iso supposed to include the things that are outlined in the packages list in installer.scm?

Jesse-Millwood commented 1 week ago

Actually, my bad. I was using the default guix installer image. Sorry for the noise.