summaryrefslogtreecommitdiff
path: root/debian/apt.auto-removal.sh
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2015-09-10 10:03:40 +0200
committerDavid Kalnischkies <david@kalnischkies.de>2015-09-14 15:22:18 +0200
commit8597ee543a7d1d61450542c61512295f9da4fec4 (patch)
tree031b88dedc12062fe5231b0523d31ed48984d210 /debian/apt.auto-removal.sh
parent9777639ef84917f37b0c225a99676e3f0f85421a (diff)
include debug information in the autoremove-kernels file
Figuring out after the fact what went wrong in the kernel hook is kinda hart, also as the bugreports are usually very lacking on the details front. Collecting the internal variables in the debug output we attach to the generated file might help shine some light on the matter. It's at least not going to hurt…
Diffstat (limited to 'debian/apt.auto-removal.sh')
-rw-r--r--debian/apt.auto-removal.sh26
1 files changed, 23 insertions, 3 deletions
diff --git a/debian/apt.auto-removal.sh b/debian/apt.auto-removal.sh
index f615fa677..6af5da987 100644
--- a/debian/apt.auto-removal.sh
+++ b/debian/apt.auto-removal.sh
@@ -47,13 +47,33 @@ generateconfig() {
APT::NeverAutoRemove
{
EOF
- apt-config dump --no-empty --format '%v%n' 'APT::VersionedKernelPackages' | while read package; do
+ for package in $(apt-config dump --no-empty --format '%v%n' 'APT::VersionedKernelPackages'); do
for kernel in $kernels; do
echo " \"^${package}-${kernel}$\";"
done
done
echo '};'
+ if [ "${APT_AUTO_REMOVAL_KERNELS_DEBUG:-true}" = 'true' ]; then
+ cat <<EOF
+/* Debug information:
+# dpkg list:
+$(dpkg -l | grep '\(linux\|kfreebsd\|gnumach\)-image-')
+# list of installed kernel packages:
+$list
+# list of different kernel versions:
+$debverlist
+# Installing kernel: $installed_version ($1)
+# Running kernel: $running_version ($unamer)
+# Last kernel: $latest_version
+# Previous kernel: $previous_version
+# Kernel versions list to keep:
+$debkernels
+# Kernel packages (version part) to protect:
+$kernels
+*/
+EOF
+ fi
}
-generateconfig > "${config_file}.dpkg-new"
-mv "${config_file}.dpkg-new" "$config_file"
+generateconfig "$@" > "${config_file}.dpkg-new"
+mv -f "${config_file}.dpkg-new" "$config_file"
chmod 444 "$config_file"