X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/9055d5e68bd09f31df00e45bd14cb599ba3735e5..708e2f1fe99e6f067292bc909f03f12c181e4798:/cmdline/apt-get.cc diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 9ffb7b1ee..95d88e2ad 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -248,8 +248,9 @@ static bool DoIndexTargets(CommandLine &CmdL) { pkgCacheFile CacheFile; pkgSourceList *SrcList = CacheFile.GetSourceList(); + pkgCache *Cache = CacheFile.GetPkgCache(); - if (SrcList == NULL) + if (SrcList == nullptr || Cache == nullptr) return false; std::string const Format = _config->Find("APT::Get::IndexTargets::Format"); @@ -262,8 +263,7 @@ static bool DoIndexTargets(CommandLine &CmdL) if (ReleaseInfo) { AddOptions.insert(std::make_pair("TRUSTED", ((*S)->IsTrusted() ? "yes" : "no"))); - pkgCache &Cache = *CacheFile.GetPkgCache(); - pkgCache::RlsFileIterator const RlsFile = (*S)->FindInCache(Cache, false); + pkgCache::RlsFileIterator const RlsFile = (*S)->FindInCache(*Cache, false); if (RlsFile.end()) continue; #define APT_RELEASE(X,Y) if (RlsFile.Y() != NULL) AddOptions.insert(std::make_pair(X, RlsFile.Y())) @@ -299,6 +299,8 @@ static bool DoIndexTargets(CommandLine &CmdL) stanza << "PDiffs: " << O->second << "\n"; else if (O->first == "COMPRESSIONTYPES") stanza << "CompressionTypes: " << O->second << "\n"; + else if (O->first == "KEEPCOMPRESSEDAS") + stanza << "KeepCompressedAs: " << O->second << "\n"; else if (O->first == "DEFAULTENABLED") stanza << "DefaultEnabled: " << O->second << "\n"; else @@ -343,7 +345,7 @@ static bool DoIndexTargets(CommandLine &CmdL) return true; } /*}}}*/ -bool ShowHelp(CommandLine &, aptDispatchWithHelp const * Cmds) /*{{{*/ +static bool ShowHelp(CommandLine &) /*{{{*/ { if (_config->FindB("version") == true) { @@ -371,54 +373,35 @@ bool ShowHelp(CommandLine &, aptDispatchWithHelp const * Cmds) /*{{{*/ cout << "Pkg: " << Sys->Label << " (Priority " << Sys->Score(*_config) << ")" << endl; } } - + for (unsigned I = 0; I != pkgSourceList::Type::GlobalListLen; I++) { pkgSourceList::Type *Type = pkgSourceList::Type::GlobalList[I]; cout << " S.L: '" << Type->Name << "' " << Type->Label << endl; - } - + } + for (unsigned I = 0; I != pkgIndexFile::Type::GlobalListLen; I++) { pkgIndexFile::Type *Type = pkgIndexFile::Type::GlobalList[I]; cout << " Idx: " << Type->Label << endl; - } - + } + return true; } std::cout << - _("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") - << std::endl; - ShowHelpListCommands(Cmds); - std::cout << std::endl << - _("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 correct a system with broken dependencies in place\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"); + _("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 command line interface for retrieval of packages\n" + "and information about them from authenticated sources and\n" + "for installation, upgrade and removal of packages together\n" + "with their dependencies.\n"); return true; } /*}}}*/ -std::vector GetCommands() /*{{{*/ +static std::vector GetCommands() /*{{{*/ { return { {"update", &DoUpdate, _("Retrieve new lists of packages")}, @@ -449,11 +432,9 @@ std::vector GetCommands() /*{{{*/ /*}}}*/ int main(int argc,const char *argv[]) /*{{{*/ { - InitLocale(); - // Parse the command line and initialize the package library CommandLine CmdL; - auto const Cmds = ParseCommandLine(CmdL, APT_CMD::APT_GET, &_config, &_system, argc, argv); + auto const Cmds = ParseCommandLine(CmdL, APT_CMD::APT_GET, &_config, &_system, argc, argv, &ShowHelp, &GetCommands); InitSignals(); InitOutput();