Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 846821

Summary: app-emulation/virt-manager-4.0.0 missing dev-libs/libisoburn (xorriso) dependency
Product: Gentoo Linux Reporter: Ondrej Famera <ondrej-gentoo>
Component: Current packagesAssignee: Virtualization Team <virtualization>
Status: RESOLVED FIXED    
Severity: normal Keywords: PullRequest
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/26993
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge --info

Description Ondrej Famera 2022-05-22 01:26:36 UTC
virt-install script (part of app-emulation/virt-manager) is missing 'xorriso' dependency after upgrade from app-emulation/virt-manager-3.2.0-r1 to 4.0.0.
This affect the virt-install script when passing '--location /path/to/file.iso'.

Reproducible: Always

Steps to Reproduce:
1. Install virt-manager-4.0.0
2. Try to install VM using virt-install from ISO image (sample virt-install script can be found here - https://github.com/OndrejHome/fast-vm-public-images/blob/master/ol/ks/virt-install-ol-8.sh)

Actual Results:  
~~~
WARNING  --os-type is deprecated and does nothing. Please stop using it.
ERROR    Error validating install location: Could not find an installable distribution at URL '/mnt/iso_storage/oraclelinux/OracleLinux-R8-U6-x86_64-dvd.iso'

The location must be the root directory of an install tree.
See virt-install man page for various distro examples.
error: failed to get domain 'ol-8-fastvm-install'
~~~

- with added '--debug' parameter for virt-install
~~~
...
[Sun, 22 May 2022 10:04:32 virt-install 1191427] DEBUG (urlfetcher:34) Generating iso filelist: ['xorriso', '-indev', '/mnt/iso_storage/oraclelinux/OracleLinux-R8-U6-x86_64-dvd.iso', '-print', 'VIRTINST_BEGINLIST', '-find']
[Sun, 22 May 2022 10:04:32 virt-install 1191427] DEBUG (urldetect:45) Failed to acquire file=VERSION: Couldn't acquire file /VERSION: [Errno 2] No such file or directory: 'xorriso'
[Sun, 22 May 2022 10:04:32 virt-install 1191427] DEBUG (cli:255)   File "/usr/bin/virt-install", line 8, in <module>
    virtinstall.runcli()
  File "/usr/share/virt-manager/virtinst/virtinstall.py", line 1220, in runcli
    sys.exit(main())
  File "/usr/share/virt-manager/virtinst/virtinstall.py", line 1207, in main
    guest, installer = build_guest_instance(conn, options)
  File "/usr/share/virt-manager/virtinst/virtinstall.py", line 646, in build_guest_instance
    installer_detect_distro(guest, installer, osdata)
  File "/usr/share/virt-manager/virtinst/virtinstall.py", line 555, in installer_detect_distro
    fail(_("Error validating install location: %s") % str(e))
  File "/usr/share/virt-manager/virtinst/cli.py", line 255, in fail
    log.debug("".join(traceback.format_stack()))

[Sun, 22 May 2022 10:04:32 virt-install 1191427] ERROR (cli:256) Error validating install location: Could not find an installable distribution at URL '/mnt/iso_storage/oraclelinux/OracleLinux-R8-U6-x86_64-dvd.iso'

The location must be the root directory of an install tree.
See virt-install man page for various distro examples.
[Sun, 22 May 2022 10:04:32 virt-install 1191427] DEBUG (cli:258) 
Traceback (most recent call last):
  File "/usr/share/virt-manager/virtinst/virtinstall.py", line 550, in installer_detect_distro
    autodistro = installer.detect_distro(guest)
  File "/usr/share/virt-manager/virtinst/install/installer.py", line 532, in detect_distro
    ret = self._treemedia.detect_distro(guest)
  File "/usr/share/virt-manager/virtinst/install/installertreemedia.py", line 306, in detect_distro
    cache = self._get_cached_data(guest, fetcher)
  File "/usr/share/virt-manager/virtinst/install/installertreemedia.py", line 185, in _get_cached_data
    store = urldetect.getDistroStore(guest, fetcher,
  File "/usr/share/virt-manager/virtinst/install/urldetect.py", line 320, in getDistroStore
    raise ValueError(msg)
ValueError: Could not find an installable distribution at URL '/mnt/iso_storage/oraclelinux/OracleLinux-R8-U6-x86_64-dvd.iso'

The location must be the root directory of an install tree.
See virt-install man page for various distro examples.
error: failed to get domain 'ol-8-fastvm-install'
~~~

Expected Results:  
virt-install will proceed without issues as it did before when using app-emulation/virt-manager-3.2.0-r1

Installing the 'dev-libs/libisoburn-1.5.4' that contains the 'xorriso' resolves the issue == same sample script with virt-install can be used without issues.
Comment 1 Ondrej Famera 2022-05-22 01:27:02 UTC
Created attachment 779705 [details]
emerge --info
Comment 2 slchris 2022-08-24 02:26:44 UTC
I have the same problem here


https://fars.ee/Zoh4

I installed dev-libs/libisoburn then work fine

I think this needs to be modified ebuild to add DEPEND dev-libs/libisoburn
Comment 3 Larry the Git Cow gentoo-dev 2022-08-24 21:55:05 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c47604dd4b63506358bc71b4926ebf5754186012

commit c47604dd4b63506358bc71b4926ebf5754186012
Author:     Chris Su <chris@lesscrowds.org>
AuthorDate: 2022-08-24 06:45:21 +0000
Commit:     John Helmert III <ajak@gentoo.org>
CommitDate: 2022-08-24 21:54:36 +0000

    app-emulation/virt-manager: add virt-install optfeature in pkg_postinst
    
    When using virt-install --location iso files, it will fail with missing
    dev-libs/libisoburn (xorriso) dependency
    
    Closes: https://bugs.gentoo.org/846821
    Signed-off-by: Chris Su <chris@lesscrowds.org>
    Closes: https://github.com/gentoo/gentoo/pull/26993
    Signed-off-by: John Helmert III <ajak@gentoo.org>

 app-emulation/virt-manager/virt-manager-4.1.0.ebuild | 1 +
 1 file changed, 1 insertion(+)