diff options
Diffstat (limited to 'apt-pkg')
-rw-r--r-- | apt-pkg/algorithms.cc | 7 | ||||
-rw-r--r-- | apt-pkg/cdrom.cc | 6 | ||||
-rw-r--r-- | apt-pkg/init.cc | 5 |
3 files changed, 14 insertions, 4 deletions
diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index 9abb7a947..0fbce3c2a 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -374,6 +374,13 @@ bool pkgDistUpgrade(pkgDepCache &Cache) { pkgDepCache::ActionGroup group(Cache); + /* Upgrade all installed packages first without autoinst to help the resolver + in versioned or-groups to upgrade the old solver instead of installing + a new one (if the old solver is not the first one [anymore]) */ + for (pkgCache::PkgIterator I = Cache.PkgBegin(); I.end() == false; ++I) + if (I->CurrentVer != 0) + Cache.MarkInstall(I, false, 0, false); + /* Auto upgrade all installed packages, this provides the basis for the installation */ for (pkgCache::PkgIterator I = Cache.PkgBegin(); I.end() == false; I++) diff --git a/apt-pkg/cdrom.cc b/apt-pkg/cdrom.cc index 0e36f44a2..04ace10a6 100644 --- a/apt-pkg/cdrom.cc +++ b/apt-pkg/cdrom.cc @@ -198,7 +198,7 @@ int pkgCdrom::Score(string Path) // a symlink gets a big penalty struct stat Buf; string statPath = flNotFile(Path); - string cdromPath = _config->FindDir("Acquire::cdrom::mount","/cdrom/"); + string cdromPath = _config->FindDir("Acquire::cdrom::mount"); while(statPath != cdromPath && statPath != "./") { statPath.resize(statPath.size()-1); // remove the trailing '/' if (lstat(statPath.c_str(),&Buf) == 0) { @@ -509,7 +509,7 @@ bool pkgCdrom::Ident(string &ident, pkgCdromStatus *log) /*{{{*/ stringstream msg; // Startup - string CDROM = _config->FindDir("Acquire::cdrom::mount","/cdrom/"); + string CDROM = _config->FindDir("Acquire::cdrom::mount"); if (CDROM[0] == '.') CDROM= SafeGetCWD() + '/' + CDROM; @@ -568,7 +568,7 @@ bool pkgCdrom::Add(pkgCdromStatus *log) /*{{{*/ stringstream msg; // Startup - string CDROM = _config->FindDir("Acquire::cdrom::mount","/cdrom/"); + string CDROM = _config->FindDir("Acquire::cdrom::mount"); if (CDROM[0] == '.') CDROM= SafeGetCWD() + '/' + CDROM; diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc index f0bad78df..184942321 100644 --- a/apt-pkg/init.cc +++ b/apt-pkg/init.cc @@ -52,7 +52,7 @@ bool pkgInitConfig(Configuration &Cnf) Cnf.Set("Dir::State::lists","lists/"); Cnf.Set("Dir::State::cdroms","cdroms.list"); Cnf.Set("Dir::State::mirrors","mirrors/"); - + // Cache Cnf.Set("Dir::Cache","var/cache/apt/"); Cnf.Set("Dir::Cache::archives","archives/"); @@ -88,6 +88,9 @@ bool pkgInitConfig(Configuration &Cnf) // Translation Cnf.Set("APT::Acquire::Translation", "environment"); + // Default cdrom mount point + Cnf.Set("Acquire::cdrom::mount", "/media/cdrom/"); + bool Res = true; // Read an alternate config file |