diff options
-rw-r--r-- | apt-pkg/algorithms.cc | 202 | ||||
-rw-r--r-- | apt-pkg/algorithms.h | 4 | ||||
-rw-r--r-- | apt-pkg/deb/dpkgpm.h | 2 | ||||
-rw-r--r-- | apt-pkg/depcache.cc | 79 | ||||
-rw-r--r-- | apt-pkg/depcache.h | 9 | ||||
-rw-r--r-- | apt-pkg/makefile | 2 | ||||
-rw-r--r-- | apt-pkg/packagemanager.cc | 13 | ||||
-rw-r--r-- | apt-pkg/packagemanager.h | 37 | ||||
-rw-r--r-- | apt-pkg/pkgcachegen.cc | 2 | ||||
-rw-r--r-- | cmdline/apt-get.cc | 55 | ||||
-rw-r--r-- | configure.in | 5 | ||||
-rw-r--r-- | debian/changelog | 25 | ||||
-rw-r--r-- | doc/examples/configure-index | 4 | ||||
-rw-r--r-- | methods/makefile | 2 | ||||
-rw-r--r-- | po/apt-all.pot | 323 |
15 files changed, 564 insertions, 200 deletions
diff --git a/apt-pkg/algorithms.cc b/apt-pkg/algorithms.cc index 479927d65..c679e76f6 100644 --- a/apt-pkg/algorithms.cc +++ b/apt-pkg/algorithms.cc @@ -20,7 +20,10 @@ #include <apt-pkg/algorithms.h> #include <apt-pkg/error.h> #include <apt-pkg/configuration.h> +#include <apt-pkg/pkgsystem.h> +#include <apt-pkg/version.h> #include <apt-pkg/sptr.h> + #include <apti18n.h> @@ -1061,6 +1064,20 @@ bool pkgProblemResolver::Resolve(bool BrokenFix) return _error->Error(_("Unable to correct problems, you have held broken packages.")); } + // set the auto-flags (mvo: I'm not sure if we _really_ need this, but + // I didn't managed + pkgCache::PkgIterator I = Cache.PkgBegin(); + for (;I.end() != true; I++) { + if (Cache[I].NewInstall() && !(Flags[I->ID] & PreInstalled)) { + if(_config->FindI("Debug::pkgAutoRemove",false)) { + std::clog << "Resolve installed new pkg: " << I.Name() + << " (now marking it as auto)" << std::endl; + } + Cache[I].Flags |= pkgCache::Flag::Auto; + } + } + + return true; } /*}}}*/ @@ -1232,3 +1249,188 @@ void pkgPrioSortList(pkgCache &Cache,pkgCache::Version **List) qsort(List,Count,sizeof(*List),PrioComp); } /*}}}*/ + + +// mark a single package in Mark-and-Sweep +void pkgMarkPackage(pkgDepCache &Cache, + const pkgCache::PkgIterator &pkg, + const pkgCache::VerIterator &ver, + bool follow_recommends, + bool follow_suggests) +{ + pkgDepCache::StateCache &state=Cache[pkg]; + pkgCache::VerIterator candver=state.CandidateVerIter(Cache); + pkgCache::VerIterator instver=state.InstVerIter(Cache); + +#if 0 + // If a package was garbage-collected but is now being marked, we + // should re-select it + // For cases when a pkg is set to upgrade and this trigger the + // removal of a no-longer used dependency. if the pkg is set to + // keep again later it will result in broken deps + if(state.Delete() && state.RemoveReason=pkgDepCache::Unused) + { + if(ver==candver) + mark_install(pkg, false, false, NULL); + else if(ver==pkg.CurrentVer()) + MarkKeep(pkg); + + instver=state.InstVerIter(*this); + } +#endif + + // Ignore versions other than the InstVer, and ignore packages + // that are already going to be removed or just left uninstalled. + if(!(ver==instver && !instver.end())) + return; + + // if we are marked already we are done + if(state.Marked) + return; + + //std::cout << "Setting Marked for: " << pkg.Name() << std::endl; + state.Marked=true; + + if(!ver.end()) + { + for(pkgCache::DepIterator d=ver.DependsList(); !d.end(); ++d) + { + if(d->Type==pkgCache::Dep::Depends || + d->Type==pkgCache::Dep::PreDepends || + (follow_recommends && + d->Type==pkgCache::Dep::Recommends) || + (follow_suggests && + d->Type==pkgCache::Dep::Suggests)) + { + // Try all versions of this package. + for(pkgCache::VerIterator V=d.TargetPkg().VersionList(); + !V.end(); ++V) + { + if(_system->VS->CheckDep(V.VerStr(),d->CompareOp, d.TargetVer())) + { + pkgMarkPackage(Cache, V.ParentPkg(), V, + follow_recommends, follow_suggests); + } + } + // Now try virtual packages + for(pkgCache::PrvIterator prv=d.TargetPkg().ProvidesList(); + !prv.end(); ++prv) + { + if(_system->VS->CheckDep(prv.ProvideVersion(), d->CompareOp, + d.TargetVer())) + { + pkgMarkPackage(Cache, prv.OwnerPkg(), prv.OwnerVer(), + follow_recommends, follow_suggests); + } + } + } + } + } +} + + +bool pkgMarkUsed(pkgDepCache &Cache) +{ + bool follow_recommends; + bool follow_suggests; + + // init the states + for(pkgCache::PkgIterator p=Cache.PkgBegin(); !p.end(); ++p) + { + Cache[p].Marked=false; + Cache[p].Garbage=false; + } + + // init vars + follow_recommends=_config->FindB("APT::AutoRemove::RecommendsImportant",false); + follow_suggests=_config->FindB("APT::AutoRemove::SuggestsImportend", false); + + + // do the mark part + for(pkgCache::PkgIterator p=Cache.PkgBegin(); !p.end(); ++p) + { + if(!(Cache[p].Flags & pkgCache::Flag::Auto) || + (p->Flags & pkgCache::Flag::Essential)) + { + if(Cache[p].Keep() && !p.CurrentVer().end()) + pkgMarkPackage(Cache, p, p.CurrentVer(), + follow_recommends, follow_suggests); + else if(Cache[p].Install()) + pkgMarkPackage(Cache, p, Cache[p].InstVerIter(Cache), + follow_recommends, follow_suggests); + } + } + + + // do the sweep + for(pkgCache::PkgIterator p=Cache.PkgBegin(); !p.end(); ++p) + { + pkgDepCache::StateCache &state=Cache[p]; + + if(!state.Marked) + { + // mark installed but not yet marked stuff as garbage + if(p->CurrentVer != 0) { + state.Garbage=true; + std::cout << "Garbage: " << p.Name() << std::endl; + } + +#if 0 // mvo: the below bits still needs to be ported + + // Be sure not to re-delete already deleted packages. + if(delete_unused && (!p.CurrentVer().end() || state.Install()) && + !state.Delete()) + { + bool do_delete=true; + + // If the package is being upgraded, check if we're + // losing a versioned dep. If the dependency matches + // the previous version and not the new version, keep + // the package back instead of removing it. + if(!p.CurrentVer().end() && state.Install()) + { + const char *vs=p.CurrentVer().VerStr(); + + // Check direct revdeps only. THIS ASSUMES NO + // VERSIONED PROVIDES, but Debian probably won't + // have them for ages if ever. + for(pkgCache::DepIterator revdep=p.RevDependsList(); + !revdep.end(); ++revdep) + { + pkgCache::PkgIterator depender=revdep.ParentPkg(); + // Find which version of the depending package + // will be installed. + pkgCache::VerIterator instver=(*this)[depender].InstVerIter(*this); + + // Only pay attention to strong positive + // dependencies whose parents will be installed. + if(revdep.ParentVer()==instver && + (revdep->Type==pkgCache::Dep::Depends || + revdep->Type==pkgCache::Dep::PreDepends || + (revdep->Type==pkgCache::Dep::Recommends && + follow_recommends))) + { + // If the previous version matched, cancel the + // deletion. (note that I assume that the new + // version does NOT match; otherwise it would + // not be unused!) + if(_system->VS->CheckDep(vs, + revdep->CompareOp, + revdep.TargetVer())) + { + mark_keep(p, false, false, undo); + do_delete=false; + break; + } + } + } + } + + if(do_delete) + mark_delete(p, false, true, undo); + } +#endif + } + } + return true; +} diff --git a/apt-pkg/algorithms.h b/apt-pkg/algorithms.h index 174a7f58d..210127ab9 100644 --- a/apt-pkg/algorithms.h +++ b/apt-pkg/algorithms.h @@ -132,5 +132,9 @@ bool pkgAllUpgrade(pkgDepCache &Cache); bool pkgMinimizeUpgrade(pkgDepCache &Cache); void pkgPrioSortList(pkgCache &Cache,pkgCache::Version **List); + +// mark all reachable packages, everything that is not reach can +// be removed +bool pkgMarkUsed(pkgDepCache &Cache); #endif diff --git a/apt-pkg/deb/dpkgpm.h b/apt-pkg/deb/dpkgpm.h index b59b9dc93..8bfdff5eb 100644 --- a/apt-pkg/deb/dpkgpm.h +++ b/apt-pkg/deb/dpkgpm.h @@ -40,7 +40,7 @@ class pkgDPkgPM : public pkgPackageManager bool RunScripts(const char *Cnf); bool RunScriptsWithPkgs(const char *Cnf); bool SendV2Pkgs(FILE *F); - + // The Actuall installation implementation virtual bool Install(PkgIterator Pkg,string File); virtual bool Configure(PkgIterator Pkg); diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc index dd1c794c9..05512e179 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -16,7 +16,13 @@ #include <apt-pkg/error.h> #include <apt-pkg/sptr.h> #include <apt-pkg/algorithms.h> - + +#include <apt-pkg/fileutl.h> +#include <apt-pkg/configuration.h> +#include <apt-pkg/tagfile.h> + +#include <iostream> +#include <sstream> #include <apti18n.h> /*}}}*/ @@ -72,7 +78,7 @@ bool pkgDepCache::Init(OpProgress *Prog) // Find the proper cache slot StateCache &State = PkgState[I->ID]; State.iFlags = 0; - + // Figure out the install version State.CandidateVer = GetCandidateVer(I); State.InstallVer = I.CurrentVer(); @@ -99,6 +105,70 @@ bool pkgDepCache::Init(OpProgress *Prog) } /*}}}*/ +bool pkgDepCache::readStateFile(OpProgress *Prog) +{ + FileFd state_file; + string state = _config->FindDir("Dir::State") + "pkgstates"; + if(FileExists(state)) { + state_file.Open(state, FileFd::ReadOnly); + int file_size = state_file.Size(); + Prog->OverallProgress(0, file_size, 1, + _("Reading state information")); + + pkgTagFile tagfile(&state_file); + pkgTagSection section; + int amt=0; + while(tagfile.Step(section)) { + string pkgname = section.FindS("Package"); + pkgCache::PkgIterator pkg=Cache->FindPkg(pkgname); + // Silently ignore unknown packages and packages with no actual + // version. + if(!pkg.end() && !pkg.VersionList().end()) { + short reason = section.FindI("Install-Reason", 0); + if(reason > 0) + PkgState[pkg->ID].Flags |= pkgCache::Flag::Auto; + if(_config->FindB("Debug::pkgAutoRemove",false)) + std::cout << "Install-Reason for: " << pkgname + << " is " << reason << std::endl; + amt+=section.size(); + Prog->OverallProgress(amt, file_size, 1, + _("Reading state information")); + } + Prog->OverallProgress(file_size, file_size, 1, + _("Reading state information")); + } + } + + return true; +} + +bool pkgDepCache::writeStateFile(OpProgress *prog) +{ + FileFd StateFile; + string state = _config->FindDir("Dir::State") + "pkgstates"; + + if(_config->FindB("Debug::pkgAutoRemove",false)) + std::clog << "pkgDepCache::writeStateFile()" << std::endl; + + if(!StateFile.Open(state, FileFd::WriteEmpty)) + return _error->Error(_("Failed to write StateFile %s"), + state.c_str()); + + std::ostringstream ostr; + for(pkgCache::PkgIterator pkg=Cache->PkgBegin(); !pkg.end();pkg++) { + + if(PkgState[pkg->ID].Flags & pkgCache::Flag::Auto) { + if(_config->FindB("Debug::pkgAutoRemove",false)) + std::clog << "AutoInstal: " << pkg.Name() << std::endl; + ostr.str(string("")); + ostr << "Package: " << pkg.Name() + << "\nInstall-Reason: 1\n\n"; + StateFile.Write(ostr.str().c_str(), ostr.str().size()); + } + } + return true; +} + // DepCache::CheckDep - Checks a single dependency /*{{{*/ // --------------------------------------------------------------------- /* This first checks the dependency against the main target package and @@ -450,6 +520,8 @@ void pkgDepCache::Update(OpProgress *Prog) AddStates(I); } + readStateFile(Prog); + if (Prog != 0) Prog->Progress(Done); } @@ -585,7 +657,8 @@ void pkgDepCache::MarkDelete(PkgIterator const &Pkg, bool rPurge) else P.Mode = ModeDelete; P.InstallVer = 0; - P.Flags &= Flag::Auto; + // This was not inverted before, but I think it should be + P.Flags &= ~Flag::Auto; AddStates(Pkg); Update(Pkg); diff --git a/apt-pkg/depcache.h b/apt-pkg/depcache.h index 6d51920e9..619daf8f6 100644 --- a/apt-pkg/depcache.h +++ b/apt-pkg/depcache.h @@ -63,6 +63,7 @@ class pkgDepCache : protected pkgCache::Namespace enum VersionTypes {NowVersion, InstallVersion, CandidateVersion}; enum ModeList {ModeDelete = 0, ModeKeep = 1, ModeInstall = 2}; + struct StateCache { // Epoch stripped text versions of the two version fields @@ -79,6 +80,10 @@ class pkgDepCache : protected pkgCache::Namespace unsigned short Flags; unsigned short iFlags; // Internal flags + // mark and sweep flags + bool Marked; + bool Garbage; + // Various tree indicators signed char Status; // -1,0,1,2 unsigned char Mode; // ModeList @@ -192,6 +197,10 @@ class pkgDepCache : protected pkgCache::Namespace // This is for debuging void Update(OpProgress *Prog = 0); + + // read persistent states + bool readStateFile(OpProgress *prog); + bool writeStateFile(OpProgress *prog); // Size queries inline double UsrSize() {return iUsrSize;}; diff --git a/apt-pkg/makefile b/apt-pkg/makefile index 5f48f0f52..8de7d945e 100644 --- a/apt-pkg/makefile +++ b/apt-pkg/makefile @@ -13,7 +13,7 @@ include ../buildlib/defaults.mak # methods/makefile - FIXME LIBRARY=apt-pkg LIBEXT=$(GLIBC_VER)$(LIBSTDCPP_VER) -MAJOR=3.9 +MAJOR=3.10 MINOR=0 SLIBS=$(PTHREADLIB) $(INTLLIBS) APT_DOMAIN:=libapt-pkg$(MAJOR) diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc index a08ccd602..71a0dd034 100644 --- a/apt-pkg/packagemanager.cc +++ b/apt-pkg/packagemanager.cc @@ -627,16 +627,3 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall() return Completed; } /*}}}*/ -// PM::DoInstall - Does the installation /*{{{*/ -// --------------------------------------------------------------------- -/* This uses the filenames in FileNames and the information in the - DepCache to perform the installation of packages.*/ -pkgPackageManager::OrderResult pkgPackageManager::DoInstall() -{ - OrderResult Res = OrderInstall(); - if (Res != Failed) - if (Go() == false) - return Failed; - return Res; -} - /*}}}*/ diff --git a/apt-pkg/packagemanager.h b/apt-pkg/packagemanager.h index 43f2c4ace..f95b2ab56 100644 --- a/apt-pkg/packagemanager.h +++ b/apt-pkg/packagemanager.h @@ -28,7 +28,9 @@ #endif #include <string> +#include <iostream> #include <apt-pkg/pkgcache.h> +#include <apt-pkg/depcache.h> using std::string; @@ -70,13 +72,44 @@ class pkgPackageManager : protected pkgCache::Namespace virtual bool Remove(PkgIterator /*Pkg*/,bool /*Purge*/=false) {return false;}; virtual bool Go(int statusFd=-1) {return true;}; virtual void Reset() {}; - + + // the result of the operation + OrderResult Res; + public: // Main action members bool GetArchives(pkgAcquire *Owner,pkgSourceList *Sources, pkgRecords *Recs); - OrderResult DoInstall(); + + // Do the installation + OrderResult DoInstall() { + if(DoInstallPreFork() == Failed) + return Failed; + + return DoInstallPostFork(); + } + + // stuff that needs to be done before the fork() of a library that + // uses apt + OrderResult DoInstallPreFork() { + Res = OrderInstall(); + return Res; + }; + + // stuff that needs to be done after the fork + OrderResult DoInstallPostFork(int statusFd=-1) { + bool goResult = Go(statusFd); + if(goResult == false) + return Failed; + + // if all was fine update the state file + if(Res == Completed) { + Cache.writeStateFile(NULL); + } + return Res; + }; + bool FixMissing(); pkgPackageManager(pkgDepCache *Cache); diff --git a/apt-pkg/pkgcachegen.cc b/apt-pkg/pkgcachegen.cc index 2340f97fd..04904057f 100644 --- a/apt-pkg/pkgcachegen.cc +++ b/apt-pkg/pkgcachegen.cc @@ -26,6 +26,8 @@ #include <apt-pkg/sptr.h> #include <apt-pkg/pkgsystem.h> +#include <apt-pkg/tagfile.h> + #include <apti18n.h> #include <vector> diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 316bb7af9..9d97f8756 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -58,6 +58,7 @@ #include <errno.h> #include <regex.h> #include <sys/wait.h> +#include <sstream> /*}}}*/ using namespace std; @@ -992,7 +993,7 @@ bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask = true, cerr << _("Unable to correct missing packages.") << endl; return _error->Error(_("Aborting install.")); } - + _system->UnLock(); pkgPackageManager::OrderResult Res = PM->DoInstall(); if (Res == pkgPackageManager::Failed || _error->PendingError() == true) @@ -1355,6 +1356,47 @@ bool DoUpdate(CommandLine &CmdL) return true; } /*}}}*/ +// DoAutomaticRemove - Remove all automatic unused packages /*{{{*/ +// --------------------------------------------------------------------- +/* Remove unused automatic packages */ +bool DoAutomaticRemove(CacheFile &Cache) +{ + if(_config->FindI("Debug::pkgAutoRemove",false)) + std::cout << "DoAutomaticRemove()" << std::endl; + + if (_config->FindB("APT::Get::Remove",true) == false) + return _error->Error(_("We are not supposed to delete stuff, can't " + "start AutoRemover")); + + // do the actual work + pkgMarkUsed(Cache); + + // look over the cache to see what can be removed + for (pkgCache::PkgIterator Pkg = Cache->PkgBegin(); ! Pkg.end(); ++Pkg) + { + if (Cache[Pkg].Garbage && + (Pkg->CurrentVer != 0 && Cache[Pkg].Install() == false && + Cache[Pkg].Delete() == false)) + { + fprintf(stdout,"We could delete %s\n", Pkg.Name()); + Cache->MarkDelete(Pkg,_config->FindB("APT::Get::Purge",false)); + } + } + + // Now see if we destroyed anything + if (Cache->BrokenCount() != 0) + { + c1out << _("Hmm, seems like the AutoRemover destroyed something which really\n" + "shouldn't happen. Please file a bug report against apt.") << endl; + c1out << endl; + c1out << _("The following information may help to resolve the situation:") << endl; + c1out << endl; + ShowBroken(c1out,Cache,false); + + return _error->Error(_("Internal Error, AutoRemover broke stuff")); + } + return true; +} // DoUpgrade - Upgrade all packages /*{{{*/ // --------------------------------------------------------------------- /* Upgrade all packages without installing new packages or erasing old @@ -1555,6 +1597,11 @@ bool DoInstall(CommandLine &CmdL) return _error->Error(_("Broken packages")); } + if (_config->FindB("APT::Get::AutomaticRemove")) { + if (!DoAutomaticRemove(Cache)) + return false; + } + /* Print out a list of packages that are going to be installed extra to what the user asked */ if (Cache->InstCount() != ExpectedInst) @@ -1574,8 +1621,8 @@ bool DoInstall(CommandLine &CmdL) if (*J == 0) { List += string(I.Name()) + " "; - VersionsList += string(Cache[I].CandVersion) + "\n"; - } + VersionsList += string(Cache[I].CandVersion) + "\n"; + } } ShowList(c1out,_("The following extra packages will be installed:"),List,VersionsList); @@ -2419,6 +2466,7 @@ void GetInitialize() _config->Set("APT::Get::Fix-Broken",false); _config->Set("APT::Get::Force-Yes",false); _config->Set("APT::Get::List-Cleanup",true); + _config->Set("APT::Get::AutomaticRemove",false); } /*}}}*/ // SigWinch - Window size change signal handler /*{{{*/ @@ -2474,6 +2522,7 @@ int main(int argc,const char *argv[]) {0,"remove","APT::Get::Remove",0}, {0,"only-source","APT::Get::Only-Source",0}, {0,"arch-only","APT::Get::Arch-Only",0}, + {0,"automatic-remove","APT::Get::AutomaticRemove",0}, {0,"allow-unauthenticated","APT::Get::AllowUnauthenticated",0}, {'c',"config-file",0,CommandLine::ConfigFile}, {'o',"option",0,CommandLine::ArbItem}, diff --git a/configure.in b/configure.in index bbf9ef1cd..f78ce1d1e 100644 --- a/configure.in +++ b/configure.in @@ -18,7 +18,7 @@ AC_CONFIG_AUX_DIR(buildlib) AC_CONFIG_HEADER(include/config.h:buildlib/config.h.in include/apti18n.h:buildlib/apti18n.h.in) dnl -- SET THIS TO THE RELEASE VERSION -- -AC_DEFINE_UNQUOTED(VERSION,"0.6.39ubuntu1") +AC_DEFINE_UNQUOTED(VERSION,"0.6.38ubuntu1mvo1") PACKAGE="apt" AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE") AC_SUBST(PACKAGE) @@ -181,9 +181,6 @@ AC_PATH_PROG(DOCBOOK2MAN,docbook2man) dnl Check for the XML tools needed to build man pages AC_PATH_PROG(XMLTO,xmlto) -dnl Check for the XML tools needed to build man pages -AC_PATH_PROG(XMLTO,xmlto) - dnl Check for YODL dnl AC_CHECK_PROG(YODL_MAN,yodl2man,"yes","") diff --git a/debian/changelog b/debian/changelog index cb092b803..86dca75bc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -apt (0.6.39ubuntu1) breezy; urgency=low +apt (0.6.39ubuntu1mvo1) unstable; urgency=low * Michael Vogt - Change debian/bugscript to use #!/bin/bash (Closes: #313402) @@ -8,8 +8,9 @@ apt (0.6.39ubuntu1) breezy; urgency=low the patch, thanks to Colin Watson for testing it. - better report network timeouts from the methods to the acuire code, only timeout once per sources.list line + - support for automatic removal of unused dependencies added - -- Matt Zimmerman <mdz@ubuntu.com> Tue, 28 Jun 2005 11:52:24 -0700 + -- apt (0.6.39) unstable; urgency=low @@ -44,26 +45,7 @@ apt (0.6.38) unstable; urgency=low (closes ubuntu #9935) -- Matt Zimmerman <mdz@debian.org> Sat, 25 Jun 2005 09:51:00 -0700 -======= - -- Matt Zimmerman <mdz@ubuntu.com> Tue, 28 Jun 2005 11:51:09 -0700 ->>>>>>> MERGE-SOURCE -apt (0.6.38) unstable; urgency=low - - * Merge michael.vogt@ubuntu.com--2005/apt--fixes--0--patch-6, a workaround - for the French man pages' failure to build - * Branch Debian and Ubuntu - - apt.postinst, apt-key: use the appropriate keyring - - debian/rules: install all keyrings - * Add the current Debian archive signing key (4F368D5D) to - debian-archive.gpg - * make pinning on the "component" work again (using the section of the - archive, we don't use per-section Release files anymore with apt-0.6) - (closes ubuntu #9935) - - -- Matt Zimmerman <mdz@debian.org> Sat, 25 Jun 2005 09:51:00 -0700 - ->>>>>>> MERGE-SOURCE apt (0.6.37) breezy; urgency=low * Merge bubulle@debian.org--2005/apt--main--0 up to patch-81 @@ -79,6 +61,7 @@ apt (0.6.37) breezy; urgency=low * Add Welsh translation from Dafydd Harries (daf@muse.19inch.net--2005/apt--main--0--patch-1) * Change debian/bugscript to use #!/bin/bash (Closes: #313402) + * Fix a incorrect example in the man-page (closes: #282918) -- Matt Zimmerman <mdz@ubuntu.com> Tue, 24 May 2005 14:38:25 -0700 diff --git a/doc/examples/configure-index b/doc/examples/configure-index index a09ea0c37..31bc13430 100644 --- a/doc/examples/configure-index +++ b/doc/examples/configure-index @@ -29,6 +29,7 @@ APT Get { Arch-Only "false"; + AutomaticRemove "false"; Download-Only "false"; Simulate "false"; Assume-Yes "false"; @@ -235,7 +236,8 @@ Debug pkgAcquire::Worker "false"; pkgDPkgPM "false"; pkgOrderList "false"; - + pkgAutoRemove "false"; // show information about automatic removes + pkgInitialize "false"; // This one will dump the configuration space NoLocking "false"; Acquire::Ftp "false"; // Show ftp command traffic diff --git a/methods/makefile b/methods/makefile index 089300570..06fd2a6fc 100644 --- a/methods/makefile +++ b/methods/makefile @@ -7,7 +7,7 @@ include ../buildlib/defaults.mak BIN := $(BIN)/methods # FIXME.. -LIB_APT_PKG_MAJOR = 3.5 +LIB_APT_PKG_MAJOR = 3.10 APT_DOMAIN := libapt-pkg$(LIB_APT_PKG_MAJOR) # The file method diff --git a/po/apt-all.pot b/po/apt-all.pot index 3936f3f16..d043210fe 100644 --- a/po/apt-all.pot +++ b/po/apt-all.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-05-23 11:34+0200\n" +"POT-Creation-Date: 2005-06-24 21:41+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -148,7 +148,7 @@ msgstr "" #: cmdline/apt-cache.cc:1651 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70 #: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:545 -#: cmdline/apt-get.cc:2322 cmdline/apt-sortpkgs.cc:144 +#: cmdline/apt-get.cc:2369 cmdline/apt-sortpkgs.cc:144 #, c-format msgid "%s %s for %s %s compiled on %s %s\n" msgstr "" @@ -231,7 +231,7 @@ msgid "" " -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n" msgstr "" -#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:710 +#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:712 #, c-format msgid "Unable to write to %s" msgstr "" @@ -519,275 +519,275 @@ msgstr "" msgid "Failed to rename %s to %s" msgstr "" -#: cmdline/apt-get.cc:118 +#: cmdline/apt-get.cc:119 msgid "Y" msgstr "" -#: cmdline/apt-get.cc:140 cmdline/apt-get.cc:1484 +#: cmdline/apt-get.cc:141 cmdline/apt-get.cc:1526 #, c-format msgid "Regex compilation error - %s" msgstr "" -#: cmdline/apt-get.cc:235 +#: cmdline/apt-get.cc:236 msgid "The following packages have unmet dependencies:" msgstr "" -#: cmdline/apt-get.cc:325 +#: cmdline/apt-get.cc:326 #, c-format msgid "but %s is installed" msgstr "" -#: cmdline/apt-get.cc:327 +#: cmdline/apt-get.cc:328 #, c-format msgid "but %s is to be installed" msgstr "" -#: cmdline/apt-get.cc:334 +#: cmdline/apt-get.cc:335 msgid "but it is not installable" msgstr "" -#: cmdline/apt-get.cc:336 +#: cmdline/apt-get.cc:337 msgid "but it is a virtual package" msgstr "" -#: cmdline/apt-get.cc:339 +#: cmdline/apt-get.cc:340 msgid "but it is not installed" msgstr "" -#: cmdline/apt-get.cc:339 +#: cmdline/apt-get.cc:340 msgid "but it is not going to be installed" msgstr "" -#: cmdline/apt-get.cc:344 +#: cmdline/apt-get.cc:345 msgid " or" msgstr "" -#: cmdline/apt-get.cc:373 +#: cmdline/apt-get.cc:374 msgid "The following NEW packages will be installed:" msgstr "" -#: cmdline/apt-get.cc:399 +#: cmdline/apt-get.cc:400 msgid "The following packages will be REMOVED:" msgstr "" -#: cmdline/apt-get.cc:421 +#: cmdline/apt-get.cc:422 msgid "The following packages have been kept back:" msgstr "" -#: cmdline/apt-get.cc:442 +#: cmdline/apt-get.cc:443 msgid "The following packages will be upgraded:" msgstr "" -#: cmdline/apt-get.cc:463 +#: cmdline/apt-get.cc:464 msgid "The following packages will be DOWNGRADED:" msgstr "" -#: cmdline/apt-get.cc:483 +#: cmdline/apt-get.cc:484 msgid "The following held packages will be changed:" msgstr "" -#: cmdline/apt-get.cc:536 +#: cmdline/apt-get.cc:537 #, c-format msgid "%s (due to %s) " msgstr "" -#: cmdline/apt-get.cc:544 +#: cmdline/apt-get.cc:545 msgid "" -"WARNING: The following essential packages will be removed\n" +"WARNING: The following essential packages will be removed.\n" "This should NOT be done unless you know exactly what you are doing!" msgstr "" -#: cmdline/apt-get.cc:575 +#: cmdline/apt-get.cc:576 #, c-format msgid "%lu upgraded, %lu newly installed, " msgstr "" -#: cmdline/apt-get.cc:579 +#: cmdline/apt-get.cc:580 #, c-format msgid "%lu reinstalled, " msgstr "" -#: cmdline/apt-get.cc:581 +#: cmdline/apt-get.cc:582 #, c-format msgid "%lu downgraded, " msgstr "" -#: cmdline/apt-get.cc:583 +#: cmdline/apt-get.cc:584 #, c-format msgid "%lu to remove and %lu not upgraded.\n" msgstr "" -#: cmdline/apt-get.cc:587 +#: cmdline/apt-get.cc:588 #, c-format msgid "%lu not fully installed or removed.\n" msgstr "" -#: cmdline/apt-get.cc:647 +#: cmdline/apt-get.cc:648 msgid "Correcting dependencies..." msgstr "" -#: cmdline/apt-get.cc:650 +#: cmdline/apt-get.cc:651 msgid " failed." msgstr "" -#: cmdline/apt-get.cc:653 +#: cmdline/apt-get.cc:654 msgid "Unable to correct dependencies" msgstr "" -#: cmdline/apt-get.cc:656 +#: cmdline/apt-get.cc:657 msgid "Unable to minimize the upgrade set" msgstr "" -#: cmdline/apt-get.cc:658 +#: cmdline/apt-get.cc:659 msgid " Done" msgstr "" -#: cmdline/apt-get.cc:662 +#: cmdline/apt-get.cc:663 msgid "You might want to run `apt-get -f install' to correct these." msgstr "" -#: cmdline/apt-get.cc:665 +#: cmdline/apt-get.cc:666 msgid "Unmet dependencies. Try using -f." msgstr "" -#: cmdline/apt-get.cc:687 +#: cmdline/apt-get.cc:688 msgid "WARNING: The following packages cannot be authenticated!" msgstr "" -#: cmdline/apt-get.cc:698 +#: cmdline/apt-get.cc:699 msgid "Install these packages without verification [y/N]? " msgstr "" -#: cmdline/apt-get.cc:700 +#: cmdline/apt-get.cc:701 msgid "Some packages could not be authenticated" msgstr "" -#: cmdline/apt-get.cc:709 cmdline/apt-get.cc:855 +#: cmdline/apt-get.cc:710 cmdline/apt-get.cc:856 msgid "There are problems and -y was used without --force-yes" msgstr "" -#: cmdline/apt-get.cc:762 +#: cmdline/apt-get.cc:763 msgid "Packages need to be removed but remove is disabled." msgstr "" -#: cmdline/apt-get.cc:788 cmdline/apt-get.cc:1778 cmdline/apt-get.cc:1811 +#: cmdline/apt-get.cc:789 cmdline/apt-get.cc:1825 cmdline/apt-get.cc:1858 msgid "Unable to lock the download directory" msgstr "" -#: cmdline/apt-get.cc:798 cmdline/apt-get.cc:1859 cmdline/apt-get.cc:2070 +#: cmdline/apt-get.cc:799 cmdline/apt-get.cc:1906 cmdline/apt-get.cc:2117 #: apt-pkg/cachefile.cc:67 msgid "The list of sources could not be read." msgstr "" -#: cmdline/apt-get.cc:818 +#: cmdline/apt-get.cc:819 #, c-format msgid "Need to get %sB/%sB of archives.\n" msgstr "" -#: cmdline/apt-get.cc:821 +#: cmdline/apt-get.cc:822 #, c-format msgid "Need to get %sB of archives.\n" msgstr "" -#: cmdline/apt-get.cc:826 +#: cmdline/apt-get.cc:827 #, c-format msgid "After unpacking %sB of additional disk space will be used.\n" msgstr "" -#: cmdline/apt-get.cc:829 +#: cmdline/apt-get.cc:830 #, c-format msgid "After unpacking %sB disk space will be freed.\n" msgstr "" -#: cmdline/apt-get.cc:846 +#: cmdline/apt-get.cc:847 #, c-format msgid "You don't have enough free space in %s." msgstr "" -#: cmdline/apt-get.cc:861 cmdline/apt-get.cc:881 +#: cmdline/apt-get.cc:862 cmdline/apt-get.cc:882 msgid "Trivial Only specified but this is not a trivial operation." msgstr "" -#: cmdline/apt-get.cc:863 +#: cmdline/apt-get.cc:864 msgid "Yes, do as I say!" msgstr "" -#: cmdline/apt-get.cc:865 +#: cmdline/apt-get.cc:866 #, c-format msgid "" -"You are about to do something potentially harmful\n" +"You are about to do something potentially harmful.\n" "To continue type in the phrase '%s'\n" " ?] " msgstr "" -#: cmdline/apt-get.cc:871 cmdline/apt-get.cc:890 +#: cmdline/apt-get.cc:872 cmdline/apt-get.cc:891 msgid "Abort." msgstr "" -#: cmdline/apt-get.cc:886 +#: cmdline/apt-get.cc:887 msgid "Do you want to continue [Y/n]? " msgstr "" -#: cmdline/apt-get.cc:958 cmdline/apt-get.cc:1334 cmdline/apt-get.cc:1968 +#: cmdline/apt-get.cc:959 cmdline/apt-get.cc:1335 cmdline/apt-get.cc:2015 #, c-format msgid "Failed to fetch %s %s\n" msgstr "" -#: cmdline/apt-get.cc:976 +#: cmdline/apt-get.cc:977 msgid "Some files failed to download" msgstr "" -#: cmdline/apt-get.cc:977 cmdline/apt-get.cc:1977 +#: cmdline/apt-get.cc:978 cmdline/apt-get.cc:2024 msgid "Download complete and in download only mode" msgstr "" -#: cmdline/apt-get.cc:983 +#: cmdline/apt-get.cc:984 msgid "" "Unable to fetch some archives, maybe run apt-get update or try with --fix-" "missing?" msgstr "" -#: cmdline/apt-get.cc:987 +#: cmdline/apt-get.cc:988 msgid "--fix-missing and media swapping is not currently supported" msgstr "" -#: cmdline/apt-get.cc:992 +#: cmdline/apt-get.cc:993 msgid "Unable to correct missing packages." msgstr "" -#: cmdline/apt-get.cc:993 +#: cmdline/apt-get.cc:994 msgid "Aborting install." msgstr "" -#: cmdline/apt-get.cc:1026 +#: cmdline/apt-get.cc:1027 #, c-format msgid "Note, selecting %s instead of %s\n" msgstr "" -#: cmdline/apt-get.cc:1036 +#: cmdline/apt-get.cc:1037 #, c-format msgid "Skipping %s, it is already installed and upgrade is not set.\n" msgstr "" -#: cmdline/apt-get.cc:1054 +#: cmdline/apt-get.cc:1055 #, c-format msgid "Package %s is not installed, so not removed\n" msgstr "" -#: cmdline/apt-get.cc:1065 +#: cmdline/apt-get.cc:1066 #, c-format msgid "Package %s is a virtual package provided by:\n" msgstr "" -#: cmdline/apt-get.cc:1077 +#: cmdline/apt-get.cc:1078 msgid " [Installed]" msgstr "" -#: cmdline/apt-get.cc:1082 +#: cmdline/apt-get.cc:1083 msgid "You should explicitly select one to install." msgstr "" -#: cmdline/apt-get.cc:1087 +#: cmdline/apt-get.cc:1088 #, c-format msgid "" "Package %s is not available, but is referred to by another package.\n" @@ -795,79 +795,97 @@ msgid "" "is only available from another source\n" msgstr "" -#: cmdline/apt-get.cc:1106 +#: cmdline/apt-get.cc:1107 msgid "However the following packages replace it:" msgstr "" -#: cmdline/apt-get.cc:1109 +#: cmdline/apt-get.cc:1110 #, c-format msgid "Package %s has no installation candidate" msgstr "" -#: cmdline/apt-get.cc:1129 +#: cmdline/apt-get.cc:1130 #, c-format msgid "Reinstallation of %s is not possible, it cannot be downloaded.\n" msgstr "" -#: cmdline/apt-get.cc:1137 +#: cmdline/apt-get.cc:1138 #, c-format msgid "%s is already the newest version.\n" msgstr "" -#: cmdline/apt-get.cc:1164 +#: cmdline/apt-get.cc:1165 #, c-format msgid "Release '%s' for '%s' was not found" msgstr "" -#: cmdline/apt-get.cc:1166 +#: cmdline/apt-get.cc:1167 #, c-format msgid "Version '%s' for '%s' was not found" msgstr "" -#: cmdline/apt-get.cc:1172 +#: cmdline/apt-get.cc:1173 #, c-format msgid "Selected version %s (%s) for %s\n" msgstr "" -#: cmdline/apt-get.cc:1282 +#: cmdline/apt-get.cc:1283 msgid "The update command takes no arguments" msgstr "" -#: cmdline/apt-get.cc:1295 cmdline/apt-get.cc:1389 +#: cmdline/apt-get.cc:1296 cmdline/apt-get.cc:1431 msgid "Unable to lock the list directory" msgstr "" -#: cmdline/apt-get.cc:1353 +#: cmdline/apt-get.cc:1354 msgid "" "Some index files failed to download, they have been ignored, or old ones " "used instead." msgstr "" -#: cmdline/apt-get.cc:1372 +#: cmdline/apt-get.cc:1367 +msgid "We are not supposed to delete stuff, can't start AutoRemover" +msgstr "" + +#: cmdline/apt-get.cc:1389 +msgid "" +"Hmm, seems like the AutoRemover destroyed something which really\n" +"shouldn't happen. Please file a bug report against apt." +msgstr "" + +#: cmdline/apt-get.cc:1392 cmdline/apt-get.cc:1594 +msgid "The following information may help to resolve the situation:" +msgstr "" + +#: cmdline/apt-get.cc:1396 +msgid "Internal Error, AutoRemover broke stuff" +msgstr "" + +#: cmdline/apt-get.cc:1414 msgid "Internal error, AllUpgrade broke stuff" msgstr "" -#: cmdline/apt-get.cc:1471 cmdline/apt-get.cc:1507 +#: cmdline/apt-get.cc:1513 cmdline/apt-get.cc:1549 #, c-format msgid "Couldn't find package %s" msgstr "" -#: cmdline/apt-get.cc:1494 +#: cmdline/apt-get.cc:1536 #, c-format msgid "Note, selecting %s for regex '%s'\n" msgstr "" -#: cmdline/apt-get.cc:1524 +#: cmdline/apt-get.cc:1566 msgid "You might want to run `apt-get -f install' to correct these:" msgstr "" -#: cmdline/apt-get.cc:1527 +#: cmdline/apt-get.cc:1569 msgid "" "Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a " "solution)." msgstr "" -#: cmdline/apt-get.cc:1539 +#: cmdline/apt-get.cc:1581 msgid "" "Some packages could not be installed. This may mean that you have\n" "requested an impossible situation or if you are using the unstable\n" @@ -875,149 +893,145 @@ msgid "" "or been moved out of Incoming." msgstr "" -#: cmdline/apt-get.cc:1547 +#: cmdline/apt-get.cc:1589 msgid "" "Since you only requested a single operation it is extremely likely that\n" "the package is simply not installable and a bug report against\n" "that package should be filed." msgstr "" -#: cmdline/apt-get.cc:1552 -msgid "The following information may help to resolve the situation:" -msgstr "" - -#: cmdline/apt-get.cc:1555 +#: cmdline/apt-get.cc:1597 msgid "Broken packages" msgstr "" -#: cmdline/apt-get.cc:1581 +#: cmdline/apt-get.cc:1628 msgid "The following extra packages will be installed:" msgstr "" -#: cmdline/apt-get.cc:1652 +#: cmdline/apt-get.cc:1699 msgid "Suggested packages:" msgstr "" -#: cmdline/apt-get.cc:1653 +#: cmdline/apt-get.cc:1700 msgid "Recommended packages:" msgstr "" -#: cmdline/apt-get.cc:1673 +#: cmdline/apt-get.cc:1720 msgid "Calculating upgrade... " msgstr "" -#: cmdline/apt-get.cc:1676 methods/ftp.cc:702 methods/connect.cc:99 +#: cmdline/apt-get.cc:1723 methods/ftp.cc:702 methods/connect.cc:99 msgid "Failed" msgstr "" -#: cmdline/apt-get.cc:1681 +#: cmdline/apt-get.cc:1728 msgid "Done" msgstr "" -#: cmdline/apt-get.cc:1854 +#: cmdline/apt-get.cc:1901 msgid "Must specify at least one package to fetch source for" msgstr "" -#: cmdline/apt-get.cc:1881 cmdline/apt-get.cc:2088 +#: cmdline/apt-get.cc:1928 cmdline/apt-get.cc:2135 #, c-format msgid "Unable to find a source package for %s" msgstr "" -#: cmdline/apt-get.cc:1928 +#: cmdline/apt-get.cc:1975 #, c-format msgid "You don't have enough free space in %s" msgstr "" -#: cmdline/apt-get.cc:1933 +#: cmdline/apt-get.cc:1980 #, c-format msgid "Need to get %sB/%sB of source archives.\n" msgstr "" -#: cmdline/apt-get.cc:1936 +#: cmdline/apt-get.cc:1983 #, c-format msgid "Need to get %sB of source archives.\n" msgstr "" -#: cmdline/apt-get.cc:1942 +#: cmdline/apt-get.cc:1989 #, c-format msgid "Fetch source %s\n" msgstr "" -#: cmdline/apt-get.cc:1973 +#: cmdline/apt-get.cc:2020 msgid "Failed to fetch some archives." msgstr "" -#: cmdline/apt-get.cc:2001 +#: cmdline/apt-get.cc:2048 #, c-format msgid "Skipping unpack of already unpacked source in %s\n" msgstr "" -#: cmdline/apt-get.cc:2013 +#: cmdline/apt-get.cc:2060 #, c-format msgid "Unpack command '%s' failed.\n" msgstr "" -#: cmdline/apt-get.cc:2030 +#: cmdline/apt-get.cc:2077 #, c-format msgid "Build command '%s' failed.\n" msgstr "" -#: cmdline/apt-get.cc:2049 +#: cmdline/apt-get.cc:2096 msgid "Child process failed" msgstr "" -#: cmdline/apt-get.cc:2065 +#: cmdline/apt-get.cc:2112 msgid "Must specify at least one package to check builddeps for" msgstr "" -#: cmdline/apt-get.cc:2093 +#: cmdline/apt-get.cc:2140 #, c-format msgid "Unable to get build-dependency information for %s" msgstr "" -#: cmdline/apt-get.cc:2113 +#: cmdline/apt-get.cc:2160 #, c-format msgid "%s has no build depends.\n" msgstr "" -#: cmdline/apt-get.cc:2165 +#: cmdline/apt-get.cc:2212 #, c-format msgid "" "%s dependency for %s cannot be satisfied because the package %s cannot be " "found" msgstr "" -#: cmdline/apt-get.cc:2217 +#: cmdline/apt-get.cc:2264 #, c-format msgid "" "%s dependency for %s cannot be satisfied because no available versions of " "package %s can satisfy version requirements" msgstr "" -#: cmdline/apt-get.cc:2252 +#: cmdline/apt-get.cc:2299 #, c-format msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new" msgstr "" -#: cmdline/apt-get.cc:2277 +#: cmdline/apt-get.cc:2324 #, c-format msgid "Failed to satisfy %s dependency for %s: %s" msgstr "" -#: cmdline/apt-get.cc:2291 +#: cmdline/apt-get.cc:2338 #, c-format msgid "Build-dependencies for %s could not be satisfied." msgstr "" -#: cmdline/apt-get.cc:2295 +#: cmdline/apt-get.cc:2342 msgid "Failed to process build dependencies" msgstr "" -#: cmdline/apt-get.cc:2327 +#: cmdline/apt-get.cc:2374 msgid "Supported modules:" msgstr "" -#: cmdline/apt-get.cc:2368 +#: cmdline/apt-get.cc:2415 msgid "" "Usage: apt-get [options] command\n" " apt-get [options] install|remove pkg1 [pkg2 ...]\n" @@ -1215,7 +1229,7 @@ msgstr "" #: apt-inst/dirstream.cc:45 apt-inst/dirstream.cc:50 apt-inst/dirstream.cc:53 #, c-format -msgid "Failed write file %s" +msgid "Failed to write file %s" msgstr "" #: apt-inst/dirstream.cc:80 apt-inst/dirstream.cc:88 @@ -1301,9 +1315,9 @@ msgid "The info and temp directories need to be on the same filesystem" msgstr "" #. Build the status cache -#: apt-inst/deb/dpkgdb.cc:139 apt-pkg/pkgcachegen.cc:643 -#: apt-pkg/pkgcachegen.cc:712 apt-pkg/pkgcachegen.cc:717 -#: apt-pkg/pkgcachegen.cc:840 +#: apt-inst/deb/dpkgdb.cc:139 apt-pkg/pkgcachegen.cc:645 +#: apt-pkg/pkgcachegen.cc:714 apt-pkg/pkgcachegen.cc:719 +#: apt-pkg/pkgcachegen.cc:842 msgid "Reading package lists" msgstr "" @@ -1358,7 +1372,7 @@ msgid "Internal error adding a diversion" msgstr "" #: apt-inst/deb/dpkgdb.cc:383 -msgid "The pkg cache must be initialize first" +msgid "The pkg cache must be initialized first" msgstr "" #: apt-inst/deb/dpkgdb.cc:386 @@ -2007,18 +2021,27 @@ msgstr "" msgid "extra" msgstr "" -#: apt-pkg/depcache.cc:60 apt-pkg/depcache.cc:89 +#: apt-pkg/depcache.cc:64 apt-pkg/depcache.cc:96 msgid "Building dependency tree" msgstr "" -#: apt-pkg/depcache.cc:61 +#: apt-pkg/depcache.cc:65 msgid "Candidate versions" msgstr "" -#: apt-pkg/depcache.cc:90 +#: apt-pkg/depcache.cc:97 msgid "Dependency generation" msgstr "" +#: apt-pkg/depcache.cc:114 apt-pkg/depcache.cc:131 apt-pkg/depcache.cc:134 +msgid "Reading extended state information" +msgstr "" + +#: apt-pkg/depcache.cc:150 +#, c-format +msgid "Failed to write StateFile %s" +msgstr "" + #: apt-pkg/tagfile.cc:73 #, c-format msgid "Unable to parse package file %s (1)" @@ -2167,82 +2190,82 @@ msgstr "" msgid "No priority (or zero) specified for pin" msgstr "" -#: apt-pkg/pkgcachegen.cc:74 +#: apt-pkg/pkgcachegen.cc:76 msgid "Cache has an incompatible versioning system" msgstr "" -#: apt-pkg/pkgcachegen.cc:117 +#: apt-pkg/pkgcachegen.cc:119 #, c-format -msgid "Error occured while processing %s (NewPackage)" +msgid "Error occurred while processing %s (NewPackage)" msgstr "" -#: apt-pkg/pkgcachegen.cc:129 +#: apt-pkg/pkgcachegen.cc:131 #, c-format -msgid "Error occured while processing %s (UsePackage1)" +msgid "Error occurred while processing %s (UsePackage1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:150 +#: apt-pkg/pkgcachegen.cc:152 #, c-format -msgid "Error occured while processing %s (UsePackage2)" +msgid "Error occurred while processing %s (UsePackage2)" msgstr "" -#: apt-pkg/pkgcachegen.cc:154 +#: apt-pkg/pkgcachegen.cc:156 #, c-format -msgid "Error occured while processing %s (NewFileVer1)" +msgid "Error occurred while processing %s (NewFileVer1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:184 +#: apt-pkg/pkgcachegen.cc:186 #, c-format -msgid "Error occured while processing %s (NewVersion1)" +msgid "Error occurred while processing %s (NewVersion1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:188 +#: apt-pkg/pkgcachegen.cc:190 #, c-format -msgid "Error occured while processing %s (UsePackage3)" +msgid "Error occurred while processing %s (UsePackage3)" msgstr "" -#: apt-pkg/pkgcachegen.cc:192 +#: apt-pkg/pkgcachegen.cc:194 #, c-format -msgid "Error occured while processing %s (NewVersion2)" +msgid "Error occurred while processing %s (NewVersion2)" msgstr "" -#: apt-pkg/pkgcachegen.cc:207 +#: apt-pkg/pkgcachegen.cc:209 msgid "Wow, you exceeded the number of package names this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:210 +#: apt-pkg/pkgcachegen.cc:212 msgid "Wow, you exceeded the number of versions this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:213 +#: apt-pkg/pkgcachegen.cc:215 msgid "Wow, you exceeded the number of dependencies this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:241 +#: apt-pkg/pkgcachegen.cc:243 #, c-format -msgid "Error occured while processing %s (FindPkg)" +msgid "Error occurred while processing %s (FindPkg)" msgstr "" -#: apt-pkg/pkgcachegen.cc:254 +#: apt-pkg/pkgcachegen.cc:256 #, c-format -msgid "Error occured while processing %s (CollectFileProvides)" +msgid "Error occurred while processing %s (CollectFileProvides)" msgstr "" -#: apt-pkg/pkgcachegen.cc:260 +#: apt-pkg/pkgcachegen.cc:262 #, c-format msgid "Package %s %s was not found while processing file dependencies" msgstr "" -#: apt-pkg/pkgcachegen.cc:574 +#: apt-pkg/pkgcachegen.cc:576 #, c-format msgid "Couldn't stat source package list %s" msgstr "" -#: apt-pkg/pkgcachegen.cc:658 +#: apt-pkg/pkgcachegen.cc:660 msgid "Collecting File Provides" msgstr "" -#: apt-pkg/pkgcachegen.cc:785 apt-pkg/pkgcachegen.cc:792 +#: apt-pkg/pkgcachegen.cc:787 apt-pkg/pkgcachegen.cc:794 msgid "IO Error saving source cache" msgstr "" |