From fcbc7ad6e43184a907f0db1ca235ea92cff4b0bf Mon Sep 17 00:00:00 2001 From: grizzlyuser Date: Sat, 17 Oct 2020 15:33:07 +0300 Subject: [virt-manager]: upgrade to v3.1.0 --- libre/virt-manager/PKGBUILD | 36 ++-- libre/virt-manager/libre.patch | 426 +++++++++++++++++++++++++++-------------- 2 files changed, 300 insertions(+), 162 deletions(-) diff --git a/libre/virt-manager/PKGBUILD b/libre/virt-manager/PKGBUILD index fe51f369c..2a93e4259 100644 --- a/libre/virt-manager/PKGBUILD +++ b/libre/virt-manager/PKGBUILD @@ -4,23 +4,25 @@ # Contributor (Arch): Jonathan Wiersma # Maintainer (Hyperbola): André Silva # Maintainer: Omar Vega Ramos +# Contributor: grizzlyuser pkgbase=virt-manager pkgname=(virt-install) -pkgver=2.2.1 +pkgver=3.1.0 pkgrel=1 -pkgrel+=.par2 -pkgdesc="Console user interface for managing virtual machines" +pkgrel+=.par1 +pkgdesc="Command line tool for creating new KVM , Xen, or Linux container guests using the libvirt hypervisor" pkgdesc+=", without non-FSDG compliant distros and operating systems support" arch=('any') url="https://virt-manager.org/" license=('GPL') depends=('libosinfo' 'libvirt-python' 'python-gobject' 'python-requests') -makedepends=('intltool') +makedepends=('python-docutils') +checkdepends=('python-pytest' 'cpio' 'cdrtools') source=("https://virt-manager.org/download/sources/virt-manager/virt-manager-$pkgver.tar.gz" 'libre.patch') -sha512sums=('aa97af52b3552c087beab8701762c21e8e6d818c9787d5376ed4e1ae40a34d5e8870c4c00fda9cb17a2340d1dff5b17e853182df720cdd9ea4c91cf01502a33a' - '8858c3994da18cf704a5d4a715708ccb39d6e16e89890b7207709f2c5227abc03355d79172ed05ae8837d91b841f3c0d1b533e5bf56756c645192d20f36ffd80') +b2sums=('729a16ee419cfc9f118e4a59336e961f17f38908ab3aaa3598c83bff3e8bca75b150f0f38b021c5ccb839a7c43e87f071859f68c2a81425715e236e14d0a7929' + 'c4b8369bfc78a0603e511a772a2570b84cafdc1cbac553ed9995bb18cdf7259835bb19d1e3120e49f86e19db9b6eb577cf75c3527cfad855c616acd09b3de048') prepare() { cd "$srcdir/$pkgbase-$pkgver" @@ -28,21 +30,23 @@ prepare() { } build() { - cd "$srcdir/$pkgbase-$pkgver" + cd $pkgbase-$pkgver + python setup.py configure --default-hvs qemu,lxc python setup.py build } package_virt-install() { - cd "$srcdir/$pkgbase-$pkgver" + cd $pkgbase-$pkgver python setup.py --no-update-icon-cache --no-compile-schemas install --root "$pkgdir" - python -m compileall "${pkgdir}/usr/share/virt-manager" - python -O -m compileall "${pkgdir}/usr/share/virt-manager" + python -m compileall "$pkgdir"/usr/share/virt-manager + python -O -m compileall "$pkgdir"/usr/share/virt-manager # Split virt-manager - [[ -d $srcdir/virt-manager ]] && rm -r "$srcdir/virt-manager/" - mkdir "$srcdir"/virt-manager - mv "$pkgdir"/usr/bin/virt-manager \ - "$pkgdir"/usr/share/{appdata,applications,glib-2.0,icons}/ \ - "$pkgdir"/usr/share/man/man1/virt-manager.1 \ - "$srcdir/virt-manager/" + [[ -d "$srcdir"/virt-manager ]] && rm -r "$srcdir"/virt-manager/ + mkdir -p "$srcdir"/split/usr/{bin,share/{man/man1,virt-manager}} + mv "$pkgdir"/usr/bin/virt-manager "$srcdir"/split/usr/bin/ + mv "$pkgdir"/usr/share/{applications,glib-2.0,icons,metainfo} "$srcdir"/split/usr/share/ + mv "$pkgdir"/usr/share/man/man1/virt-manager.1 "$srcdir"/split/usr/share/man/man1/ + mv "$pkgdir"/usr/share/virt-manager/{icons,ui,virtManager} "$srcdir"/split/usr/share/virt-manager/ } + diff --git a/libre/virt-manager/libre.patch b/libre/virt-manager/libre.patch index dd7b6ac7a..54a3dc43b 100644 --- a/libre/virt-manager/libre.patch +++ b/libre/virt-manager/libre.patch @@ -1,217 +1,328 @@ ---- virt-manager-2.2.0.orig/man/virt-install.pod 2019-06-17 00:20:11.000000000 -0500 -+++ virt-manager-2.2.0/man/virt-install.pod 2019-06-22 22:24:40.692771325 -0500 -@@ -10,7 +10,7 @@ - - =head1 DESCRIPTION - --B is a command line tool for creating new KVM, Xen, or Linux -+B is a command line tool for creating new KVM, Xen, or GNU/Linux - container guests using the C hypervisor management library. - See the EXAMPLES section at the end of this document to quickly get started. - -@@ -70,7 +70,7 @@ - - =item lxc:/// - --For creating linux containers -+For creating GNU/Linux containers - - =back - -@@ -455,28 +455,6 @@ - - =back +diff --git a/man/virt-install.rst b/man/virt-install.rst +index 963f956..a7a4b0a 100644 +--- a/man/virt-install.rst ++++ b/man/virt-install.rst +@@ -625,20 +625,6 @@ DIRECTORY + boot, so the OS installer will need another way to access the rest of the + install media. -Some distro specific url samples: - --=over 4 +-Fedora/Red Hat Based +- https://download.fedoraproject.org/pub/fedora/linux/releases/29/Server/x86_64/os - --=item Fedora/Red Hat Based +-Debian +- https://ftp.us.debian.org/debian/dists/stable/main/installer-amd64/ - --https://download.fedoraproject.org/pub/fedora/linux/releases/29/Server/x86_64/os +-Ubuntu +- https://us.archive.ubuntu.com/ubuntu/dists/wily/main/installer-amd64/ - --=item Debian +-Suse +- https://download.opensuse.org/pub/opensuse/distribution/leap/42.3/repo/oss/ - --https://ftp.us.debian.org/debian/dists/stable/main/installer-amd64/ + Additionally, --location can take 'kernel' and 'initrd' sub options. These paths + relative to the specified location URL/ISO that allow selecting specific files + for kernel/initrd within the install tree. This can be useful if virt-install/ +@@ -702,21 +688,12 @@ command has multiple subarguments, similar to --disk and friends. This + option is strictly for VM install operations, essentially configuring the + first boot. + +-The simplest usage to ex: install fedora29 is: - --=item Ubuntu +-.. code-block:: - --https://us.archive.ubuntu.com/ubuntu/dists/wily/main/installer-amd64/ +- --install fedora29 - --=item Suse +-And virt-install will fetch a --location URL from libosinfo, and populate +-defaults from there. - --https://download.opensuse.org/pub/opensuse/distribution/leap/42.3/repo/oss/ + Available suboptions: + + ``os=`` +- This is os install option described above. The explicit way to specify that +- would be ``--install os=fedora29`` . os= is the default option if none is +- specified ++ This is os install option for virt-install to fetch a --location URL from ++ libosinfo for specified OS name, and populate defaults from there. os= is ++ the default option if none is specified. + + ``kernel=``, ``initrd=`` + Specify a kernel and initrd pair to use as install media. They are copied +@@ -784,19 +761,7 @@ device will be added. + + Perform an unattended install using libosinfo's install script support. + This is essentially a database of auto install scripts for various +-distros: Red Hat kickstarts, Debian installer scripting, Windows +-unattended installs, and potentially others. The simplest invocation +-is to combine it with --install like: - --=back +-.. code-block:: +- +- --install fedora29 --unattended +- +-A Windows install will look like +- +-.. code-block:: +- +- --cdrom /path/to/my/windows.iso --unattended ++distros. The simplest invocation is to combine it with --install. + + Sub options are: + +@@ -827,9 +792,6 @@ Sub options are: + Note that only the first line of the file will be considered, including + any whitespace characters and excluding new-line. + +-``product-key=`` +- Set a Windows product key - - Additionally, --location can take 'kernel' and 'initrd' sub options. These paths - relative to the specified location URL/ISO that allow selecting specific files - for kernel/initrd within the install tree. This can be useful if virt-install/ -@@ -719,10 +697,9 @@ - =item B<--os-variant> OS_VARIANT + + ``--cloud-init`` +@@ -971,21 +933,19 @@ GUEST OS OPTIONS + + **Syntax:** ``--os-variant`` [OS_VARIANT|OPT1=VAL1,...] -Optimize the guest configuration for a specific operating system (ex. -'fedora29', 'rhel7', 'win10'). While not required, specifying this -options is HIGHLY RECOMMENDED, as it can greatly increase performance -by specifying virtio among other guest tweaks. -+Optimize the guest configuration for a specific operating system. While not -+required, specifying this options is HIGHLY RECOMMENDED, as it can greatly -+increase performance by specifying virtio among other guest tweaks. ++Optimize the guest configuration for a specific operating system. ++While not required, specifying this options is HIGHLY RECOMMENDED, as ++it can greatly increase performance by specifying virtio among other ++guest tweaks. + +-The simplest usage is ``--os-variant OS-NAME``, for example +-``--os-variant fedora32``. ``--os-variant`` supports explicit suboption +-syntax as well: ++The simplest usage is ``--os-variant OS-NAME``. ``--os-variant`` supports ++explicit suboption syntax as well: - By default, virt-install will attempt to auto detect this value from - the install media (currently only supported for URL installs). Autodetection -@@ -891,7 +868,7 @@ + ``name=``, ``short-id=`` +- The OS name/short-id from libosinfo. Examples: ``fedora32``, ``win10`` ++ The OS name/short-id from libosinfo. - =item B + ``id=`` +- The full URL style libosinfo ID. For example, ``name=win10`` is +- the same as ``id=http://microsoft.com/win/10`` ++ The full URL style libosinfo ID. --Serial number of the emulated disk device. This is used in linux guests -+Serial number of the emulated disk device. This is used in GNU/Linux guests - to set /dev/disk/by-id symlinks. An example serial number might be: - WD-WMAP9A966149 + ``detect=on|off`` + Whether virt-install should attempt OS detection from the specified +@@ -1157,7 +1117,7 @@ Some example device configuration suboptions: + "stop", "ignore", or "enospace" -@@ -923,7 +900,7 @@ + ``serial`` +- Serial number of the emulated disk device. This is used in linux guests ++ Serial number of the emulated disk device. This is used in GNU/Linux guests + to set /dev/disk/by-id symlinks. An example serial number might be: + WD-WMAP9A966149 - --filesystem /source/on/host,/target/point/in/guest +@@ -1185,7 +1145,7 @@ invocation is: + + --filesystem /source/on/host,/target/point/in/guest -Which will work for recent QEMU and linux guest OS or LXC containers. For +Which will work for recent QEMU and GNU/Linux guest OS or LXC containers. For QEMU, the target point is just a mounting hint in sysfs, so will not be automatically mounted. -@@ -1796,49 +1773,6 @@ - - =head1 EXAMPLES +@@ -2052,69 +2012,6 @@ The debugging information is also stored in + EXAMPLES + ======== -The simplest invocation to interactively install a Fedora 29 KVM VM --with recommended defaults. L will be launched to +-with recommended defaults. virt-viewer(1) will be launched to -graphically interact with the VM install - -- # sudo virt-install --install fedora29 +-.. code-block:: +- +- # sudo virt-install --install fedora29 +- +- - -Similar, but use libosinfo's unattended install support, which will -perform the fedora29 install automatically without user intervention: - -- # sudo virt-install --install fedora29 --unattended +-.. code-block:: +- +- # sudo virt-install --install fedora29 --unattended +- +- - -Install a Windows 10 VM, using 40GiB storage in the default location -and 4096MiB of ram, and ensure we are connecting to the system libvirtd -instance: - -- # virt-install \ -- --connect qemu:///system \ -- --name my-win10-vm \ -- --memory 4096 \ -- --disk size=40 \ -- --os-variant win10 \ -- --cdrom /path/to/my/win10.iso +-.. code-block:: +- +- # virt-install \ +- --connect qemu:///system \ +- --name my-win10-vm \ +- --memory 4096 \ +- --disk size=40 \ +- --os-variant win10 \ +- --cdrom /path/to/my/win10.iso +- +- - -Install a CentOS 7 KVM from a URL, with recommended device defaults and --default required storag,e but specifically request VNC graphics instead +-default required storage, but specifically request VNC graphics instead -of the default SPICE, and request 8 virtual CPUs and 8192 MiB of memory: - -- # virt-install \ -- --connect qemu:///system \ -- --memory 8192 \ -- --vcpus 8 \ -- --graphics vnc \ -- --os-variant centos7.0 \ -- --location http://mirror.centos.org/centos-7/7/os/x86_64/ +-.. code-block:: +- +- # virt-install \ +- --connect qemu:///system \ +- --memory 8192 \ +- --vcpus 8 \ +- --graphics vnc \ +- --os-variant centos7.0 \ +- --location http://mirror.centos.org/centos-7/7/os/x86_64/ +- +- - -Create a VM around an existing debian9 disk image: - -- # virt-install \ -- --import \ -- --memory 512 \ -- --disk /home/user/VMs/my-debian9.img \ -- --os-variant debian9 +-.. code-block:: +- +- # virt-install \ +- --import \ +- --memory 512 \ +- --disk /home/user/VMs/my-debian9.img \ +- --os-variant debian9 +- +- - Start serial QEMU ARM VM, which requires specifying a manual kernel. - # virt-install \ ---- virt-manager-2.2.0.orig/man/virt-xml.pod 2019-06-17 00:20:11.000000000 -0500 -+++ virt-manager-2.2.0/man/virt-xml.pod 2019-06-22 22:31:26.052767093 -0500 -@@ -176,10 +176,9 @@ + .. code-block:: +diff --git a/man/virt-xml.rst b/man/virt-xml.rst +index 7ff7cec..9d9dcd5 100644 +--- a/man/virt-xml.rst ++++ b/man/virt-xml.rst +@@ -181,10 +181,9 @@ GUEST OS OPTIONS + ================ + + ``--os-variant``, ``--osinfo`` OS_VARIANT +- Optimize the guest configuration for a specific operating system (ex. +- 'fedora29', 'rhel7', 'win10'). While not required, specifying this +- options is HIGHLY RECOMMENDED, as it can greatly increase performance +- by specifying virtio among other guest tweaks. ++ Optimize the guest configuration for a specific operating system. While not ++ required, specifying this options is HIGHLY RECOMMENDED, as it can greatly ++ increase performance by specifying virtio among other guest tweaks. + + If the guest has been installed using virt-manager version 2.0.0 or newer, + providing this information should not be necessary, as the OS variant will +@@ -299,34 +298,6 @@ Change the of domain 'EXAMPLE': + # virt-xml EXAMPLE --edit --boot menu=on - =item B<--os-variant> OS_VARIANT - --Optimize the guest configuration for a specific operating system (ex. --'fedora29', 'rhel7', 'win10'). While not required, specifying this --options is HIGHLY RECOMMENDED, as it can greatly increase performance --by specifying virtio among other guest tweaks. -+Optimize the guest configuration for a specific operating system. While not -+required, specifying this options is HIGHLY RECOMMENDED, as it can greatly -+increase performance by specifying virtio among other guest tweaks. - - If the guest has been installed using virt-manager version 2.0.0 or newer, - providing this information should not be necessary, as the OS variant will -@@ -342,63 +341,10 @@ - - # virt-xml EXAMPLE --edit --boot menu=on -Clear the previous definition of domain 'winxp', change it to 'host-model', but interactively confirm the diff before saving: - -- # virt-xml winxp --edit --cpu host-model,clearxml=yes --confirm +-.. code-block:: +- +- # virt-xml winxp --edit --cpu host-model,clearxml=yes --confirm +- - -Change the second sound card to model=ich6 on 'fedora19', but only output the diff: - -- # virt-xml fedora19 --edit 2 --sound model=ich6 --print-diff +-.. code-block:: +- +- # virt-xml fedora19 --edit 2 --sound model=ich6 --print-diff +- - -Update the every graphics device password to 'foo' of the running VM 'rhel6': - -- # virt-xml rhel6 --edit all --graphics password=foo --update +-.. code-block:: +- +- # virt-xml rhel6 --edit all --graphics password=foo --update +- - -Remove the disk path from disk device hdc: - -- # virt-xml rhel6 --edit target=hdc --disk path= +-.. code-block:: +- +- # virt-xml rhel6 --edit target=hdc --disk path= +- - Change all disk devices of type 'disk' to use cache=none, using XML from stdin, printing the new XML to stdout. - # cat | virt-xml --edit device=disk --disk cache=none + .. code-block:: +@@ -334,67 +305,6 @@ Change all disk devices of type 'disk' to use cache=none, using XML from stdin, + # cat | virt-xml --edit device=disk --disk cache=none + -Change disk 'hda' IO to native and use startup policy as 'optional'. - -- # virt-xml fedora20 --edit target=hda \ -- --disk io=native,startup_policy=optional +-.. code-block:: +- +- # virt-xml fedora20 --edit target=hda \ +- --disk io=native,startup_policy=optional +- - -Change all host devices to use driver_name=vfio for VM 'fedora20' on the remote connection - -- # virt-xml --connect qemu+ssh://remotehost/system \ -- fedora20 --edit all --hostdev driver_name=vfio +-.. code-block:: +- +- # virt-xml --connect qemu+ssh://remotehost/system \ +- fedora20 --edit all --hostdev driver_name=vfio +- - -Hotplug host USB device 001.003 to running domain 'fedora19': - -- # virt-xml fedora19 --update --add-device --hostdev 001.003 +-.. code-block:: +- +- # virt-xml fedora19 --update --add-device --hostdev 001.003 +- - -Add a spicevmc channel to the domain 'winxp', that will be available after the next VM shutdown. - -- # virt-xml winxp --add-device --channel spicevmc +-.. code-block:: +- +- # virt-xml winxp --add-device --channel spicevmc +- - -Create a 10G qcow2 disk image and attach it to 'fedora18' for the next VM startup: - -- # virt-xml fedora18 --add-device \ -- --disk /var/lib/libvirt/images/newimage.qcow2,format=qcow2,size=10 +-.. code-block:: +- +- # virt-xml fedora18 --add-device \ +- --disk /var/lib/libvirt/images/newimage.qcow2,format=qcow2,size=10 +- - -Same as above, but ensure the disk is attached to the most appropriate bus -for the guest OS by providing information about it on the command line: - -- # virt-xml fedora18 --os-variant fedora18 --add-device \ -- --disk /var/lib/libvirt/images/newimage.qcow2,format=qcow2,size=10 +-.. code-block:: +- +- # virt-xml fedora18 --os-variant fedora18 --add-device \ +- --disk /var/lib/libvirt/images/newimage.qcow2,format=qcow2,size=10 +- - -Hotunplug the disk vdb from the running domain 'rhel7': - -- # virt-xml rhel7 --update --remove-device --disk target=vdb +-.. code-block:: +- +- # virt-xml rhel7 --update --remove-device --disk target=vdb +- - -Remove all graphics devices from the VM 'rhel7' after the next shutdown: - -- # virt-xml rhel7 --remove-device --graphics all +-.. code-block:: +- +- # virt-xml rhel7 --remove-device --graphics all +- - Generate XML for a virtio console device and print it to stdout: - # virt-xml --build-xml --console pty,target_type=virtio ---- virt-manager-2.2.0.orig/virtinst/osdict.py 2019-06-17 00:20:11.000000000 -0500 -+++ virt-manager-2.2.0/virtinst/osdict.py 2019-06-22 22:35:02.212764836 -0500 -@@ -124,49 +124,7 @@ + .. code-block:: +diff --git a/virtinst/osdict.py b/virtinst/osdict.py +index 3be1d10..0debfa7 100644 +--- a/virtinst/osdict.py ++++ b/virtinst/osdict.py +@@ -132,49 +132,7 @@ class _OSDB(object): # This is only for back compatibility with pre-libosinfo support. # This should never change. _aliases = { @@ -261,9 +372,11 @@ "other": "generic", } ---- virt-manager-2.2.0.orig/virtinst/install/urldetect.py 2019-06-17 00:20:11.000000000 -0500 -+++ virt-manager-2.2.0/virtinst/install/urldetect.py 2019-06-22 22:43:13.122759711 -0500 -@@ -173,109 +173,6 @@ +diff --git a/virtinst/install/urldetect.py b/virtinst/install/urldetect.py +index a73b0bf..1588f0c 100644 +--- a/virtinst/install/urldetect.py ++++ b/virtinst/install/urldetect.py +@@ -177,109 +177,6 @@ class _DistroCache(object): return True @@ -299,7 +412,7 @@ - if not distro_arch and "REPOID" in self.content_dict: - distro_arch = self.content_dict["REPOID"].rsplit('/', 1)[1] - if not distro_arch: -- return None +- return None # pragma: no cover - - tree_arch = distro_arch.strip() - # Fix for 13.2 official oss repo @@ -346,7 +459,7 @@ - # - # As of 2018 all latest distros match only DISTRO and REPOID. - if not self.product_name: -- return None +- return None # pragma: no cover - - distro_version = self.content_dict.get("VERSION", "") - if "-" in distro_version: @@ -373,8 +486,8 @@ def getDistroStore(guest, fetcher, skip_error): log.debug("Finding distro store for location=%s", fetcher.location) -@@ -388,403 +285,6 @@ - return self.cache.libosinfo_mediaobj +@@ -400,422 +297,6 @@ class _DistroTree(object): + return self.cache.libosinfo_treeobj -class _FedoraDistro(_DistroTree): @@ -406,10 +519,10 @@ - if OSDB.lookup_os(variant): - return variant - -- log.debug( # pragma: no cover +- log.debug( - "variant=%s from treeinfo version=%s not found, " - "using latest_variant=%s", variant, verstr, latest_variant) -- return latest_variant # pragma: no cover +- return latest_variant - - -class _RHELDistro(_DistroTree): @@ -423,10 +536,11 @@ - # Red Hat Enterprise Linux - # RHEL Atomic Host - famregex = ".*(Red Hat Enterprise Linux|RHEL).*" -- return cache.treeinfo_family_regex(famregex) +- if cache.treeinfo_family_regex(famregex): +- return True - - def _detect_version(self): -- if not self.cache.treeinfo_version: +- if not self.cache.treeinfo_version: # pragma: no cover - log.debug("No treeinfo version? Not setting an os_variant") - return - @@ -451,8 +565,11 @@ - - @classmethod - def is_valid(cls, cache): -- famregex = ".*(CentOS|Scientific).*" -- return cache.treeinfo_family_regex(famregex) +- if cache.treeinfo_family_regex(".*CentOS.*"): +- return True +- if cache.treeinfo_family_regex(".*Scientific.*"): +- return True +- - - -class _SuseDistro(_RHELDistro): @@ -475,7 +592,7 @@ - - try: - cache.suse_content = _SUSEContent(content_str) -- except Exception as e: +- except Exception as e: # pragma: no cover - log.debug("Error parsing SUSE content file: %s", str(e)) - return False - @@ -528,19 +645,13 @@ - - def _detect_osdict_from_suse_content(self): - if not self.cache.suse_content: -- return +- return # pragma: no cover - - distro_version = self.cache.suse_content.product_version - if not distro_version: -- return +- return # pragma: no cover - - version = distro_version.split('.', 1)[0].strip() -- if len(version) == 8: -- # Tumbleweed 8 digit date -- return "opensusetumbleweed" -- -- if int(version) < 10: -- return self._variant_prefix + "9" - - if str(self._variant_prefix).startswith(("sles", "sled")): - sp_version = "" @@ -629,6 +740,8 @@ - media_type = None - if check_manifest("current/images/MANIFEST"): - media_type = "url" +- elif check_manifest("current/legacy-images/MANIFEST"): +- media_type = "legacy_url" - elif check_manifest("daily/MANIFEST"): - media_type = "daily" - elif cache.content_regex(".disk/info", @@ -672,7 +785,7 @@ - if arch in self.uri: - log.debug("Found treearch=%s in uri", arch) - if arch == "x86_64": -- arch = "amd64" +- arch = "amd64" # pragma: no cover - return arch - - # Otherwise default to i386 @@ -686,6 +799,8 @@ - url_prefix = "daily" - elif self.cache.debian_media_type == "mounted_iso_url": - url_prefix = "install" +- elif self.cache.debian_media_type == "legacy_url": +- url_prefix = "current/legacy-images" - - tree_arch = self._find_treearch() - hvmroot = "%s/netboot/%s-installer/%s/" % (url_prefix, @@ -743,7 +858,7 @@ - codename = osobj.codename.split()[0].lower() - else: - if " " not in osobj.label: -- continue +- continue # pragma: no cover - # Debian labels look like 'Debian Sarge' - codename = osobj.label.split()[1].lower() - @@ -766,18 +881,35 @@ - - @classmethod - def is_valid(cls, cache): -- return cache.content_regex("VERSION", ".*Mageia.*") +- if not cache.mageia_version: +- content = cache.acquire_file_content("VERSION") +- if not content: +- return False +- +- m = re.match(r"^Mageia (\d+) .*", content) +- if not m: +- return False # pragma: no cover +- +- cache.mageia_version = m.group(1) +- +- return bool(cache.mageia_version) - - def _set_manual_kernel_paths(self): - self._kernel_paths += [ - ("isolinux/%s/vmlinuz" % self.arch, - "isolinux/%s/all.rdz" % self.arch)] - +- def _detect_version(self): +- # version is just an integer +- variant = "mageia" + self.cache.mageia_version +- if OSDB.lookup_os(variant): +- return variant +- - class _GenericTreeinfoDistro(_DistroTree): """ Generic catchall class for .treeinfo using distros -@@ -824,15 +324,6 @@ +@@ -855,15 +336,6 @@ def _build_distro_list(osobj): allstores = [ # Libosinfo takes priority _LibosinfoDistro, @@ -793,9 +925,11 @@ # Always stick GenericDistro at the end, since it's a catchall _GenericTreeinfoDistro, ] ---- virt-manager-2.2.0.orig/virtManager/oslist.py 2019-06-17 00:20:11.000000000 -0500 -+++ virt-manager-2.2.0/virtManager/oslist.py 2019-06-22 22:48:03.832756676 -0500 -@@ -55,7 +55,8 @@ +diff --git a/virtManager/oslist.py b/virtManager/oslist.py +index 8796c96..05d5d2e 100644 +--- a/virtManager/oslist.py ++++ b/virtManager/oslist.py +@@ -55,7 +55,8 @@ class vmmOSList(vmmGObjectUI): all_os = virtinst.OSDB.list_os() for os in all_os: -- cgit v1.2.3