Hi! I'm using guix on a foreign distro (Debian 9) and I'm already using libvirtd to manage some KVM guests; I'd like to also manage "guix system vm" generated ones using libvirt it would be great to be able to automatically manage the (re)definition of VMs (and containers?) on - possibly remote - libvirtd servers using a distributedVM.scm config :-): WDYT? anyway... as for now it must be "manually" managed and this is what I'm doing: it fails at the end, what am I doing wrong? is there a better way to do it? 1. I save the "command line" from the script generated by "guix system vm" (except the last "@") calling this "container.minimal.args.orig --8<---------------cut here---------------start------------->8--- /gnu/store/4pnx934k40wni57r5swj2kr29l1j549f-qemu-3.1.0/bin/qemu-system-x86_64 -kernel /gnu/store/y5aiijqiqna1y8ypn6c0jp367813xxnc-linux-libre-4.20.3/bzImage -initrd /gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system/initrd -append "--root=/dev/vda1 --system=/gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system --load=/gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system/boot" -enable-kvm -no-reboot -net nic,model=virtio -object rng-random,filename=/dev/urandom,id=guixsd-vm-rng -device virtio-rng-pci,rng=guixsd-vm-rng -virtfs local,path="/gnu/store",security_model=none,mount_tag="TAGjoptajej2oynju6yvboauz7pl6uj" -vga std -drive file=/gnu/store/4mz1qqv7h5g5885q1aq0izlmy01knf1g-qemu-image,if=virtio,cache=writeback,werror=report,readonly -m 256 --8<---------------cut here---------------end--------------->8--- 2. try to convert it to libvirt XML domain definition --8<---------------cut here---------------start------------->8--- $ virsh --connect qemu:///system domxml-from-native qemu-argv container-minimal.args.orig error: internal error: malformed keyword arguments in 'file=/gnu/store/4mz1qqv7h5g5885q1aq0izlmy01knf1g-qemu-image,if=virtio,cache=writeback,werror=report,readonly' --8<---------------cut here---------------end--------------->8--- 3. remove the "readonly" keyword from the last "-drive" arg, calling this "container.minimal.args" (that *must* be then manually added to the XML definition) --8<---------------cut here---------------start------------->8--- /gnu/store/4pnx934k40wni57r5swj2kr29l1j549f-qemu-3.1.0/bin/qemu-system-x86_64 -kernel /gnu/store/y5aiijqiqna1y8ypn6c0jp367813xxnc-linux-libre-4.20.3/bzImage -initrd /gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system/initrd -append "--root=/dev/vda1 --system=/gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system --load=/gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system/boot" -enable-kvm -no-reboot -net nic,model=virtio -object rng-random,filename=/dev/urandom,id=guixsd-vm-rng -device virtio-rng-pci,rng=guixsd-vm-rng -virtfs local,path="/gnu/store",security_model=none,mount_tag="TAGjoptajej2oynju6yvboauz7pl6uj" -vga std -drive file=/gnu/store/4mz1qqv7h5g5885q1aq0izlmy01knf1g-qemu-image,if=virtio,cache=writeback,werror=report -m 256 --8<---------------cut here---------------end--------------->8--- 4. converting the file above --8<---------------cut here---------------start------------->8--- $ virsh --connect qemu:///system domxml-from-native qemu-argv container-minimal.args unnamed 894f668e-32a5-4331-9d30-8604b89ae359 262144 262144 1 hvm /gnu/store/y5aiijqiqna1y8ypn6c0jp367813xxnc-linux-libre-4.20.3/bzImage /gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system/initrd --root=/dev/vda1 --system=/gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system --load=/gnu/store/9xgqs9zf51i9binqjl5hgl8gl7ql40hc-system/boot destroy destroy destroy /gnu/store/4pnx934k40wni57r5swj2kr29l1j549f-qemu-3.1.0/bin/qemu-system-x86_64