On Fri, May 19, 2023 at 1:20 PM Janneke Nieuwenhuizen <jann...@gnu.org> wrote: > Okay, yeah I tried > > --8<---------------cut here---------------start------------->8--- > guix shell qemu -- qemu-system-i386 \ > -m 4096 \ > --enable-kvm \ > --device rtl8139,netdev=net0 \ > --netdev user,id=net0,hostfwd=tcp:0.0.0.0:11022-:2222 \ > --snapshot \ > --no-reboot \ > --device virtio-serial-pci \ > --nographic \ > --serial mon:stdio \ > --hda debian-hurd-20220824.img \ > --kernel gnumach-1.8-486 \ > --append "root=part:2:device:wd0 console=com0" \ > --initrd "hurd/ext2fs.static ex2fs \ > --multiboot-command-line='\${kernel-command-line}' \ > --host-priv-port='\${host-port}' \ > --device-master-port='\${device-port}' \ > --exec-server-task='\${exec-task}' \ > --store-type=typed \ > --x-xattr-translator-records \ > '\${root}' \ > '\$(task-create)' \ > '\$(task-resume)' \ > hurd/exec.static exec \ > '\$(exec-task=task-create)'" > --8<---------------cut here---------------end--------------->8--- > > but that stops here > > --8<---------------cut here---------------start------------->8--- > module 0: hurd/ext2fs.static ex2fs > --multiboot-command-line='${kernel-command-line}' > --host-priv-port='${host-port}' > --device-master-port='${device-port}' > --exec-server-task='${exec-task}' --store-type=typed > --x-xattr-translator-records > '${root}' > '$(task-create)' '$(task-resume)' > hurd/exec.static exec > '$(exec-task=task-create)' > 1 multiboot modules > --8<---------------cut here---------------end--------------->8---
See, it's only seeing a single bootstrap module, treating hurd/exec.static and the rest as just further arguments to hurd/ext2fs.static. I believe you have to separate modules with a comma -- see how I've done it in my previous letter. Here's what man qemu says: -initrd "file1 arg=foo,file2" This syntax is only available with multiboot. Use file1 and file2 as modules and pass arg=foo as parameter to the first module. > When I use noide with > > > http://cdimage.debian.org/cdimage/ports/latest/hurd-i386/debian-hurd-20220824.img > > like so > > multiboot /boot/gnumach-1.8-486.gz root=part:2:device:wd0 console=com0 > noide > > I get > > ext2fs: part:2:device:wd0: No such device or address Wait, no, don't try that with an installer image (that's what "cdimage" is, right?). Install it properly first and boot the installed system. The installation image, as I understand from Samuel's explanations, does not actually access the drive/cdrom, it's located on a ramdisk that is loaded into RAM by GRUB. > see full log attached. The root (disk) is already in the format that > rump expects, rigth? Not that I know anything about rump, but my understanding is it does not care about the format, it's ext2fs that does. rumpdisk simply exposes the device. > Is there anything else I'd need to do; I would > like to get this to work on Debian first! Using rumpdisk on Debian should be a matter of changing part:1:device:hd0 to part:1:device:wd0 (why part:2?), and adding noide. (Unless I'm misremembering, of course, and note I'm not at all qualified to talk about any of this). Sergey