Trying to convert old images (Windows XP, Ubuntu 14.04).
Booting Windows XP
The converted Windows XP image does not work well. Someone suggested
virt-v2v as a replacement for
qemu-img convert. That does not work much better, because
virt-v2v apparently has some issue with multi-part vmdk files:
]$ virt-v2v -i disk /data/systems/Virtual\ Machines/Windows\ XP\ Professional.vmwarevm/Windows\ XP\ Professional.vmdk -o local -os /tmp libguestfs: trace: set_verbose true libguestfs: trace: set_verbose = 0 libguestfs: create: flags = 0, handle = 0xfb2df0, program = virt-v2v libguestfs: trace: get_cachedir libguestfs: trace: get_cachedir = "/var/tmp" libguestfs: trace: set_verbose true libguestfs: trace: set_verbose = 0 libguestfs: create: flags = 0, handle = 0xfb3960, program = virt-v2v libguestfs: trace: get_cachedir libguestfs: trace: get_cachedir = "/var/tmp" [ 0.0] Opening the source -i disk /data/systems/Virtual Machines/Windows XP Professional.vmwarevm/Windows XP Professional.vmdk libguestfs: trace: set_verbose true libguestfs: trace: set_verbose = 0 libguestfs: create: flags = 0, handle = 0xfb3d10, program = virt-v2v libguestfs: trace: disk_format "/data/systems/Virtual Machines/Windows XP Professional.vmwarevm/Windows XP Professional.vmdk" libguestfs: command: run: qemu-img libguestfs: command: run: \ info libguestfs: command: run: \ --output json libguestfs: command: run: \ /dev/fd/3 qemu-img: Could not open '/dev/fd/3': Could not open '/dev/fd/Windows XP Professional-s001.vmdk': No such file or directory libguestfs: trace: disk_format = NULL (error) virt-v2v: error: libguestfs error: qemu-img info: /data/systems/Virtual Machines/Windows XP Professional.vmwarevm/Windows XP Professional.vmdk: qemu-img info exited with error status 1, see debug messages above If reporting bugs, run virt-v2v with debugging enabled and include the complete output: virt-v2v -v -x [...] libguestfs: trace: close libguestfs: closing guestfs handle 0xfb3d10 (state 0) libguestfs: trace: close libguestfs: closing guestfs handle 0xfb3960 (state 0) libguestfs: trace: close libguestfs: closing guestfs handle 0xfb2df0 (state 0)
virt-v2v opens the file through
/dev/fd, and then goes in the wrong directory to open the sub-files of the
Ended up converting the disk image to contiguous file with VMware. That requires destroying all snapshots 😦 and it takes ages.
Filed Qemu feature request to have
qemu-img convert respond to
Installed the latest XQuartz. But for some reason it does not work until you actually reboot the system. I discovered that with another macBook.
There was a pending macOS update anyway, so good time to reboot. Updated macOS and Linux to latest. Stupid update takes over 30 minutes.
Booted on the Linux side to check if the issue I had with Tao3D exists when booting on real hardware. Answer is partly no. The display section shows up and I can draw things there, but the menus are still transparent. I will have to look into the window transparency option.
Apparently, the system update triggered my VMware bug. I tried the various boot options, and none of them seems to boot to graphical mode anymore 😦 [After testing five boot options] Found the right one,
Attempting to reinstall VMware tools, because VMware requires it to enable 3D acceleration.
Problem now is that VMware crashes every time I close the preferences dialog. Annoying, that. The good thing is that when VMware crashes, the virtual machine does not die. They were smart enough to make it a separate process.
Building Spice directly from Git
I temporarily give up building Spice with
jhbuild on the Mac. Since I need to install so many things with
brew anyway, I am more and more convinced that the right approach is to create a
So I started checking out and building the individual components in parallel on Mac and Linux (Big). On Fedora, obviously, it is quite easy. But building things in parallel allows me to see what might fail on the Mac and how it should be solved.
Building in the default locations only requires a little trick, setting
PKG_CONFIG_PATH to the default install locations. I chose to keep the packages I build in
/usr/local, I think it’s cleaner and less risky in case of update. There are two directories to add, because
spice-protocol.pc goes in
/usr/local/share/pkgconfig, whereas the other .pc files go into
Disk problem with Big
The last build, build of
virt-viewer, apparently hung for a while, then:
autom4te: cannot truncate autom4te.cache/requests at 0: Input/output error
Things quickly went south after that. Many operations failed with I/O errors. I rebooted the machine. The disk now shows “32 bad sectors”, it was only one yesterday (I remember looking at it after installation to check the sanity of the disk).