dpkg does not know how to sort -rc and -trunk suffixes as we want.
Also, we were using the deprecated '>' version operator which will
trigger warnings in newer versions of dpkg.
Closes: #770394, #795837
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
debian/control | 2 +-
update-initramfs | 22 +---------------------
2 files changed, 2 insertions(+), 22 deletions(-)
diff --git a/debian/control b/debian/control
index 4da3477..67f5c5f 100644
--- a/debian/control
+++ b/debian/control
@@ -11,7 +11,7 @@ Vcs-Git: https://anonscm.debian.org/git/kernel/initramfs-tools.git
Package: initramfs-tools
Architecture: all
Multi-Arch: foreign
-Depends: initramfs-tools-core, ${misc:Depends}
+Depends: initramfs-tools-core, linux-base, ${misc:Depends}
Suggests: bash-completion
Provides: linux-initramfs-tool
Conflicts: linux-initramfs-tool, usplash (<< 0.5.50)
diff --git a/update-initramfs b/update-initramfs
index ea301ba..487b785 100755
--- a/update-initramfs
+++ b/update-initramfs
@@ -228,27 +228,7 @@ ro_boot_check()
get_sorted_versions()
{
- version_list=""
-
- for gsv_x in "${STATEDIR}"/*; do
- gsv_x="$(basename "${gsv_x}")"
- if [ "${gsv_x}" = '*' ]; then
- return 0
- fi
- worklist=""
- for gsv_i in $version_list; do
- if dpkg --compare-versions "${gsv_x}" '>' "${gsv_i}" 2>/dev/null; then
- worklist="${worklist} ${gsv_x} ${gsv_i}"
- gsv_x=""
- else
- worklist="${worklist} ${gsv_i}"
- fi
- done
- if [ "${gsv_x}" != "" ]; then
- worklist="${worklist} ${gsv_x}"
- fi
- version_list="${worklist}"
- done
+ version_list="$(ls -1 "${STATEDIR}" | linux-version sort --reverse)"
verbose "Available versions: ${version_list}"
}
--
Ben Hutchings
Life would be so much easier if we could look at the source code.Attachment:
signature.asc
Description: This is a digitally signed message part