From 3a12e33e3597a1ea7fff4e94aebef261fabc5871 Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Sat, 16 Jan 2010 20:24:11 +0100 Subject: [PATCH] [equo/sulfur] do not bug user for orphaned packages not available in repos if latter don't exist --- client/text_ui.py | 6 ++++++ sulfur/src/sulfur/packages.py | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/client/text_ui.py b/client/text_ui.py index 20dd30a92..5ef51f8cd 100644 --- a/client/text_ui.py +++ b/client/text_ui.py @@ -389,6 +389,12 @@ def upgrade_packages(onlyfetch = False, replay = False, resume = False, # verify that client database idpackage still exist, # validate here before passing removePackage() wrong info remove = [x for x in remove if E_CLIENT.clientDbconn.isIdpackageAvailable(x)] + # Filter out packages installed from unavailable repositories, this is + # mainly required to allow 3rd party packages installation without + # erroneously inform user about unavailability. + remove = [x for x in remove if \ + E_CLIENT.clientDbconn.getInstalledPackageRepository(x) in \ + E_CLIENT.validRepositories] if remove and E_CLIENT.validRepositories and (not onlyfetch): remove = sorted(remove) diff --git a/sulfur/src/sulfur/packages.py b/sulfur/src/sulfur/packages.py index eea042c30..cfa626c21 100644 --- a/sulfur/src/sulfur/packages.py +++ b/sulfur/src/sulfur/packages.py @@ -695,6 +695,12 @@ class EntropyPackages: def _pkg_get_orphans(self): updates, remove, fine, spm_fine = self.Entropy.calculate_updates( critical_updates = False) + # Filter out packages installed from unavailable repositories, this is + # mainly required to allow 3rd party packages installation without + # erroneously inform user about unavailability. + remove = [x for x in remove if \ + self.Entropy.clientDbconn.getInstalledPackageRepository(x) in \ + self.Entropy.validRepositories] return [x for x in map(self.__inst_pkg_setup, remove) if not \ isinstance(x, int)]