summaryrefslogtreecommitdiff
path: root/apt-private
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2016-06-07 17:01:33 +0200
committerDavid Kalnischkies <david@kalnischkies.de>2016-06-08 13:07:21 +0200
commit385d9f2f23057bc5808b5e013e77ba16d1c94da4 (patch)
treeed9e6aa988b1f05c84883c3e0f8914b7d00946a3 /apt-private
parent35f3ed061f10a25a3fb28bc988fddbb976344c4d (diff)
downloadapt-385d9f2f23057bc5808b5e013e77ba16d1c94da4.tar.gz
edsp: optionally store a compressed copy of the last scenario
For bugreports and co it could be handy to have the scenario and all the settings used in it around later for inspection for EDSP like protocols. EDSP might not be the most interesting as the user can still interrupt the process before the solution is applied and users tend to have an opinion on the "rightness" of a solution, so it is disabled by default.
Diffstat (limited to 'apt-private')
-rw-r--r--apt-private/private-cmndline.cc20
-rw-r--r--apt-private/private-cmndline.h1
-rw-r--r--apt-private/private-main.cc1
3 files changed, 16 insertions, 6 deletions
diff --git a/apt-private/private-cmndline.cc b/apt-private/private-cmndline.cc
index 7e50b1401..135ee3c4e 100644
--- a/apt-private/private-cmndline.cc
+++ b/apt-private/private-cmndline.cc
@@ -131,6 +131,11 @@ static bool addArgumentsAPTConfig(std::vector<CommandLine::Args> &Args, char con
return true;
}
/*}}}*/
+static bool addArgumentsAPTDumpSolver(std::vector<CommandLine::Args> &, char const * const)/*{{{*/
+{
+ return true;
+}
+ /*}}}*/
static bool addArgumentsAPTExtractTemplates(std::vector<CommandLine::Args> &Args, char const * const)/*{{{*/
{
addArg('t',"tempdir","APT::ExtractTemplates::TempDir",CommandLine::HasArg);
@@ -347,6 +352,7 @@ std::vector<CommandLine::Args> getCommandArgs(APT_CMD const Program, char const
case APT_CMD::APT_CACHE: addArgumentsAPTCache(Args, Cmd); break;
case APT_CMD::APT_CDROM: addArgumentsAPTCDROM(Args, Cmd); break;
case APT_CMD::APT_CONFIG: addArgumentsAPTConfig(Args, Cmd); break;
+ case APT_CMD::APT_DUMP_SOLVER: addArgumentsAPTDumpSolver(Args, Cmd); break;
case APT_CMD::APT_EXTRACTTEMPLATES: addArgumentsAPTExtractTemplates(Args, Cmd); break;
case APT_CMD::APT_FTPARCHIVE: addArgumentsAPTFTPArchive(Args, Cmd); break;
case APT_CMD::APT_HELPER: addArgumentsAPTHelper(Args, Cmd); break;
@@ -402,6 +408,7 @@ static bool ShowCommonHelp(APT_CMD const Binary, CommandLine &CmdL, std::vector<
case APT_CMD::APT_CACHE: cmd = "apt-cache(8)"; break;
case APT_CMD::APT_CDROM: cmd = "apt-cdrom(8)"; break;
case APT_CMD::APT_CONFIG: cmd = "apt-config(8)"; break;
+ case APT_CMD::APT_DUMP_SOLVER: cmd = nullptr; break;
case APT_CMD::APT_EXTRACTTEMPLATES: cmd = "apt-extracttemplates(1)"; break;
case APT_CMD::APT_FTPARCHIVE: cmd = "apt-ftparchive(1)"; break;
case APT_CMD::APT_GET: cmd = "apt-get(8)"; break;
@@ -412,14 +419,15 @@ static bool ShowCommonHelp(APT_CMD const Binary, CommandLine &CmdL, std::vector<
}
if (cmd != nullptr)
ioprintf(std::cout, _("See %s for more information about the available commands."), cmd);
- std::cout << std::endl <<
- _("Configuration options and syntax is detailed in apt.conf(5).\n"
- "Information about how to configure sources can be found in sources.list(5).\n"
- "Package and version choices can be expressed via apt_preferences(5).\n"
- "Security details are available in apt-secure(8).\n");
+ if (Binary != APT_CMD::APT_DUMP_SOLVER && Binary != APT_CMD::APT_INTERNAL_SOLVER)
+ std::cout << std::endl <<
+ _("Configuration options and syntax is detailed in apt.conf(5).\n"
+ "Information about how to configure sources can be found in sources.list(5).\n"
+ "Package and version choices can be expressed via apt_preferences(5).\n"
+ "Security details are available in apt-secure(8).\n");
if (Binary == APT_CMD::APT_GET || Binary == APT_CMD::APT)
std::cout << std::right << std::setw(70) << _("This APT has Super Cow Powers.") << std::endl;
- else if (Binary == APT_CMD::APT_HELPER)
+ else if (Binary == APT_CMD::APT_HELPER || Binary == APT_CMD::APT_DUMP_SOLVER)
std::cout << std::right << std::setw(70) << _("This APT helper has Super Meep Powers.") << std::endl;
return true;
}
diff --git a/apt-private/private-cmndline.h b/apt-private/private-cmndline.h
index 6235ef9f5..c0c5a7455 100644
--- a/apt-private/private-cmndline.h
+++ b/apt-private/private-cmndline.h
@@ -21,6 +21,7 @@ enum class APT_CMD {
APT_INTERNAL_SOLVER,
APT_MARK,
APT_SORTPKG,
+ APT_DUMP_SOLVER,
};
struct aptDispatchWithHelp
{
diff --git a/apt-private/private-main.cc b/apt-private/private-main.cc
index d6517dd2a..5a5940b7e 100644
--- a/apt-private/private-main.cc
+++ b/apt-private/private-main.cc
@@ -34,6 +34,7 @@ void InitLocale(APT_CMD const binary) /*{{{*/
case APT_CMD::APT_MARK:
textdomain("apt");
break;
+ case APT_CMD::APT_DUMP_SOLVER:
case APT_CMD::APT_EXTRACTTEMPLATES:
case APT_CMD::APT_FTPARCHIVE:
case APT_CMD::APT_INTERNAL_SOLVER: