Index: virt-manager-1.0.0/setup.py =================================================================== --- virt-manager-1.0.0.orig/setup.py +++ virt-manager-1.0.0/setup.py @@ -310,8 +310,11 @@ class configure(Command): ("pkgversion=", None, "user specified version-id"), ("qemu-user=", None, "user libvirt uses to launch qemu processes (default=root)"), - ("libvirt-package-names=", None, - "list of libvirt distro packages virt-manager will check for on " + ("libvirt-kvm-package-names=", None, + "list of libvirt kvm distro packages virt-manager will check for on " + "first run. comma separated string (default=none)"), + ("libvirt-xen-package-names=", None, + "list of libvirt xen distro packages virt-manager will check for on " "first run. comma separated string (default=none)"), ("kvm-package-names=", None, "recommended kvm packages virt-manager will check for on first run " @@ -335,7 +338,8 @@ class configure(Command): self.prefix = sysprefix self.pkgversion = None self.qemu_user = None - self.libvirt_package_names = None + self.libvirt_kvm_package_names = None + self.libvirt_xen_package_names = None self.kvm_package_names = None self.askpass_package_names = None self.preferred_distros = None @@ -351,8 +355,10 @@ class configure(Command): template += "pkgversion = %s\n" % self.pkgversion if self.qemu_user is not None: template += "default_qemu_user = %s\n" % self.qemu_user - if self.libvirt_package_names is not None: - template += "libvirt_packages = %s\n" % self.libvirt_package_names + if self.libvirt_kvm_package_names is not None: + template += "libvirt_kvm_packages = %s\n" % self.libvirt_kvm_package_names + if self.libvirt_xen_package_names is not None: + template += "libvirt_xen_packages = %s\n" % self.libvirt_xen_package_names if self.kvm_package_names is not None: template += "hv_packages = %s\n" % self.kvm_package_names if self.askpass_package_names is not None: Index: virt-manager-1.0.0/virtcli/cliconfig.py =================================================================== --- virt-manager-1.0.0.orig/virtcli/cliconfig.py +++ virt-manager-1.0.0/virtcli/cliconfig.py @@ -86,5 +86,6 @@ stable_defaults = bool(int(_get_param("s preferred_distros = _split_list(_get_param("preferred_distros", "")) hv_packages = _split_list(_get_param("hv_packages", "")) askpass_package = _split_list(_get_param("askpass_packages", "")) -libvirt_packages = _split_list(_get_param("libvirt_packages", "")) +libvirt_kvm_packages = _split_list(_get_param("libvirt_kvm_packages", "")) +libvirt_xen_packages = _split_list(_get_param("libvirt_xen_packages", "")) default_graphics = _get_param("default_graphics", "spice") Index: virt-manager-1.0.0/virtManager/config.py =================================================================== --- virt-manager-1.0.0.orig/virtManager/config.py +++ virt-manager-1.0.0/virtManager/config.py @@ -160,7 +160,8 @@ class vmmConfig(object): self.stable_defaults = cliconfig.stable_defaults self.preferred_distros = cliconfig.preferred_distros self.hv_packages = cliconfig.hv_packages - self.libvirt_packages = cliconfig.libvirt_packages + self.libvirt_kvm_packages = cliconfig.libvirt_kvm_packages + self.libvirt_xen_packages = cliconfig.libvirt_xen_packages self.askpass_package = cliconfig.askpass_package self.default_graphics_from_config = cliconfig.default_graphics self.cli_usbredir = None Index: virt-manager-1.0.0/virtManager/engine.py =================================================================== --- virt-manager-1.0.0.orig/virtManager/engine.py +++ virt-manager-1.0.0/virtManager/engine.py @@ -196,21 +196,17 @@ class vmmEngine(vmmGObject): ret = None try: - libvirt_packages = self.config.libvirt_packages - packages = self.config.hv_packages + libvirt_packages - + tryuri = vmmConnect.default_uri(always_system=True) + if tryuri and tryuri.startswith('xen'): + packages = self.config.libvirt_xen_packages + else: + packages = self.config.libvirt_kvm_packages + self.config.hv_packages ret = packageutils.check_packagekit(manager, manager.err, packages) except: logging.exception("Error talking to PackageKit") - if ret: - tryuri = "qemu:///system" - else: - tryuri = vmmConnect.default_uri(always_system=True) - if tryuri is None: - manager.set_startup_error(msg) - return + tryuri = "qemu:///system" warnmsg = _("The 'libvirtd' service will need to be started.\n\n" "After that, virt-manager will connect to libvirt on\n"