community/gnome-boxes: can't create a VM, "this QEMU binary lacks smartcard passthrough mode support"
When creating a VM with a custom ISO in gnome-boxes:
** (gnome-boxes:8650): CRITICAL **: 17:44:02.429: osinfo_media_supports_installer_script: assertion 'OSINFO_IS_MEDIA(media)' failed
(gnome-boxes:8650): Boxes-WARNING **: 17:44:02.520: review-page.vala:32: Box setup failed: Failed to create domain: unsupported configuration: this QEMU binary lacks smartcard passthrough mode support
(gnome-boxes:8650): Boxes-CRITICAL **: 17:44:02.520: boxes_assistant_review_page_populate: assertion 'machine != NULL' failed
From my understanding, this is caused by boxes trying to force smartcard support despite it being disabled in our qemu build.
I can think of two ways to fix this:
- Disable smartcard support in gnome-boxes; seems like at some point smartcard support detection was done correctly, but this was dropped in this commit. Reverting it should theoretically fix the issue.
- Edit the QEMU package to enable smartcard support. The main problem with that is that it would require adding an extra package,
libcacard
.
I tried doing it in both approaches:
- In the case of the first one, the code has changed quite a bit and just reverting the patch doesn't really work; seems to complain about the if statements I added. (Also needed a build info change because the project has moved from autoconf to meson since that commit, but I don't think this is the problem.)
- In the case of the second one, adding
libcacard
is problematic because it would require us to put it in main (asspice
itself is in main, and it too has to be updated for this to work), and that would require us to put nss and opensc in main as well (although they don't seem to have any further dependencies in community)... no clue if anyone would ever agree to that🙃 See !25160 (closed) for an implementation if you're interested.
Edited by knuxify