diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2012-11-05 10:27:17 +0100 |
---|---|---|
committer | Michael Vogt <mvo@debian.org> | 2013-07-11 07:24:39 +0200 |
commit | 94bfdf69d2b2ae7413ad2a3590d41d7de9a4adbe (patch) | |
tree | df800327276ac7c0c6ab7c923d9bfdd37c820d31 /debian/apt.auto-removal.sh | |
parent | bac1fd143d91e1595ef412195f44cfedae42b472 (diff) | |
download | apt-94bfdf69d2b2ae7413ad2a3590d41d7de9a4adbe.tar.gz |
get dpkg from apt-config as well and add robustness against missing/failing apt-config (for paranoia)
Conflicts:
debian/apt.auto-removal.sh
Diffstat (limited to 'debian/apt.auto-removal.sh')
-rw-r--r-- | debian/apt.auto-removal.sh | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/debian/apt.auto-removal.sh b/debian/apt.auto-removal.sh index 598aee1a3..17becd30e 100644 --- a/debian/apt.auto-removal.sh +++ b/debian/apt.auto-removal.sh @@ -21,7 +21,14 @@ set -e # packages in the database because this runs from a postinst script, and apt # will overwrite the db when it exits. -config_file=/etc/apt/apt.conf.d/01autoremove-kernels + +# +eval $(apt-config shell APT_CONF_D Dir::Etc::parts/d) +test -n "${APT_CONF_D}" || APT_CONF_D="/etc/apt/apt.conf.d" +config_file=${APT_CONF_D}/01autoremove-kernels + +eval $(apt-config shell DPKG Dir::bin::dpkg/f) +test -n "$DPKG" || DPKG="/usr/bin/dpkg" installed_version="$1" running_version="$(uname -r)" @@ -32,11 +39,11 @@ version_test_gt () local version_test_gt_sedexp="s/[._-]\(pre\|rc\|test\|git\|old\|trunk\)/~\1/g" local version_a="`echo "$1" | sed -e "$version_test_gt_sedexp"`" local version_b="`echo "$2" | sed -e "$version_test_gt_sedexp"`" - dpkg --compare-versions "$version_a" gt "$version_b" + $DPKG --compare-versions "$version_a" gt "$version_b" return "$?" } -list=$(dpkg -l 'linux-image-[0-9]*'|awk '/^ii/ { print $2 }' | sed -e's/linux-image-//') +list=$($DPKG -l 'linux-image-[0-9]*'|awk '/^ii/ { print $2 }' | sed -e's/linux-image-//') latest_version="" previous_version="" |