On 4/8/22 11:01 PM, Cameron Showalter wrote: > Hi, > > I'm trying to learn libvirt enough have a python library around it to > manage VM's. I'm at the part where I'm trying to make almost any OS easy > to run based solely on the ISO. (For example: If I try to start a > Windows 10 VM, There's extra work to get the OS to see the qcow volume > during the install. But by creating one through the virt-manager GUI, it > see's it automatically. So this is something you've solved outside > libvirt). I'd like to get the same defaults as virt-manager into my > python package. To do this, any advice on the easiest / most stable > path? A couple ways I thought of: > > - Maybe add virt-manager as a submodule, and call your python scripts to > get the good default arguments? Is the back-end for your GUI stable > enough long term for something like this? > > - Do those defaults come straight from the `Libosinfo` library? And by > learning how to use that, it'll provide the default libvirt xml blocks I > can use for libvirt? For this type of thing most people call out directly to virt-install. It's the closest thing to an API for 'create a VM and give me good defaults'. Trying to use vendored virtinst/ code could work but you'll end up reimplementing parts of virtinstall.py. libosinfo is a critical piece but for virt-manager/virt-install usage it's mostly 'does this OS support virtio or not' and 'give me known install media location for OS $FOO' - Cole