From 5fddde78ad15e1f6160f65465139d2c1e416d047 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Fri, 8 Jan 2021 13:22:30 +0100 Subject: Only autoremove kernels in apt(8); respect --no-auto-remove Automatically removing kernels in apt-get could be unexpected, so limit it to apt for now. To handle --no-auto-remove correctly, rewrite the hack that makes apt ignore APT::Get::AutomaticRemove options from config files such that it unsets the option. This then means we can do FindB("APT::Get::AutomaticRemove", true) as the default for APT::Get::AutomaticRemove::Kernels and get the behavior we want: If you set --no-auto-remove, it is respected as that FindB returns false; if you don't set it, it will be true. --- apt-private/private-cmndline.cc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'apt-private/private-cmndline.cc') diff --git a/apt-private/private-cmndline.cc b/apt-private/private-cmndline.cc index 588dea06b..2049842db 100644 --- a/apt-private/private-cmndline.cc +++ b/apt-private/private-cmndline.cc @@ -506,8 +506,7 @@ static void BinaryCommandSpecificConfiguration(char const * const Binary, char c // we support it anyhow, but allow it on the commandline to take effect // even through it isn't documented as a user who doesn't want it wouldn't // ask for it - _config->Set("Binary::apt-get::APT::Get::AutomaticRemove", false); - _config->Set("Binary::apt::APT::Get::AutomaticRemove", false); + _config->Set("APT::Get::AutomaticRemove", ""); } } #undef CmdMatches -- cgit v1.2.3