summaryrefslogtreecommitdiff
path: root/apt-pkg
diff options
context:
space:
mode:
Diffstat (limited to 'apt-pkg')
-rw-r--r--apt-pkg/algorithms.cc7
-rw-r--r--apt-pkg/cdrom.cc6
-rw-r--r--apt-pkg/init.cc5
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