summaryrefslogtreecommitdiff
path: root/DistUpgrade/DistUpgradeControler.py
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2006-01-23 23:47:44 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2006-01-23 23:47:44 +0100
commitec21b1c632c23d4d8d4e2faf3c47231399e17bd4 (patch)
tree940db274d6b608a4bc63f0ec6abcd5bd1306161d /DistUpgrade/DistUpgradeControler.py
parent4614765fb73d85f350f4f525a216386f01cbec0d (diff)
downloadpython-apt-ec21b1c632c23d4d8d4e2faf3c47231399e17bd4.tar.gz
* forced_obsoletes added
Diffstat (limited to 'DistUpgrade/DistUpgradeControler.py')
-rw-r--r--DistUpgrade/DistUpgradeControler.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/DistUpgrade/DistUpgradeControler.py b/DistUpgrade/DistUpgradeControler.py
index 46ad948e..238934bc 100644
--- a/DistUpgrade/DistUpgradeControler.py
+++ b/DistUpgrade/DistUpgradeControler.py
@@ -50,6 +50,15 @@ class DistUpgradeControler(object):
self.origin = "Ubuntu"
+ # forced obsoletes
+ self.forced_obsoletes = []
+ for line in open("forced_obsoletes.txt").readlines():
+ line = line.strip()
+ if not line == "" or line.startswith("#"):
+ self.forced_obsoletes.append(line)
+ logging.debug("forced obsoletes '%s'" % line)
+
+
def openCache(self):
self.cache = MyCache(self._view.getOpCacheProgress())
@@ -210,6 +219,7 @@ class DistUpgradeControler(object):
# before) to be deleted. make sure to not delete any foreign
# (that is, not from ubuntu) packages
remove_candidates = now_obsolete - self.obsolete_pkgs
+ remove_candidates |= set(self.forced_obsoletes)
logging.debug("Start checking for obsolete pkgs")
for pkgname in remove_candidates:
if pkgname not in self.foreign_pkgs:
@@ -279,6 +289,7 @@ class DistUpgradeControler(object):
self.doPostUpgrade()
# done, ask for reboot
+ # FIXME should we look into /var/run/reboot-required here?
if self._view.confirmRestart():
subprocess.call(["reboot"])