There's lots of info on the net on achieving that, but I found it a bit too scattered, and had to combine instructions from multiple sources.
I'm not certain it's the right way, but it worked™. So I'll share, and get your feedback in case I've done anything stupid:
- Convert VMDKs (VM's disk), even when having multiple files, to qcow2 format (note: QVM/QEMU should be able to deal with vmdk files (multiple as well?), so possibly this step is redundant)
qemu-img convert <vmdk wildcard> <qcow2 file>
- Convert the vmx (VM's settings) to xml (requires vmware2libvirt tool found in virt-goodies package)
vmware2libvirt -f <source.vmx> > target.xml
- import the xml:
virsh -c qemu:///system define file.xml
- re-add the disk as a qcow2 disk:
Shame on me, I did it through the GUI:
- Run virt-manager
- You should see the new VM now, cool! Open it.
- From the view menu, switch to 'details' mod
- Remove the existing (VMDK) disk, and re-add the qcow2 disk instead:
- Find the disk and remove it from the VM. Your probably want to make sure the checkbox for deleting the data is unchecked.
- Add Hardware -> Storage -> Select "managed or other existing storage" -> Browse -> choose your qcow2 file
- At "device type" select box, choose the proper type (IDE worked for me)
- At "storage format" select box, choose 'qcow2'.
- Click "Finish"
- Uninstall vmware
A few notes:
- I used a very simple VM configuration (e.g. Linux, single harddisk, NAT networking, no sound)
- I guess I lost the original snapshots