def _select_group(self, group_id, default=True, optional=False, required=False): grp = self._base.comps.group_by_pattern(group_id) if grp is None: raise packaging.NoSuchGroup(group_id, required=required) types = {'mandatory'} if default: types.add('default') if optional: types.add('optional') exclude = self.data.packages.excludedList try: self._base.group_install(grp.id, types, exclude=exclude) except dnf.exceptions.MarkingError as e: # dnf-1.1.9 raises this error when a package is missing from a group raise packaging.NoSuchPackage(str(e), required=True) except dnf.exceptions.CompsError as e: # DNF raises this when it is already selected log.debug(e)
def _install_package(self, pkg_name, required=False): try: return self._base.install(pkg_name) except dnf.exceptions.MarkingError: raise packaging.NoSuchPackage(pkg_name, required=required)
def _install_package(self, pkg_name): try: return self._base.install(pkg_name) except dnf.exceptions.PackageNotFoundError: raise packaging.NoSuchPackage(pkg_name)