diff options
35 files changed, 1657 insertions, 3101 deletions
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc index 1b9120586..b7b16b9a2 100644 --- a/apt-pkg/acquire-item.cc +++ b/apt-pkg/acquire-item.cc @@ -63,6 +63,7 @@ void pkgAcquire::Item::Failed(string Message,pkgAcquire::MethodConfig *Cnf) { Status = StatIdle; ErrorText = LookupTag(Message,"Message"); + UsedMirror = LookupTag(Message,"UsedMirror"); if (QueueCounter <= 1) { /* This indicates that the file is not available right now but might @@ -75,10 +76,17 @@ void pkgAcquire::Item::Failed(string Message,pkgAcquire::MethodConfig *Cnf) Dequeue(); return; } - + Status = StatError; Dequeue(); } + + // report mirror failure back to LP if we actually use a mirror + string FailReason = LookupTag(Message, "FailReason"); + if(FailReason.size() != 0) + ReportMirrorFailure(FailReason); + else + ReportMirrorFailure(ErrorText); } /*}}}*/ // Acquire::Item::Start - Item has begun to download /*{{{*/ @@ -100,7 +108,7 @@ void pkgAcquire::Item::Done(string Message,unsigned long Size,string, { // We just downloaded something.. string FileName = LookupTag(Message,"Filename"); - // we only inform the Log class if it was actually not a local thing + UsedMirror = LookupTag(Message,"UsedMirror"); if (Complete == false && !Local && FileName == DestFile) { if (Owner->Log != 0) @@ -109,7 +117,6 @@ void pkgAcquire::Item::Done(string Message,unsigned long Size,string, if (FileSize == 0) FileSize= Size; - Status = StatDone; ErrorText = string(); Owner->Dequeue(this); @@ -132,6 +139,49 @@ void pkgAcquire::Item::Rename(string From,string To) } /*}}}*/ +void pkgAcquire::Item::ReportMirrorFailure(string FailCode) +{ + // we only act if a mirror was used at all + if(UsedMirror.empty()) + return; +#if 0 + std::cerr << "\nReportMirrorFailure: " + << UsedMirror + << " Uri: " << DescURI() + << " FailCode: " + << FailCode << std::endl; +#endif + const char *Args[40]; + unsigned int i = 0; + string report = _config->Find("Methods::Mirror::ProblemReporting", + "/usr/lib/apt/apt-report-mirror-failure"); + if(!FileExists(report)) + return; + Args[i++] = report.c_str(); + Args[i++] = UsedMirror.c_str(); + Args[i++] = DescURI().c_str(); + Args[i++] = FailCode.c_str(); + Args[i++] = NULL; + pid_t pid = ExecFork(); + if(pid < 0) + { + _error->Error("ReportMirrorFailure Fork failed"); + return; + } + else if(pid == 0) + { + execvp(Args[0], (char**)Args); + std::cerr << "Could not exec " << Args[0] << std::endl; + _exit(100); + } + if(!ExecWait(pid, "report-mirror-failure")) + { + _error->Warning("Couldn't report problem to '%s'", + _config->Find("Methods::Mirror::ProblemReporting").c_str()); + } +} + + // AcqDiffIndex::AcqDiffIndex - Constructor // --------------------------------------------------------------------- @@ -595,7 +645,6 @@ string pkgAcqIndex::Custom600Headers() struct stat Buf; if (stat(Final.c_str(),&Buf) != 0) return "\nIndex-File: true"; - return "\nIndex-File: true\nLast-Modified: " + TimeRFC1123(Buf.st_mtime); } /*}}}*/ @@ -660,6 +709,7 @@ void pkgAcqIndex::Done(string Message,unsigned long Size,string MD5, Status = StatAuthError; ErrorText = _("MD5Sum mismatch"); Rename(DestFile,DestFile + ".FAILED"); + ReportMirrorFailure("HashChecksumFailure"); return; } // Done, move it into position @@ -1064,7 +1114,7 @@ void pkgAcqMetaIndex::QueueIndexes(bool verify) // Queue Packages file (either diff or full packages files, depending // on the users option) - if(_config->FindB("Acquire::PDiffs",true) == true) + if(_config->FindB("Acquire::PDiffs",false) == true) new pkgAcqDiffIndex(Owner, (*Target)->URI, (*Target)->Description, (*Target)->ShortDesc, ExpectedIndexMD5); else @@ -1188,6 +1238,7 @@ void pkgAcqMetaIndex::Failed(string Message,pkgAcquire::MethodConfig *Cnf) } // gpgv method failed + ReportMirrorFailure("GPGFailure"); _error->Warning("GPG error: %s: %s", Desc.Description.c_str(), LookupTag(Message,"Message").c_str()); diff --git a/apt-pkg/acquire-item.h b/apt-pkg/acquire-item.h index f5272ed86..233cbdda9 100644 --- a/apt-pkg/acquire-item.h +++ b/apt-pkg/acquire-item.h @@ -142,6 +142,7 @@ class pkgAcquire::Item * download progress indicator's overall statistics. */ bool Local; + string UsedMirror; /** \brief The number of fetch queues into which this item has been * inserted. @@ -242,6 +243,17 @@ class pkgAcquire::Item /** \return \b true if this object is being fetched from a trusted source. */ virtual bool IsTrusted() {return false;}; + + // report mirror problems + /** \brief Report mirror problem + * + * This allows reporting mirror failures back to a centralized + * server. The apt-report-mirror-failure script is called for this + * + * \param FailCode A short failure string that is send + */ + void ReportMirrorFailure(string FailCode); + /** \brief Initialize an item. * @@ -542,7 +554,7 @@ class pkgAcqIndex : public pkgAcquire::Item * (".bz2" is used if bzip2 is installed, ".gz" otherwise). */ pkgAcqIndex(pkgAcquire *Owner,string URI,string URIDesc, - string ShortDesc, string ExpectedMD5, string compressExt=""); + string ShortDesct, string ExpectedMD5, string compressExt=""); }; /** \brief An acquire item that is responsible for fetching a diff --git a/apt-pkg/acquire-method.cc b/apt-pkg/acquire-method.cc index 3360a8eae..dfadf800f 100644 --- a/apt-pkg/acquire-method.cc +++ b/apt-pkg/acquire-method.cc @@ -96,12 +96,11 @@ void pkgAcqMethod::Fail(string Err,bool Transient) } char S[1024]; + char *End = S; if (Queue != 0) { - snprintf(S,sizeof(S)-50,"400 URI Failure\nURI: %s\n" - "Message: %s %s\n",Queue->Uri.c_str(),Err.c_str(), - FailExtra.c_str()); - + End += snprintf(S,sizeof(S)-50,"400 URI Failure\nURI: %s\n" + "Message: %s %s\n",Queue->Uri.c_str(), Err.c_str(), IP.c_str()); // Dequeue FetchItem *Tmp = Queue; Queue = Queue->Next; @@ -110,10 +109,14 @@ void pkgAcqMethod::Fail(string Err,bool Transient) QueueBack = Queue; } else - snprintf(S,sizeof(S)-50,"400 URI Failure\nURI: <UNKNOWN>\n" - "Message: %s %s\n",Err.c_str(), - FailExtra.c_str()); - + { + End += snprintf(S,sizeof(S)-50,"400 URI Failure\nURI: <UNKNOWN>\n" + "Message: %s\n",Err.c_str()); + } + if(FailReason.empty() == false) + End += snprintf(End,sizeof(S)-50 - (End - S),"FailReason: %s\n",FailReason.c_str()); + if (UsedMirror.empty() == false) + End += snprintf(End,sizeof(S)-50 - (End - S),"UsedMirror: %s\n",UsedMirror.c_str()); // Set the transient flag if (Transient == true) strcat(S,"Transient-Failure: true\n\n"); @@ -179,6 +182,8 @@ void pkgAcqMethod::URIDone(FetchResult &Res, FetchResult *Alt) End += snprintf(End,sizeof(S)-50 - (End - S),"MD5-Hash: %s\n",Res.MD5Sum.c_str()); if (Res.SHA1Sum.empty() == false) End += snprintf(End,sizeof(S)-50 - (End - S),"SHA1-Hash: %s\n",Res.SHA1Sum.c_str()); + if (UsedMirror.empty() == false) + End += snprintf(End,sizeof(S)-50 - (End - S),"UsedMirror: %s\n",UsedMirror.c_str()); if (Res.GPGVOutput.size() > 0) End += snprintf(End,sizeof(S)-50 - (End - S),"GPGVOutput:\n"); for (vector<string>::iterator I = Res.GPGVOutput.begin(); diff --git a/apt-pkg/acquire-method.h b/apt-pkg/acquire-method.h index 0fd846f54..89eb2e77f 100644 --- a/apt-pkg/acquire-method.h +++ b/apt-pkg/acquire-method.h @@ -58,7 +58,9 @@ class pkgAcqMethod vector<string> Messages; FetchItem *Queue; FetchItem *QueueBack; - string FailExtra; + string FailReason; + string UsedMirror; + string IP; // Handlers for messages virtual bool Configuration(string Message); @@ -67,14 +69,14 @@ class pkgAcqMethod // Outgoing messages void Fail(bool Transient = false); inline void Fail(const char *Why, bool Transient = false) {Fail(string(Why),Transient);}; - void Fail(string Why, bool Transient = false); - void URIStart(FetchResult &Res); - void URIDone(FetchResult &Res,FetchResult *Alt = 0); + virtual void Fail(string Why, bool Transient = false); + virtual void URIStart(FetchResult &Res); + virtual void URIDone(FetchResult &Res,FetchResult *Alt = 0); + bool MediaFail(string Required,string Drive); virtual void Exit() {}; public: - enum CnfFlags {SingleInstance = (1<<0), Pipeline = (1<<1), SendConfig = (1<<2), LocalOnly = (1<<3), NeedsCleanup = (1<<4), @@ -84,7 +86,8 @@ class pkgAcqMethod void Status(const char *Format,...); int Run(bool Single = false); - inline void SetFailExtraMsg(string Msg) {FailExtra = Msg;}; + inline void SetFailReason(string Msg) {FailReason = Msg;}; + inline void SetIP(string aIP) {IP = aIP;}; pkgAcqMethod(const char *Ver,unsigned long Flags = 0); virtual ~pkgAcqMethod() {}; diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index e5506d3bf..4b4bba696 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -12,6 +12,7 @@ #include <apt-pkg/error.h> #include <apt-pkg/configuration.h> #include <apt-pkg/depcache.h> +#include <apt-pkg/pkgrecords.h> #include <apt-pkg/strutl.h> #include <unistd.h> @@ -34,7 +35,8 @@ using namespace std; // DPkgPM::pkgDPkgPM - Constructor /*{{{*/ // --------------------------------------------------------------------- /* */ -pkgDPkgPM::pkgDPkgPM(pkgDepCache *Cache) : pkgPackageManager(Cache) +pkgDPkgPM::pkgDPkgPM(pkgDepCache *Cache) + : pkgPackageManager(Cache), pkgFailures(0) { } /*}}}*/ @@ -651,6 +653,8 @@ bool pkgDPkgPM::Go(int OutStatusFd) line[0]=0; if (_config->FindB("Debug::pkgDPkgProgressReporting",false) == true) std::clog << "send: '" << status.str() << "'" << endl; + pkgFailures++; + WriteApportReport(list[1], list[3]); continue; } if(strncmp(action,"conffile",strlen("conffile")) == 0) @@ -743,3 +747,94 @@ void pkgDPkgPM::Reset() List.erase(List.begin(),List.end()); } /*}}}*/ +// pkgDpkgPM::WriteApportReport - write out error report pkg failure /*{{{*/ +// --------------------------------------------------------------------- +/* */ +void pkgDPkgPM::WriteApportReport(const char *pkgpath, const char *errormsg) +{ + string pkgname, reportfile, srcpkgname, pkgver, arch; + string::size_type pos; + FILE *report; + + if (_config->FindB("Dpkg::ApportFailureReport",true) == false) + return; + + // only report the first error if we are in StopOnError=false mode + // to prevent bogus reports + if((_config->FindB("Dpkg::StopOnError",true) == false) && pkgFailures > 1) + return; + + // get the pkgname and reportfile + pkgname = flNotDir(pkgpath); + pos = pkgname.rfind('_'); + if(pos != string::npos) + pkgname = string(pkgname, 0, pos); + + // find the package versin and source package name + pkgCache::PkgIterator Pkg = Cache.FindPkg(pkgname); + if (Pkg.end() == true) + return; + pkgCache::VerIterator Ver = Cache.GetCandidateVer(Pkg); + pkgver = Ver.VerStr(); + if (Ver.end() == true) + return; + pkgRecords Recs(Cache); + pkgRecords::Parser &Parse = Recs.Lookup(Ver.FileList()); + srcpkgname = Parse.SourcePkg(); + if(srcpkgname.empty()) + srcpkgname = pkgname; + + // if the file exists already, we check: + // - if it was reported already (touched by apport). + // If not, we do nothing, otherwise + // we overwrite it. This is the same behaviour as apport + // - if we have a report with the same pkgversion already + // then we skip it + reportfile = flCombine("/var/crash",pkgname+".0.crash"); + if(FileExists(reportfile)) + { + struct stat buf; + char strbuf[255]; + + // check atime/mtime + stat(reportfile.c_str(), &buf); + if(buf.st_mtime > buf.st_atime) + return; + + // check if the existing report is the same version + report = fopen(reportfile.c_str(),"r"); + while(fgets(strbuf, sizeof(strbuf), report) != NULL) + { + if(strstr(strbuf,"Package:") == strbuf) + { + char pkgname[255], version[255]; + if(sscanf(strbuf, "Package: %s %s", pkgname, version) == 2) + if(strcmp(pkgver.c_str(), version) == 0) + { + fclose(report); + return; + } + } + } + fclose(report); + } + + // now write the report + arch = _config->Find("APT::Architecture"); + report = fopen(reportfile.c_str(),"w"); + if(report == NULL) + return; + if(_config->FindB("DPkgPM::InitialReportOnly",false) == true) + chmod(reportfile.c_str(), 0); + else + chmod(reportfile.c_str(), 0600); + fprintf(report, "ProblemType: Package\n"); + fprintf(report, "Architecture: %s\n", arch.c_str()); + time_t now = time(NULL); + fprintf(report, "Date: %s" , ctime(&now)); + fprintf(report, "Package: %s %s\n", pkgname.c_str(), pkgver.c_str()); + fprintf(report, "SourcePackage: %s\n", srcpkgname.c_str()); + fprintf(report, "ErrorMessage:\n %s\n", errormsg); + fclose(report); +} + /*}}}*/ diff --git a/apt-pkg/deb/dpkgpm.h b/apt-pkg/deb/dpkgpm.h index 7da729904..a413f3a90 100644 --- a/apt-pkg/deb/dpkgpm.h +++ b/apt-pkg/deb/dpkgpm.h @@ -19,6 +19,7 @@ using std::vector; class pkgDPkgPM : public pkgPackageManager { protected: + int pkgFailures; // used for progress reporting struct DpkgState @@ -44,6 +45,9 @@ class pkgDPkgPM : public pkgPackageManager bool RunScriptsWithPkgs(const char *Cnf); bool SendV2Pkgs(FILE *F); + // apport integration + void WriteApportReport(const char *pkgpath, const char *errormsg); + // 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 fe981ea76..491ba6d4c 100644 --- a/apt-pkg/depcache.cc +++ b/apt-pkg/depcache.cc @@ -1132,34 +1132,6 @@ pkgCache::VerIterator pkgDepCache::Policy::GetCandidateVer(PkgIterator Pkg) return Last; } /*}}}*/ -// Policy::IsImportantDep - True if the dependency is important /*{{{*/ -// --------------------------------------------------------------------- -/* */ -bool pkgDepCache::Policy::IsImportantDep(DepIterator Dep) -{ - if(Dep.IsCritical()) - return true; - else if(Dep->Type == pkgCache::Dep::Recommends) - { - if ( _config->FindB("APT::Install-Recommends", false)) - return true; - // we suport a special mode to only install-recommends for certain - // sections - // FIXME: this is a meant as a temporarly solution until the - // recommends are cleaned up - string s = _config->Find("APT::Install-Recommends-Section",""); - if(s.size() > 0) - { - const char *sec = Dep.TargetPkg().Section(); - if (sec && strcmp(sec, s.c_str()) == 0) - return true; - } - } - else if(Dep->Type == pkgCache::Dep::Suggests) - return _config->FindB("APT::Install-Suggests", false); - - return false; -} /*}}}*/ pkgDepCache::DefaultRootSetFunc::DefaultRootSetFunc() @@ -1378,3 +1350,34 @@ bool pkgDepCache::Sweep() return true; } + +// Policy::IsImportantDep - True if the dependency is important /*{{{*/ +// --------------------------------------------------------------------- +/* */ +bool pkgDepCache::Policy::IsImportantDep(DepIterator Dep) +{ + if(Dep.IsCritical()) + return true; + else if(Dep->Type == pkgCache::Dep::Recommends) + { + if ( _config->FindB("APT::Install-Recommends", false)) + return true; + // we suport a special mode to only install-recommends for certain + // sections + // FIXME: this is a meant as a temporarly solution until the + // recommends are cleaned up + string s = _config->Find("APT::Install-Recommends-Section",""); + if(s.size() > 0) + { + const char *sec = Dep.ParentVer().Section(); + if (sec && strcmp(sec, s.c_str()) == 0) + return true; + } + } + else if(Dep->Type == pkgCache::Dep::Suggests) + return _config->FindB("APT::Install-Suggests", false); + + return false; +} + /*}}}*/ + diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc index 2f15486d9..a209d7477 100644 --- a/apt-pkg/init.cc +++ b/apt-pkg/init.cc @@ -57,6 +57,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/"); @@ -105,7 +106,6 @@ bool pkgInitConfig(Configuration &Cnf) bindtextdomain(textdomain(0),Cnf.FindDir("Dir::Locale").c_str()); } #endif - // Translation Cnf.Set("APT::Acquire::Translation", "environment"); diff --git a/apt-pkg/pkgrecords.cc b/apt-pkg/pkgrecords.cc index 0aaa2096a..d251bee41 100644 --- a/apt-pkg/pkgrecords.cc +++ b/apt-pkg/pkgrecords.cc @@ -20,11 +20,9 @@ // Records::pkgRecords - Constructor /*{{{*/ // --------------------------------------------------------------------- /* This will create the necessary structures to access the status files */ -pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache), Files(0) +pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache), + Files(Cache.HeaderP->PackageFileCount) { - Files = new Parser *[Cache.HeaderP->PackageFileCount]; - memset(Files,0,sizeof(*Files)*Cache.HeaderP->PackageFileCount); - for (pkgCache::PkgFileIterator I = Cache.FileBegin(); I.end() == false; I++) { @@ -46,9 +44,13 @@ pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache), Files(0) /* */ pkgRecords::~pkgRecords() { - for (unsigned I = 0; I != Cache.HeaderP->PackageFileCount; I++) - delete Files[I]; - delete [] Files; + for ( vector<Parser*>::iterator it = Files.begin(); + it != Files.end(); + ++it) + { + delete *it; + } + } /*}}}*/ // Records::Lookup - Get a parser for the package version file /*{{{*/ diff --git a/apt-pkg/pkgrecords.h b/apt-pkg/pkgrecords.h index ea1a23fc4..7b9f51a50 100644 --- a/apt-pkg/pkgrecords.h +++ b/apt-pkg/pkgrecords.h @@ -20,6 +20,7 @@ #include <apt-pkg/pkgcache.h> #include <apt-pkg/fileutl.h> +#include <vector> class pkgRecords { @@ -29,8 +30,8 @@ class pkgRecords private: pkgCache &Cache; - Parser **Files; - + std::vector<Parser *>Files; + public: // Lookup function diff --git a/apt-pkg/tagfile.cc b/apt-pkg/tagfile.cc index 893cb8ee7..0ae6950f3 100644 --- a/apt-pkg/tagfile.cc +++ b/apt-pkg/tagfile.cc @@ -407,6 +407,7 @@ static const char *iTFRewritePackageOrder[] = { "Section", "Installed-Size", "Maintainer", + "Original-Maintainer", "Architecture", "Source", "Version", @@ -436,6 +437,7 @@ static const char *iTFRewriteSourceOrder[] = {"Package", "Priority", "Section", "Maintainer", + "Original-Maintainer", "Build-Depends", "Build-Depends-Indep", "Build-Conflicts", diff --git a/cmdline/apt-key b/cmdline/apt-key index 90ecae2cf..7c1aad0cf 100755 --- a/cmdline/apt-key +++ b/cmdline/apt-key @@ -9,14 +9,14 @@ GPG_CMD="gpg --no-options --no-default-keyring --secret-keyring /etc/apt/secring GPG="$GPG_CMD --keyring /etc/apt/trusted.gpg" -ARCHIVE_KEYRING=/usr/share/keyrings/debian-archive-keyring.gpg -REMOVED_KEYS=/usr/share/keyrings/debian-archive-removed-keys.gpg +ARCHIVE_KEYRING=/usr/share/keyrings/ubuntu-archive-keyring.gpg +REMOVED_KEYS=/usr/share/keyrings/ubuntu-archive-removed-keys.gpg update() { if [ ! -f $ARCHIVE_KEYRING ]; then echo >&2 "ERROR: Can't find the archive-keyring" - echo >&2 "Is the debian-archive-keyring package installed?" + echo >&2 "Is the ubuntu-keyring package installed?" exit 1 fi diff --git a/cmdline/apt-report-mirror-failure b/cmdline/apt-report-mirror-failure new file mode 100755 index 000000000..1567e78e3 --- /dev/null +++ b/cmdline/apt-report-mirror-failure @@ -0,0 +1,24 @@ +#!/usr/bin/python + +import sys +import urllib +import apt_pkg + +apt_pkg.init() +url = apt_pkg.Config.Find("Acquire::Mirror::ReportFailures", None) + #"http://people.ubuntu.com:9000/mirror-failure") + #"http://localhost:9000/mirror-failure") +if not url: + sys.exit(0) + +print "Reporting mirror failure to '%s'" % url + +data = {} +data['mirror'] = sys.argv[1] +data['failurl'] = sys.argv[2] +data['error'] = sys.argv[3] +f = urllib.urlopen(url, urllib.urlencode(data)) +f.read() +f.close() + + diff --git a/cmdline/makefile b/cmdline/makefile index 49035be44..2a5bdfbea 100644 --- a/cmdline/makefile +++ b/cmdline/makefile @@ -58,3 +58,9 @@ SOURCE=apt-mark TO=$(BIN) TARGET=program include $(COPY_H) + +# The apt-key program +SOURCE=apt-report-mirror-failure +TO=$(BIN) +TARGET=program +include $(COPY_H) diff --git a/configure.in b/configure.in index 34d4dcc78..59e3d6fe1 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.7.2") +AC_DEFINE_UNQUOTED(VERSION,"0.7.2ubuntu1") PACKAGE="apt" AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE") AC_SUBST(PACKAGE) diff --git a/debian/apt.conf.autoremove b/debian/apt.conf.autoremove index 98143ce9a..3a9945b54 100644 --- a/debian/apt.conf.autoremove +++ b/debian/apt.conf.autoremove @@ -5,4 +5,7 @@ APT "^linux-image.*"; "^linux-restricted-modules.*"; }; + + Install-Recommends-Section "metapackages"; + Never-MarkAuto-Section "metapackages"; }; diff --git a/debian/apt.cron.daily b/debian/apt.cron.daily index 778e3cefe..127ecf47d 100644 --- a/debian/apt.cron.daily +++ b/debian/apt.cron.daily @@ -158,6 +158,10 @@ UnattendedUpgradeInterval=0 eval $(apt-config shell UnattendedUpgradeInterval APT::Periodic::Unattended-Upgrade) +UnattendedUpgradeInterval=0 +eval $(apt-config shell UnattendedUpgradeInterval APT::Periodic::Unattended-Upgrade) + + # laptop check, on_ac_power returns: # 0 (true) System is on mains power # 1 (false) System is not on mains power diff --git a/debian/apt.dirs b/debian/apt.dirs index 1543e8bb1..025898e84 100644 --- a/debian/apt.dirs +++ b/debian/apt.dirs @@ -6,5 +6,6 @@ etc/apt/apt.conf.d etc/apt/sources.list.d var/cache/apt/archives/partial var/lib/apt/lists/partial +var/lib/apt/mirrors/partial var/lib/apt/periodic usr/share/bug/apt diff --git a/debian/apt.postinst b/debian/apt.postinst index 88fb932df..df0433057 100644 --- a/debian/apt.postinst +++ b/debian/apt.postinst @@ -17,11 +17,9 @@ case "$1" in configure) if ! test -f /etc/apt/trusted.gpg; then - cp /usr/share/apt/debian-archive.gpg /etc/apt/trusted.gpg + cp /usr/share/apt/ubuntu-archive.gpg /etc/apt/trusted.gpg fi - apt-key update - ;; abort-upgrade|abort-remove|abort-deconfigure) diff --git a/debian/changelog b/debian/changelog index 41609bd74..c86f8abbc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,14 @@ +apt (0.7.2ubuntu1) gutsy; urgency=low + + * apt-pkg/deb/dpkgpm.cc: + - apport integration added, this means that a apport + report is written on dpkg failures + * merged from debian/unstable, remaining changes: + - maintainer field changed + + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 14 Jun 2007 10:38:36 +0200 + apt (0.7.2) unstable; urgency=low * merged the debian/experimental changes back @@ -56,12 +67,16 @@ apt (0.7.1) experimental; urgency=low * methods/cdrom.cc: - only umount if it was mounted by the method before * po/gl.po: - - fix error translation that causes trouble to lsb_release + - fix error in translation that causes trouble to lsb_release + (LP#79165) * apt-pkg/acquire-item.cc: - if decompression of a index fails, delete the index * apt-pkg/acquire.{cc,h}: - deal better with duplicated sources.list entries (avoid double queuing of URLs) - this fixes hangs in bzip/gzip + (LP#102511) + * Fix broken use of awk in apt-key that caused removal of the wrong keys + from the keyring. Closes: #412572 * merged from Christian Perrier: * mr.po: New Marathi translation Closes: #416806 * zh_CN.po: Updated by Eric Pareja Closes: #416822 @@ -83,7 +98,94 @@ apt (0.7.1) experimental; urgency=low * apt-pkg/policy.cc: - allow multiple packages (thanks to David Foerster) - -- Michael Vogt <mvo@debian.org> Wed, 2 May 2007 13:43:44 +0200 + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 17 Apr 2007 15:53:37 +0200 + +apt (0.6.46.4ubuntu10) feisty; urgency=low + + * apt-pkg/depcache.cc: + - added "APT::Never-MarkAuto-Section" and consider dependencies + of packages in this section manual (LP#59893) + - ensure proper permissions in the extended_state file (LP#67037) + * debian/apt.conf.ubuntu: + - added APT::Never-MarkAuto-Section "metapackages" (LP#59893) + * cmdline/apt-get.cc: + - "apt-get install foo" on a already installed package foo will + clean the automatic installed flag (LP#72007) + - do not show packages already marked for removal as auto-installed + (LP#64493) + - applied patch to (optionally) hide the auto-remove information + (thanks to Frode M. Døving) (LP#69148) + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 14 Mar 2007 13:32:32 +0100 + +apt (0.6.46.4ubuntu9) feisty; urgency=low + + * debian/control: + - set XS-Vcs-Bzr header + - Set Ubuntu maintainer address + * apt-pkg/cdrom.cc: + - only unmount if APT::CDROM::NoMount is false + - only umount if it was mounted by the method before + * cmdline/apt-get.cc: + - fix version output in autoremove list (LP#68941) + * apt-pkg/packagemanager.cc: + - do not spin 100% cpu in FixMissing() (LP#84476) + * apt-pkg/indexfile.cc: + - fix problem overwriting APT::Acquire::Translation + * doc/examples/configure-index: + - document APT::Acquire::Translation + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 13 Mar 2007 15:24:39 +0100 + +apt (0.6.46.4ubuntu8) feisty; urgency=low + + * fix segfault in the pkgRecords destructor + * Bump ABI version + * debian/control: + - make the libcurl3-gnutls-dev versionized (LP#86614) + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 26 Feb 2007 14:26:33 +0100 + +apt (0.6.46.4ubuntu7) feisty; urgency=low + + * Merged the apt--mirror branch. This means that a new 'mirror' + method is available that will allow dynamic mirror updates. + The sources.list entry looks something like this: + "deb mirror://mirrors.lp.net/get_mirror feisty main restricted" + + It also supports error reporting to a configurable url for mirror + problems/failures. + * Bump ABI version + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 6 Feb 2007 11:38:06 +0100 + +apt (0.6.46.4ubuntu6) feisty; urgency=low + + * methods/http.cc: + - send apt version in User-Agent + * apt-pkg/deb/debrecords.cc: + - fix SHA1Hash() return value + * apt-pkg/algorithms.cc: + - fix resolver bug on removal triggered by weak-dependencies + with or-groups + - fix segfault (lp: #76530) + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 20 Dec 2006 11:04:36 +0100 + +apt (0.6.46.4ubuntu5) feisty; urgency=low + + * added apt-transport-https package to provide a optional + https transport (apt-https spec) + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 19 Dec 2006 16:23:43 +0100 + +apt (0.6.46.4ubuntu4) feisty; urgency=low + + * apt-pkg/algorithms.cc: + - only increase the score of installed applications if they + are not obsolete + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 18 Dec 2006 19:39:05 +0100 apt (0.7.0) experimental; urgency=low @@ -102,6 +204,29 @@ apt (0.7.0) experimental; urgency=low -- Michael Vogt <mvo@debian.org> Fri, 12 Jan 2007 20:48:07 +0100 +apt (0.6.46.4ubuntu3) feisty; urgency=low + + * apt-pkg/algorithm.cc: + - use clog for all debugging + * apt-pkg/depcache.cc: + - never mark Required package for autoremoval (lp: #75882) + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 18 Dec 2006 11:56:05 +0100 + +apt (0.6.46.4ubuntu2) feisty; urgency=low + + * apt-pkg/algorithms.cc: add missing call to MarkKeep + so that dist-upgrade isn't broken by unsatisfiable Breaks. + (thanks to Ian Jackson) + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 7 Dec 2006 23:07:24 +0100 + +apt (0.6.46.4ubuntu1) feisty; urgency=low + + * merged with debian + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 7 Dec 2006 12:13:14 +0100 + apt (0.6.46.4-0.1) unstable; urgency=emergency * NMU @@ -148,6 +273,26 @@ apt (0.6.46.3-0.1) unstable; urgency=high -- Andreas Barth <aba@not.so.argh.org> Tue, 5 Dec 2006 10:34:56 +0000 +apt (0.6.46.3ubuntu2) feisty; urgency=low + + * apt-pkg/algorithms.cc: add missing call to MarkKeep + so that dist-upgrade isn't broken by unsatisfiable Breaks. + + -- Ian Jackson <iwj@ubuntu.com> Thu, 7 Dec 2006 15:46:52 +0000 + +apt (0.6.46.3ubuntu1) feisty; urgency=low + + * doc/apt-get.8.xml: + - documented autoremove, thanks to Vladimír Lapá%GÄ%@ek + (lp: #62919) + * fix broken i18n in the dpkg progress reporting, thanks to + Frans Pop and Steinar Gunderson. (closes: #389261) + * po/en_GB.po: + - typo (lp: #61270) + * add apt-secure.8 to "See also" section + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 23 Nov 2006 07:24:12 +0100 + apt (0.6.46.3) unstable; urgency=low * apt-pkg/deb/dpkgpm.cc: @@ -222,10 +367,46 @@ apt (0.6.46) unstable; urgency=low * debian/control: - switched to libdb4.4 for building (closes: #381019) * cmdline/apt-get.cc: - - show only the recommends/suggests for the candidate-version, not for all - versions of the package (closes: #257054) - - properly handle recommends/suggests or-groups when printing the list of - suggested/recommends packages (closes: #311619) + - fix in the TryInstallTask() code to make sure that all package + there are marked manual install (lp: #61684) + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 28 Sep 2006 00:34:20 +0200 + +apt (0.6.45ubuntu14) edgy; urgency=low + + * cmdline/apt-get.cc: + - fix in the TryInstallTask() code to make sure that all package + there are marked manual install (lp: #61684) + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 28 Sep 2006 00:34:20 +0200 + +apt (0.6.45ubuntu13) edgy; urgency=low + + * no-changes upload to make apt rebuild against latest g++ and + fix synaptic FTBFS (see bug: #62461 for details) + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 26 Sep 2006 22:33:10 +0200 + +apt (0.6.45ubuntu12) edgy; urgency=low + + * apt-pkg/depcache.cc: + - fix in the sweep() code, set garbage flag for packages scheduled + for removal too + - do not change the autoFlag in MarkKeep(), this can lead to suprising + side effects + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 21 Sep 2006 00:58:24 +0200 + +apt (0.6.45ubuntu11) edgy; urgency=low + + * removed "installtask" and change it so that tasknames can be given + with "apt-get install taskname^" + * improve the writeStateFile() code + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 20 Sep 2006 14:14:24 +0200 + +apt (0.6.45ubuntu10) edgy; urgency=low + * methods/http.cc: - check more careful for incorrect proxy settings (closes: #378868) * methods/gzip.cc: @@ -250,8 +431,113 @@ apt (0.6.46) unstable; urgency=low caseinsensitive (closes: #384182) - reverted MMap use in the tagfile because it does not work across pipes (closes: #383487) + * added "installtask" command + * added new ubuntu specific rewrite rule for "Original-Maintainer" - -- Michael Vogt <mvo@debian.org> Thu, 21 Sep 2006 10:25:03 +0200 + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 19 Sep 2006 15:07:51 +0200 + +apt (0.6.45ubuntu9) edgy; urgency=low + + * cmdline/apt-get.cc: + - if --no-remove is given, do not run the AutoRemove code + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 13 Sep 2006 11:54:20 +0200 + +apt (0.6.45ubuntu8) edgy; urgency=low + + * apt-pkg/algorithm.cc: + - fix pkgProblemResolver.InstallProtect() to preserve the auto-install + information (lp: #59457) + * cmdline/apt-get.cc: + - fix typo in autoremove information (lp: #59420) + * install apt-mark to modify the automatically install information for + packages + + -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 8 Sep 2006 20:07:22 +0200 + +apt (0.6.45ubuntu7) edgy; urgency=low + + * apt-pkg/depcache.cc: + - fix a bug in the install-recommends-section code + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 7 Sep 2006 18:22:38 +0200 + +apt (0.6.45ubuntu6) edgy; urgency=low + + [Michael Vogt] + * cmdline/apt-get.cc: + - always show auto-removable packages and give a hint how to remove + them + * debian/apt.conf.ubuntu: + - exlucde linux-image and linux-restricted-modules from ever being + auto-removed + - added "metapackages" as the section we want to install recommends + by default + * apt-pkg/depcache.cc: + - added support to turn install-recommends selectively on/off by + section + [Ian Jackson] + * Tests pass without code changes! Except that we need this: + * Bump cache file major version to force rebuild so that Breaks + dependencies are included. + * Don't depend on or suggest any particular dpkg or dpkg-dev versions; + --auto-deconfigure is very very old and dpkg-dev's Breaks support + is more or less orthogonal. + * Initial draft of `Breaks' implementation. Appears to compile, + but as yet *completely untested*. + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 7 Sep 2006 11:50:52 +0200 + +apt (0.6.45ubuntu5) edgy; urgency=low + + * apt-pkg/pkgcachegen.cc: + - increase the APT::Cache-Limit to deal with the increased demand due + to the translated descriptions + * apt-pkg/deb/dpkgpm.cc: + - pass "--auto-deconfigure" to dpkg on install to support the + new "breaks" in dpkg + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 15 Aug 2006 12:06:26 +0200 + +apt (0.6.45ubuntu4) edgy; urgency=low + + * cmdline/apt-get.cc: + - fix in the new --fix-polciy code + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 14 Aug 2006 21:08:11 +0200 + +apt (0.6.45ubuntu3) edgy; urgency=low + + * ABI break + * merged latest apt--install-recommends (closes: #559000) + * added "--fix-policy" option to can be used as "--fix-broken" and + will install missing weak depends (recommends, and/or suggests + depending on the settings) + * merged the apt--ddtp branch + + -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 11 Aug 2006 12:53:23 +0200 + +apt (0.6.45ubuntu2) edgy; urgency=low + + * debian/control: + - switched to libdb4.4 for building (closes: #381019) + * cmdline/apt-get.cc: + - show only the recommends/suggests for the candidate-version, not for all + versions of the package (closes: #257054) + - properly handle recommends/suggests or-groups when printing the list of + suggested/recommends packages (closes: #311619) + * merged "apt--install-recommends" branch: + - added "{no-}install-recommends" commandline option + - added APT::Install-{Recommends,Suggests} option + - currently Install-Recommends defaults to "False" + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 9 Aug 2006 23:38:46 +0200 + +apt (0.6.45ubuntu1) edgy; urgency=low + + * merged with debian/unstable + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 1 Aug 2006 15:43:22 +0200 apt (0.6.45) unstable; urgency=low @@ -289,42 +575,57 @@ apt (0.6.45) unstable; urgency=low * dz.po: New Dzongkha translation: 512t * ro.po: Updated to 512t * eu.po: Updated - * eu.po: Updated - * fix apt-get dist-upgrade - * fix warning if no /var/lib/apt/extended_states is present - * don't download Translations for deb-src sources.list lines - * apt-pkg/tagfile.cc: - - support not-mmapable files again - -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 25 Jul 2006 11:55:22 +0200 + -- Michael Vogt <mvo@debian.org> Thu, 27 Jul 2006 00:52:05 +0200 -apt (0.6.44.2exp1) experimental; urgency=low +apt (0.6.44.2ubuntu4) edgy; urgency=low - * added support for i18n of the package descriptions - * added support for aptitude like auto-install tracking (a HUGE - HUGE thanks to Daniel Burrows who made this possible) - * synced with the http://people.debian.org/~mvo/bzr/apt/debian-sid branch - * build from http://people.debian.org/~mvo/bzr/apt/debian-experimental + * Make apt-get dselect-upgrade happy again - -- Michael Vogt <mvo@debian.org> Mon, 3 Jul 2006 21:50:31 +0200 + -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 21 Jul 2006 11:03:02 +0200 -apt (0.6.44.2) unstable; urgency=low +apt (0.6.44.2ubuntu3) edgy; urgency=low - * apt-pkg/depcache.cc: - - added Debug::pkgDepCache::AutoInstall (thanks to infinity) - * apt-pkg/acquire-item.cc: - - fix missing chmod() in the new aquire code - (thanks to Bastian Blank, Closes: #367425) - * merged from - http://www.perrier.eu.org/debian/packages/d-i/level4/apt-main: - * sk.po: Completed to 512t - * eu.po: Completed to 512t - * fr.po: Completed to 512t - * sv.po: Completed to 512t - * Update all PO and the POT. Gives 506t6f for formerly - complete translations + * Close extended_states file after writing it. + + -- Colin Watson <cjwatson@ubuntu.com> Tue, 18 Jul 2006 00:12:13 +0100 + +apt (0.6.44.2ubuntu2) edgy; urgency=low + + * create a empty extended_states file if none exists already - -- Michael Vogt <mvo@debian.org> Wed, 14 Jun 2006 12:00:57 +0200 + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 4 Jul 2006 09:23:03 +0200 + +apt (0.6.44.2ubuntu1) edgy; urgency=low + + * merged with debian/unstable + * merged the "auto-mark" branch to support aptitude like + marking of automatically installed dependencies and added + "apt-get remove --auto-remove" to remove unused auto-installed + packages again + * changed library version from 3.11 to 3.50 to make it clearly + different from the debian version (we are ABI incompatible because + of the auto-mark patch) + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 3 Jul 2006 18:30:46 +0200 + +apt (0.6.44.2) unstable; urgency=low + + * apt-pkg/depcache.cc: + - added Debug::pkgDepCache::AutoInstall (thanks to infinity) + * apt-pkg/acquire-item.cc: + - fix missing chmod() in the new aquire code + (thanks to Bastian Blank, Closes: #367425) + * merged from + http://www.perrier.eu.org/debian/packages/d-i/level4/apt-main: + * sk.po: Completed to 512t + * eu.po: Completed to 512t + * fr.po: Completed to 512t + * sv.po: Completed to 512t + * Update all PO and the POT. Gives 506t6f for formerly + complete translations + + -- Michael Vogt <mvo@debian.org> Wed, 14 Jun 2006 12:00:57 +0200 apt (0.6.44.1-0.1) unstable; urgency=low @@ -386,6 +687,26 @@ apt (0.6.44) unstable; urgency=low -- Michael Vogt <mvo@debian.org> Mon, 8 May 2006 22:28:53 +0200 +apt (0.6.43.3ubuntu3) dapper; urgency=low + + * methods/http.cc: + - fix the user-agent string + + -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 26 May 2006 18:09:32 +0200 + +apt (0.6.43.3ubuntu2) dapper; urgency=low + + * apt-pkg/deb/dpkgpm.cc: wording fixes (thanks to Matt Zimmerman) + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 18 Apr 2006 13:24:40 +0200 + +apt (0.6.43.3ubuntu1) dapper; urgency=low + + * apt-pkg/acquire.cc: don't show ETA if it is 0 or absurdely large in + the status-fd (ubuntu #28954) + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 28 Mar 2006 20:34:46 +0200 + apt (0.6.43.3) unstable; urgency=low * Merge bubulle@debian.org--2005/apt--main--0 up to patch-186: @@ -395,16 +716,46 @@ apt (0.6.43.3) unstable; urgency=low * pl.po: Completed to 512t. Closes: #349514 * sk.po: Completed to 512t. Closes: #349474 * gl.po: Completed to 512 strings Closes: #349407 + * vi.po: Completed to 512 strings * sv.po: Completed to 512 strings Closes: #349210 * ru.po: Completed to 512 strings Closes: #349154 * da.po: Completed to 512 strings Closes: #349084 * fr.po: Completed to 512 strings + * LINGUAS: Add Welsh + * *.po: Updated from sources (512 strings) * vi.po: Completed to 511 strings Closes: #348968 - * zh_CN.po: Completed to 512t. Closes: #353936 - * it.po: Completed to 512t. Closes: #352803 - * pt_BR.po: Completed to 512t. Closes: #352419 + * apt-pkg/deb/deblistparser.cc: + - don't explode on a DepCompareOp in a Provides line, but warn about + it and ignore it otherwise (thanks to James Troup for reporting it) + * cmdline/apt-get.cc: + - don't lock the lists directory in DoInstall, breaks --print-uri + (thanks to James Troup for reporting it) + * debian/apt.dirs: create /etc/apt/sources.list.d + * make apt-cache madison work without deb-src entries (#352583) + * cmdline/apt-get.cc: only run the list-cleaner if a update was + successfull + * apt-get update errors are only warnings nowdays + * be more careful with the signature file on network failures + + -- Michael Vogt <mvo@debian.org> Wed, 22 Feb 2006 10:13:04 +0100 + +apt (0.6.43.2ubuntu1) dapper; urgency=low + + * Merge bubulle@debian.org--2005/apt--main--0 up to patch-182: + * ca.po: Completed to 512t. Closes: #351592 + * eu.po: Completed to 512t. Closes: #350483 + * ja.po: Completed to 512t. Closes: #349806 + * pl.po: Completed to 512t. Closes: #349514 + * sk.po: Completed to 512t. Closes: #349474 + * gl.po: Completed to 512 strings Closes: #349407 + * vi.po: Completed to 512 strings + * sv.po: Completed to 512 strings Closes: #349210 + * ru.po: Completed to 512 strings Closes: #349154 + * da.po: Completed to 512 strings Closes: #349084 + * fr.po: Completed to 512 strings * LINGUAS: Add Welsh * *.po: Updated from sources (512 strings) + * vi.po: Completed to 511 strings Closes: #348968 * apt-pkg/deb/deblistparser.cc: - don't explode on a DepCompareOp in a Provides line, but warn about it and ignore it otherwise (thanks to James Troup for reporting it) @@ -415,8 +766,10 @@ apt (0.6.43.3) unstable; urgency=low * make apt-cache madison work without deb-src entries (#352583) * cmdline/apt-get.cc: only run the list-cleaner if a update was successfull + * apt-get update errors are only warnings nowdays + * be more careful with the signature file on network failures - -- Michael Vogt <mvo@debian.org> Wed, 22 Feb 2006 10:13:04 +0100 + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 20 Feb 2006 22:27:48 +0100 apt (0.6.43.2) unstable; urgency=low @@ -441,8 +794,26 @@ apt (0.6.43.2) unstable; urgency=low -- Michael Vogt <mvo@debian.org> Thu, 19 Jan 2006 00:06:33 +0100 -apt (0.6.43.1) unstable; urgency=low +apt (0.6.43.1ubuntu1) dapper; urgency=low + + * Merge bubulle@debian.org--2005/apt--main--0 up to patch-159: + - en_GB.po, de.po: fix spaces errors in "Ign " translations + Closes: #347258 + - makefile: make update-po a pre-requisite of clean target so + that POT and PO files are always up-to-date + - sv.po: Completed to 511t. Closes: #346450 + - sk.po: Completed to 511t. Closes: #346369 + - fr.po: Completed to 511t + - *.po: Updated from sources (511 strings) + * add patch to fix http download corruption problem (thanks to + Petr Vandrovec, closes: #280844, #290694) + * added APT::Periodic::Unattended-Upgrade (requires the package + "unattended-upgrade") + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 10 Jan 2006 17:09:31 +0100 + +apt (0.6.43.1) unstable; urgency=low + * Merge bubulle@debian.org--2005/apt--main--0 up to patch-148: * fr.po: Completed to 510 strings * it.po: Completed to 510t @@ -464,6 +835,19 @@ apt (0.6.43.1) unstable; urgency=low -- Michael Vogt <mvo@debian.org> Fri, 6 Jan 2006 01:17:08 +0100 +apt (0.6.43ubuntu2) dapper; urgency=low + + * merged some missing bits that wheren't merged by baz in the previous + upload (*grumble*) + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 8 Dec 2005 18:35:58 +0100 + +apt (0.6.43ubuntu1) dapper; urgency=low + + * merged with debian + + -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 25 Nov 2005 11:36:29 +0100 + apt (0.6.43) unstable; urgency=medium * Merge bubulle@debian.org--2005/apt--main--0 up to patch-132: @@ -484,6 +868,22 @@ apt (0.6.43) unstable; urgency=medium -- Michael Vogt <mvo@debian.org> Tue, 29 Nov 2005 00:17:07 +0100 +apt (0.6.42.3ubuntu2) dapper; urgency=low + + * Merge bubulle@debian.org--2005/apt--main--0 up to patch-131: + * zh_CN.po: Completed to 507 strings(Closes: #338267) + * gl.po: Completed to 510 strings (Closes: #338356) + * added support for "/etc/apt/sources.list.d" directory + (closes: #66325) + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 14 Nov 2005 15:30:12 +0100 + +apt (0.6.42.3ubuntu1) dapper; urgency=low + + * synced with debian + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 10 Nov 2005 05:05:56 +0100 + apt (0.6.42.3) unstable; urgency=low * Merge bubulle@debian.org--2005/apt--main--0 up to patch-129: @@ -531,13 +931,13 @@ apt (0.6.42) unstable; urgency=low - unmount the cdrom when apt failed to locate any package files * allow cdrom failures and fallback to other sources in that case (closes: #44135) - * better error text when dpkg-source fails + * better error text when dpkg-source fails * Merge bubulle@debian.org--2005/apt--main--0 up to patch-115: - patch-99: Added Galician translation - patch-100: Completed Danish translation (Closes: #325686) - patch-104: French translation completed - patch-109: Italian translation completed - - patch-112: Swedish translation update + - patch-112: Swedish translation update - patch-115: Basque translation completed (Closes: #333299) * applied french man-page update (thanks to Philippe Batailler) (closes: #316638, #327456) @@ -551,9 +951,9 @@ apt (0.6.42) unstable; urgency=low * apt-pkg/contrib/md5.cc: - fix a alignment problem on sparc64 that gives random bus errors (thanks to Fabbione for providing a test-case) - * init the default ScreenWidth to 79 columns by default + * init the default ScreenWidth to 79 columns by default (Closes: #324921) - * cmdline/apt-cdrom.cc: + * cmdline/apt-cdrom.cc: - fix some missing gettext() calls (closes: #334539) * doc/apt-cache.8.xml: fix typo (closes: #334714) @@ -564,8 +964,8 @@ apt (0.6.41) unstable; urgency=low * improved the support for "error" and "conffile" reporting from dpkg, added the format to README.progress-reporting * added README.progress-reporting to the apt-doc package - * improved the network timeout handling, if a index file from a - sources.list times out or EAI_AGAIN is returned from getaddrinfo, + * improved the network timeout handling, if a index file from a + sources.list times out or EAI_AGAIN is returned from getaddrinfo, don't try to get the other files from that entry * Support architecture-specific extra overrides (closes: #225947). Thanks to Anthony Towns for idea and @@ -573,10 +973,10 @@ apt (0.6.41) unstable; urgency=low * Javier Fernandez-Sanguino Pen~a: - Added a first version of an apt-secure.8 manpage, and modified apt-key and apt.end accordingly. Also added the 'update' - argument to apt-key which was previously not documented + argument to apt-key which was previously not documented (Closes: #322120) * Andreas Pakulat: - - added example apt-ftparchive.conf file to doc/examples + - added example apt-ftparchive.conf file to doc/examples (closes: #322483) * Fix a incorrect example in the man-page (closes: #282918) * Fix a bug for very long lines in the apt-cdrom code (closes: #280356) @@ -585,10 +985,84 @@ apt (0.6.41) unstable; urgency=low * Change pkgPolicy::Pin from private to protected to let subclasses access it too (closes: #321799) * add default constructor for PrvIterator (closes: #322267) - * Reread status configuration on debSystem::Initialize() + * Reread status configuration on debSystem::Initialize() (needed for apt-proxy, thanks to Otavio for this patch) - + -- Michael Vogt <mvo@debian.org> Mon, 5 Sep 2005 22:59:03 +0200 + +apt (0.6.40.1ubuntu8) breezy; urgency=low + + * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-62: + - fix for a bad memory/file leak in the mmap code (ubuntu #15603) + * po/de.po, po/fr.po: + - updated the translations + * po/makefile: + - create a single pot file in each domain dir to make rosetta happy + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 28 Sep 2005 10:16:06 +0200 + +apt (0.6.40.1ubuntu7) breezy; urgency=low + + * updated the pot/po files , no code changes + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 27 Sep 2005 18:38:16 +0200 + +apt (0.6.40.1ubuntu6) breezy; urgency=low + + * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-56: + - make it possible for apt to handle a failed MediaChange event and + fall back to other sources (ubuntu #13713) + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 13 Sep 2005 22:09:50 +0200 + +apt (0.6.40.1ubuntu5) breezy; urgency=low + + * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-{50,51}. + This adds media-change reporting to the apt status-fd (ubuntu #15213) + * Cherry picked michael.vogt@ubuntu.com--2005/apt--mvo--0--patch-55: + apt-pkg/cdrom.cc: + - unmount the cdrom when apt failed to locate any package files + + -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 12 Sep 2005 15:44:26 +0200 + +apt (0.6.40.1ubuntu4) breezy; urgency=low + + * debian/apt.cron.daily: + - fix a embarrassing typo + + -- Michael Vogt <michael.vogt@ubuntu.com> Wed, 7 Sep 2005 10:10:37 +0200 + +apt (0.6.40.1ubuntu3) breezy; urgency=low + + * debian/apt.cron.daily: + - use the ctime as well when figuring what packages need to + be removed. This fixes the problem that packages copied with + "cp -a" (e.g. from the installer) have old mtimes (ubuntu #14504) + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 6 Sep 2005 18:30:46 +0200 + +apt (0.6.40.1ubuntu2) breezy; urgency=low + + * improved the support for "error" and "conffile" reporting from + dpkg, added the format to README.progress-reporting + * added README.progress-reporting to the apt-doc package + * Do md5sum checking for file and cdrom method (closes: #319142) + * Change pkgPolicy::Pin from private to protected to let subclasses + access it too (closes: #321799) + * methods/connect.cc: + - send failure reason for EAI_AGAIN (TmpResolveFailure) to acuire-item + * apt-pkg/acquire-item.cc: + - fail early if a FailReason is TmpResolveFailure (avoids hangs during + the install when no network is available) + * merged michael.vogt@ubuntu.com--2005/apt--trust-cdrom--0 + + -- Michael Vogt <michael.vogt@ubuntu.com> Tue, 23 Aug 2005 19:44:55 +0200 + +apt (0.6.40.1ubuntu1) breezy; urgency=low + + * Synchronize with Debian + + -- Michael Vogt <michael.vogt@ubuntu.com> Fri, 5 Aug 2005 14:20:56 +0200 apt (0.6.40.1) unstable; urgency=low @@ -599,6 +1073,12 @@ apt (0.6.40.1) unstable; urgency=low -- Michael Vogt <mvo@debian.org> Fri, 5 Aug 2005 13:24:58 +0200 +apt (0.6.40ubuntu1) breezy; urgency=low + + * Synchronize with Debian + + -- Matt Zimmerman <mdz@ubuntu.com> Thu, 4 Aug 2005 15:53:22 -0700 + apt (0.6.40) unstable; urgency=low * Patch from Jordi Mallach to mark some additional strings for translation @@ -614,6 +1094,39 @@ apt (0.6.40) unstable; urgency=low -- Matt Zimmerman <mdz@debian.org> Thu, 28 Jul 2005 11:57:32 -0700 +apt (0.6.39ubuntu4) breezy; urgency=low + + * Fix keyring paths in apt-key, apt.postinst (I swear I remember doing this + before...) + + -- Matt Zimmerman <mdz@ubuntu.com> Wed, 29 Jun 2005 08:39:17 -0700 + +apt (0.6.39ubuntu3) breezy; urgency=low + + * Fix keyring locations for Ubuntu in apt-key too. + + -- Colin Watson <cjwatson@ubuntu.com> Wed, 29 Jun 2005 14:45:36 +0100 + +apt (0.6.39ubuntu2) breezy; urgency=low + + * Install ubuntu-archive.gpg rather than debian-archive.gpg as + /etc/apt/trusted.gpg. + + -- Colin Watson <cjwatson@ubuntu.com> Wed, 29 Jun 2005 11:53:34 +0100 + +apt (0.6.39ubuntu1) breezy; urgency=low + + * Michael Vogt + - Change debian/bugscript to use #!/bin/bash (Closes: #313402) + - Fix a incorrect example in the man-page (closes: #282918) + - Support architecture-specific extra overrides + (closes: #225947). Thanks to Anthony Towns for idea and + 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 + + -- Matt Zimmerman <mdz@ubuntu.com> Tue, 28 Jun 2005 11:52:24 -0700 + apt (0.6.39) unstable; urgency=low * Welsh translation update: daf@muse.19inch.net--2005/apt--main--0--patch-6 @@ -624,7 +1137,14 @@ apt (0.6.39) unstable; urgency=low * Update priority of apt-utils to important, to match the override file * Install only one keyring on each branch (Closes: #316119) - -- Matt Zimmerman <mdz@debian.org> Tue, 28 Jun 2005 11:51:09 -0700 + -- Matt Zimmerman <mdz@debian.org> Tue, 28 Jun 2005 11:35:21 -0700 + +apt (0.6.38ubuntu1) breezy; urgency=low + + * First release from Ubuntu branch + * Merge with --main--0, switch back to Ubuntu keyring + + -- Matt Zimmerman <mdz@ubuntu.com> Sat, 25 Jun 2005 16:52:41 -0700 apt (0.6.38) unstable; urgency=low diff --git a/debian/control b/debian/control index 5686926d4..7dc0b377f 100644 --- a/debian/control +++ b/debian/control @@ -1,20 +1,22 @@ Source: apt Section: admin Priority: important -Maintainer: APT Development Team <deity@lists.debian.org> +Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com> +XSBC-Original-Maintainer: APT Development Team <deity@lists.debian.org> Uploaders: Jason Gunthorpe <jgg@debian.org>, Adam Heath <doogie@debian.org>, Matt Zimmerman <mdz@debian.org>, Michael Vogt <mvo@debian.org> Standards-Version: 3.7.2.2 Build-Depends: debhelper (>= 5.0), libdb4.4-dev, gettext (>= 0.12), libcurl3-gnutls-dev (>= 7.15.5) Build-Depends-Indep: debiandoc-sgml, docbook-utils (>= 0.6.12-1) -XS-Vcs-Bzr: http://bzr.debian.org/apt/debian-sid/ +XS-Vcs-Bzr: http://bazaar.launchpad.net/~ubuntu-core-dev/apt/ubuntu Package: apt Architecture: any -Depends: ${shlibs:Depends}, debian-archive-keyring +Depends: ${shlibs:Depends} Priority: important Replaces: libapt-pkg-doc (<< 0.3.7), libapt-pkg-dev (<< 0.3.7) Provides: ${libapt-pkg:provides} -Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2 +Recommends: ubuntu-keyring +Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2, gnupg Section: admin Description: Advanced front-end for dpkg This is Debian's next generation front-end for the dpkg package manager. diff --git a/debian/rules b/debian/rules index 3ebecfba4..daf15fe1b 100755 --- a/debian/rules +++ b/debian/rules @@ -210,7 +210,7 @@ apt: build debian/shlibs.local cp debian/bugscript debian/$@/usr/share/bug/apt/script - cp share/debian-archive.gpg debian/$@/usr/share/$@ + cp share/ubuntu-archive.gpg debian/$@/usr/share/$@ cp debian/apt.conf.autoremove debian/$@/etc/apt/apt.conf.d/01autoremove # head -n 500 ChangeLog > debian/ChangeLog @@ -219,6 +219,10 @@ apt: build debian/shlibs.local rm -f build/po/*.pot rm -f po/*.pot + # move the mirror failure script in place + mv debian/$@/usr/bin/apt-report-mirror-failure \ + debian/$@/usr/lib/apt/apt-report-mirror-failure \ + dh_installexamples -p$@ $(BLD)/docs/examples/* dh_installman -p$@ dh_installcron -p$@ diff --git a/doc/examples/configure-index b/doc/examples/configure-index index d0aad1e3d..e5c4551a1 100644 --- a/doc/examples/configure-index +++ b/doc/examples/configure-index @@ -97,9 +97,12 @@ APT // consider Recommends, Suggests as important dependencies that should // be installed by default - APT::Install-Recommends "false"; - APT::Install-Suggests "false"; + Install-Recommends "false"; + Install-Suggests "false"; + // install recommends automatically for packages in this section + Install-Recommends-Section "metapackages"; + // consider dependencies of packages in this section manual Never-MarkAuto-Section "metapackages"; @@ -186,6 +189,20 @@ Acquire { Options {"--ignore-time-conflict";} // not very usefull on a normal system }; + + mirror + { + RefreshInterval "360"; // refresh interval in minutes + MaxAge "90"; // max age for a mirror file in days before + // it gets deleted + // mirror failure reporting script + ProblemReporting "/usr/lib/apt/apt-report-mirror-failure"; + // mirror failure reporting url + ReportFailures "http://example.com/mirror-failure"; + }; + + // translations can be set here to "none", "environment" or "$locale" + Translation "none"; }; // Directory layout @@ -199,6 +216,7 @@ Dir "/" userstatus "status.user"; status "/var/lib/dpkg/status"; cdroms "cdroms.list"; + mirrors "mirrors/"; }; // Location of the cache dir @@ -289,9 +307,9 @@ Debug Acquire::Http "false"; // Show http command traffic Acquire::Https "false"; // Show https debug Acquire::gpgv "false"; // Show the gpgv traffic + Acquire::Mirror "false"; // Show debugging of the mirror method aptcdrom "false"; // Show found package files IdentCdrom "false"; - } /* Whatever you do, do not use this configuration file!! Take out ONLY diff --git a/doc/examples/sources.list b/doc/examples/sources.list index 9af1c3c4c..a958899ae 100644 --- a/doc/examples/sources.list +++ b/doc/examples/sources.list @@ -1,9 +1,11 @@ # See sources.list(5) for more information, especialy # Remember that you can only use http, ftp or file URIs # CDROMs are managed through the apt-cdrom tool. -deb http://http.us.debian.org/debian stable main contrib non-free -deb http://security.debian.org stable/updates main contrib non-free +deb http://us.archive.ubuntu.com/ubuntu dapper main restricted +deb-src http://us.archive.ubuntu.com/ubuntu dapper main restricted -# Uncomment if you want the apt-get source function to work -#deb-src http://http.us.debian.org/debian stable main contrib non-free -#deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free +deb http://security.ubuntu.com/ubuntu dapper-security main restricted +deb-src http://security.ubuntu.com/ubuntu dapper-security main restricted + +deb http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted +deb-src http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted diff --git a/methods/connect.cc b/methods/connect.cc index 8c2ac6d56..145001fb3 100644 --- a/methods/connect.cc +++ b/methods/connect.cc @@ -18,6 +18,7 @@ #include <stdio.h> #include <errno.h> #include <unistd.h> +#include <sstream> // Internet stuff #include <netinet/in.h> @@ -67,12 +68,10 @@ static bool DoConnect(struct addrinfo *Addr,string Host, wrong this will get tacked onto the end of the error message */ if (LastHostAddr->ai_next != 0) { - char Name2[NI_MAXHOST + NI_MAXSERV + 10]; - snprintf(Name2,sizeof(Name2),_("[IP: %s %s]"),Name,Service); - Owner->SetFailExtraMsg(string(Name2)); - } - else - Owner->SetFailExtraMsg(""); + std::stringstream ss; + ioprintf(ss, _("[IP: %s %s]"),Name,Service); + Owner->SetIP(ss.str()); + } // Get a socket if ((Fd = socket(Addr->ai_family,Addr->ai_socktype, @@ -89,7 +88,7 @@ static bool DoConnect(struct addrinfo *Addr,string Host, /* This implements a timeout for connect by opening the connection nonblocking */ if (WaitFd(Fd,true,TimeOut) == false) { - Owner->SetFailExtraMsg("\nFailReason: Timeout"); + Owner->SetFailReason("Timeout"); return _error->Error(_("Could not connect to %s:%s (%s), " "connection timed out"),Host.c_str(),Service,Name); } @@ -104,7 +103,7 @@ static bool DoConnect(struct addrinfo *Addr,string Host, { errno = Err; if(errno == ECONNREFUSED) - Owner->SetFailExtraMsg("\nFailReason: ConnectionRefused"); + Owner->SetFailReason("ConnectionRefused"); return _error->Errno("connect",_("Could not connect to %s:%s (%s)."),Host.c_str(), Service,Name); } @@ -164,12 +163,13 @@ bool Connect(string Host,int Port,const char *Service,int DefPort,int &Fd, DefPort = 0; continue; } + Owner->SetFailReason("ResolveFailure"); return _error->Error(_("Could not resolve '%s'"),Host.c_str()); } if (Res == EAI_AGAIN) { - Owner->SetFailExtraMsg("\nFailReason: TmpResolveFailure"); + Owner->SetFailReason("TmpResolveFailure"); return _error->Error(_("Temporary failure resolving '%s'"), Host.c_str()); } diff --git a/methods/http.cc b/methods/http.cc index d9487be88..ecfb80bd2 100644 --- a/methods/http.cc +++ b/methods/http.cc @@ -38,7 +38,6 @@ #include <stdio.h> #include <errno.h> #include <string.h> -#include <iostream> #include <apti18n.h> // Internet stuff @@ -715,7 +714,7 @@ void HttpMethod::SendReq(FetchItem *Itm,CircleBuf &Out) Req += string("Authorization: Basic ") + Base64Encode(Uri.User + ":" + Uri.Password) + "\r\n"; - Req += "User-Agent: Debian APT-HTTP/1.3 ("VERSION")\r\n\r\n"; + Req += "User-Agent: Ubuntu APT-HTTP/1.3 ("VERSION")\r\n\r\n"; if (Debug == true) cerr << Req << endl; @@ -916,6 +915,9 @@ int HttpMethod::DealWithHeaders(FetchResult &Res,ServerState *Srv) failure */ if (Srv->Result < 200 || Srv->Result >= 300) { + char err[255]; + snprintf(err,sizeof(err)-1,"HttpError%i",Srv->Result); + SetFailReason(err); _error->Error("%u %s",Srv->Result,Srv->Code); if (Srv->HaveContent == true) return 4; @@ -991,7 +993,7 @@ void HttpMethod::SigTerm(int) depth. */ bool HttpMethod::Fetch(FetchItem *) { - if (Server == 0) + if (Server == 0) return true; // Queue the requests @@ -1224,13 +1226,5 @@ int HttpMethod::Loop() } /*}}}*/ -int main() -{ - setlocale(LC_ALL, ""); - - HttpMethod Mth; - - return Mth.Loop(); -} diff --git a/methods/http.h b/methods/http.h index a6191e501..a47cd961c 100644 --- a/methods/http.h +++ b/methods/http.h @@ -13,7 +13,7 @@ #define MAXLEN 360 -#include <iostream> + using std::cout; using std::endl; @@ -134,7 +134,6 @@ class HttpMethod : public pkgAcqMethod bool ServerDie(ServerState *Srv); int DealWithHeaders(FetchResult &Res,ServerState *Srv); - virtual bool Fetch(FetchItem *); virtual bool Configuration(string Message); // In the event of a fatal signal this file will be closed and timestamped. @@ -142,6 +141,9 @@ class HttpMethod : public pkgAcqMethod static int FailFd; static time_t FailTime; static void SigTerm(int); + + protected: + virtual bool Fetch(FetchItem *); public: friend class ServerState; diff --git a/methods/http_main.cc b/methods/http_main.cc new file mode 100644 index 000000000..2c46ab19d --- /dev/null +++ b/methods/http_main.cc @@ -0,0 +1,15 @@ +#include <apt-pkg/fileutl.h> +#include <apt-pkg/acquire-method.h> + +#include "connect.h" +#include "rfc2553emu.h" +#include "http.h" + + +int main() +{ + setlocale(LC_ALL, ""); + + HttpMethod Mth; + return Mth.Loop(); +} diff --git a/methods/makefile b/methods/makefile index f178cbbea..83bd8c7c9 100644 --- a/methods/makefile +++ b/methods/makefile @@ -49,7 +49,14 @@ include $(PROGRAM_H) PROGRAM=http SLIBS = -lapt-pkg $(SOCKETLIBS) LIB_MAKES = apt-pkg/makefile -SOURCE = http.cc rfc2553emu.cc connect.cc +SOURCE = http.cc http_main.cc rfc2553emu.cc connect.cc +include $(PROGRAM_H) + +# The https method +PROGRAM=https +SLIBS = -lapt-pkg -lcurl +LIB_MAKES = apt-pkg/makefile +SOURCE = https.cc include $(PROGRAM_H) # The https method @@ -80,6 +87,13 @@ LIB_MAKES = apt-pkg/makefile SOURCE = rsh.cc include $(PROGRAM_H) +# The mirror method +PROGRAM=mirror +SLIBS = -lapt-pkg $(SOCKETLIBS) +LIB_MAKES = apt-pkg/makefile +SOURCE = mirror.cc http.cc rfc2553emu.cc connect.cc +include $(PROGRAM_H) + # SSH and vzip2 method symlink binary: $(BIN)/ssh $(BIN)/bzip2 veryclean: clean-$(BIN)/ssh clean-$(BIN)/bzip2 diff --git a/methods/mirror.cc b/methods/mirror.cc new file mode 100644 index 000000000..9fe64fd70 --- /dev/null +++ b/methods/mirror.cc @@ -0,0 +1,282 @@ +// -*- mode: cpp; mode: fold -*- +// Description /*{{{*/ +// $Id: mirror.cc,v 1.59 2004/05/08 19:42:35 mdz Exp $ +/* ###################################################################### + + Mirror Aquire Method - This is the Mirror aquire method for APT. + + ##################################################################### */ + /*}}}*/ +// Include Files /*{{{*/ +#include <apt-pkg/fileutl.h> +#include <apt-pkg/acquire-method.h> +#include <apt-pkg/acquire-item.h> +#include <apt-pkg/acquire.h> +#include <apt-pkg/error.h> +#include <apt-pkg/hashes.h> +#include <apt-pkg/sourcelist.h> + +#include <fstream> +#include <iostream> +#include <stdarg.h> +#include <sys/stat.h> +#include <sys/types.h> +#include <dirent.h> + +using namespace std; + +#include "mirror.h" +#include "http.h" +#include "apti18n.h" + /*}}}*/ + +/* Done: + * - works with http (only!) + * - always picks the first mirror from the list + * - call out to problem reporting script + * - supports "deb mirror://host/path/to/mirror-list/// dist component" + * - uses pkgAcqMethod::FailReason() to have a string representation + * of the failure that is also send to LP + * + * TODO: + * - deal with runing as non-root because we can't write to the lists + dir then -> use the cached mirror file + * - better method to download than having a pkgAcquire interface here + * and better error handling there! + * - support more than http + * - testing :) + */ + +MirrorMethod::MirrorMethod() + : HttpMethod(), HasMirrorFile(false) +{ +}; + +// HttpMethod::Configuration - Handle a configuration message /*{{{*/ +// --------------------------------------------------------------------- +/* We stash the desired pipeline depth */ +bool MirrorMethod::Configuration(string Message) +{ + if (pkgAcqMethod::Configuration(Message) == false) + return false; + Debug = _config->FindB("Debug::Acquire::mirror",false); + + return true; +} + /*}}}*/ + +// clean the mirrors dir based on ttl information +bool MirrorMethod::Clean(string Dir) +{ + vector<metaIndex *>::const_iterator I; + + if(Debug) + clog << "MirrorMethod::Clean(): " << Dir << endl; + + // read sources.list + pkgSourceList list; + list.ReadMainList(); + + DIR *D = opendir(Dir.c_str()); + if (D == 0) + return _error->Errno("opendir",_("Unable to read %s"),Dir.c_str()); + + string StartDir = SafeGetCWD(); + if (chdir(Dir.c_str()) != 0) + { + closedir(D); + return _error->Errno("chdir",_("Unable to change to %s"),Dir.c_str()); + } + + for (struct dirent *Dir = readdir(D); Dir != 0; Dir = readdir(D)) + { + // Skip some files.. + if (strcmp(Dir->d_name,"lock") == 0 || + strcmp(Dir->d_name,"partial") == 0 || + strcmp(Dir->d_name,".") == 0 || + strcmp(Dir->d_name,"..") == 0) + continue; + + // see if we have that uri + for(I=list.begin(); I != list.end(); I++) + { + string uri = (*I)->GetURI(); + if(uri.substr(0,strlen("mirror://")) != string("mirror://")) + continue; + string BaseUri = uri.substr(0,uri.size()-1); + if (URItoFileName(BaseUri) == Dir->d_name) + break; + } + // nothing found, nuke it + if (I == list.end()) + unlink(Dir->d_name); + }; + + chdir(StartDir.c_str()); + closedir(D); + return true; +} + + +bool MirrorMethod::GetMirrorFile(string mirror_uri_str) +{ + /* + - a mirror_uri_str looks like this: + mirror://people.ubuntu.com/~mvo/apt/mirror/mirrors/dists/feisty/Release.gpg + + - the matching source.list entry + deb mirror://people.ubuntu.com/~mvo/apt/mirror/mirrors feisty main + + - we actually want to go after: + http://people.ubuntu.com/~mvo/apt/mirror/mirrors + + And we need to save the BaseUri for later: + - mirror://people.ubuntu.com/~mvo/apt/mirror/mirrors + + FIXME: what if we have two similar prefixes? + mirror://people.ubuntu.com/~mvo/mirror + mirror://people.ubuntu.com/~mvo/mirror2 + then mirror_uri_str looks like: + mirror://people.ubuntu.com/~mvo/apt/mirror/dists/feisty/Release.gpg + mirror://people.ubuntu.com/~mvo/apt/mirror2/dists/feisty/Release.gpg + we search sources.list and find: + mirror://people.ubuntu.com/~mvo/apt/mirror + in both cases! So we need to apply some domain knowledge here :( and + check for /dists/ or /Release.gpg as suffixes + */ + if(Debug) + std::cerr << "GetMirrorFile: " << mirror_uri_str << std::endl; + + // read sources.list and find match + vector<metaIndex *>::const_iterator I; + pkgSourceList list; + list.ReadMainList(); + for(I=list.begin(); I != list.end(); I++) + { + string uristr = (*I)->GetURI(); + if(Debug) + std::cerr << "Checking: " << uristr << std::endl; + if(uristr.substr(0,strlen("mirror://")) != string("mirror://")) + continue; + // find matching uri in sources.list + if(mirror_uri_str.substr(0,uristr.size()) == uristr) + { + if(Debug) + std::cerr << "found BaseURI: " << uristr << std::endl; + BaseUri = uristr.substr(0,uristr.size()-1); + } + } + string fetch = BaseUri; + fetch.replace(0,strlen("mirror://"),"http://"); + + // get new file + MirrorFile = _config->FindDir("Dir::State::mirrors") + URItoFileName(BaseUri); + + if(Debug) + { + cerr << "base-uri: " << BaseUri << endl; + cerr << "mirror-file: " << MirrorFile << endl; + } + + // check the file, if it is not older than RefreshInterval just use it + // otherwise try to get a new one + if(FileExists(MirrorFile)) + { + struct stat buf; + time_t t,now,refresh; + if(stat(MirrorFile.c_str(), &buf) != 0) + return false; + t = std::max(buf.st_mtime, buf.st_ctime); + now = time(NULL); + refresh = 60*_config->FindI("Acquire::Mirror::RefreshInterval",360); + if(t + refresh > now) + { + if(Debug) + clog << "Mirror file is in RefreshInterval" << endl; + HasMirrorFile = true; + return true; + } + if(Debug) + clog << "Mirror file " << MirrorFile << " older than " << refresh << "min, re-download it" << endl; + } + + // not that great to use pkgAcquire here, but we do not have + // any other way right now + pkgAcquire Fetcher; + new pkgAcqFile(&Fetcher, fetch, "", 0, "", "", "", MirrorFile); + bool res = (Fetcher.Run() == pkgAcquire::Continue); + if(res) + HasMirrorFile = true; + Fetcher.Shutdown(); + return res; +} + +bool MirrorMethod::SelectMirror() +{ + // FIXME: make the mirror selection more clever, do not + // just use the first one! + ifstream in(MirrorFile.c_str()); + getline(in, Mirror); + if(Debug) + cerr << "Using mirror: " << Mirror << endl; + + UsedMirror = Mirror; + return true; +} + +// MirrorMethod::Fetch - Fetch an item /*{{{*/ +// --------------------------------------------------------------------- +/* This adds an item to the pipeline. We keep the pipeline at a fixed + depth. */ +bool MirrorMethod::Fetch(FetchItem *Itm) +{ + // select mirror only once per session + if(!HasMirrorFile) + { + Clean(_config->FindDir("Dir::State::mirrors")); + GetMirrorFile(Itm->Uri); + SelectMirror(); + } + + for (FetchItem *I = Queue; I != 0; I = I->Next) + { + if(I->Uri.find("mirror://") != string::npos) + I->Uri.replace(0,BaseUri.size(),Mirror); + } + + // now run the real fetcher + return HttpMethod::Fetch(Itm); +}; + +void MirrorMethod::Fail(string Err,bool Transient) +{ + if(Queue->Uri.find("http://") != string::npos) + Queue->Uri.replace(0,Mirror.size(), BaseUri); + pkgAcqMethod::Fail(Err, Transient); +} + +void MirrorMethod::URIStart(FetchResult &Res) +{ + if(Queue->Uri.find("http://") != string::npos) + Queue->Uri.replace(0,Mirror.size(), BaseUri); + pkgAcqMethod::URIStart(Res); +} + +void MirrorMethod::URIDone(FetchResult &Res,FetchResult *Alt) +{ + if(Queue->Uri.find("http://") != string::npos) + Queue->Uri.replace(0,Mirror.size(), BaseUri); + pkgAcqMethod::URIDone(Res, Alt); +} + + +int main() +{ + setlocale(LC_ALL, ""); + + MirrorMethod Mth; + + return Mth.Loop(); +} + + diff --git a/methods/mirror.h b/methods/mirror.h new file mode 100644 index 000000000..798f5a9b5 --- /dev/null +++ b/methods/mirror.h @@ -0,0 +1,51 @@ +// -*- mode: cpp; mode: fold -*- +// Description /*{{{*/// $Id: http.h,v 1.12 2002/04/18 05:09:38 jgg Exp $ +// $Id: http.h,v 1.12 2002/04/18 05:09:38 jgg Exp $ +/* ###################################################################### + + MIRROR Aquire Method - This is the MIRROR aquire method for APT. + + ##################################################################### */ + /*}}}*/ + +#ifndef APT_MIRROR_H +#define APT_MIRROR_H + + +#include <iostream> + +using std::cout; +using std::cerr; +using std::endl; + +#include "http.h" + +class MirrorMethod : public HttpMethod +{ + FetchResult Res; + // we simply transform between BaseUri and Mirror + string BaseUri; // the original mirror://... url + string Mirror; // the selected mirror uri (http://...) + string MirrorFile; // + bool HasMirrorFile; + + bool Debug; + + protected: + bool GetMirrorFile(string uri); + bool SelectMirror(); + bool Clean(string dir); + + // we need to overwrite those to transform the url back + virtual void Fail(string Why, bool Transient = false); + virtual void URIStart(FetchResult &Res); + virtual void URIDone(FetchResult &Res,FetchResult *Alt = 0); + virtual bool Configuration(string Message); + + public: + MirrorMethod(); + virtual bool Fetch(FetchItem *Itm); +}; + + +#endif diff --git a/mirror-failure.py b/mirror-failure.py new file mode 100644 index 000000000..e7d2bbf54 --- /dev/null +++ b/mirror-failure.py @@ -0,0 +1,23 @@ +# File: cgihttpserver-example-1.py + +import CGIHTTPServer +import BaseHTTPServer + +class Handler(CGIHTTPServer.CGIHTTPRequestHandler): + #cgi_directories = ["/cgi"] + def do_POST(self): + print "do_POST" + #print self.command + #print self.path + #print self.headers + print self.client_address + data = self.rfile.read(int(self.headers["content-length"])) + print data + self.wfile.write("200 Ok\n"); + +PORT = 8000 + +httpd = BaseHTTPServer.HTTPServer(("", PORT), Handler) +print "serving at port", PORT +httpd.serve_forever() + diff --git a/po/apt-all.pot b/po/apt-all.pot index a7185fcf3..e19032f10 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: 2007-06-08 23:11+0200\n" +"POT-Creation-Date: 2007-04-27 15:16+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" @@ -15,153 +15,145 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: cmdline/apt-cache.cc:143 +#: cmdline/apt-cache.cc:135 #, c-format msgid "Package %s version %s has an unmet dep:\n" msgstr "" -#: cmdline/apt-cache.cc:183 cmdline/apt-cache.cc:552 cmdline/apt-cache.cc:640 -#: cmdline/apt-cache.cc:796 cmdline/apt-cache.cc:1018 -#: cmdline/apt-cache.cc:1419 cmdline/apt-cache.cc:1570 +#: cmdline/apt-cache.cc:175 cmdline/apt-cache.cc:527 cmdline/apt-cache.cc:615 +#: cmdline/apt-cache.cc:771 cmdline/apt-cache.cc:989 cmdline/apt-cache.cc:1357 +#: cmdline/apt-cache.cc:1508 #, c-format msgid "Unable to locate package %s" msgstr "" -#: cmdline/apt-cache.cc:247 +#: cmdline/apt-cache.cc:232 msgid "Total package names : " msgstr "" -#: cmdline/apt-cache.cc:287 +#: cmdline/apt-cache.cc:272 msgid " Normal packages: " msgstr "" -#: cmdline/apt-cache.cc:288 +#: cmdline/apt-cache.cc:273 msgid " Pure virtual packages: " msgstr "" -#: cmdline/apt-cache.cc:289 +#: cmdline/apt-cache.cc:274 msgid " Single virtual packages: " msgstr "" -#: cmdline/apt-cache.cc:290 +#: cmdline/apt-cache.cc:275 msgid " Mixed virtual packages: " msgstr "" -#: cmdline/apt-cache.cc:291 +#: cmdline/apt-cache.cc:276 msgid " Missing: " msgstr "" -#: cmdline/apt-cache.cc:293 +#: cmdline/apt-cache.cc:278 msgid "Total distinct versions: " msgstr "" -#: cmdline/apt-cache.cc:295 -msgid "Total Distinct Descriptions: " -msgstr "" - -#: cmdline/apt-cache.cc:297 +#: cmdline/apt-cache.cc:280 msgid "Total dependencies: " msgstr "" -#: cmdline/apt-cache.cc:300 +#: cmdline/apt-cache.cc:283 msgid "Total ver/file relations: " msgstr "" -#: cmdline/apt-cache.cc:302 -msgid "Total Desc/File relations: " -msgstr "" - -#: cmdline/apt-cache.cc:304 +#: cmdline/apt-cache.cc:285 msgid "Total Provides mappings: " msgstr "" -#: cmdline/apt-cache.cc:316 +#: cmdline/apt-cache.cc:297 msgid "Total globbed strings: " msgstr "" -#: cmdline/apt-cache.cc:330 +#: cmdline/apt-cache.cc:311 msgid "Total dependency version space: " msgstr "" -#: cmdline/apt-cache.cc:335 +#: cmdline/apt-cache.cc:316 msgid "Total slack space: " msgstr "" -#: cmdline/apt-cache.cc:343 +#: cmdline/apt-cache.cc:324 msgid "Total space accounted for: " msgstr "" -#: cmdline/apt-cache.cc:471 cmdline/apt-cache.cc:1218 +#: cmdline/apt-cache.cc:446 cmdline/apt-cache.cc:1189 #, c-format msgid "Package file %s is out of sync." msgstr "" -#: cmdline/apt-cache.cc:1293 +#: cmdline/apt-cache.cc:1231 msgid "You must give exactly one pattern" msgstr "" -#: cmdline/apt-cache.cc:1447 +#: cmdline/apt-cache.cc:1385 msgid "No packages found" msgstr "" -#: cmdline/apt-cache.cc:1524 +#: cmdline/apt-cache.cc:1462 msgid "Package files:" msgstr "" -#: cmdline/apt-cache.cc:1531 cmdline/apt-cache.cc:1617 +#: cmdline/apt-cache.cc:1469 cmdline/apt-cache.cc:1555 msgid "Cache is out of sync, can't x-ref a package file" msgstr "" -#: cmdline/apt-cache.cc:1532 +#: cmdline/apt-cache.cc:1470 #, c-format msgid "%4i %s\n" msgstr "" #. Show any packages have explicit pins -#: cmdline/apt-cache.cc:1544 +#: cmdline/apt-cache.cc:1482 msgid "Pinned packages:" msgstr "" -#: cmdline/apt-cache.cc:1556 cmdline/apt-cache.cc:1597 +#: cmdline/apt-cache.cc:1494 cmdline/apt-cache.cc:1535 msgid "(not found)" msgstr "" #. Installed version -#: cmdline/apt-cache.cc:1577 +#: cmdline/apt-cache.cc:1515 msgid " Installed: " msgstr "" -#: cmdline/apt-cache.cc:1579 cmdline/apt-cache.cc:1587 +#: cmdline/apt-cache.cc:1517 cmdline/apt-cache.cc:1525 msgid "(none)" msgstr "" #. Candidate Version -#: cmdline/apt-cache.cc:1584 +#: cmdline/apt-cache.cc:1522 msgid " Candidate: " msgstr "" -#: cmdline/apt-cache.cc:1594 +#: cmdline/apt-cache.cc:1532 msgid " Package pin: " msgstr "" #. Show the priority tables -#: cmdline/apt-cache.cc:1603 +#: cmdline/apt-cache.cc:1541 msgid " Version table:" msgstr "" -#: cmdline/apt-cache.cc:1618 +#: cmdline/apt-cache.cc:1556 #, c-format msgid " %4i %s\n" msgstr "" -#: cmdline/apt-cache.cc:1714 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70 -#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:551 -#: cmdline/apt-get.cc:2573 cmdline/apt-sortpkgs.cc:144 +#: cmdline/apt-cache.cc:1652 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70 +#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:550 +#: cmdline/apt-get.cc:2387 cmdline/apt-sortpkgs.cc:144 #, c-format msgid "%s %s for %s %s compiled on %s %s\n" msgstr "" -#: cmdline/apt-cache.cc:1721 +#: cmdline/apt-cache.cc:1659 msgid "" "Usage: apt-cache [options] command\n" " apt-cache [options] add file1 [file2 ...]\n" @@ -252,6 +244,7 @@ msgid "" msgstr "" #: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:819 +#: apt-pkg/pkgcachegen.cc:815 #, c-format msgid "Unable to write to %s" msgstr "" @@ -260,31 +253,31 @@ msgstr "" msgid "Cannot get debconf version. Is debconf installed?" msgstr "" -#: ftparchive/apt-ftparchive.cc:168 ftparchive/apt-ftparchive.cc:342 +#: ftparchive/apt-ftparchive.cc:167 ftparchive/apt-ftparchive.cc:341 msgid "Package extension list is too long" msgstr "" -#: ftparchive/apt-ftparchive.cc:170 ftparchive/apt-ftparchive.cc:184 -#: ftparchive/apt-ftparchive.cc:207 ftparchive/apt-ftparchive.cc:257 -#: ftparchive/apt-ftparchive.cc:271 ftparchive/apt-ftparchive.cc:293 +#: ftparchive/apt-ftparchive.cc:169 ftparchive/apt-ftparchive.cc:183 +#: ftparchive/apt-ftparchive.cc:206 ftparchive/apt-ftparchive.cc:256 +#: ftparchive/apt-ftparchive.cc:270 ftparchive/apt-ftparchive.cc:292 #, c-format msgid "Error processing directory %s" msgstr "" -#: ftparchive/apt-ftparchive.cc:255 +#: ftparchive/apt-ftparchive.cc:254 msgid "Source extension list is too long" msgstr "" -#: ftparchive/apt-ftparchive.cc:372 +#: ftparchive/apt-ftparchive.cc:371 msgid "Error writing header to contents file" msgstr "" -#: ftparchive/apt-ftparchive.cc:402 +#: ftparchive/apt-ftparchive.cc:401 #, c-format msgid "Error processing contents %s" msgstr "" -#: ftparchive/apt-ftparchive.cc:557 +#: ftparchive/apt-ftparchive.cc:556 msgid "" "Usage: apt-ftparchive [options] command\n" "Commands: packages binarypath [overridefile [pathprefix]]\n" @@ -326,11 +319,11 @@ msgid "" " -o=? Set an arbitrary configuration option" msgstr "" -#: ftparchive/apt-ftparchive.cc:763 +#: ftparchive/apt-ftparchive.cc:762 msgid "No selections matched" msgstr "" -#: ftparchive/apt-ftparchive.cc:836 +#: ftparchive/apt-ftparchive.cc:835 #, c-format msgid "Some files are missing in the package file group `%s'" msgstr "" @@ -550,221 +543,221 @@ msgstr "" msgid "Failed to rename %s to %s" msgstr "" -#: cmdline/apt-get.cc:121 +#: cmdline/apt-get.cc:120 msgid "Y" msgstr "" -#: cmdline/apt-get.cc:143 cmdline/apt-get.cc:1659 +#: cmdline/apt-get.cc:142 cmdline/apt-get.cc:1506 #, c-format msgid "Regex compilation error - %s" msgstr "" -#: cmdline/apt-get.cc:238 +#: cmdline/apt-get.cc:237 msgid "The following packages have unmet dependencies:" msgstr "" -#: cmdline/apt-get.cc:328 +#: cmdline/apt-get.cc:327 #, c-format msgid "but %s is installed" msgstr "" -#: cmdline/apt-get.cc:330 +#: cmdline/apt-get.cc:329 #, c-format msgid "but %s is to be installed" msgstr "" -#: cmdline/apt-get.cc:337 +#: cmdline/apt-get.cc:336 msgid "but it is not installable" msgstr "" -#: cmdline/apt-get.cc:339 +#: cmdline/apt-get.cc:338 msgid "but it is a virtual package" msgstr "" -#: cmdline/apt-get.cc:342 +#: cmdline/apt-get.cc:341 msgid "but it is not installed" msgstr "" -#: cmdline/apt-get.cc:342 +#: cmdline/apt-get.cc:341 msgid "but it is not going to be installed" msgstr "" -#: cmdline/apt-get.cc:347 +#: cmdline/apt-get.cc:346 msgid " or" msgstr "" -#: cmdline/apt-get.cc:376 +#: cmdline/apt-get.cc:375 msgid "The following NEW packages will be installed:" msgstr "" -#: cmdline/apt-get.cc:402 +#: cmdline/apt-get.cc:401 msgid "The following packages will be REMOVED:" msgstr "" -#: cmdline/apt-get.cc:424 +#: cmdline/apt-get.cc:423 msgid "The following packages have been kept back:" msgstr "" -#: cmdline/apt-get.cc:445 +#: cmdline/apt-get.cc:444 msgid "The following packages will be upgraded:" msgstr "" -#: cmdline/apt-get.cc:466 +#: cmdline/apt-get.cc:465 msgid "The following packages will be DOWNGRADED:" msgstr "" -#: cmdline/apt-get.cc:486 +#: cmdline/apt-get.cc:485 msgid "The following held packages will be changed:" msgstr "" -#: cmdline/apt-get.cc:539 +#: cmdline/apt-get.cc:538 #, c-format msgid "%s (due to %s) " msgstr "" -#: cmdline/apt-get.cc:547 +#: cmdline/apt-get.cc:546 msgid "" "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:578 +#: cmdline/apt-get.cc:577 #, c-format msgid "%lu upgraded, %lu newly installed, " msgstr "" -#: cmdline/apt-get.cc:582 +#: cmdline/apt-get.cc:581 #, c-format msgid "%lu reinstalled, " msgstr "" -#: cmdline/apt-get.cc:584 +#: cmdline/apt-get.cc:583 #, c-format msgid "%lu downgraded, " msgstr "" -#: cmdline/apt-get.cc:586 +#: cmdline/apt-get.cc:585 #, c-format msgid "%lu to remove and %lu not upgraded.\n" msgstr "" -#: cmdline/apt-get.cc:590 +#: cmdline/apt-get.cc:589 #, c-format msgid "%lu not fully installed or removed.\n" msgstr "" -#: cmdline/apt-get.cc:664 +#: cmdline/apt-get.cc:649 msgid "Correcting dependencies..." msgstr "" -#: cmdline/apt-get.cc:667 +#: cmdline/apt-get.cc:652 msgid " failed." msgstr "" -#: cmdline/apt-get.cc:670 +#: cmdline/apt-get.cc:655 msgid "Unable to correct dependencies" msgstr "" -#: cmdline/apt-get.cc:673 +#: cmdline/apt-get.cc:658 msgid "Unable to minimize the upgrade set" msgstr "" -#: cmdline/apt-get.cc:675 +#: cmdline/apt-get.cc:660 msgid " Done" msgstr "" -#: cmdline/apt-get.cc:679 +#: cmdline/apt-get.cc:664 msgid "You might want to run `apt-get -f install' to correct these." msgstr "" -#: cmdline/apt-get.cc:682 +#: cmdline/apt-get.cc:667 msgid "Unmet dependencies. Try using -f." msgstr "" -#: cmdline/apt-get.cc:704 +#: cmdline/apt-get.cc:689 msgid "WARNING: The following packages cannot be authenticated!" msgstr "" -#: cmdline/apt-get.cc:708 +#: cmdline/apt-get.cc:693 msgid "Authentication warning overridden.\n" msgstr "" -#: cmdline/apt-get.cc:715 +#: cmdline/apt-get.cc:700 msgid "Install these packages without verification [y/N]? " msgstr "" -#: cmdline/apt-get.cc:717 +#: cmdline/apt-get.cc:702 msgid "Some packages could not be authenticated" msgstr "" -#: cmdline/apt-get.cc:726 cmdline/apt-get.cc:873 +#: cmdline/apt-get.cc:711 cmdline/apt-get.cc:858 msgid "There are problems and -y was used without --force-yes" msgstr "" -#: cmdline/apt-get.cc:770 +#: cmdline/apt-get.cc:755 msgid "Internal error, InstallPackages was called with broken packages!" msgstr "" -#: cmdline/apt-get.cc:779 +#: cmdline/apt-get.cc:764 msgid "Packages need to be removed but remove is disabled." msgstr "" -#: cmdline/apt-get.cc:790 +#: cmdline/apt-get.cc:775 msgid "Internal error, Ordering didn't finish" msgstr "" -#: cmdline/apt-get.cc:806 cmdline/apt-get.cc:1999 cmdline/apt-get.cc:2032 +#: cmdline/apt-get.cc:791 cmdline/apt-get.cc:1818 cmdline/apt-get.cc:1851 msgid "Unable to lock the download directory" msgstr "" -#: cmdline/apt-get.cc:816 cmdline/apt-get.cc:2080 cmdline/apt-get.cc:2321 -#: apt-pkg/cachefile.cc:67 +#: cmdline/apt-get.cc:801 cmdline/apt-get.cc:1899 cmdline/apt-get.cc:2135 +#: apt-pkg/cachefile.cc:67 apt-pkg/cachefile.cc:63 msgid "The list of sources could not be read." msgstr "" -#: cmdline/apt-get.cc:831 +#: cmdline/apt-get.cc:816 msgid "How odd.. The sizes didn't match, email apt@packages.debian.org" msgstr "" -#: cmdline/apt-get.cc:836 +#: cmdline/apt-get.cc:821 #, c-format msgid "Need to get %sB/%sB of archives.\n" msgstr "" -#: cmdline/apt-get.cc:839 +#: cmdline/apt-get.cc:824 #, c-format msgid "Need to get %sB of archives.\n" msgstr "" -#: cmdline/apt-get.cc:844 +#: cmdline/apt-get.cc:829 #, c-format msgid "After unpacking %sB of additional disk space will be used.\n" msgstr "" -#: cmdline/apt-get.cc:847 +#: cmdline/apt-get.cc:832 #, c-format msgid "After unpacking %sB disk space will be freed.\n" msgstr "" -#: cmdline/apt-get.cc:861 cmdline/apt-get.cc:2175 +#: cmdline/apt-get.cc:846 cmdline/apt-get.cc:1989 #, c-format msgid "Couldn't determine free space in %s" msgstr "" -#: cmdline/apt-get.cc:864 +#: cmdline/apt-get.cc:849 #, c-format msgid "You don't have enough free space in %s." msgstr "" -#: cmdline/apt-get.cc:879 cmdline/apt-get.cc:899 +#: cmdline/apt-get.cc:864 cmdline/apt-get.cc:884 msgid "Trivial Only specified but this is not a trivial operation." msgstr "" -#: cmdline/apt-get.cc:881 +#: cmdline/apt-get.cc:866 msgid "Yes, do as I say!" msgstr "" -#: cmdline/apt-get.cc:883 +#: cmdline/apt-get.cc:868 #, c-format msgid "" "You are about to do something potentially harmful.\n" @@ -772,74 +765,74 @@ msgid "" " ?] " msgstr "" -#: cmdline/apt-get.cc:889 cmdline/apt-get.cc:908 +#: cmdline/apt-get.cc:874 cmdline/apt-get.cc:893 msgid "Abort." msgstr "" -#: cmdline/apt-get.cc:904 +#: cmdline/apt-get.cc:889 msgid "Do you want to continue [Y/n]? " msgstr "" -#: cmdline/apt-get.cc:976 cmdline/apt-get.cc:1383 cmdline/apt-get.cc:2218 +#: cmdline/apt-get.cc:961 cmdline/apt-get.cc:1365 cmdline/apt-get.cc:2032 #, c-format msgid "Failed to fetch %s %s\n" msgstr "" -#: cmdline/apt-get.cc:994 +#: cmdline/apt-get.cc:979 msgid "Some files failed to download" msgstr "" -#: cmdline/apt-get.cc:995 cmdline/apt-get.cc:2227 +#: cmdline/apt-get.cc:980 cmdline/apt-get.cc:2041 msgid "Download complete and in download only mode" msgstr "" -#: cmdline/apt-get.cc:1001 +#: cmdline/apt-get.cc:986 msgid "" "Unable to fetch some archives, maybe run apt-get update or try with --fix-" "missing?" msgstr "" -#: cmdline/apt-get.cc:1005 +#: cmdline/apt-get.cc:990 msgid "--fix-missing and media swapping is not currently supported" msgstr "" -#: cmdline/apt-get.cc:1010 +#: cmdline/apt-get.cc:995 msgid "Unable to correct missing packages." msgstr "" -#: cmdline/apt-get.cc:1011 +#: cmdline/apt-get.cc:996 msgid "Aborting install." msgstr "" -#: cmdline/apt-get.cc:1045 +#: cmdline/apt-get.cc:1030 #, c-format msgid "Note, selecting %s instead of %s\n" msgstr "" -#: cmdline/apt-get.cc:1055 +#: cmdline/apt-get.cc:1040 #, c-format msgid "Skipping %s, it is already installed and upgrade is not set.\n" msgstr "" -#: cmdline/apt-get.cc:1073 +#: cmdline/apt-get.cc:1058 #, c-format msgid "Package %s is not installed, so not removed\n" msgstr "" -#: cmdline/apt-get.cc:1084 +#: cmdline/apt-get.cc:1069 #, c-format msgid "Package %s is a virtual package provided by:\n" msgstr "" -#: cmdline/apt-get.cc:1096 +#: cmdline/apt-get.cc:1081 msgid " [Installed]" msgstr "" -#: cmdline/apt-get.cc:1101 +#: cmdline/apt-get.cc:1086 msgid "You should explicitly select one to install." msgstr "" -#: cmdline/apt-get.cc:1106 +#: cmdline/apt-get.cc:1091 #, c-format msgid "" "Package %s is not available, but is referred to by another package.\n" @@ -847,117 +840,79 @@ msgid "" "is only available from another source\n" msgstr "" -#: cmdline/apt-get.cc:1125 +#: cmdline/apt-get.cc:1110 msgid "However the following packages replace it:" msgstr "" -#: cmdline/apt-get.cc:1128 +#: cmdline/apt-get.cc:1113 #, c-format msgid "Package %s has no installation candidate" msgstr "" -#: cmdline/apt-get.cc:1148 +#: cmdline/apt-get.cc:1133 #, c-format msgid "Reinstallation of %s is not possible, it cannot be downloaded.\n" msgstr "" -#: cmdline/apt-get.cc:1156 +#: cmdline/apt-get.cc:1141 #, c-format msgid "%s is already the newest version.\n" msgstr "" -#: cmdline/apt-get.cc:1185 +#: cmdline/apt-get.cc:1168 #, c-format msgid "Release '%s' for '%s' was not found" msgstr "" -#: cmdline/apt-get.cc:1187 +#: cmdline/apt-get.cc:1170 #, c-format msgid "Version '%s' for '%s' was not found" msgstr "" -#: cmdline/apt-get.cc:1193 +#: cmdline/apt-get.cc:1176 #, c-format msgid "Selected version %s (%s) for %s\n" msgstr "" -#: cmdline/apt-get.cc:1330 +#: cmdline/apt-get.cc:1313 msgid "The update command takes no arguments" msgstr "" -#: cmdline/apt-get.cc:1343 +#: cmdline/apt-get.cc:1326 msgid "Unable to lock the list directory" msgstr "" -#: cmdline/apt-get.cc:1410 cmdline/apt-get.cc:1412 +#: cmdline/apt-get.cc:1384 msgid "" "Some index files failed to download, they have been ignored, or old ones " "used instead." msgstr "" -#: cmdline/apt-get.cc:1433 -msgid "We are not supposed to delete stuff, can't start AutoRemover" -msgstr "" - -#: cmdline/apt-get.cc:1465 -msgid "" -"The following packages were automatically installed and are no longer " -"required:" -msgstr "" - -#: cmdline/apt-get.cc:1467 -msgid "Use 'apt-get autoremove' to remove them." -msgstr "" - -#: cmdline/apt-get.cc:1472 -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:1475 cmdline/apt-get.cc:1740 -msgid "The following information may help to resolve the situation:" -msgstr "" - -#: cmdline/apt-get.cc:1479 -msgid "Internal Error, AutoRemover broke stuff" -msgstr "" - -#: cmdline/apt-get.cc:1498 +#: cmdline/apt-get.cc:1403 msgid "Internal error, AllUpgrade broke stuff" msgstr "" -#: cmdline/apt-get.cc:1543 -#, c-format -msgid "Couldn't find task %s" -msgstr "" - -#: cmdline/apt-get.cc:1646 cmdline/apt-get.cc:1682 +#: cmdline/apt-get.cc:1493 cmdline/apt-get.cc:1529 #, c-format msgid "Couldn't find package %s" msgstr "" -#: cmdline/apt-get.cc:1669 +#: cmdline/apt-get.cc:1516 #, c-format msgid "Note, selecting %s for regex '%s'\n" msgstr "" -#: cmdline/apt-get.cc:1699 -#, c-format -msgid "%s set to manual installed.\n" -msgstr "" - -#: cmdline/apt-get.cc:1712 +#: cmdline/apt-get.cc:1546 msgid "You might want to run `apt-get -f install' to correct these:" msgstr "" -#: cmdline/apt-get.cc:1715 +#: cmdline/apt-get.cc:1549 msgid "" "Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a " "solution)." msgstr "" -#: cmdline/apt-get.cc:1727 +#: cmdline/apt-get.cc:1561 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" @@ -965,159 +920,163 @@ msgid "" "or been moved out of Incoming." msgstr "" -#: cmdline/apt-get.cc:1735 +#: cmdline/apt-get.cc:1569 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:1743 +#: cmdline/apt-get.cc:1574 +msgid "The following information may help to resolve the situation:" +msgstr "" + +#: cmdline/apt-get.cc:1577 msgid "Broken packages" msgstr "" -#: cmdline/apt-get.cc:1774 +#: cmdline/apt-get.cc:1603 msgid "The following extra packages will be installed:" msgstr "" -#: cmdline/apt-get.cc:1863 +#: cmdline/apt-get.cc:1692 msgid "Suggested packages:" msgstr "" -#: cmdline/apt-get.cc:1864 +#: cmdline/apt-get.cc:1693 msgid "Recommended packages:" msgstr "" -#: cmdline/apt-get.cc:1892 +#: cmdline/apt-get.cc:1713 msgid "Calculating upgrade... " msgstr "" -#: cmdline/apt-get.cc:1895 methods/ftp.cc:702 methods/connect.cc:101 +#: cmdline/apt-get.cc:1716 methods/ftp.cc:702 methods/connect.cc:100 msgid "Failed" msgstr "" -#: cmdline/apt-get.cc:1900 +#: cmdline/apt-get.cc:1721 msgid "Done" msgstr "" -#: cmdline/apt-get.cc:1967 cmdline/apt-get.cc:1975 +#: cmdline/apt-get.cc:1786 cmdline/apt-get.cc:1794 msgid "Internal error, problem resolver broke stuff" msgstr "" -#: cmdline/apt-get.cc:2075 +#: cmdline/apt-get.cc:1894 msgid "Must specify at least one package to fetch source for" msgstr "" -#: cmdline/apt-get.cc:2105 cmdline/apt-get.cc:2339 +#: cmdline/apt-get.cc:1924 cmdline/apt-get.cc:2153 #, c-format msgid "Unable to find a source package for %s" msgstr "" -#: cmdline/apt-get.cc:2154 +#: cmdline/apt-get.cc:1968 #, c-format msgid "Skipping already downloaded file '%s'\n" msgstr "" -#: cmdline/apt-get.cc:2178 +#: cmdline/apt-get.cc:1992 #, c-format msgid "You don't have enough free space in %s" msgstr "" -#: cmdline/apt-get.cc:2183 +#: cmdline/apt-get.cc:1997 #, c-format msgid "Need to get %sB/%sB of source archives.\n" msgstr "" -#: cmdline/apt-get.cc:2186 +#: cmdline/apt-get.cc:2000 #, c-format msgid "Need to get %sB of source archives.\n" msgstr "" -#: cmdline/apt-get.cc:2192 +#: cmdline/apt-get.cc:2006 #, c-format msgid "Fetch source %s\n" msgstr "" -#: cmdline/apt-get.cc:2223 +#: cmdline/apt-get.cc:2037 msgid "Failed to fetch some archives." msgstr "" -#: cmdline/apt-get.cc:2251 +#: cmdline/apt-get.cc:2065 #, c-format msgid "Skipping unpack of already unpacked source in %s\n" msgstr "" -#: cmdline/apt-get.cc:2263 +#: cmdline/apt-get.cc:2077 #, c-format msgid "Unpack command '%s' failed.\n" msgstr "" -#: cmdline/apt-get.cc:2264 +#: cmdline/apt-get.cc:2078 #, c-format msgid "Check if the 'dpkg-dev' package is installed.\n" msgstr "" -#: cmdline/apt-get.cc:2281 +#: cmdline/apt-get.cc:2095 #, c-format msgid "Build command '%s' failed.\n" msgstr "" -#: cmdline/apt-get.cc:2300 +#: cmdline/apt-get.cc:2114 msgid "Child process failed" msgstr "" -#: cmdline/apt-get.cc:2316 +#: cmdline/apt-get.cc:2130 msgid "Must specify at least one package to check builddeps for" msgstr "" -#: cmdline/apt-get.cc:2344 +#: cmdline/apt-get.cc:2158 #, c-format msgid "Unable to get build-dependency information for %s" msgstr "" -#: cmdline/apt-get.cc:2364 +#: cmdline/apt-get.cc:2178 #, c-format msgid "%s has no build depends.\n" msgstr "" -#: cmdline/apt-get.cc:2416 +#: cmdline/apt-get.cc:2230 #, c-format msgid "" "%s dependency for %s cannot be satisfied because the package %s cannot be " "found" msgstr "" -#: cmdline/apt-get.cc:2468 +#: cmdline/apt-get.cc:2282 #, 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:2503 +#: cmdline/apt-get.cc:2317 #, c-format msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new" msgstr "" -#: cmdline/apt-get.cc:2528 +#: cmdline/apt-get.cc:2342 #, c-format msgid "Failed to satisfy %s dependency for %s: %s" msgstr "" -#: cmdline/apt-get.cc:2542 +#: cmdline/apt-get.cc:2356 #, c-format msgid "Build-dependencies for %s could not be satisfied." msgstr "" -#: cmdline/apt-get.cc:2546 +#: cmdline/apt-get.cc:2360 msgid "Failed to process build dependencies" msgstr "" -#: cmdline/apt-get.cc:2578 +#: cmdline/apt-get.cc:2392 msgid "Supported modules:" msgstr "" -#: cmdline/apt-get.cc:2619 +#: cmdline/apt-get.cc:2433 msgid "" "Usage: apt-get [options] command\n" " apt-get [options] install|remove pkg1 [pkg2 ...]\n" @@ -1132,7 +1091,6 @@ msgid "" " upgrade - Perform an upgrade\n" " install - Install new packages (pkg is libc6 not libc6.deb)\n" " remove - Remove packages\n" -" purge - Remove and purge packages\n" " source - Download source archives\n" " build-dep - Configure build-dependencies for source packages\n" " dist-upgrade - Distribution upgrade, see apt-get(8)\n" @@ -1373,7 +1331,9 @@ msgstr "" #: apt-inst/extract.cc:467 apt-pkg/contrib/configuration.cc:750 #: apt-pkg/contrib/cdromutl.cc:153 apt-pkg/sourcelist.cc:324 -#: apt-pkg/acquire.cc:421 apt-pkg/clean.cc:38 +#: apt-pkg/acquire.cc:421 apt-pkg/clean.cc:38 methods/mirror.cc:82 +#: apt-pkg/contrib/configuration.cc:747 apt-pkg/contrib/cdromutl.cc:150 +#: apt-pkg/sourcelist.cc:320 apt-pkg/acquire.cc:418 apt-pkg/clean.cc:34 #, c-format msgid "Unable to read %s" msgstr "" @@ -1405,7 +1365,9 @@ msgstr "" #. Build the status cache #: apt-inst/deb/dpkgdb.cc:139 apt-pkg/pkgcachegen.cc:752 #: apt-pkg/pkgcachegen.cc:821 apt-pkg/pkgcachegen.cc:826 -#: apt-pkg/pkgcachegen.cc:949 +#: apt-pkg/pkgcachegen.cc:949 apt-pkg/pkgcachegen.cc:748 +#: apt-pkg/pkgcachegen.cc:817 apt-pkg/pkgcachegen.cc:822 +#: apt-pkg/pkgcachegen.cc:945 msgid "Reading package lists" msgstr "" @@ -1599,7 +1561,8 @@ msgstr "" msgid "Server closed the connection" msgstr "" -#: methods/ftp.cc:338 apt-pkg/contrib/fileutl.cc:472 methods/rsh.cc:190 +#: methods/ftp.cc:338 apt-pkg/contrib/fileutl.cc:471 methods/rsh.cc:190 +#: apt-pkg/contrib/fileutl.cc:469 msgid "Read error" msgstr "" @@ -1611,7 +1574,8 @@ msgstr "" msgid "Protocol corruption" msgstr "" -#: methods/ftp.cc:446 apt-pkg/contrib/fileutl.cc:511 methods/rsh.cc:232 +#: methods/ftp.cc:446 apt-pkg/contrib/fileutl.cc:510 methods/rsh.cc:232 +#: apt-pkg/contrib/fileutl.cc:508 msgid "Write error" msgstr "" @@ -1665,7 +1629,7 @@ msgstr "" msgid "Unable to accept connection" msgstr "" -#: methods/ftp.cc:864 methods/http.cc:958 methods/rsh.cc:303 +#: methods/ftp.cc:864 methods/http.cc:961 methods/rsh.cc:303 msgid "Problem hashing file" msgstr "" @@ -1692,39 +1656,39 @@ msgstr "" msgid "Unable to invoke " msgstr "" -#: methods/connect.cc:64 +#: methods/connect.cc:65 #, c-format msgid "Connecting to %s (%s)" msgstr "" -#: methods/connect.cc:71 +#: methods/connect.cc:72 #, c-format msgid "[IP: %s %s]" msgstr "" -#: methods/connect.cc:80 +#: methods/connect.cc:79 #, c-format msgid "Could not create a socket for %s (f=%u t=%u p=%u)" msgstr "" -#: methods/connect.cc:86 +#: methods/connect.cc:85 #, c-format msgid "Cannot initiate the connection to %s:%s (%s)." msgstr "" -#: methods/connect.cc:93 +#: methods/connect.cc:92 #, c-format msgid "Could not connect to %s:%s (%s), connection timed out" msgstr "" -#: methods/connect.cc:108 +#: methods/connect.cc:107 #, c-format msgid "Could not connect to %s:%s (%s)." msgstr "" #. We say this mainly because the pause here is for the #. ssh connection that is still going -#: methods/connect.cc:136 methods/rsh.cc:425 +#: methods/connect.cc:135 methods/rsh.cc:425 #, c-format msgid "Connecting to %s" msgstr "" @@ -1857,384 +1821,394 @@ msgstr "" msgid "Error reading from server" msgstr "" -#: methods/http.cc:1107 +#: methods/http.cc:1110 msgid "Bad header data" msgstr "" -#: methods/http.cc:1124 +#: methods/http.cc:1127 msgid "Connection failed" msgstr "" -#: methods/http.cc:1215 +#: methods/http.cc:1218 msgid "Internal error" msgstr "" -#: apt-pkg/contrib/mmap.cc:82 +#: apt-pkg/contrib/mmap.cc:82 apt-pkg/contrib/mmap.cc:78 msgid "Can't mmap an empty file" msgstr "" -#: apt-pkg/contrib/mmap.cc:87 +#: apt-pkg/contrib/mmap.cc:87 apt-pkg/contrib/mmap.cc:83 #, c-format msgid "Couldn't make mmap of %lu bytes" msgstr "" -#: apt-pkg/contrib/strutl.cc:982 +#: apt-pkg/contrib/strutl.cc:981 apt-pkg/contrib/strutl.cc:978 #, c-format msgid "Selection %s not found" msgstr "" -#: apt-pkg/contrib/configuration.cc:436 +#: apt-pkg/contrib/configuration.cc:436 apt-pkg/contrib/configuration.cc:433 #, c-format msgid "Unrecognized type abbreviation: '%c'" msgstr "" -#: apt-pkg/contrib/configuration.cc:494 +#: apt-pkg/contrib/configuration.cc:494 apt-pkg/contrib/configuration.cc:491 #, c-format msgid "Opening configuration file %s" msgstr "" -#: apt-pkg/contrib/configuration.cc:512 +#: apt-pkg/contrib/configuration.cc:512 apt-pkg/contrib/configuration.cc:509 #, c-format msgid "Line %d too long (max %d)" msgstr "" -#: apt-pkg/contrib/configuration.cc:608 +#: apt-pkg/contrib/configuration.cc:608 apt-pkg/contrib/configuration.cc:605 #, c-format msgid "Syntax error %s:%u: Block starts with no name." msgstr "" -#: apt-pkg/contrib/configuration.cc:627 +#: apt-pkg/contrib/configuration.cc:627 apt-pkg/contrib/configuration.cc:624 #, c-format msgid "Syntax error %s:%u: Malformed tag" msgstr "" -#: apt-pkg/contrib/configuration.cc:644 +#: apt-pkg/contrib/configuration.cc:644 apt-pkg/contrib/configuration.cc:641 #, c-format msgid "Syntax error %s:%u: Extra junk after value" msgstr "" -#: apt-pkg/contrib/configuration.cc:684 +#: apt-pkg/contrib/configuration.cc:684 apt-pkg/contrib/configuration.cc:681 #, c-format msgid "Syntax error %s:%u: Directives can only be done at the top level" msgstr "" -#: apt-pkg/contrib/configuration.cc:691 +#: apt-pkg/contrib/configuration.cc:691 apt-pkg/contrib/configuration.cc:688 #, c-format msgid "Syntax error %s:%u: Too many nested includes" msgstr "" #: apt-pkg/contrib/configuration.cc:695 apt-pkg/contrib/configuration.cc:700 +#: apt-pkg/contrib/configuration.cc:692 apt-pkg/contrib/configuration.cc:697 #, c-format msgid "Syntax error %s:%u: Included from here" msgstr "" -#: apt-pkg/contrib/configuration.cc:704 +#: apt-pkg/contrib/configuration.cc:704 apt-pkg/contrib/configuration.cc:701 #, c-format msgid "Syntax error %s:%u: Unsupported directive '%s'" msgstr "" -#: apt-pkg/contrib/configuration.cc:738 +#: apt-pkg/contrib/configuration.cc:738 apt-pkg/contrib/configuration.cc:735 #, c-format msgid "Syntax error %s:%u: Extra junk at end of file" msgstr "" -#: apt-pkg/contrib/progress.cc:155 +#: apt-pkg/contrib/progress.cc:155 apt-pkg/contrib/progress.cc:152 #, c-format msgid "%c%s... Error!" msgstr "" -#: apt-pkg/contrib/progress.cc:157 +#: apt-pkg/contrib/progress.cc:157 apt-pkg/contrib/progress.cc:154 #, c-format msgid "%c%s... Done" msgstr "" -#: apt-pkg/contrib/cmndline.cc:80 +#: apt-pkg/contrib/cmndline.cc:80 apt-pkg/contrib/cmndline.cc:77 #, c-format msgid "Command line option '%c' [from %s] is not known." msgstr "" #: apt-pkg/contrib/cmndline.cc:106 apt-pkg/contrib/cmndline.cc:114 -#: apt-pkg/contrib/cmndline.cc:122 +#: apt-pkg/contrib/cmndline.cc:122 apt-pkg/contrib/cmndline.cc:103 +#: apt-pkg/contrib/cmndline.cc:111 apt-pkg/contrib/cmndline.cc:119 #, c-format msgid "Command line option %s is not understood" msgstr "" -#: apt-pkg/contrib/cmndline.cc:127 +#: apt-pkg/contrib/cmndline.cc:127 apt-pkg/contrib/cmndline.cc:124 #, c-format msgid "Command line option %s is not boolean" msgstr "" #: apt-pkg/contrib/cmndline.cc:166 apt-pkg/contrib/cmndline.cc:187 +#: apt-pkg/contrib/cmndline.cc:163 apt-pkg/contrib/cmndline.cc:184 #, c-format msgid "Option %s requires an argument." msgstr "" #: apt-pkg/contrib/cmndline.cc:201 apt-pkg/contrib/cmndline.cc:207 +#: apt-pkg/contrib/cmndline.cc:198 apt-pkg/contrib/cmndline.cc:204 #, c-format msgid "Option %s: Configuration item specification must have an =<val>." msgstr "" -#: apt-pkg/contrib/cmndline.cc:237 +#: apt-pkg/contrib/cmndline.cc:237 apt-pkg/contrib/cmndline.cc:234 #, c-format msgid "Option %s requires an integer argument, not '%s'" msgstr "" -#: apt-pkg/contrib/cmndline.cc:268 +#: apt-pkg/contrib/cmndline.cc:268 apt-pkg/contrib/cmndline.cc:265 #, c-format msgid "Option '%s' is too long" msgstr "" -#: apt-pkg/contrib/cmndline.cc:301 +#: apt-pkg/contrib/cmndline.cc:301 apt-pkg/contrib/cmndline.cc:298 #, c-format msgid "Sense %s is not understood, try true or false." msgstr "" -#: apt-pkg/contrib/cmndline.cc:351 +#: apt-pkg/contrib/cmndline.cc:351 apt-pkg/contrib/cmndline.cc:348 #, c-format msgid "Invalid operation %s" msgstr "" -#: apt-pkg/contrib/cdromutl.cc:55 +#: apt-pkg/contrib/cdromutl.cc:55 apt-pkg/contrib/cdromutl.cc:52 #, c-format msgid "Unable to stat the mount point %s" msgstr "" #: apt-pkg/contrib/cdromutl.cc:149 apt-pkg/acquire.cc:427 apt-pkg/clean.cc:44 +#: methods/mirror.cc:88 apt-pkg/contrib/cdromutl.cc:146 apt-pkg/acquire.cc:424 +#: apt-pkg/clean.cc:40 #, c-format msgid "Unable to change to %s" msgstr "" -#: apt-pkg/contrib/cdromutl.cc:190 +#: apt-pkg/contrib/cdromutl.cc:190 apt-pkg/contrib/cdromutl.cc:187 msgid "Failed to stat the cdrom" msgstr "" -#: apt-pkg/contrib/fileutl.cc:83 +#: apt-pkg/contrib/fileutl.cc:82 apt-pkg/contrib/fileutl.cc:80 #, c-format msgid "Not using locking for read only lock file %s" msgstr "" -#: apt-pkg/contrib/fileutl.cc:88 +#: apt-pkg/contrib/fileutl.cc:87 apt-pkg/contrib/fileutl.cc:85 #, c-format msgid "Could not open lock file %s" msgstr "" -#: apt-pkg/contrib/fileutl.cc:106 +#: apt-pkg/contrib/fileutl.cc:105 apt-pkg/contrib/fileutl.cc:103 #, c-format msgid "Not using locking for nfs mounted lock file %s" msgstr "" -#: apt-pkg/contrib/fileutl.cc:110 +#: apt-pkg/contrib/fileutl.cc:109 apt-pkg/contrib/fileutl.cc:107 #, c-format msgid "Could not get lock %s" msgstr "" -#: apt-pkg/contrib/fileutl.cc:378 +#: apt-pkg/contrib/fileutl.cc:377 apt-pkg/contrib/fileutl.cc:375 #, c-format msgid "Waited for %s but it wasn't there" msgstr "" -#: apt-pkg/contrib/fileutl.cc:388 +#: apt-pkg/contrib/fileutl.cc:387 apt-pkg/contrib/fileutl.cc:385 #, c-format msgid "Sub-process %s received a segmentation fault." msgstr "" -#: apt-pkg/contrib/fileutl.cc:391 +#: apt-pkg/contrib/fileutl.cc:390 apt-pkg/contrib/fileutl.cc:388 #, c-format msgid "Sub-process %s returned an error code (%u)" msgstr "" -#: apt-pkg/contrib/fileutl.cc:393 +#: apt-pkg/contrib/fileutl.cc:392 apt-pkg/contrib/fileutl.cc:390 #, c-format msgid "Sub-process %s exited unexpectedly" msgstr "" -#: apt-pkg/contrib/fileutl.cc:437 +#: apt-pkg/contrib/fileutl.cc:436 apt-pkg/contrib/fileutl.cc:434 #, c-format msgid "Could not open file %s" msgstr "" -#: apt-pkg/contrib/fileutl.cc:493 +#: apt-pkg/contrib/fileutl.cc:492 apt-pkg/contrib/fileutl.cc:490 #, c-format msgid "read, still have %lu to read but none left" msgstr "" -#: apt-pkg/contrib/fileutl.cc:523 +#: apt-pkg/contrib/fileutl.cc:522 apt-pkg/contrib/fileutl.cc:520 #, c-format msgid "write, still have %lu to write but couldn't" msgstr "" -#: apt-pkg/contrib/fileutl.cc:598 +#: apt-pkg/contrib/fileutl.cc:597 apt-pkg/contrib/fileutl.cc:595 msgid "Problem closing the file" msgstr "" -#: apt-pkg/contrib/fileutl.cc:604 +#: apt-pkg/contrib/fileutl.cc:603 apt-pkg/contrib/fileutl.cc:601 msgid "Problem unlinking the file" msgstr "" -#: apt-pkg/contrib/fileutl.cc:615 +#: apt-pkg/contrib/fileutl.cc:614 apt-pkg/contrib/fileutl.cc:612 msgid "Problem syncing the file" msgstr "" -#: apt-pkg/pkgcache.cc:132 +#: apt-pkg/pkgcache.cc:137 apt-pkg/pkgcache.cc:132 msgid "Empty package cache" msgstr "" -#: apt-pkg/pkgcache.cc:138 +#: apt-pkg/pkgcache.cc:143 apt-pkg/pkgcache.cc:138 msgid "The package cache file is corrupted" msgstr "" -#: apt-pkg/pkgcache.cc:143 +#: apt-pkg/pkgcache.cc:148 apt-pkg/pkgcache.cc:143 msgid "The package cache file is an incompatible version" msgstr "" -#: apt-pkg/pkgcache.cc:148 +#: apt-pkg/pkgcache.cc:153 apt-pkg/pkgcache.cc:148 #, c-format msgid "This APT does not support the versioning system '%s'" msgstr "" -#: apt-pkg/pkgcache.cc:153 +#: apt-pkg/pkgcache.cc:158 apt-pkg/pkgcache.cc:153 msgid "The package cache was built for a different architecture" msgstr "" -#: apt-pkg/pkgcache.cc:224 +#: apt-pkg/pkgcache.cc:229 apt-pkg/pkgcache.cc:224 msgid "Depends" msgstr "" -#: apt-pkg/pkgcache.cc:224 +#: apt-pkg/pkgcache.cc:229 apt-pkg/pkgcache.cc:224 msgid "PreDepends" msgstr "" -#: apt-pkg/pkgcache.cc:224 +#: apt-pkg/pkgcache.cc:229 apt-pkg/pkgcache.cc:224 msgid "Suggests" msgstr "" -#: apt-pkg/pkgcache.cc:225 +#: apt-pkg/pkgcache.cc:230 apt-pkg/pkgcache.cc:225 msgid "Recommends" msgstr "" -#: apt-pkg/pkgcache.cc:225 +#: apt-pkg/pkgcache.cc:230 apt-pkg/pkgcache.cc:225 msgid "Conflicts" msgstr "" -#: apt-pkg/pkgcache.cc:225 +#: apt-pkg/pkgcache.cc:230 apt-pkg/pkgcache.cc:225 msgid "Replaces" msgstr "" -#: apt-pkg/pkgcache.cc:226 +#: apt-pkg/pkgcache.cc:231 apt-pkg/pkgcache.cc:226 msgid "Obsoletes" msgstr "" -#: apt-pkg/pkgcache.cc:226 +#: apt-pkg/pkgcache.cc:231 apt-pkg/pkgcache.cc:226 msgid "Breaks" msgstr "" -#: apt-pkg/pkgcache.cc:237 +#: apt-pkg/pkgcache.cc:242 apt-pkg/pkgcache.cc:237 msgid "important" msgstr "" -#: apt-pkg/pkgcache.cc:237 +#: apt-pkg/pkgcache.cc:242 apt-pkg/pkgcache.cc:237 msgid "required" msgstr "" -#: apt-pkg/pkgcache.cc:237 +#: apt-pkg/pkgcache.cc:242 apt-pkg/pkgcache.cc:237 msgid "standard" msgstr "" -#: apt-pkg/pkgcache.cc:238 +#: apt-pkg/pkgcache.cc:243 apt-pkg/pkgcache.cc:238 msgid "optional" msgstr "" -#: apt-pkg/pkgcache.cc:238 +#: apt-pkg/pkgcache.cc:243 apt-pkg/pkgcache.cc:238 msgid "extra" msgstr "" -#: apt-pkg/depcache.cc:98 apt-pkg/depcache.cc:127 +#: apt-pkg/depcache.cc:103 apt-pkg/depcache.cc:132 apt-pkg/depcache.cc:100 +#: apt-pkg/depcache.cc:129 msgid "Building dependency tree" msgstr "" -#: apt-pkg/depcache.cc:99 +#: apt-pkg/depcache.cc:104 apt-pkg/depcache.cc:101 msgid "Candidate versions" msgstr "" -#: apt-pkg/depcache.cc:128 +#: apt-pkg/depcache.cc:133 apt-pkg/depcache.cc:130 msgid "Dependency generation" msgstr "" -#: apt-pkg/depcache.cc:149 apt-pkg/depcache.cc:168 apt-pkg/depcache.cc:172 +#: apt-pkg/depcache.cc:154 apt-pkg/depcache.cc:173 apt-pkg/depcache.cc:177 +#: apt-pkg/depcache.cc:151 apt-pkg/depcache.cc:170 apt-pkg/depcache.cc:174 msgid "Reading state information" msgstr "" -#: apt-pkg/depcache.cc:196 +#: apt-pkg/depcache.cc:201 apt-pkg/depcache.cc:198 #, c-format msgid "Failed to open StateFile %s" msgstr "" -#: apt-pkg/depcache.cc:202 +#: apt-pkg/depcache.cc:207 apt-pkg/depcache.cc:204 #, c-format msgid "Failed to write temporary StateFile %s" msgstr "" -#: apt-pkg/tagfile.cc:106 +#: apt-pkg/tagfile.cc:106 apt-pkg/tagfile.cc:102 #, c-format msgid "Unable to parse package file %s (1)" msgstr "" -#: apt-pkg/tagfile.cc:193 +#: apt-pkg/tagfile.cc:193 apt-pkg/tagfile.cc:189 #, c-format msgid "Unable to parse package file %s (2)" msgstr "" -#: apt-pkg/sourcelist.cc:94 +#: apt-pkg/sourcelist.cc:94 apt-pkg/sourcelist.cc:90 #, c-format msgid "Malformed line %lu in source list %s (URI)" msgstr "" -#: apt-pkg/sourcelist.cc:96 +#: apt-pkg/sourcelist.cc:96 apt-pkg/sourcelist.cc:92 #, c-format msgid "Malformed line %lu in source list %s (dist)" msgstr "" -#: apt-pkg/sourcelist.cc:99 +#: apt-pkg/sourcelist.cc:99 apt-pkg/sourcelist.cc:95 #, c-format msgid "Malformed line %lu in source list %s (URI parse)" msgstr "" -#: apt-pkg/sourcelist.cc:105 +#: apt-pkg/sourcelist.cc:105 apt-pkg/sourcelist.cc:101 #, c-format msgid "Malformed line %lu in source list %s (absolute dist)" msgstr "" -#: apt-pkg/sourcelist.cc:112 +#: apt-pkg/sourcelist.cc:112 apt-pkg/sourcelist.cc:108 #, c-format msgid "Malformed line %lu in source list %s (dist parse)" msgstr "" -#: apt-pkg/sourcelist.cc:203 +#: apt-pkg/sourcelist.cc:203 apt-pkg/sourcelist.cc:199 #, c-format msgid "Opening %s" msgstr "" -#: apt-pkg/sourcelist.cc:220 apt-pkg/cdrom.cc:451 +#: apt-pkg/sourcelist.cc:220 apt-pkg/cdrom.cc:450 apt-pkg/sourcelist.cc:216 +#: apt-pkg/cdrom.cc:448 #, c-format msgid "Line %u too long in source list %s." msgstr "" -#: apt-pkg/sourcelist.cc:240 +#: apt-pkg/sourcelist.cc:240 apt-pkg/sourcelist.cc:236 #, c-format msgid "Malformed line %u in source list %s (type)" msgstr "" -#: apt-pkg/sourcelist.cc:244 +#: apt-pkg/sourcelist.cc:244 apt-pkg/sourcelist.cc:240 #, c-format msgid "Type '%s' is not known on line %u in source list %s" msgstr "" #: apt-pkg/sourcelist.cc:252 apt-pkg/sourcelist.cc:255 +#: apt-pkg/sourcelist.cc:248 apt-pkg/sourcelist.cc:251 #, c-format msgid "Malformed line %u in source list %s (vendor id)" msgstr "" -#: apt-pkg/packagemanager.cc:403 +#: apt-pkg/packagemanager.cc:403 apt-pkg/packagemanager.cc:399 #, c-format msgid "" "This installation run will require temporarily removing the essential " @@ -2242,231 +2216,233 @@ msgid "" "you really want to do it, activate the APT::Force-LoopBreak option." msgstr "" -#: apt-pkg/pkgrecords.cc:37 +#: apt-pkg/pkgrecords.cc:35 apt-pkg/pkgrecords.cc:32 #, c-format msgid "Index file type '%s' is not supported" msgstr "" -#: apt-pkg/algorithms.cc:254 +#: apt-pkg/algorithms.cc:248 apt-pkg/algorithms.cc:247 #, c-format msgid "" "The package %s needs to be reinstalled, but I can't find an archive for it." msgstr "" -#: apt-pkg/algorithms.cc:1110 +#: apt-pkg/algorithms.cc:1104 apt-pkg/algorithms.cc:1103 msgid "" "Error, pkgProblemResolver::Resolve generated breaks, this may be caused by " "held packages." msgstr "" -#: apt-pkg/algorithms.cc:1112 +#: apt-pkg/algorithms.cc:1106 apt-pkg/algorithms.cc:1105 msgid "Unable to correct problems, you have held broken packages." msgstr "" -#: apt-pkg/acquire.cc:62 +#: apt-pkg/acquire.cc:62 apt-pkg/acquire.cc:59 #, c-format msgid "Lists directory %spartial is missing." msgstr "" -#: apt-pkg/acquire.cc:66 +#: apt-pkg/acquire.cc:66 apt-pkg/acquire.cc:63 #, c-format msgid "Archive directory %spartial is missing." msgstr "" #. only show the ETA if it makes sense #. two days -#: apt-pkg/acquire.cc:830 +#: apt-pkg/acquire.cc:830 apt-pkg/acquire.cc:827 #, c-format msgid "Retrieving file %li of %li (%s remaining)" msgstr "" -#: apt-pkg/acquire.cc:832 +#: apt-pkg/acquire.cc:832 apt-pkg/acquire.cc:829 #, c-format msgid "Retrieving file %li of %li" msgstr "" -#: apt-pkg/acquire-worker.cc:113 +#: apt-pkg/acquire-worker.cc:113 apt-pkg/acquire-worker.cc:110 #, c-format msgid "The method driver %s could not be found." msgstr "" -#: apt-pkg/acquire-worker.cc:162 +#: apt-pkg/acquire-worker.cc:162 apt-pkg/acquire-worker.cc:159 #, c-format msgid "Method %s did not start correctly" msgstr "" -#: apt-pkg/acquire-worker.cc:384 +#: apt-pkg/acquire-worker.cc:384 apt-pkg/acquire-worker.cc:381 #, c-format msgid "Please insert the disc labeled: '%s' in the drive '%s' and press enter." msgstr "" -#: apt-pkg/init.cc:126 +#: apt-pkg/init.cc:123 apt-pkg/init.cc:126 #, c-format msgid "Packaging system '%s' is not supported" msgstr "" -#: apt-pkg/init.cc:142 +#: apt-pkg/init.cc:139 apt-pkg/init.cc:142 msgid "Unable to determine a suitable packaging system type" msgstr "" -#: apt-pkg/clean.cc:61 +#: apt-pkg/clean.cc:61 apt-pkg/clean.cc:57 #, c-format msgid "Unable to stat %s." msgstr "" -#: apt-pkg/srcrecords.cc:48 +#: apt-pkg/srcrecords.cc:48 apt-pkg/srcrecords.cc:44 msgid "You must put some 'source' URIs in your sources.list" msgstr "" -#: apt-pkg/cachefile.cc:73 +#: apt-pkg/cachefile.cc:73 apt-pkg/cachefile.cc:69 msgid "The package lists or status file could not be parsed or opened." msgstr "" -#: apt-pkg/cachefile.cc:77 +#: apt-pkg/cachefile.cc:77 apt-pkg/cachefile.cc:73 msgid "You may want to run apt-get update to correct these problems" msgstr "" -#: apt-pkg/policy.cc:270 +#: apt-pkg/policy.cc:270 apt-pkg/policy.cc:267 msgid "Invalid record in the preferences file, no Package header" msgstr "" -#: apt-pkg/policy.cc:292 +#: apt-pkg/policy.cc:292 apt-pkg/policy.cc:289 #, c-format msgid "Did not understand pin type %s" msgstr "" -#: apt-pkg/policy.cc:300 +#: apt-pkg/policy.cc:300 apt-pkg/policy.cc:297 msgid "No priority (or zero) specified for pin" msgstr "" -#: apt-pkg/pkgcachegen.cc:76 +#: apt-pkg/pkgcachegen.cc:76 apt-pkg/pkgcachegen.cc:72 msgid "Cache has an incompatible versioning system" msgstr "" -#: apt-pkg/pkgcachegen.cc:119 +#: apt-pkg/pkgcachegen.cc:119 apt-pkg/pkgcachegen.cc:115 #, c-format msgid "Error occurred while processing %s (NewPackage)" msgstr "" -#: apt-pkg/pkgcachegen.cc:134 +#: apt-pkg/pkgcachegen.cc:134 apt-pkg/pkgcachegen.cc:130 #, c-format msgid "Error occurred while processing %s (UsePackage1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:157 +#: apt-pkg/pkgcachegen.cc:157 apt-pkg/pkgcachegen.cc:153 #, c-format msgid "Error occured while processing %s (NewFileDesc1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:182 +#: apt-pkg/pkgcachegen.cc:182 apt-pkg/pkgcachegen.cc:178 #, c-format msgid "Error occurred while processing %s (UsePackage2)" msgstr "" -#: apt-pkg/pkgcachegen.cc:186 +#: apt-pkg/pkgcachegen.cc:186 apt-pkg/pkgcachegen.cc:182 #, c-format msgid "Error occurred while processing %s (NewFileVer1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:217 +#: apt-pkg/pkgcachegen.cc:217 apt-pkg/pkgcachegen.cc:213 #, c-format msgid "Error occurred while processing %s (NewVersion1)" msgstr "" -#: apt-pkg/pkgcachegen.cc:221 +#: apt-pkg/pkgcachegen.cc:221 apt-pkg/pkgcachegen.cc:217 #, c-format msgid "Error occurred while processing %s (UsePackage3)" msgstr "" -#: apt-pkg/pkgcachegen.cc:225 +#: apt-pkg/pkgcachegen.cc:225 apt-pkg/pkgcachegen.cc:221 #, c-format msgid "Error occurred while processing %s (NewVersion2)" msgstr "" -#: apt-pkg/pkgcachegen.cc:249 +#: apt-pkg/pkgcachegen.cc:249 apt-pkg/pkgcachegen.cc:245 #, c-format msgid "Error occured while processing %s (NewFileDesc2)" msgstr "" -#: apt-pkg/pkgcachegen.cc:255 +#: apt-pkg/pkgcachegen.cc:255 apt-pkg/pkgcachegen.cc:251 msgid "Wow, you exceeded the number of package names this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:258 +#: apt-pkg/pkgcachegen.cc:258 apt-pkg/pkgcachegen.cc:254 msgid "Wow, you exceeded the number of versions this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:261 +#: apt-pkg/pkgcachegen.cc:261 apt-pkg/pkgcachegen.cc:257 msgid "Wow, you exceeded the number of descriptions this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:264 +#: apt-pkg/pkgcachegen.cc:264 apt-pkg/pkgcachegen.cc:260 msgid "Wow, you exceeded the number of dependencies this APT is capable of." msgstr "" -#: apt-pkg/pkgcachegen.cc:292 +#: apt-pkg/pkgcachegen.cc:292 apt-pkg/pkgcachegen.cc:288 #, c-format msgid "Error occurred while processing %s (FindPkg)" msgstr "" -#: apt-pkg/pkgcachegen.cc:305 +#: apt-pkg/pkgcachegen.cc:305 apt-pkg/pkgcachegen.cc:301 #, c-format msgid "Error occurred while processing %s (CollectFileProvides)" msgstr "" -#: apt-pkg/pkgcachegen.cc:311 +#: apt-pkg/pkgcachegen.cc:311 apt-pkg/pkgcachegen.cc:307 #, c-format msgid "Package %s %s was not found while processing file dependencies" msgstr "" -#: apt-pkg/pkgcachegen.cc:682 +#: apt-pkg/pkgcachegen.cc:682 apt-pkg/pkgcachegen.cc:678 #, c-format msgid "Couldn't stat source package list %s" msgstr "" -#: apt-pkg/pkgcachegen.cc:767 +#: apt-pkg/pkgcachegen.cc:767 apt-pkg/pkgcachegen.cc:763 msgid "Collecting File Provides" msgstr "" #: apt-pkg/pkgcachegen.cc:894 apt-pkg/pkgcachegen.cc:901 +#: apt-pkg/pkgcachegen.cc:890 apt-pkg/pkgcachegen.cc:897 msgid "IO Error saving source cache" msgstr "" -#: apt-pkg/acquire-item.cc:127 +#: apt-pkg/acquire-item.cc:134 #, c-format msgid "rename failed, %s (%s -> %s)." msgstr "" -#: apt-pkg/acquire-item.cc:406 apt-pkg/acquire-item.cc:661 -#: apt-pkg/acquire-item.cc:1411 +#: apt-pkg/acquire-item.cc:293 apt-pkg/acquire-item.cc:1039 +#: apt-pkg/acquire-item.cc:456 apt-pkg/acquire-item.cc:710 +#: apt-pkg/acquire-item.cc:1462 msgid "MD5Sum mismatch" msgstr "" -#: apt-pkg/acquire-item.cc:1106 +#: apt-pkg/acquire-item.cc:733 apt-pkg/acquire-item.cc:1156 msgid "There is no public key available for the following key IDs:\n" msgstr "" -#: apt-pkg/acquire-item.cc:1219 +#: apt-pkg/acquire-item.cc:847 apt-pkg/acquire-item.cc:1270 #, c-format msgid "" "I wasn't able to locate a file for the %s package. This might mean you need " "to manually fix this package. (due to missing arch)" msgstr "" -#: apt-pkg/acquire-item.cc:1278 +#: apt-pkg/acquire-item.cc:906 apt-pkg/acquire-item.cc:1329 #, c-format msgid "" "I wasn't able to locate file for the %s package. This might mean you need to " "manually fix this package." msgstr "" -#: apt-pkg/acquire-item.cc:1314 +#: apt-pkg/acquire-item.cc:942 apt-pkg/acquire-item.cc:1365 #, c-format msgid "" "The package index files are corrupted. No Filename: field for package %s." msgstr "" -#: apt-pkg/acquire-item.cc:1401 +#: apt-pkg/acquire-item.cc:1029 apt-pkg/acquire-item.cc:1452 msgid "Size mismatch" msgstr "" @@ -2475,81 +2451,77 @@ msgstr "" msgid "Vendor block %s contains no fingerprint" msgstr "" -#: apt-pkg/cdrom.cc:532 +#: apt-pkg/cdrom.cc:531 apt-pkg/cdrom.cc:529 #, c-format msgid "" "Using CD-ROM mount point %s\n" "Mounting CD-ROM\n" msgstr "" -#: apt-pkg/cdrom.cc:541 apt-pkg/cdrom.cc:623 +#: apt-pkg/cdrom.cc:540 apt-pkg/cdrom.cc:622 apt-pkg/cdrom.cc:538 +#: apt-pkg/cdrom.cc:620 msgid "Identifying.. " msgstr "" -#: apt-pkg/cdrom.cc:566 +#: apt-pkg/cdrom.cc:565 apt-pkg/cdrom.cc:563 #, c-format msgid "Stored label: %s \n" msgstr "" -#: apt-pkg/cdrom.cc:586 +#: apt-pkg/cdrom.cc:585 apt-pkg/cdrom.cc:583 #, c-format msgid "Using CD-ROM mount point %s\n" msgstr "" -#: apt-pkg/cdrom.cc:604 +#: apt-pkg/cdrom.cc:603 apt-pkg/cdrom.cc:601 msgid "Unmounting CD-ROM\n" msgstr "" -#: apt-pkg/cdrom.cc:608 +#: apt-pkg/cdrom.cc:607 apt-pkg/cdrom.cc:605 msgid "Waiting for disc...\n" msgstr "" #. Mount the new CDROM -#: apt-pkg/cdrom.cc:616 +#: apt-pkg/cdrom.cc:615 apt-pkg/cdrom.cc:613 msgid "Mounting CD-ROM...\n" msgstr "" -#: apt-pkg/cdrom.cc:634 +#: apt-pkg/cdrom.cc:633 apt-pkg/cdrom.cc:631 msgid "Scanning disc for index files..\n" msgstr "" -#: apt-pkg/cdrom.cc:674 +#: apt-pkg/cdrom.cc:673 apt-pkg/cdrom.cc:671 #, c-format msgid "" "Found %i package indexes, %i source indexes, %i translation indexes and %i " "signatures\n" msgstr "" -#: apt-pkg/cdrom.cc:711 -#, c-format -msgid "Found label '%s'\n" -msgstr "" - -#: apt-pkg/cdrom.cc:740 +#: apt-pkg/cdrom.cc:739 apt-pkg/cdrom.cc:737 msgid "That is not a valid name, try again.\n" msgstr "" -#: apt-pkg/cdrom.cc:756 +#: apt-pkg/cdrom.cc:755 apt-pkg/cdrom.cc:753 #, c-format msgid "" "This disc is called: \n" "'%s'\n" msgstr "" -#: apt-pkg/cdrom.cc:760 +#: apt-pkg/cdrom.cc:759 apt-pkg/cdrom.cc:757 msgid "Copying package lists..." msgstr "" -#: apt-pkg/cdrom.cc:786 +#: apt-pkg/cdrom.cc:785 apt-pkg/cdrom.cc:783 msgid "Writing new source list\n" msgstr "" -#: apt-pkg/cdrom.cc:795 +#: apt-pkg/cdrom.cc:794 apt-pkg/cdrom.cc:792 msgid "Source list entries for this disc are:\n" msgstr "" -#: apt-pkg/cdrom.cc:837 -msgid "Unmounting CD-ROM...\n" +#: apt-pkg/cdrom.cc:836 +msgid "Unmounting CD-ROM..." msgstr "" #: apt-pkg/indexcopy.cc:263 apt-pkg/indexcopy.cc:830 @@ -2572,60 +2544,69 @@ msgstr "" msgid "Wrote %i records with %i missing files and %i mismatched files\n" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:358 +#: apt-pkg/deb/dpkgpm.cc:358 apt-pkg/deb/dpkgpm.cc:357 #, c-format msgid "Preparing %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:359 +#: apt-pkg/deb/dpkgpm.cc:359 apt-pkg/deb/dpkgpm.cc:358 #, c-format msgid "Unpacking %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:364 +#: apt-pkg/deb/dpkgpm.cc:364 apt-pkg/deb/dpkgpm.cc:363 #, c-format msgid "Preparing to configure %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:365 +#: apt-pkg/deb/dpkgpm.cc:365 apt-pkg/deb/dpkgpm.cc:364 #, c-format msgid "Configuring %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:366 +#: apt-pkg/deb/dpkgpm.cc:366 apt-pkg/deb/dpkgpm.cc:365 #, c-format msgid "Installed %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:371 +#: apt-pkg/deb/dpkgpm.cc:371 apt-pkg/deb/dpkgpm.cc:370 #, c-format msgid "Preparing for removal of %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:372 +#: apt-pkg/deb/dpkgpm.cc:372 apt-pkg/deb/dpkgpm.cc:371 #, c-format msgid "Removing %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:373 +#: apt-pkg/deb/dpkgpm.cc:373 apt-pkg/deb/dpkgpm.cc:372 #, c-format msgid "Removed %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:378 +#: apt-pkg/deb/dpkgpm.cc:378 apt-pkg/deb/dpkgpm.cc:377 #, c-format msgid "Preparing to completely remove %s" msgstr "" -#: apt-pkg/deb/dpkgpm.cc:379 +#: apt-pkg/deb/dpkgpm.cc:379 apt-pkg/deb/dpkgpm.cc:378 #, c-format msgid "Completely removed %s" msgstr "" -#: methods/rred.cc:219 -msgid "Could not patch file" -msgstr "" - #: methods/rsh.cc:330 msgid "Connection closed prematurely" msgstr "" + +#: apt-pkg/cdrom.cc:708 +#, c-format +msgid "Found label '%s'\n" +msgstr "" + +#: apt-pkg/cdrom.cc:834 +msgid "Unmounting CD-ROM...\n" +msgstr "" + +#: methods/rred.cc:219 +msgid "Could not patch file" +msgstr "" diff --git a/po/ar.po b/po/ar.po deleted file mode 100644 index 8a0b74706..000000000 --- a/po/ar.po +++ /dev/null @@ -1,2566 +0,0 @@ -# translation of apt_po.po to Arabic -# This file is put in the public domain. -# -# Ossama M. Khayat <okhayat@yahoo.com>, 2005, 2006. -msgid "" -msgstr "" -"Project-Id-Version: apt_po\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-10-11 20:34+0200\n" -"PO-Revision-Date: 2006-10-20 21:28+0300\n" -"Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n" -"Language-Team: Arabic <support@arabeyes.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Poedit-Language: Arabic\n" -"X-Poedit-Country: Lebanon\n" -"X-Poedit-SourceCharset: utf-8\n" -"X-Generator: KBabel 1.11.4\n" - -#: cmdline/apt-cache.cc:135 -#, c-format -msgid "Package %s version %s has an unmet dep:\n" -msgstr "الحزمة %s النسخة %s لها معتمد غير مستوفى:\n" - -#: cmdline/apt-cache.cc:175 cmdline/apt-cache.cc:527 cmdline/apt-cache.cc:615 -#: cmdline/apt-cache.cc:771 cmdline/apt-cache.cc:989 cmdline/apt-cache.cc:1357 -#: cmdline/apt-cache.cc:1508 -#, c-format -msgid "Unable to locate package %s" -msgstr "تعذر العثور على الحزمة %s" - -#: cmdline/apt-cache.cc:232 -msgid "Total package names : " -msgstr "أسماء الحزم الكلية :" - -#: cmdline/apt-cache.cc:272 -msgid " Normal packages: " -msgstr " الحزم العادية:" - -#: cmdline/apt-cache.cc:273 -msgid " Pure virtual packages: " -msgstr "الحزمة الوهمية تماماً:" - -#: cmdline/apt-cache.cc:274 -msgid " Single virtual packages: " -msgstr " الحزمة الوهمية المفردة:" - -#: cmdline/apt-cache.cc:275 -msgid " Mixed virtual packages: " -msgstr " الحزم الوهمية المختلطة:" - -#: cmdline/apt-cache.cc:276 -msgid " Missing: " -msgstr " مفقودة:" - -#: cmdline/apt-cache.cc:278 -msgid "Total distinct versions: " -msgstr "مجموع النسخ الفريدة:" - -#: cmdline/apt-cache.cc:280 -msgid "Total dependencies: " -msgstr "مجموع المعتمدات:" - -#: cmdline/apt-cache.cc:283 -msgid "Total ver/file relations: " -msgstr "مجموع علاقات النسخ/الملفات:" - -#: cmdline/apt-cache.cc:285 -msgid "Total Provides mappings: " -msgstr "مجموع علاقات النسخ/الملفات:" - -#: cmdline/apt-cache.cc:297 -msgid "Total globbed strings: " -msgstr "" - -#: cmdline/apt-cache.cc:311 -msgid "Total dependency version space: " -msgstr "" - -#: cmdline/apt-cache.cc:316 -msgid "Total slack space: " -msgstr "" - -#: cmdline/apt-cache.cc:324 -msgid "Total space accounted for: " -msgstr "مجموع المساحة المحسوب حسابها:" - -#: cmdline/apt-cache.cc:446 cmdline/apt-cache.cc:1189 -#, c-format -msgid "Package file %s is out of sync." -msgstr "" - -#: cmdline/apt-cache.cc:1231 -msgid "You must give exactly one pattern" -msgstr "يجب أن تعطي صيغة واحدة بالضبط" - -#: cmdline/apt-cache.cc:1385 -msgid "No packages found" -msgstr "لم يُعثر على أية حزم" - -#: cmdline/apt-cache.cc:1462 -msgid "Package files:" -msgstr "ملفات الحزم:" - -#: cmdline/apt-cache.cc:1469 cmdline/apt-cache.cc:1555 -msgid "Cache is out of sync, can't x-ref a package file" -msgstr "" - -#: cmdline/apt-cache.cc:1470 -#, c-format -msgid "%4i %s\n" -msgstr "%4i %s\n" - -#. Show any packages have explicit pins -#: cmdline/apt-cache.cc:1482 -msgid "Pinned packages:" -msgstr "الحزم المُدبّسة:" - -#: cmdline/apt-cache.cc:1494 cmdline/apt-cache.cc:1535 -msgid "(not found)" -msgstr "(غير موجود)" - -#. Installed version -#: cmdline/apt-cache.cc:1515 -msgid " Installed: " -msgstr " مُثبّت:" - -#: cmdline/apt-cache.cc:1517 cmdline/apt-cache.cc:1525 -msgid "(none)" -msgstr "(لاشيء)" - -#. Candidate Version -#: cmdline/apt-cache.cc:1522 -msgid " Candidate: " -msgstr " مرشّح: " - -#: cmdline/apt-cache.cc:1532 -msgid " Package pin: " -msgstr "" - -#. Show the priority tables -#: cmdline/apt-cache.cc:1541 -msgid " Version table:" -msgstr " جدول النسخ:" - -#: cmdline/apt-cache.cc:1556 -#, c-format -msgid " %4i %s\n" -msgstr " %4i %s\n" - -#: cmdline/apt-cache.cc:1652 cmdline/apt-cdrom.cc:138 cmdline/apt-config.cc:70 -#: cmdline/apt-extracttemplates.cc:225 ftparchive/apt-ftparchive.cc:550 -#: cmdline/apt-get.cc:2387 cmdline/apt-sortpkgs.cc:144 -#, c-format -msgid "%s %s for %s %s compiled on %s %s\n" -msgstr "%s %s لـ%s %s مُجمّع على %s %s\n" - -#: cmdline/apt-cache.cc:1659 -msgid "" -"Usage: apt-cache [options] command\n" -" apt-cache [options] add file1 [file2 ...]\n" -" apt-cache [options] showpkg pkg1 [pkg2 ...]\n" -" apt-cache [options] showsrc pkg1 [pkg2 ...]\n" -"\n" -"apt-cache is a low-level tool used to manipulate APT's binary\n" -"cache files, and query information from them\n" -"\n" -"Commands:\n" -" add - Add a package file to the source cache\n" -" gencaches - Build both the package and source cache\n" -" showpkg - Show some general information for a single package\n" -" showsrc - Show source records\n" -" stats - Show some basic statistics\n" -" dump - Show the entire file in a terse form\n" -" dumpavail - Print an available file to stdout\n" -" unmet - Show unmet dependencies\n" -" search - Search the package list for a regex pattern\n" -" show - Show a readable record for the package\n" -" depends - Show raw dependency information for a package\n" -" rdepends - Show reverse dependency information for a package\n" -" pkgnames - List the names of all packages\n" -" dotty - Generate package graphs for GraphVis\n" -" xvcg - Generate package graphs for xvcg\n" -" policy - Show policy settings\n" -"\n" -"Options:\n" -" -h This help text.\n" -" -p=? The package cache.\n" -" -s=? The source cache.\n" -" -q Disable progress indicator.\n" -" -i Show only important deps for the unmet command.\n" -" -c=? Read this configuration file\n" -" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n" -"See the apt-cache(8) and apt.conf(5) manual pages for more information.\n" -msgstr "" - -#: cmdline/apt-cdrom.cc:78 -msgid "Please provide a name for this Disc, such as 'Debian 2.1r1 Disk 1'" -msgstr "الرجاء كتابة اسم لهذا القرص، مثال 'Debian 2.1r1 Disk 1'" - -#: cmdline/apt-cdrom.cc:93 -msgid "Please insert a Disc in the drive and press enter" -msgstr "الرجاء إدخال قرص في السواقة وضغط الزر enter" - -#: cmdline/apt-cdrom.cc:117 -msgid "Repeat this process for the rest of the CDs in your set." -msgstr "كرر هذه العملية لباقي الأقراص المدمجة في المجموعة." - -#: cmdline/apt-config.cc:41 -msgid "Arguments not in pairs" -msgstr "" - -#: cmdline/apt-config.cc:76 -msgid "" -"Usage: apt-config [options] command\n" -"\n" -"apt-config is a simple tool to read the APT config file\n" -"\n" -"Commands:\n" -" shell - Shell mode\n" -" dump - Show the configuration\n" -"\n" -"Options:\n" -" -h This help text.\n" -" -c=? Read this configuration file\n" -" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n" -msgstr "" - -#: cmdline/apt-extracttemplates.cc:98 -#, c-format -msgid "%s not a valid DEB package." -msgstr "%s ليس حزمة DEB صالحة." - -#: cmdline/apt-extracttemplates.cc:232 -msgid "" -"Usage: apt-extracttemplates file1 [file2 ...]\n" -"\n" -"apt-extracttemplates is a tool to extract config and template info\n" -"from debian packages\n" -"\n" -"Options:\n" -" -h This help text\n" -" -t Set the temp dir\n" -" -c=? Read this configuration file\n" -" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n" -msgstr "" - -#: cmdline/apt-extracttemplates.cc:267 apt-pkg/pkgcachegen.cc:710 -#, c-format -msgid "Unable to write to %s" -msgstr "تعذرت الكتابة إلى %s" - -#: cmdline/apt-extracttemplates.cc:310 -msgid "Cannot get debconf version. Is debconf installed?" -msgstr "تعذر الحصول على نسخة debconf. هل هي مثبتة؟" - -#: ftparchive/apt-ftparchive.cc:167 ftparchive/apt-ftparchive.cc:341 -msgid "Package extension list is too long" -msgstr "قائمة توسيعات الحزمة طويلة جداً" - -#: ftparchive/apt-ftparchive.cc:169 ftparchive/apt-ftparchive.cc:183 -#: ftparchive/apt-ftparchive.cc:206 ftparchive/apt-ftparchive.cc:256 -#: ftparchive/apt-ftparchive.cc:270 ftparchive/apt-ftparchive.cc:292 -#, c-format -msgid "Error processing directory %s" -msgstr "خطأ في معالجة الدليل %s" - -#: ftparchive/apt-ftparchive.cc:254 -msgid "Source extension list is too long" -msgstr "قائمة توسيعات المصدر طويلة جداً" - -#: ftparchive/apt-ftparchive.cc:371 -msgid "Error writing header to contents file" -msgstr "خطأ في كتابة الترويسة إلى ملف المحتويات" - -#: ftparchive/apt-ftparchive.cc:401 -#, c-format -msgid "Error processing contents %s" -msgstr "خطأ في معالجة المحتويات %s" - -#: ftparchive/apt-ftparchive.cc:556 -msgid "" -"Usage: apt-ftparchive [options] command\n" -"Commands: packages binarypath [overridefile [pathprefix]]\n" -" sources srcpath [overridefile [pathprefix]]\n" -" contents path\n" -" release path\n" -" generate config [groups]\n" -" clean config\n" -"\n" -"apt-ftparchive generates index files for Debian archives. It supports\n" -"many styles of generation from fully automated to functional replacements\n" -"for dpkg-scanpackages and dpkg-scansources\n" -"\n" -"apt-ftparchive generates Package files from a tree of .debs. The\n" -"Package file contains the contents of all the control fields from\n" -"each package as well as the MD5 hash and filesize. An override file\n" -"is supported to force the value of Priority and Section.\n" -"\n" -"Similarly apt-ftparchive generates Sources files from a tree of .dscs.\n" -"The --source-override option can be used to specify a src override file\n" -"\n" -"The 'packages' and 'sources' command should be run in the root of the\n" -"tree. BinaryPath should point to the base of the recursive search and \n" -"override file should contain the override flags. Pathprefix is\n" -"appended to the filename fields if present. Example usage from the \n" -"Debian archive:\n" -" apt-ftparchive packages dists/potato/main/binary-i386/ > \\\n" -" dists/potato/main/binary-i386/Packages\n" -"\n" -"Options:\n" -" -h This help text\n" -" --md5 Control MD5 generation\n" -" -s=? Source override file\n" -" -q Quiet\n" -" -d=? Select the optional caching database\n" -" --no-delink Enable delinking debug mode\n" -" --contents Control contents file generation\n" -" -c=? Read this configuration file\n" -" -o=? Set an arbitrary configuration option" -msgstr "" - -#: ftparchive/apt-ftparchive.cc:762 -msgid "No selections matched" -msgstr "لم تُطابق أية تحديدات" - -#: ftparchive/apt-ftparchive.cc:835 -#, c-format -msgid "Some files are missing in the package file group `%s'" -msgstr "بعض الملفات مفقودة في مجموعة ملف الحزمة `%s'" - -#: ftparchive/cachedb.cc:47 -#, c-format -msgid "DB was corrupted, file renamed to %s.old" -msgstr "قاعدة البيانات كانت فاسدة، فتم تغيير اسمها إلى %s.old" - -#: ftparchive/cachedb.cc:65 -#, c-format -msgid "DB is old, attempting to upgrade %s" -msgstr "قاعدة البيانات قديمة، محاولة ترقية %s" - -#: ftparchive/cachedb.cc:76 -msgid "" -"DB format is invalid. If you upgraded from a older version of apt, please " -"remove and re-create the database." -msgstr "" - -#: ftparchive/cachedb.cc:81 -#, c-format -msgid "Unable to open DB file %s: %s" -msgstr "تعذر فتح ملف قاعدة البيانات %s: %s" - -#: ftparchive/cachedb.cc:127 apt-inst/extract.cc:181 apt-inst/extract.cc:193 -#: apt-inst/extract.cc:210 apt-inst/deb/dpkgdb.cc:121 methods/gpgv.cc:272 -#, c-format -msgid "Failed to stat %s" -msgstr "" - -#: ftparchive/cachedb.cc:242 -msgid "Archive has no control record" -msgstr "" - -#: ftparchive/cachedb.cc:448 -msgid "Unable to get a cursor" -msgstr "" - -#: ftparchive/writer.cc:79 -#, c-format -msgid "W: Unable to read directory %s\n" -msgstr "W: تعذرت قراءة الدليل %s\n" - -#: ftparchive/writer.cc:84 -#, c-format -msgid "W: Unable to stat %s\n" -msgstr "" - -#: ftparchive/writer.cc:135 -msgid "E: " -msgstr "E: " - -#: ftparchive/writer.cc:137 -msgid "W: " -msgstr "W: " - -#: ftparchive/writer.cc:144 -msgid "E: Errors apply to file " -msgstr "" - -#: ftparchive/writer.cc:161 ftparchive/writer.cc:191 -#, c-format -msgid "Failed to resolve %s" -msgstr "" - -#: ftparchive/writer.cc:173 -msgid "Tree walking failed" -msgstr "" - -#: ftparchive/writer.cc:198 -#, c-format -msgid "Failed to open %s" -msgstr "فشل فتح %s" - -#: ftparchive/writer.cc:257 -#, c-format -msgid " DeLink %s [%s]\n" -msgstr " DeLink %s [%s]\n" - -#: ftparchive/writer.cc:265 -#, c-format -msgid "Failed to readlink %s" -msgstr "" - -#: ftparchive/writer.cc:269 -#, c-format -msgid "Failed to unlink %s" -msgstr "" - -#: ftparchive/writer.cc:276 -#, c-format -msgid "*** Failed to link %s to %s" -msgstr "*** فشل ربط %s بـ%s" - -#: ftparchive/writer.cc:286 -#, c-format -msgid " DeLink limit of %sB hit.\n" -msgstr "" - -#: ftparchive/writer.cc:390 -msgid "Archive had no package field" -msgstr "" - -#: ftparchive/writer.cc:398 ftparchive/writer.cc:613 -#, c-format -msgid " %s has no override entry\n" -msgstr "" - -#: ftparchive/writer.cc:443 ftparchive/writer.cc:701 -#, c-format -msgid " %s maintainer is %s not %s\n" -msgstr "" - -#: ftparchive/writer.cc:623 -#, c-format -msgid " %s has no source override entry\n" -msgstr "" - -#: ftparchive/writer.cc:627 -#, c-format -msgid " %s has no binary override entry either\n" -msgstr "" - -#: ftparchive/contents.cc:317 -#, c-format -msgid "Internal error, could not locate member %s" -msgstr "خطأ داخلي، تعذر العثور على العضو %s" - -#: ftparchive/contents.cc:353 ftparchive/contents.cc:384 -msgid "realloc - Failed to allocate memory" -msgstr "realloc - فشل تعيين الذاكرة" - -#: ftparchive/override.cc:38 ftparchive/override.cc:146 -#, c-format -msgid "Unable to open %s" -msgstr "تعذر فتح %s" - -#: ftparchive/override.cc:64 ftparchive/override.cc:170 -#, c-format -msgid "Malformed override %s line %lu #1" -msgstr "" - -#: ftparchive/override.cc:78 ftparchive/override.cc:182 -#, c-format -msgid "Malformed override %s line %lu #2" -msgstr "" - -#: ftparchive/override.cc:92 ftparchive/override.cc:195 -#, c-format -msgid "Malformed override %s line %lu #3" -msgstr "" - -#: ftparchive/override.cc:131 ftparchive/override.cc:205 -#, c-format -msgid "Failed to read the override file %s" -msgstr "" - -#: ftparchive/multicompress.cc:75 -#, c-format -msgid "Unknown compression algorithm '%s'" -msgstr "" - -#: ftparchive/multicompress.cc:105 -#, c-format -msgid "Compressed output %s needs a compression set" -msgstr "" - -#: ftparchive/multicompress.cc:172 methods/rsh.cc:91 -msgid "Failed to create IPC pipe to subprocess" -msgstr "" - -#: ftparchive/multicompress.cc:198 -msgid "Failed to create FILE*" -msgstr "" - -#: ftparchive/multicompress.cc:201 -msgid "Failed to fork" -msgstr "" - -#: ftparchive/multicompress.cc:215 -msgid "Compress child" -msgstr "" - -#: ftparchive/multicompress.cc:238 -#, c-format -msgid "Internal error, failed to create %s" -msgstr "خطأ داخلي، تعذر إنشاء %s" - -#: ftparchive/multicompress.cc:289 -msgid "Failed to create subprocess IPC" -msgstr "" - -#: ftparchive/multicompress.cc:324 -msgid "Failed to exec compressor " -msgstr "" - -#: ftparchive/multicompress.cc:363 -msgid "decompressor" -msgstr "" - -#: ftparchive/multicompress.cc:406 -msgid "IO to subprocess/file failed" -msgstr "" - -#: ftparchive/multicompress.cc:458 -msgid "Failed to read while computing MD5" -msgstr "" - -#: ftparchive/multicompress.cc:475 -#, c-format -msgid "Problem unlinking %s" -msgstr "" - -#: ftparchive/multicompress.cc:490 apt-inst/extract.cc:188 -#, c-format -msgid "Failed to rename %s to %s" -msgstr "فشل تغيير اسم %s إلى %s" - -#: cmdline/apt-get.cc:120 -msgid "Y" -msgstr "Y" - -#: cmdline/apt-get.cc:142 cmdline/apt-get.cc:1506 -#, c-format -msgid "Regex compilation error - %s" -msgstr "" - -#: cmdline/apt-get.cc:237 -msgid "The following packages have unmet dependencies:" -msgstr "" - -#: cmdline/apt-get.cc:327 -#, c-format -msgid "but %s is installed" -msgstr "إلا أن %s مثبت" - -#: cmdline/apt-get.cc:329 -#, c-format -msgid "but %s is to be installed" -msgstr "إلا أنه سيتم تثبيت %s" - -#: cmdline/apt-get.cc:336 -msgid "but it is not installable" -msgstr "إلا أنه غير قابل للتثبيت" - -#: cmdline/apt-get.cc:338 -msgid "but it is a virtual package" -msgstr "إلا أنها حزمة وهمية" - -#: cmdline/apt-get.cc:341 -msgid "but it is not installed" -msgstr "إلا أنها غير مثبتة" - -#: cmdline/apt-get.cc:341 -msgid "but it is not going to be installed" -msgstr "إلا أنه لن يتم تثبيتها" - -#: cmdline/apt-get.cc:346 -msgid " or" -msgstr " أو" - -#: cmdline/apt-get.cc:375 -msgid "The following NEW packages will be installed:" -msgstr "سيتم تثبيت الحزم الجديدة التالية:" - -#: cmdline/apt-get.cc:401 -msgid "The following packages will be REMOVED:" -msgstr "سيتم إزالة الحزم التالية:" - -#: cmdline/apt-get.cc:423 -msgid "The following packages have been kept back:" -msgstr "سيتم الإبقاء على الحزم التالية:" - -#: cmdline/apt-get.cc:444 -msgid "The following packages will be upgraded:" -msgstr "ستتم ترقية الحزم التالية:" - -#: cmdline/apt-get.cc:465 -msgid "The following packages will be DOWNGRADED:" -msgstr "سيتم تثبيط الحزم التالية:" - -#: cmdline/apt-get.cc:485 -msgid "The following held packages will be changed:" -msgstr "سيتم تغيير الحزم المبقاة التالية:" - -#: cmdline/apt-get.cc:538 -#, c-format -msgid "%s (due to %s) " -msgstr "%s (بسبب %s) " - -#: cmdline/apt-get.cc:546 -msgid "" -"WARNING: The following essential packages will be removed.\n" -"This should NOT be done unless you know exactly what you are doing!" -msgstr "" -"تحذير: ستتم إزالة الحزم الأساسية التالية.\n" -"لا يجب أن تقوم بهذا إلى إن كنت تعرف تماماً ما تقوم به!" - -#: cmdline/apt-get.cc:577 -#, c-format -msgid "%lu upgraded, %lu newly installed, " -msgstr "%lu سيتم ترقيتها، %lu مثبتة حديثاً، " - -#: cmdline/apt-get.cc:581 -#, c-format -msgid "%lu reinstalled, " -msgstr "%lu أعيد تثبيتها، " - -#: cmdline/apt-get.cc:583 -#, c-format -msgid "%lu downgraded, " -msgstr "%lu مثبطة، " - -#: cmdline/apt-get.cc:585 -#, c-format -msgid "%lu to remove and %lu not upgraded.\n" -msgstr "%lu لإزالتها و %lu لم يتم ترقيتها.\n" - -#: cmdline/apt-get.cc:589 -#, c-format -msgid "%lu not fully installed or removed.\n" -msgstr "%lu غير مثبتة بالكامل أو مزالة.\n" - -#: cmdline/apt-get.cc:649 -msgid "Correcting dependencies..." -msgstr "تصحيح المعتمدات..." - -#: cmdline/apt-get.cc:652 -msgid " failed." -msgstr " فشل." - -#: cmdline/apt-get.cc:655 -msgid "Unable to correct dependencies" -msgstr "لم يمكن تصحيح المعتمدات" - -#: cmdline/apt-get.cc:658 -msgid "Unable to minimize the upgrade set" -msgstr "لم يمكن تقليص مجموعة الترقية" - -#: cmdline/apt-get.cc:660 -msgid " Done" -msgstr " تم" - -#: cmdline/apt-get.cc:664 -msgid "You might want to run `apt-get -f install' to correct these." -msgstr "قد ترغب بتنفيذ الأمر `apt-get -f install' لتصحيح هذه." - -#: cmdline/apt-get.cc:667 -msgid "Unmet dependencies. Try using -f." -msgstr "مُعتمدات غير مستوفاة. حاول استخدام -f." - -#: cmdline/apt-get.cc:689 -msgid "WARNING: The following packages cannot be authenticated!" -msgstr "تحذير: تعذرت المصادقة على الحزم التالية!" - -#: cmdline/apt-get.cc:693 -msgid "Authentication warning overridden.\n" -msgstr "تم غض النظر عن تحذير المصادقة.\n" - -#: cmdline/apt-get.cc:700 -msgid "Install these packages without verification [y/N]? " -msgstr "تثبيت هذه الحزم دون التحقق منها [y/N]؟ " - -#: cmdline/apt-get.cc:702 -msgid "Some packages could not be authenticated" -msgstr "تعذرت المصادقة على بعض الحزم" - -#: cmdline/apt-get.cc:711 cmdline/apt-get.cc:858 -msgid "There are problems and -y was used without --force-yes" -msgstr "هناك مشاكل وتم استخدام -y دون --force-yes" - -#: cmdline/apt-get.cc:755 -msgid "Internal error, InstallPackages was called with broken packages!" -msgstr "خطأ داخلي، تم طلب InstallPackages مع وجود حزم معطوبة!" - -#: cmdline/apt-get.cc:764 -msgid "Packages need to be removed but remove is disabled." -msgstr "حزم بحاجة للإزالة لكن الإزالة مُعطّلة." - -#: cmdline/apt-get.cc:775 -msgid "Internal error, Ordering didn't finish" -msgstr "خطأ داخلي، لم تنته عملية الترتيب" - -#: cmdline/apt-get.cc:791 cmdline/apt-get.cc:1818 cmdline/apt-get.cc:1851 -msgid "Unable to lock the download directory" -msgstr "تعذر قَفْل دليل التنزيل" - -#: cmdline/apt-get.cc:801 cmdline/apt-get.cc:1899 cmdline/apt-get.cc:2135 -#: apt-pkg/cachefile.cc:67 -msgid "The list of sources could not be read." -msgstr "تعذرت قراءة قائمة المصادر." - -#: cmdline/apt-get.cc:816 -msgid "How odd.. The sizes didn't match, email apt@packages.debian.org" -msgstr "يا للغرابة.. لم تتطابق الأحجام، الرجاء مراسلة apt@packages.debian.org" - -#: cmdline/apt-get.cc:821 -#, c-format -msgid "Need to get %sB/%sB of archives.\n" -msgstr "بحاجة إلى جلب %sب/%sب من الأرشيف.\n" - -#: cmdline/apt-get.cc:824 -#, c-format -msgid "Need to get %sB of archives.\n" -msgstr "بحاجة إلى جلب %sب من الأرشيف.\n" - -#: cmdline/apt-get.cc:829 -#, c-format -msgid "After unpacking %sB of additional disk space will be used.\n" -msgstr "بعد الاستخراج %sب من المساحة الإضافيّة سيتمّ استخدامها.\n" - -#: cmdline/apt-get.cc:832 -#, c-format -msgid "After unpacking %sB disk space will be freed.\n" -msgstr "بعد الاستخراج %sب من المساحة ستفرّغ.\n" - -#: cmdline/apt-get.cc:846 cmdline/apt-get.cc:1989 -#, c-format -msgid "Couldn't determine free space in %s" -msgstr "تعذر حساب المساحة الحرة في %s" - -#: cmdline/apt-get.cc:849 -#, c-format -msgid "You don't have enough free space in %s." -msgstr "ليس هناك مساحة كافية في %s." - -#: cmdline/apt-get.cc:864 cmdline/apt-get.cc:884 -msgid "Trivial Only specified but this is not a trivial operation." -msgstr "" - -#: cmdline/apt-get.cc:866 -msgid "Yes, do as I say!" -msgstr "نعم، افعل ما أقوله!" - -#: cmdline/apt-get.cc:868 -#, c-format -msgid "" -"You are about to do something potentially harmful.\n" -"To continue type in the phrase '%s'\n" -" ?] " -msgstr "" -"أنت على وشك أن تقوم بشيء ضارّ جداً\n" -"كي تستمر اكتب العبارة '%s'\n" -" ؟] " - -#: cmdline/apt-get.cc:874 cmdline/apt-get.cc:893 -msgid "Abort." -msgstr "إجهاض." - -#: cmdline/apt-get.cc:889 -msgid "Do you want to continue [Y/n]? " -msgstr "هل تريد الاستمرار [Y/n]؟" - -#: cmdline/apt-get.cc:961 cmdline/apt-get.cc:1365 cmdline/apt-get.cc:2032 -#, c-format -msgid "Failed to fetch %s %s\n" -msgstr "فشل إحضار %s %s\n" - -#: cmdline/apt-get.cc:979 -msgid "Some files failed to download" -msgstr "فشل تنزيل بعض الملفات" - -#: cmdline/apt-get.cc:980 cmdline/apt-get.cc:2041 -msgid "Download complete and in download only mode" -msgstr "اكتمل التنزيل وفي وضع التنزيل فقط" - -#: cmdline/apt-get.cc:986 -msgid "" -"Unable to fetch some archives, maybe run apt-get update or try with --fix-" -"missing?" -msgstr "" -"تعذر إحضار بعض الأرشيف، ربما يمكنك محاولة تنفيذ apt-get update أو إضافة --" -"fix-missing؟" - -#: cmdline/apt-get.cc:990 -msgid "--fix-missing and media swapping is not currently supported" -msgstr "--fix-missing وتبديل الأوساط غير مدعومة حالياً" - -#: cmdline/apt-get.cc:995 -msgid "Unable to correct missing packages." -msgstr "تعذر تصحيح الحزم المفقودة." - -#: cmdline/apt-get.cc:996 -msgid "Aborting install." -msgstr "إجهاض التثبيت." - -#: cmdline/apt-get.cc:1030 -#, c-format -msgid "Note, selecting %s instead of %s\n" -msgstr "لاحظ، تحديد %s بدلاً من %s\n" - -#: cmdline/apt-get.cc:1040 -#, c-format -msgid "Skipping %s, it is already installed and upgrade is not set.\n" -msgstr "تخطّي %s، حيث أنها مثبتة ولم يتمّ تعيين الترقية.\n" - -#: cmdline/apt-get.cc:1058 -#, c-format -msgid "Package %s is not installed, so not removed\n" -msgstr "الحزمة %s غير مُثبّتة، لذلك لن تُزال\n" - -#: cmdline/apt-get.cc:1069 -#, c-format -msgid "Package %s is a virtual package provided by:\n" -msgstr "الحزمة %s وهميّة وتوفّرها:\n" - -#: cmdline/apt-get.cc:1081 -msgid " [Installed]" -msgstr " [مُثبّتة]" - -#: cmdline/apt-get.cc:1086 -msgid "You should explicitly select one to install." -msgstr "يجب اختيار واحدة بالتحديد لتثبيتها." - -#: cmdline/apt-get.cc:1091 -#, c-format -msgid "" -"Package %s is not available, but is referred to by another package.\n" -"This may mean that the package is missing, has been obsoleted, or\n" -"is only available from another source\n" -msgstr "" - -#: cmdline/apt-get.cc:1110 -msgid "However the following packages replace it:" -msgstr "على أيّ فإن الحزم التالية تحلّ مكانها:" - -#: cmdline/apt-get.cc:1113 -#, c-format -msgid "Package %s has no installation candidate" -msgstr "الحزمة %s ليس لها مرشح تثبيت" - -#: cmdline/apt-get.cc:1133 -#, c-format -msgid "Reinstallation of %s is not possible, it cannot be downloaded.\n" -msgstr "إعادة تثبيت %s غير ممكنة، حيث أنّه لا يمكن تنزيلها.\n" - -#: cmdline/apt-get.cc:1141 -#, c-format -msgid "%s is already the newest version.\n" -msgstr "%s هي النسخة الأحدث.\n" - -#: cmdline/apt-get.cc:1168 -#, c-format -msgid "Release '%s' for '%s' was not found" -msgstr "تعذر العثور على الإصدارة '%s' للحزمة '%s'" - -#: cmdline/apt-get.cc:1170 -#, c-format -msgid "Version '%s' for '%s' was not found" -msgstr "تعذر العثور على النسخة '%s' للحزمة '%s'" - -#: cmdline/apt-get.cc:1176 -#, c-format -msgid "Selected version %s (%s) for %s\n" -msgstr "النسخة المحددة %s (%s) للإصدارة %s\n" - -#: cmdline/apt-get.cc:1313 -msgid "The update command takes no arguments" -msgstr "لا يقبل الأمر update أية مُعطيات" - -#: cmdline/apt-get.cc:1326 -msgid "Unable to lock the list directory" -msgstr "تعذر قفل دليل القائمة" - -#: cmdline/apt-get.cc:1384 -msgid "" -"Some index files failed to download, they have been ignored, or old ones " -"used instead." -msgstr "" - -#: cmdline/apt-get.cc:1403 -msgid "Internal error, AllUpgrade broke stuff" -msgstr "خطأ داخلي، عطب AllUpgrade بعض الأشياء" - -#: cmdline/apt-get.cc:1493 cmdline/apt-get.cc:1529 -#, c-format -msgid "Couldn't find package %s" -msgstr "تعذر العثور على الحزمة %s" - -#: cmdline/apt-get.cc:1516 -#, c-format -msgid "Note, selecting %s for regex '%s'\n" -msgstr "لاحظ، تحديد %s بسبب صيغة regex '%s'\n" - -#: cmdline/apt-get.cc:1546 -msgid "You might want to run `apt-get -f install' to correct these:" -msgstr "قد ترغب بتشغيل `apt-get -f install' لتصحيح هذه:" - -#: cmdline/apt-get.cc:1549 -msgid "" -"Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a " -"solution)." -msgstr "" -"مُعتمدات غير مستوفاة. جرب 'apt-get -f install' بدون أسماء حزم (أو حدّد حلاً)." - -#: cmdline/apt-get.cc:1561 -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" -"distribution that some required packages have not yet been created\n" -"or been moved out of Incoming." -msgstr "" - -#: cmdline/apt-get.cc:1569 -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:1574 -msgid "The following information may help to resolve the situation:" -msgstr "قد تساعد المعلومات التالية في حل المشكلة:" - -#: cmdline/apt-get.cc:1577 -msgid "Broken packages" -msgstr "حزم معطوبة" - -#: cmdline/apt-get.cc:1603 -msgid "The following extra packages will be installed:" -msgstr "سيتم تثبيت الحزم الإضافيّة التالية:" - -#: cmdline/apt-get.cc:1692 -msgid "Suggested packages:" -msgstr "الحزم المقترحة:" - -#: cmdline/apt-get.cc:1693 -msgid "Recommended packages:" -msgstr "الحزم المستحسنة:" - -#: cmdline/apt-get.cc:1713 -msgid "Calculating upgrade... " -msgstr "حساب الترقية..." - -#: cmdline/apt-get.cc:1716 methods/ftp.cc:702 methods/connect.cc:101 -msgid "Failed" -msgstr "فشل" - -#: cmdline/apt-get.cc:1721 -msgid "Done" -msgstr "تمّ" - -#: cmdline/apt-get.cc:1786 cmdline/apt-get.cc:1794 -msgid "Internal error, problem resolver broke stuff" -msgstr "" - -#: cmdline/apt-get.cc:1894 -msgid "Must specify at least one package to fetch source for" -msgstr "يجب تحديد حزمة واحدة على الأقل لجلب مصدرها" - -#: cmdline/apt-get.cc:1924 cmdline/apt-get.cc:2153 -#, c-format -msgid "Unable to find a source package for %s" -msgstr "تعذر العثور على مصدر الحزمة %s" - -#: cmdline/apt-get.cc:1968 -#, c-format -msgid "Skipping already downloaded file '%s'\n" -msgstr "تخطي الملف '%s' المنزل مسبقاً\n" - -#: cmdline/apt-get.cc:1992 -#, c-format -msgid "You don't have enough free space in %s" -msgstr "ليس هناك مساحة كافية في %s" - -#: cmdline/apt-get.cc:1997 -#, c-format -msgid "Need to get %sB/%sB of source archives.\n" -msgstr "يجب جلب %sب/%sب من الأرشيفات المصدرية.\n" - -#: cmdline/apt-get.cc:2000 -#, c-format -msgid "Need to get %sB of source archives.\n" -msgstr "يجب جلب %sب من الأرشيفات المصدريّة.\n" - -#: cmdline/apt-get.cc:2006 -#, c-format -msgid "Fetch source %s\n" -msgstr "إحضار المصدر %s\n" - -#: cmdline/apt-get.cc:2037 -msgid "Failed to fetch some archives." -msgstr "فشل إحضار بعض الأرشيفات." - -#: cmdline/apt-get.cc:2065 -#, c-format -msgid "Skipping unpack of already unpacked source in %s\n" -msgstr "" - -#: cmdline/apt-get.cc:2077 -#, c-format -msgid "Unpack command '%s' failed.\n" -msgstr "أمر فك الحزمة '%s' فشل.\n" - -#: cmdline/apt-get.cc:2078 -#, c-format -msgid "Check if the 'dpkg-dev' package is installed.\n" -msgstr "" - -#: cmdline/apt-get.cc:2095 -#, c-format -msgid "Build command '%s' failed.\n" -msgstr "أمر البناء '%s' فشل.\n" - -#: cmdline/apt-get.cc:2114 -msgid "Child process failed" -msgstr "" - -#: cmdline/apt-get.cc:2130 -msgid "Must specify at least one package to check builddeps for" -msgstr "" - -#: cmdline/apt-get.cc:2158 -#, c-format -msgid "Unable to get build-dependency information for %s" -msgstr "" - -#: cmdline/apt-get.cc:2178 -#, c-format -msgid "%s has no build depends.\n" -msgstr "" - -#: cmdline/apt-get.cc:2230 -#, c-format -msgid "" -"%s dependency for %s cannot be satisfied because the package %s cannot be " -"found" -msgstr "" - -#: cmdline/apt-get.cc:2282 -#, 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:2317 -#, c-format -msgid "Failed to satisfy %s dependency for %s: Installed package %s is too new" -msgstr "" - -#: cmdline/apt-get.cc:2342 -#, c-format -msgid "Failed to satisfy %s dependency for %s: %s" -msgstr "" - -#: cmdline/apt-get.cc:2356 -#, c-format -msgid "Build-dependencies for %s could not be satisfied." -msgstr "" - -#: cmdline/apt-get.cc:2360 -msgid "Failed to process build dependencies" -msgstr "" - -#: cmdline/apt-get.cc:2392 -msgid "Supported modules:" -msgstr "الوحدات المدعومة:" - -#: cmdline/apt-get.cc:2433 -msgid "" -"Usage: apt-get [options] command\n" -" apt-get [options] install|remove pkg1 [pkg2 ...]\n" -" apt-get [options] source pkg1 [pkg2 ...]\n" -"\n" -"apt-get is a simple command line interface for downloading and\n" -"installing packages. The most frequently used commands are update\n" -"and install.\n" -"\n" -"Commands:\n" -" update - Retrieve new lists of packages\n" -" upgrade - Perform an upgrade\n" -" install - Install new packages (pkg is libc6 not libc6.deb)\n" -" remove - Remove packages\n" -" source - Download source archives\n" -" build-dep - Configure build-dependencies for source packages\n" -" dist-upgrade - Distribution upgrade, see apt-get(8)\n" -" dselect-upgrade - Follow dselect selections\n" -" clean - Erase downloaded archive files\n" -" autoclean - Erase old downloaded archive files\n" -" check - Verify that there are no broken dependencies\n" -"\n" -"Options:\n" -" -h This help text.\n" -" -q Loggable output - no progress indicator\n" -" -qq No output except for errors\n" -" -d Download only - do NOT install or unpack archives\n" -" -s No-act. Perform ordering simulation\n" -" -y Assume Yes to all queries and do not prompt\n" -" -f Attempt to continue if the integrity check fails\n" -" -m Attempt to continue if archives are unlocatable\n" -" -u Show a list of upgraded packages as well\n" -" -b Build the source package after fetching it\n" -" -V Show verbose version numbers\n" -" -c=? Read this configuration file\n" -" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n" -"See the apt-get(8), sources.list(5) and apt.conf(5) manual\n" -"pages for more information and options.\n" -" This APT has Super Cow Powers.\n" -msgstr "" - -#: cmdline/acqprogress.cc:55 -msgid "Hit " -msgstr "" - -#: cmdline/acqprogress.cc:79 -msgid "Get:" -msgstr "جلب:" - -#: cmdline/acqprogress.cc:110 -msgid "Ign " -msgstr "تجاهل" - -#: cmdline/acqprogress.cc:114 -msgid "Err " -msgstr "خطأ" - -#: cmdline/acqprogress.cc:135 -#, c-format -msgid "Fetched %sB in %s (%sB/s)\n" -msgstr "جلب %sب في %s (%sب/ث)\n" - -#: cmdline/acqprogress.cc:225 -#, c-format -msgid " [Working]" -msgstr " [يعمل]" - -#: cmdline/acqprogress.cc:271 -#, c-format -msgid "" -"Media change: please insert the disc labeled\n" -" '%s'\n" -"in the drive '%s' and press enter\n" -msgstr "" -"تغيير الوسط: الرجاء إدخال القرص المُسمّى\n" -" '%s'\n" -"في السوّاقة '%s' وضغط مفتاح الإدخال\n" - -#: cmdline/apt-sortpkgs.cc:86 -msgid "Unknown package record!" -msgstr "سجل حزمة مجهول!" - -#: cmdline/apt-sortpkgs.cc:150 -msgid "" -"Usage: apt-sortpkgs [options] file1 [file2 ...]\n" -"\n" -"apt-sortpkgs is a simple tool to sort package files. The -s option is used\n" -"to indicate what kind of file it is.\n" -"\n" -"Options:\n" -" -h This help text\n" -" -s Use source file sorting\n" -" -c=? Read this configuration file\n" -" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n" -msgstr "" - -#: dselect/install:32 -msgid "Bad default setting!" -msgstr "إعداد افتراضيّ سيّء!" - -#: dselect/install:51 dselect/install:83 dselect/install:87 dselect/install:93 -#: dselect/install:104 dselect/update:45 -msgid "Press enter to continue." -msgstr "اضغط مفتاح الإدخال للاستمرار." - -#: dselect/install:100 -msgid "Some errors occurred while unpacking. I'm going to configure the" -msgstr "حدثت بعض الأخطاء أثناء فك الحزمة. سأقوم بتهيئة " - -#: dselect/install:101 -msgid "packages that were installed. This may result in duplicate errors" -msgstr "الحزم التي تم تثبيتها. قد يتسبب هذا بظهر أخطاء متكررة" - -#: dselect/install:102 -msgid "or errors caused by missing dependencies. This is OK, only the errors" -msgstr "أو أخطاء سبّبتها المُعتمدات المفقودة. لا بأس بهذا، فقط الأخطاء" - -#: dselect/install:103 -msgid "" -"above this message are important. Please fix them and run [I]nstall again" -msgstr "أعلى هذه الرسالة مهمّة. الرجاء تصحيحها وتشغيل التثبيت مجدداً" - -#: dselect/update:30 -msgid "Merging available information" -msgstr "دمج المعلومات المتوفرة" - -#: apt-inst/contrib/extracttar.cc:117 -msgid "Failed to create pipes" -msgstr "" - -#: apt-inst/contrib/extracttar.cc:144 -msgid "Failed to exec gzip " -msgstr "فشل تنفيذ gzip" - -#: apt-inst/contrib/extracttar.cc:181 apt-inst/contrib/extracttar.cc:207 -msgid "Corrupted archive" -msgstr "أرشيف فاسد" - -#: apt-inst/contrib/extracttar.cc:196 -msgid "Tar checksum failed, archive corrupted" -msgstr "فشل تحقّق Checksum لملف Tar، الأرشيف فاسد" - -#: apt-inst/contrib/extracttar.cc:299 -#, c-format -msgid "Unknown TAR header type %u, member %s" -msgstr "" - -#: apt-inst/contrib/arfile.cc:73 -msgid "Invalid archive signature" -msgstr "توقيع الأرشيف غير صالح" - -#: apt-inst/contrib/arfile.cc:81 -msgid "Error reading archive member header" -msgstr "" - -#: apt-inst/contrib/arfile.cc:93 apt-inst/contrib/arfile.cc:105 -msgid "Invalid archive member header" -msgstr "" - -#: apt-inst/contrib/arfile.cc:131 -msgid "Archive is too short" -msgstr "الأرشيف قصير جداً" - -#: apt-inst/contrib/arfile.cc:135 -msgid "Failed to read the archive headers" -msgstr "فشلت قراءة ترويسات الأرشيف" - -#: apt-inst/filelist.cc:384 -msgid "DropNode called on still linked node" -msgstr "" - -#: apt-inst/filelist.cc:416 -msgid "Failed to locate the hash element!" -msgstr "" - -#: apt-inst/filelist.cc:463 -msgid "Failed to allocate diversion" -msgstr "" - -#: apt-inst/filelist.cc:468 -msgid "Internal error in AddDiversion" -msgstr "خطأ داخلي في AddDiversion" - -#: apt-inst/filelist.cc:481 -#, c-format -msgid "Trying to overwrite a diversion, %s -> %s and %s/%s" -msgstr "" - -#: apt-inst/filelist.cc:510 -#, c-format -msgid "Double add of diversion %s -> %s" -msgstr "" - -#: apt-inst/filelist.cc:553 -#, c-format -msgid "Duplicate conf file %s/%s" -msgstr "ملف تهيئة مُزدوج %s/%s" - -#: apt-inst/dirstream.cc:45 apt-inst/dirstream.cc:50 apt-inst/dirstream.cc:53 -#, c-format -msgid "Failed to write file %s" -msgstr "فشلت كتابة الملف %s" - -#: apt-inst/dirstream.cc:96 apt-inst/dirstream.cc:104 -#, c-format -msgid "Failed to close file %s" -msgstr "فشل إغلاق الملف %s" - -#: apt-inst/extract.cc:96 apt-inst/extract.cc:167 -#, c-format -msgid "The path %s is too long" -msgstr "المسار %s طويل جداً" - -#: apt-inst/extract.cc:127 -#, c-format -msgid "Unpacking %s more than once" -msgstr "فكّ تحزيم %s أكثر من مرّة" - -#: apt-inst/extract.cc:137 -#, c-format -msgid "The directory %s is diverted" -msgstr "" - -#: apt-inst/extract.cc:147 -#, c-format -msgid "The package is trying to write to the diversion target %s/%s" -msgstr "" - -#: apt-inst/extract.cc:157 apt-inst/extract.cc:300 -msgid "The diversion path is too long" -msgstr "" - -#: apt-inst/extract.cc:243 -#, c-format -msgid "The directory %s is being replaced by a non-directory" -msgstr "" - -#: apt-inst/extract.cc:283 -msgid "Failed to locate node in its hash bucket" -msgstr "" - -#: apt-inst/extract.cc:287 -msgid "The path is too long" -msgstr "المسار طويل جداً" - -#: apt-inst/extract.cc:417 -#, c-format -msgid "Overwrite package match with no version for %s" -msgstr "" - -#: apt-inst/extract.cc:434 -#, c-format -msgid "File %s/%s overwrites the one in the package %s" -msgstr "" - -#: apt-inst/extract.cc:467 apt-pkg/contrib/configuration.cc:750 -#: apt-pkg/contrib/cdromutl.cc:153 apt-pkg/sourcelist.cc:324 -#: apt-pkg/acquire.cc:421 apt-pkg/clean.cc:38 -#, c-format -msgid "Unable to read %s" -msgstr "تعذرت قراءة %s" - -#: apt-inst/extract.cc:494 -#, c-format -msgid "Unable to stat %s" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:55 apt-inst/deb/dpkgdb.cc:61 -#, c-format -msgid "Failed to remove %s" -msgstr "تعذرت إزالة %s" - -#: apt-inst/deb/dpkgdb.cc:110 apt-inst/deb/dpkgdb.cc:112 -#, c-format -msgid "Unable to create %s" -msgstr "تعذر إنشاء %s" - -#: apt-inst/deb/dpkgdb.cc:118 -#, c-format -msgid "Failed to stat %sinfo" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:123 -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 -msgid "Reading package lists" -msgstr "قراءة قوائم الحزم" - -#: apt-inst/deb/dpkgdb.cc:180 -#, c-format -msgid "Failed to change to the admin dir %sinfo" -msgstr "فشل تغيير دليل الإدارة إلى %sinfo" - -#: apt-inst/deb/dpkgdb.cc:201 apt-inst/deb/dpkgdb.cc:355 -#: apt-inst/deb/dpkgdb.cc:448 -msgid "Internal error getting a package name" -msgstr "خطأ داخلي أثناء الحصول على اسم الحزمة" - -#: apt-inst/deb/dpkgdb.cc:205 apt-inst/deb/dpkgdb.cc:386 -msgid "Reading file listing" -msgstr "قراءة سرد الملفات" - -#: apt-inst/deb/dpkgdb.cc:216 -#, c-format -msgid "" -"Failed to open the list file '%sinfo/%s'. If you cannot restore this file " -"then make it empty and immediately re-install the same version of the " -"package!" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:229 apt-inst/deb/dpkgdb.cc:242 -#, c-format -msgid "Failed reading the list file %sinfo/%s" -msgstr "فشلت قراءة ملف القائمة %sinfo/%s" - -#: apt-inst/deb/dpkgdb.cc:266 -msgid "Internal error getting a node" -msgstr "خطأ داخلي أثناء الحصول على node" - -#: apt-inst/deb/dpkgdb.cc:309 -#, c-format -msgid "Failed to open the diversions file %sdiversions" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:324 -msgid "The diversion file is corrupted" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:331 apt-inst/deb/dpkgdb.cc:336 -#: apt-inst/deb/dpkgdb.cc:341 -#, c-format -msgid "Invalid line in the diversion file: %s" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:362 -msgid "Internal error adding a diversion" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:383 -msgid "The pkg cache must be initialized first" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:443 -#, c-format -msgid "Failed to find a Package: header, offset %lu" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:465 -#, c-format -msgid "Bad ConfFile section in the status file. Offset %lu" -msgstr "" - -#: apt-inst/deb/dpkgdb.cc:470 -#, c-format -msgid "Error parsing MD5. Offset %lu" -msgstr "" - -#: apt-inst/deb/debfile.cc:42 apt-inst/deb/debfile.cc:47 -#, c-format -msgid "This is not a valid DEB archive, missing '%s' member" -msgstr "" - -#: apt-inst/deb/debfile.cc:52 -#, c-format -msgid "This is not a valid DEB archive, it has no '%s' or '%s' member" -msgstr "" - -#: apt-inst/deb/debfile.cc:112 -#, c-format -msgid "Couldn't change to %s" -msgstr "تعذر التغيير إلى %s" - -#: apt-inst/deb/debfile.cc:138 -msgid "Internal error, could not locate member" -msgstr "خطأ داخلي، تعذر العثور على العضو" - -#: apt-inst/deb/debfile.cc:171 -msgid "Failed to locate a valid control file" -msgstr "فشل العثور على ملف تحكّم صالح" - -#: apt-inst/deb/debfile.cc:256 -msgid "Unparsable control file" -msgstr "" - -#: methods/cdrom.cc:114 -#, c-format -msgid "Unable to read the cdrom database %s" -msgstr "تعذرت قراءة قاعدة بيانات القرص المدمج %s" - -#: methods/cdrom.cc:123 -msgid "" -"Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update " -"cannot be used to add new CD-ROMs" -msgstr "" -"الرجاء استخدام apt-cdrom لتعريف APT بهذا القرص المدمج. لا يمكن استخدام apt-" -"get update لإضافة أقراص مدمجة جديدة." - -#: methods/cdrom.cc:131 -msgid "Wrong CD-ROM" -msgstr "القرص المدمج الخطأ" - -#: methods/cdrom.cc:164 -#, c-format -msgid "Unable to unmount the CD-ROM in %s, it may still be in use." -msgstr "تعذر فكّ القرص المدمج من %s، إذ قد يكون لا يزال قيد الاستخدام." - -#: methods/cdrom.cc:169 -msgid "Disk not found." -msgstr "لم يُعثر على القرص." - -#: methods/cdrom.cc:177 methods/file.cc:79 methods/rsh.cc:264 -msgid "File not found" -msgstr "لم يُعثر على الملف" - -#: methods/copy.cc:42 methods/gpgv.cc:281 methods/gzip.cc:141 -#: methods/gzip.cc:150 -msgid "Failed to stat" -msgstr "فشيل تنفيذ stat" - -#: methods/copy.cc:79 methods/gpgv.cc:278 methods/gzip.cc:147 -msgid "Failed to set modification time" -msgstr "فشل تعيين وقت التعديل" - -#: methods/file.cc:44 -msgid "Invalid URI, local URIS must not start with //" -msgstr "" - -#. Login must be before getpeername otherwise dante won't work. -#: methods/ftp.cc:162 -msgid "Logging in" -msgstr "تسجيل الدخول" - -#: methods/ftp.cc:168 -msgid "Unable to determine the peer name" -msgstr "" - -#: methods/ftp.cc:173 -msgid "Unable to determine the local name" -msgstr "" - -#: methods/ftp.cc:204 methods/ftp.cc:232 -#, c-format -msgid "The server refused the connection and said: %s" -msgstr "رفض الخادم اتصالنا بالرد: %s" - -#: methods/ftp.cc:210 -#, c-format -msgid "USER failed, server said: %s" -msgstr "فشل USER، ردّ الخادم: %s" - -#: methods/ftp.cc:217 -#, c-format -msgid "PASS failed, server said: %s" -msgstr "فشل PASS، ردّ الخادم: %s" - -#: methods/ftp.cc:237 -msgid "" -"A proxy server was specified but no login script, Acquire::ftp::ProxyLogin " -"is empty." -msgstr "" -"تم تحديد خادم بروكسي ولكن دون نص تسجيل دخول برمجي، Acquire::ftp::ProxyLogin " -"فارغ." - -#: methods/ftp.cc:265 -#, c-format -msgid "Login script command '%s' failed, server said: %s" -msgstr "فشل أمر نص تسجيل الدخول البرمجي '%s'، ردّ الخادم: %s" - -#: methods/ftp.cc:291 -#, c-format -msgid "TYPE failed, server said: %s" -msgstr "فشل TYPE، ردّ الخادم: %s" - -#: methods/ftp.cc:329 methods/ftp.cc:440 methods/rsh.cc:183 methods/rsh.cc:226 -msgid "Connection timeout" -msgstr "انتهى وقت الاتصال" - -#: methods/ftp.cc:335 -msgid "Server closed the connection" -msgstr "أغلق الخادم الاتصال" - -#: methods/ftp.cc:338 apt-pkg/contrib/fileutl.cc:471 methods/rsh.cc:190 -msgid "Read error" -msgstr "خطأ في القراءة" - -#: methods/ftp.cc:345 methods/rsh.cc:197 -msgid "A response overflowed the buffer." -msgstr "" - -#: methods/ftp.cc:362 methods/ftp.cc:374 -msgid "Protocol corruption" -msgstr "" - -#: methods/ftp.cc:446 apt-pkg/contrib/fileutl.cc:510 methods/rsh.cc:232 -msgid "Write error" -msgstr "خطأ في الكتابة" - -#: methods/ftp.cc:687 methods/ftp.cc:693 methods/ftp.cc:729 -msgid "Could not create a socket" -msgstr "" - -#: methods/ftp.cc:698 -msgid "Could not connect data socket, connection timed out" -msgstr "" - -#: methods/ftp.cc:704 -msgid "Could not connect passive socket." -msgstr "" - -#: methods/ftp.cc:722 -msgid "getaddrinfo was unable to get a listening socket" -msgstr "" - -#: methods/ftp.cc:736 -msgid "Could not bind a socket" -msgstr "" - -#: methods/ftp.cc:740 -msgid "Could not listen on the socket" -msgstr "" - -#: methods/ftp.cc:747 -msgid "Could not determine the socket's name" -msgstr "" - -#: methods/ftp.cc:779 -msgid "Unable to send PORT command" -msgstr "تعذر إرسال الأمر PORT" - -#: methods/ftp.cc:789 -#, c-format -msgid "Unknown address family %u (AF_*)" -msgstr "" - -#: methods/ftp.cc:798 -#, c-format -msgid "EPRT failed, server said: %s" -msgstr "فشل EPRT، ردّ الخادم: %s" - -#: methods/ftp.cc:818 -msgid "Data socket connect timed out" -msgstr "" - -#: methods/ftp.cc:825 -msgid "Unable to accept connection" -msgstr "تعذر قبول الاتصال" - -#: methods/ftp.cc:864 methods/http.cc:958 methods/rsh.cc:303 -msgid "Problem hashing file" -msgstr "" - -#: methods/ftp.cc:877 -#, c-format -msgid "Unable to fetch file, server said '%s'" -msgstr "تعذر إحضار الملف، ردّ الخادم '%s'" - -#: methods/ftp.cc:892 methods/rsh.cc:322 -msgid "Data socket timed out" -msgstr "" - -#: methods/ftp.cc:922 -#, c-format -msgid "Data transfer failed, server said '%s'" -msgstr "فشل نقل البيانات، ردّ الخادم '%s'" - -#. Get the files information -#: methods/ftp.cc:997 -msgid "Query" -msgstr "استعلام" - -#: methods/ftp.cc:1109 -msgid "Unable to invoke " -msgstr "" - -#: methods/connect.cc:64 -#, c-format -msgid "Connecting to %s (%s)" -msgstr "الاتصال بـ%s (%s)" - -#: methods/connect.cc:71 -#, c-format -msgid "[IP: %s %s]" -msgstr "[IP: %s %s]" - -#: methods/connect.cc:80 -#, c-format -msgid "Could not create a socket for %s (f=%u t=%u p=%u)" -msgstr "" - -#: methods/connect.cc:86 -#, c-format -msgid "Cannot initiate the connection to %s:%s (%s)." -msgstr "تعذر تمهيد الاتصال بـ%s:%s (%s)." - -#: methods/connect.cc:93 -#, c-format -msgid "Could not connect to %s:%s (%s), connection timed out" -msgstr "تعذر الاتصال بـ%s:%s (%s)، انتهى وقت الاتصال" - -#: methods/connect.cc:108 -#, c-format -msgid "Could not connect to %s:%s (%s)." -msgstr "تعذر الاتصال بـ%s:%s (%s)." - -#. We say this mainly because the pause here is for the -#. ssh connection that is still going -#: methods/connect.cc:136 methods/rsh.cc:425 -#, c-format -msgid "Connecting to %s" -msgstr "الاتصال بـ%s" - -#: methods/connect.cc:167 -#, c-format -msgid "Could not resolve '%s'" -msgstr "" - -#: methods/connect.cc:173 -#, c-format -msgid "Temporary failure resolving '%s'" -msgstr "" - -#: methods/connect.cc:176 -#, c-format -msgid "Something wicked happened resolving '%s:%s' (%i)" -msgstr "" - -#: methods/connect.cc:223 -#, c-format -msgid "Unable to connect to %s %s:" -msgstr "تعذر الاتصال بـ%s %s:" - -#: methods/gpgv.cc:65 -#, c-format -msgid "Couldn't access keyring: '%s'" -msgstr "" - -#: methods/gpgv.cc:100 -msgid "E: Argument list from Acquire::gpgv::Options too long. Exiting." -msgstr "" - -#: methods/gpgv.cc:204 -msgid "" -"Internal error: Good signature, but could not determine key fingerprint?!" -msgstr "" - -#: methods/gpgv.cc:209 -msgid "At least one invalid signature was encountered." -msgstr "" - -#: methods/gpgv.cc:213 -#, c-format -msgid "Could not execute '%s' to verify signature (is gnupg installed?)" -msgstr "" - -#: methods/gpgv.cc:218 -msgid "Unknown error executing gpgv" -msgstr "" - -#: methods/gpgv.cc:249 -msgid "The following signatures were invalid:\n" -msgstr "" - -#: methods/gpgv.cc:256 -msgid "" -"The following signatures couldn't be verified because the public key is not " -"available:\n" -msgstr "" - -#: methods/gzip.cc:64 -#, c-format -msgid "Couldn't open pipe for %s" -msgstr "" - -#: methods/gzip.cc:109 -#, c-format -msgid "Read error from %s process" -msgstr "" - -#: methods/http.cc:376 -msgid "Waiting for headers" -msgstr "بانتظار الترويسات" - -#: methods/http.cc:522 -#, c-format -msgid "Got a single header line over %u chars" -msgstr "" - -#: methods/http.cc:530 -msgid "Bad header line" -msgstr "سطر ترويسة سيء" - -#: methods/http.cc:549 methods/http.cc:556 -msgid "The HTTP server sent an invalid reply header" -msgstr "أرسل خادم http ترويسة ردّ غير صالحة" - -#: methods/http.cc:585 -msgid "The HTTP server sent an invalid Content-Length header" -msgstr "أرسل خادم http ترويسة طول محتويات (ِContent-Length) غير صالحة" - -#: methods/http.cc:600 -msgid "The HTTP server sent an invalid Content-Range header" -msgstr "أرسل خادم http ترويسة مدى محتويات (ِContent-Range) غير صالحة" - -#: methods/http.cc:602 -msgid "This HTTP server has broken range support" -msgstr "خادم http له دعم مدى معطوب" - -#: methods/http.cc:626 -msgid "Unknown date format" -msgstr "نسق تاريخ مجهول" - -#: methods/http.cc:773 -msgid "Select failed" -msgstr "فشل التحديد" - -#: methods/http.cc:778 -msgid "Connection timed out" -msgstr "انتهى وقت الاتصال" - -#: methods/http.cc:801 -msgid "Error writing to output file" -msgstr "خطأ في الكتابة إلى ملف المُخرجات" - -#: methods/http.cc:832 -msgid "Error writing to file" -msgstr "خطأ في الكتابة إلى الملف" - -#: methods/http.cc:860 -msgid "Error writing to the file" -msgstr "خطأ في الكتابة إلى الملف" - -#: methods/http.cc:874 -msgid "Error reading from server. Remote end closed connection" -msgstr "خطأ في القراءة من الخادم. أقفل الطرف الآخر الاتصال" - -#: methods/http.cc:876 -msgid "Error reading from server" -msgstr "خطأ في القراءة من الخادم" - -#: methods/http.cc:1107 -msgid "Bad header data" -msgstr "بيانات ترويسة سيئة" - -#: methods/http.cc:1124 -msgid "Connection failed" -msgstr "فشل الاتصال" - -#: methods/http.cc:1215 -msgid "Internal error" -msgstr "خطأ داخلي" - -#: apt-pkg/contrib/mmap.cc:82 -msgid "Can't mmap an empty file" -msgstr "" - -#: apt-pkg/contrib/mmap.cc:87 -#, c-format -msgid "Couldn't make mmap of %lu bytes" -msgstr "" - -#: apt-pkg/contrib/strutl.cc:938 -#, c-format -msgid "Selection %s not found" -msgstr "تعذر العثور على التحديد %s" - -#: apt-pkg/contrib/configuration.cc:436 -#, c-format -msgid "Unrecognized type abbreviation: '%c'" -msgstr "اختصار نوع مجهول: '%c'" - -#: apt-pkg/contrib/configuration.cc:494 -#, c-format -msgid "Opening configuration file %s" -msgstr "فتح ملف التهيئة %s" - -#: apt-pkg/contrib/configuration.cc:512 -#, c-format -msgid "Line %d too long (max %d)" -msgstr "السطر %d طويل جداً (أقصاه %d)" - -#: apt-pkg/contrib/configuration.cc:608 -#, c-format -msgid "Syntax error %s:%u: Block starts with no name." -msgstr "" - -#: apt-pkg/contrib/configuration.cc:627 -#, c-format -msgid "Syntax error %s:%u: Malformed tag" -msgstr "" - -#: apt-pkg/contrib/configuration.cc:644 -#, c-format -msgid "Syntax error %s:%u: Extra junk after value" -msgstr "" - -#: apt-pkg/contrib/configuration.cc:684 -#, c-format -msgid "Syntax error %s:%u: Directives can only be done at the top level" -msgstr "" - -#: apt-pkg/contrib/configuration.cc:691 -#, c-format -msgid "Syntax error %s:%u: Too many nested includes" -msgstr "" - -#: apt-pkg/contrib/configuration.cc:695 apt-pkg/contrib/configuration.cc:700 -#, c-format -msgid "Syntax error %s:%u: Included from here" -msgstr "" - -#: apt-pkg/contrib/configuration.cc:704 -#, c-format -msgid "Syntax error %s:%u: Unsupported directive '%s'" -msgstr "" - -#: apt-pkg/contrib/configuration.cc:738 -#, c-format -msgid "Syntax error %s:%u: Extra junk at end of file" -msgstr "" - -#: apt-pkg/contrib/progress.cc:154 -#, c-format -msgid "%c%s... Error!" -msgstr "%c%s... خطأ!" - -#: apt-pkg/contrib/progress.cc:156 -#, c-format -msgid "%c%s... Done" -msgstr "%c%s... تمّ" - -#: apt-pkg/contrib/cmndline.cc:80 -#, c-format -msgid "Command line option '%c' [from %s] is not known." -msgstr "خيار سطر الأمر '%c' [من %s] مجهول." - -#: apt-pkg/contrib/cmndline.cc:106 apt-pkg/contrib/cmndline.cc:114 -#: apt-pkg/contrib/cmndline.cc:122 -#, c-format -msgid "Command line option %s is not understood" -msgstr "خيار سطر الأمر %s غير مفهوم" - -#: apt-pkg/contrib/cmndline.cc:127 -#, c-format -msgid "Command line option %s is not boolean" -msgstr "" - -#: apt-pkg/contrib/cmndline.cc:166 apt-pkg/contrib/cmndline.cc:187 -#, c-format -msgid "Option %s requires an argument." -msgstr "الخيار %s يتطلّب مُعطى." - -#: apt-pkg/contrib/cmndline.cc:201 apt-pkg/contrib/cmndline.cc:207 -#, c-format -msgid "Option %s: Configuration item specification must have an =<val>." -msgstr "" - -#: apt-pkg/contrib/cmndline.cc:237 -#, c-format -msgid "Option %s requires an integer argument, not '%s'" -msgstr "" - -#: apt-pkg/contrib/cmndline.cc:268 -#, c-format -msgid "Option '%s' is too long" -msgstr "الخيار '%s' طويل جداً" - -#: apt-pkg/contrib/cmndline.cc:301 -#, c-format -msgid "Sense %s is not understood, try true or false." -msgstr "" - -#: apt-pkg/contrib/cmndline.cc:351 -#, c-format -msgid "Invalid operation %s" -msgstr "عمليّة غير صالحة %s" - -#: apt-pkg/contrib/cdromutl.cc:55 -#, c-format -msgid "Unable to stat the mount point %s" -msgstr "" - -#: apt-pkg/contrib/cdromutl.cc:149 apt-pkg/acquire.cc:427 apt-pkg/clean.cc:44 -#, c-format -msgid "Unable to change to %s" -msgstr "" - -#: apt-pkg/contrib/cdromutl.cc:190 -msgid "Failed to stat the cdrom" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:82 -#, c-format -msgid "Not using locking for read only lock file %s" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:87 -#, c-format -msgid "Could not open lock file %s" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:105 -#, c-format -msgid "Not using locking for nfs mounted lock file %s" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:109 -#, c-format -msgid "Could not get lock %s" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:377 -#, c-format -msgid "Waited for %s but it wasn't there" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:387 -#, c-format -msgid "Sub-process %s received a segmentation fault." -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:390 -#, c-format -msgid "Sub-process %s returned an error code (%u)" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:392 -#, c-format -msgid "Sub-process %s exited unexpectedly" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:436 -#, c-format -msgid "Could not open file %s" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:492 -#, c-format -msgid "read, still have %lu to read but none left" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:522 -#, c-format -msgid "write, still have %lu to write but couldn't" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:597 -msgid "Problem closing the file" -msgstr "مشكلة في إغلاق الملف" - -#: apt-pkg/contrib/fileutl.cc:603 -msgid "Problem unlinking the file" -msgstr "" - -#: apt-pkg/contrib/fileutl.cc:614 -msgid "Problem syncing the file" -msgstr "مشكلة في مزامنة الملف" - -#: apt-pkg/pkgcache.cc:126 -msgid "Empty package cache" -msgstr "" - -#: apt-pkg/pkgcache.cc:132 -msgid "The package cache file is corrupted" -msgstr "" - -#: apt-pkg/pkgcache.cc:137 -msgid "The package cache file is an incompatible version" -msgstr "" - -#: apt-pkg/pkgcache.cc:142 -#, c-format -msgid "This APT does not support the versioning system '%s'" -msgstr "" - -#: apt-pkg/pkgcache.cc:147 -msgid "The package cache was built for a different architecture" -msgstr "" - -#: apt-pkg/pkgcache.cc:218 -msgid "Depends" -msgstr "يعتمد" - -#: apt-pkg/pkgcache.cc:218 -msgid "PreDepends" -msgstr "يعتمد مسبقاً" - -#: apt-pkg/pkgcache.cc:218 -msgid "Suggests" -msgstr "يستحسن" - -#: apt-pkg/pkgcache.cc:219 -msgid "Recommends" -msgstr "يقترح" - -#: apt-pkg/pkgcache.cc:219 -msgid "Conflicts" -msgstr "يعارض" - -#: apt-pkg/pkgcache.cc:219 -msgid "Replaces" -msgstr "يستبدل" - -#: apt-pkg/pkgcache.cc:220 -msgid "Obsoletes" -msgstr "يُلغي" - -#: apt-pkg/pkgcache.cc:231 -msgid "important" -msgstr "مهم" - -#: apt-pkg/pkgcache.cc:231 -msgid "required" -msgstr "مطلوب" - -#: apt-pkg/pkgcache.cc:231 -msgid "standard" -msgstr "قياسي" - -#: apt-pkg/pkgcache.cc:232 -msgid "optional" -msgstr "اختياري" - -#: apt-pkg/pkgcache.cc:232 -msgid "extra" -msgstr "إضافي" - -#: apt-pkg/depcache.cc:61 apt-pkg/depcache.cc:90 -msgid "Building dependency tree" -msgstr "" - -#: apt-pkg/depcache.cc:62 -msgid "Candidate versions" -msgstr "" - -#: apt-pkg/depcache.cc:91 -msgid "Dependency generation" -msgstr "" - -#: apt-pkg/tagfile.cc:106 -#, c-format -msgid "Unable to parse package file %s (1)" -msgstr "" - -#: apt-pkg/tagfile.cc:193 -#, c-format -msgid "Unable to parse package file %s (2)" -msgstr "" - -#: apt-pkg/sourcelist.cc:94 -#, c-format -msgid "Malformed line %lu in source list %s (URI)" -msgstr "" - -#: apt-pkg/sourcelist.cc:96 -#, c-format -msgid "Malformed line %lu in source list %s (dist)" -msgstr "" - -#: apt-pkg/sourcelist.cc:99 -#, c-format -msgid "Malformed line %lu in source list %s (URI parse)" -msgstr "" - -#: apt-pkg/sourcelist.cc:105 -#, c-format -msgid "Malformed line %lu in source list %s (absolute dist)" -msgstr "" - -#: apt-pkg/sourcelist.cc:112 -#, c-format -msgid "Malformed line %lu in source list %s (dist parse)" -msgstr "" - -#: apt-pkg/sourcelist.cc:203 -#, c-format -msgid "Opening %s" -msgstr "فتح %s" - -#: apt-pkg/sourcelist.cc:220 apt-pkg/cdrom.cc:426 -#, c-format -msgid "Line %u too long in source list %s." -msgstr "" - -#: apt-pkg/sourcelist.cc:240 -#, c-format -msgid "Malformed line %u in source list %s (type)" -msgstr "" - -#: apt-pkg/sourcelist.cc:244 -#, c-format -msgid "Type '%s' is not known on line %u in source list %s" -msgstr "" - -#: apt-pkg/sourcelist.cc:252 apt-pkg/sourcelist.cc:255 -#, c-format -msgid "Malformed line %u in source list %s (vendor id)" -msgstr "" - -#: apt-pkg/packagemanager.cc:402 -#, c-format -msgid "" -"This installation run will require temporarily removing the essential " -"package %s due to a Conflicts/Pre-Depends loop. This is often bad, but if " -"you really want to do it, activate the APT::Force-LoopBreak option." -msgstr "" - -#: apt-pkg/pkgrecords.cc:37 -#, c-format -msgid "Index file type '%s' is not supported" -msgstr "" - -#: apt-pkg/algorithms.cc:241 -#, c-format -msgid "" -"The package %s needs to be reinstalled, but I can't find an archive for it." -msgstr "" - -#: apt-pkg/algorithms.cc:1059 -msgid "" -"Error, pkgProblemResolver::Resolve generated breaks, this may be caused by " -"held packages." -msgstr "" - -#: apt-pkg/algorithms.cc:1061 -msgid "Unable to correct problems, you have held broken packages." -msgstr "" - -#: apt-pkg/acquire.cc:62 -#, c-format -msgid "Lists directory %spartial is missing." -msgstr "" - -#: apt-pkg/acquire.cc:66 -#, c-format -msgid "Archive directory %spartial is missing." -msgstr "" - -#. only show the ETA if it makes sense -#. two days -#: apt-pkg/acquire.cc:823 -#, c-format -msgid "Retrieving file %li of %li (%s remaining)" -msgstr "" - -#: apt-pkg/acquire.cc:825 -#, c-format -msgid "Retrieving file %li of %li" -msgstr "" - -#: apt-pkg/acquire-worker.cc:113 -#, c-format -msgid "The method driver %s could not be found." -msgstr "" - -#: apt-pkg/acquire-worker.cc:162 -#, c-format -msgid "Method %s did not start correctly" -msgstr "" - -#: apt-pkg/acquire-worker.cc:377 -#, c-format -msgid "Please insert the disc labeled: '%s' in the drive '%s' and press enter." -msgstr "الرجاء إدخال القرص المُسمّى '%s' في السوّاقة '%s' وضغط مفتاح الإدخال." - -#: apt-pkg/init.cc:120 -#, c-format -msgid "Packaging system '%s' is not supported" -msgstr "نظام الحزم '%s' غير مدعوم" - -#: apt-pkg/init.cc:136 -msgid "Unable to determine a suitable packaging system type" -msgstr "" - -#: apt-pkg/clean.cc:61 -#, c-format -msgid "Unable to stat %s." -msgstr "" - -#: apt-pkg/srcrecords.cc:48 -msgid "You must put some 'source' URIs in your sources.list" -msgstr "" - -#: apt-pkg/cachefile.cc:73 -msgid "The package lists or status file could not be parsed or opened." -msgstr "" - -#: apt-pkg/cachefile.cc:77 -msgid "You may want to run apt-get update to correct these problems" -msgstr "قد يساعدك تنفيذ الأمر apt-get update في تصحيح هذه المشاكل" - -#: apt-pkg/policy.cc:269 -msgid "Invalid record in the preferences file, no Package header" -msgstr "" - -#: apt-pkg/policy.cc:291 -#, c-format -msgid "Did not understand pin type %s" -msgstr "" - -#: apt-pkg/policy.cc:299 -msgid "No priority (or zero) specified for pin" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:74 -msgid "Cache has an incompatible versioning system" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:117 -#, c-format -msgid "Error occurred while processing %s (NewPackage)" -msgstr "حدث خطأ أثناء معالجة %s (NewPackage)" - -#: apt-pkg/pkgcachegen.cc:129 -#, c-format -msgid "Error occurred while processing %s (UsePackage1)" -msgstr "حدث خطأ أثناء معالجة %s (UserPackage1)" - -#: apt-pkg/pkgcachegen.cc:150 -#, c-format -msgid "Error occurred while processing %s (UsePackage2)" -msgstr "حدث خطأ أثناء معالجة %s (UserPackage2)" - -#: apt-pkg/pkgcachegen.cc:154 -#, c-format -msgid "Error occurred while processing %s (NewFileVer1)" -msgstr "حدث خطأ أثناء معالجة %s (NewFileVer1)" - -#: apt-pkg/pkgcachegen.cc:184 -#, c-format -msgid "Error occurred while processing %s (NewVersion1)" -msgstr "حدث خطأ أثناء معالجة %s (NewVersion1)" - -#: apt-pkg/pkgcachegen.cc:188 -#, c-format -msgid "Error occurred while processing %s (UsePackage3)" -msgstr "حدث خطأ أثناء معالجة %s (UsePackage3)" - -#: apt-pkg/pkgcachegen.cc:192 -#, c-format -msgid "Error occurred while processing %s (NewVersion2)" -msgstr "حدث خطأ أثناء معالجة %s (NewVersion2)" - -#: apt-pkg/pkgcachegen.cc:207 -msgid "Wow, you exceeded the number of package names this APT is capable of." -msgstr "" - -#: apt-pkg/pkgcachegen.cc:210 -msgid "Wow, you exceeded the number of versions this APT is capable of." -msgstr "" - -#: apt-pkg/pkgcachegen.cc:213 -msgid "Wow, you exceeded the number of dependencies this APT is capable of." -msgstr "" - -#: apt-pkg/pkgcachegen.cc:241 -#, c-format -msgid "Error occurred while processing %s (FindPkg)" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:254 -#, c-format -msgid "Error occurred while processing %s (CollectFileProvides)" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:260 -#, c-format -msgid "Package %s %s was not found while processing file dependencies" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:574 -#, c-format -msgid "Couldn't stat source package list %s" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:658 -msgid "Collecting File Provides" -msgstr "" - -#: apt-pkg/pkgcachegen.cc:785 apt-pkg/pkgcachegen.cc:792 -msgid "IO Error saving source cache" -msgstr "" - -#: apt-pkg/acquire-item.cc:126 -#, c-format -msgid "rename failed, %s (%s -> %s)." -msgstr "فشل إعادة التسمية ، %s (%s -> %s)." - -#: apt-pkg/acquire-item.cc:236 apt-pkg/acquire-item.cc:945 -msgid "MD5Sum mismatch" -msgstr "MD5Sum غير متطابقة" - -#: apt-pkg/acquire-item.cc:640 -msgid "There is no public key available for the following key IDs:\n" -msgstr "" - -#: apt-pkg/acquire-item.cc:753 -#, c-format -msgid "" -"I wasn't able to locate a file for the %s package. This might mean you need " -"to manually fix this package. (due to missing arch)" -msgstr "" - -#: apt-pkg/acquire-item.cc:812 -#, c-format -msgid "" -"I wasn't able to locate file for the %s package. This might mean you need to " -"manually fix this package." -msgstr "" - -#: apt-pkg/acquire-item.cc:848 -#, c-format -msgid "" -"The package index files are corrupted. No Filename: field for package %s." -msgstr "" - -#: apt-pkg/acquire-item.cc:935 -msgid "Size mismatch" -msgstr "الحجم غير متطابق" - -#: apt-pkg/vendorlist.cc:66 -#, c-format -msgid "Vendor block %s contains no fingerprint" -msgstr "" - -#: apt-pkg/cdrom.cc:507 -#, c-format -msgid "" -"Using CD-ROM mount point %s\n" -"Mounting CD-ROM\n" -msgstr "" - -#: apt-pkg/cdrom.cc:516 apt-pkg/cdrom.cc:598 -msgid "Identifying.. " -msgstr "جاري التعرف..." - -#: apt-pkg/cdrom.cc:541 -#, c-format -msgid "Stored label: %s \n" -msgstr "" - -#: apt-pkg/cdrom.cc:561 -#, c-format -msgid "Using CD-ROM mount point %s\n" -msgstr "" - -#: apt-pkg/cdrom.cc:579 -msgid "Unmounting CD-ROM\n" -msgstr "فك تركيب القرص المدمج\n" - -#: apt-pkg/cdrom.cc:583 -msgid "Waiting for disc...\n" -msgstr "بانتظار القرص...\n" - -#. Mount the new CDROM -#: apt-pkg/cdrom.cc:591 -msgid "Mounting CD-ROM...\n" -msgstr "تركيب القرص...\n" - -#: apt-pkg/cdrom.cc:609 -msgid "Scanning disc for index files..\n" -msgstr "" - -#: apt-pkg/cdrom.cc:647 -#, c-format -msgid "Found %i package indexes, %i source indexes and %i signatures\n" -msgstr "" - -#: apt-pkg/cdrom.cc:710 -msgid "That is not a valid name, try again.\n" -msgstr "هذا الاسم غير صالح، حاول مجدداً.\n" - -#: apt-pkg/cdrom.cc:726 -#, c-format -msgid "" -"This disc is called: \n" -"'%s'\n" -msgstr "" -"هذا القرص مسمى: \n" -"'%s'\n" - -#: apt-pkg/cdrom.cc:730 -msgid "Copying package lists..." -msgstr "نسخ قوائم الحزم..." - -#: apt-pkg/cdrom.cc:754 -msgid "Writing new source list\n" -msgstr "كتابة لائحة المصادر الجديدة\n" - -#: apt-pkg/cdrom.cc:763 -msgid "Source list entries for this disc are:\n" -msgstr "" - -#: apt-pkg/cdrom.cc:803 -msgid "Unmounting CD-ROM..." -msgstr "فك تركيب القرص المدمج..." - -#: apt-pkg/indexcopy.cc:261 -#, c-format -msgid "Wrote %i records.\n" -msgstr "" - -#: apt-pkg/indexcopy.cc:263 -#, c-format -msgid "Wrote %i records with %i missing files.\n" -msgstr "" - -#: apt-pkg/indexcopy.cc:266 -#, c-format -msgid "Wrote %i records with %i mismatched files\n" -msgstr "" - -#: apt-pkg/indexcopy.cc:269 -#, c-format -msgid "Wrote %i records with %i missing files and %i mismatched files\n" -msgstr "" - -#: apt-pkg/deb/dpkgpm.cc:358 -#, c-format -msgid "Preparing %s" -msgstr "تحضير %s" - -#: apt-pkg/deb/dpkgpm.cc:359 -#, c-format -msgid "Unpacking %s" -msgstr "فتح %s" - -#: apt-pkg/deb/dpkgpm.cc:364 -#, c-format -msgid "Preparing to configure %s" -msgstr "التحضير لتهيئة %s" - -#: apt-pkg/deb/dpkgpm.cc:365 -#, c-format -msgid "Configuring %s" -msgstr "تهيئة %s" - -#: apt-pkg/deb/dpkgpm.cc:366 -#, c-format -msgid "Installed %s" -msgstr "تم تثبيت %s" - -#: apt-pkg/deb/dpkgpm.cc:371 -#, c-format -msgid "Preparing for removal of %s" -msgstr "التحضير لإزالة %s" - -#: apt-pkg/deb/dpkgpm.cc:372 -#, c-format -msgid "Removing %s" -msgstr "إزالة %s" - -#: apt-pkg/deb/dpkgpm.cc:373 -#, c-format -msgid "Removed %s" -msgstr "تم إزالة %s" - -#: apt-pkg/deb/dpkgpm.cc:378 -#, c-format -msgid "Preparing to completely remove %s" -msgstr "التحضير لإزالة %s بالكامل" - -#: apt-pkg/deb/dpkgpm.cc:379 -#, c-format -msgid "Completely removed %s" -msgstr "تمت إزالة %s بالكامل" - -#: methods/rsh.cc:330 -msgid "Connection closed prematurely" -msgstr "" - -#~ msgid "File date has changed %s" -#~ msgstr "تغير تاريخ الملف %s" diff --git a/share/debian-archive.gpg.moved b/share/debian-archive.gpg.moved Binary files differnew file mode 100644 index 000000000..bb5ed5033 --- /dev/null +++ b/share/debian-archive.gpg.moved |