summaryrefslogtreecommitdiff
path: root/apt-pkg/solver3.h
diff options
context:
space:
mode:
authorJulian Andres Klode <julian.klode@canonical.com>2025-02-11 12:11:20 +0100
committerJulian Andres Klode <julian.klode@canonical.com>2025-02-14 19:08:45 +0100
commit4c48b5618ba15d4e33625cec81843891910e81a2 (patch)
tree5842b632b56cae8debd582c9a9870feeee4d2f57 /apt-pkg/solver3.h
parent9b8aaaa7abbf36d937dbf7160caa2d9c7c92871f (diff)
solver3: Defer 3.0 'deep' autoremoval to 3.1, fix autoremove
Restore the depcache's MarkRequired logic for 3.0 solver; and change the MarkInstall() call to pass a more correct value for FromUser, to not override an existing automatic status.
Diffstat (limited to 'apt-pkg/solver3.h')
-rw-r--r--apt-pkg/solver3.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/apt-pkg/solver3.h b/apt-pkg/solver3.h
index 91b852c98..93e4e5116 100644
--- a/apt-pkg/solver3.h
+++ b/apt-pkg/solver3.h
@@ -217,10 +217,11 @@ class Solver
time_t startTime;
/// Various configuration options
+ std::string version{_config->Find("APT::Solver", "3.0")};
// \brief Debug level
int debug{_config->FindI("Debug::APT::Solver")};
// \brief If set, we try to keep automatically installed packages installed.
- bool KeepAuto{not _config->FindB("APT::Get::AutomaticRemove")};
+ bool KeepAuto{version == "3.0" || not _config->FindB("APT::Get::AutomaticRemove")};
// \brief Determines if we are in upgrade mode.
bool IsUpgrade{_config->FindB("APT::Solver::Upgrade", false)};
// \brief If set, removals are allowed.