4 ms·
> Any suggestions for how to get help learning QEMU as a "power user" hoping to eventually contribute as a dev? I'd happily pay for consulting if I knew the rig
by asguy 4y ago
> Any suggestions for how to get help learning QEMU as a "power user" hoping to eventually contribute as a dev? I'd happily pay for consulting if I knew the right people to ask.
I'm not being cheeky: read the source.
I worked with qemu for years, and the only way I could get real answers was to find the libvirt functionality and work backwards from it. Once I got good enough with that, I could navigate the qemu codebase on my own and just read.
Almost all the docs are going into libvirt, and libvirt's (IMHO) terrible abstractions. The reality is that almost all the investment in qemu's user-facing capabilities are done via libvirt, so it makes sense.
- anderspitman 4y ago> find the libvirt functionality and work backwards from it This is a great suggestion, thanks. > Almost all the docs are going into libvirt, and libvirt's (IMHO) terrible abstractions. The reality is that almost all the investment in qemu's user-facing capabilities are done via libvirt, so it makes sense. Yeah it's unfortunate that not many people seem to use QEMU directly. I can't use libvirt for my project because a) I'm targeting windows and b) libvirt seems to assume that it will run with root privileges, and I'm targeting userspace. Honestly other than a few things like CPU pinning, I haven't seen much to justify libvirt over plain QEMU. This would be especially true if the QEMU CLI was simplified slightly and better documented.
- MegaDeKay 4y agoCPU pinning is something I'd really like to see in plain QEMU as well. Another is some equivalent to the pre- and post- hooks that libvirt supports, though I can get around this with a bash script.
- asguy 4y ago> I can't use libvirt for my project because ... Yah I had some similar constraints, also I just didn't want to bring the entire mess of libvirt into my project's life. > This would be especially true if the QEMU CLI was simplified slightly and better documented. I think this is the biggest issue. I can't complain because I haven't helped fix it, but the command line flag explosion, coupled with the qemu -readconfig/-writeconfig sucking is a big reason people just check out mentally and write big XML descriptions of their VMs.