Hi all,
I'm stuck trying to figure out how to manage iso's in libvirt. It seems like all `virsh --connect qemu:///system` commands work correctly, but `virt-install --connect qemu:///system --osinfo detect=on,require=on` will use libosinfo, which can't read volumes owned by root.
```
(osdict:119) Error creating libosinfo media object: g-io-error-quark: Failed to open file: Error opening file /var/lib/libvirt/test/Win10_22H2_English_x64.iso: Permission denied (14)
```
(osdict:119) Error creating libosinfo media object: g-io-error-quark: Failed to open file: Error opening file /var/lib/libvirt/test/Win10_22H2_English_x64.iso: Permission denied (14)
# (Then the last line the output later on):
ERROR (cli:257) --os-variant/--osinfo OS name is required, but no value was set or detected.
ERROR (cli:257) --os-variant/--osinfo OS name is required, but no value was set or detected.
```
The iso is a libvirt volume, created with `virsh --connect qemu:///system vol-create-as` to be the same size as the iso, then data uploaded to it with `virsh --connect qemu:///system vol-upload`. I read somewhere this was the recommended way since it lets libvirt handle the permissions.
I also saw after that the pool xml supports setting a owner/group ID, so I tried creating a new pool with those set to my user (1000:1000), and uploaded a volume to that. When I tried `ls -halt <pool>`, it showed the volume itself is still owned by root so I still hit the same error. There's no command in virsh I saw either to upload and respect the pool's permissions.
Do you know if I'm on the right track at least? Is there a better way to manage iso and/or permissions? I'm writing a library, so I don't want it to jump to root for chown/chmod the isos after uploading or anything similar. (Which is why I was really hopeful with pools supporting uid:gid's, you don't need sudo to set it in the xml). My user is added to the libvirt group.
Thanks for your time!
Cameron