From e250646e7cc99df9bb617c28d13c327ff79ab601 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 19 Jun 2009 18:25:38 +0100 Subject: [PATCH] Supermin: choose newest available kernel. --- appliance/libguestfs-supermin-helper.in | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/appliance/libguestfs-supermin-helper.in b/appliance/libguestfs-supermin-helper.in index 87fb688..d7c8d96 100755 --- a/appliance/libguestfs-supermin-helper.in +++ b/appliance/libguestfs-supermin-helper.in @@ -29,11 +29,13 @@ sourcedir=$(cd "$1" > /dev/null; pwd) kernel="$2" initrd="$3" -# Look for the kernel first. This is very unsophisticated: We -# just look for any kernel named vmlinuz-*.$host_cpu which has a -# corresponding /lib/modules/*.$host_cpu directory. +# Kernel: +# Look for any kernel named vmlinuz-*.$host_cpu* which has +# a corresponding /lib/modules/*.$host_cpu* directory. +# However by sorting on reverse version (ls -vr) we ensure +# we choose the newest kernels. -for f in /boot/vmlinuz-*.@host_cpu@; do +for f in $(ls -1vr /boot/vmlinuz-*.@host_cpu@* | grep -v xen); do b=$(basename "$f") b=$(echo "$b" | sed 's,vmlinuz-,,') modpath="/lib/modules/$b" -- 1.8.3.1