From d2c0ee0ff7a9afdcdc1605dd464760f98d1b57d7 Mon Sep 17 00:00:00 2001 From: Matthew Booth Date: Tue, 23 Jun 2009 17:35:40 +0100 Subject: [PATCH 1/1] Make the supermin helper look for any x86 kernel If you've got a non-PAE kernel installed on an i686 machine, the kernel architecture is i586. This change makes sure that supermin finds the installed kernel. --- appliance/libguestfs-supermin-helper.in | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/appliance/libguestfs-supermin-helper.in b/appliance/libguestfs-supermin-helper.in index d7c8d96..2afd0cf 100755 --- a/appliance/libguestfs-supermin-helper.in +++ b/appliance/libguestfs-supermin-helper.in @@ -30,12 +30,12 @@ kernel="$2" initrd="$3" # 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. +# Look for the most recent kernel named vmlinuz-*.* which has a +# corresponding directory in /lib/modules/. If the architecture is x86, look +# for any x86 kernel. -for f in $(ls -1vr /boot/vmlinuz-*.@host_cpu@* | grep -v xen); do +arch=$(echo "@host_cpu@" | sed 's/^i.86$/i?86/') +for f in $(ls -1vr /boot/vmlinuz-*.$arch* 2>/dev/null | grep -v xen); do b=$(basename "$f") b=$(echo "$b" | sed 's,vmlinuz-,,') modpath="/lib/modules/$b" -- 1.8.3.1