diff -Nur virt-manager-2.2.0.orig/virtinst/install/urldetect.py virt-manager-2.2.0/virtinst/install/urldetect.py --- 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-07-03 02:14:35.978571412 -0500 @@ -466,6 +466,47 @@ return cache.treeinfo_family_regex(famregex) +class SlackwareDistro(_DistroTree): + # slackware doesn't have installable URLs, so this is just for a + # mounted ISO + name = "Slackware" + urldistro = "slackware" + os_variant = "linux" + + PRETTY_NAME = "Slackware" + matching_distros = ["slackware"] + _variant_prefix = "slackware" + + _boot_iso_paths = [] + _xen_kernel_paths = [] + + def __init__(self, *args, **kwargs): + Distro.__init__(self, *args, **kwargs) + if re.match(r'i[4-9]86', self.arch): + self.arch = 'i486' + self.kname = 'hugesmp.s' + else: + self.arch = 'x86_64' + self.kname = 'huge.s' + + self._hvm_kernel_paths = [("kernels/%s/bzImage" % self.kname, + "isolinux/initrd.img")] + + def isValidStore(self): + # Don't support any paravirt installs + if self.type is not None and self.type != "hvm": + return False + + # Slackware website / media appear to have a Slackware-HOWTO + # file in top level which we can use as our 'magic' + # check for validity + if not self.fetcher.hasFile("Slackware-HOWTO"): + return False + + logging.debug("Regex didn't match, not a %s distro", self.name) + return False + + class _SuseDistro(_RHELDistro): PRETTY_NAME = None _suse_regex = [] diff -Nur virt-manager-2.2.0.orig/virtinst/osdict.py virt-manager-2.2.0/virtinst/osdict.py --- 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-07-03 02:11:59.208399622 -0500 @@ -146,6 +146,7 @@ "rhel5": "rhel5.0", "rhel6": "rhel6.0", "rhel7": "rhel7.0", + "slackware": "slackware14.2", "ubuntuhardy": "ubuntu8.04", "ubuntuintrepid": "ubuntu8.10", "ubuntujaunty": "ubuntu9.04",