#!/bin/sh

ARCH=`uname -m`
CURRENT_VERSION=`uname -r | sed 's|\.PAE||' | sed 's|xen$|.'$ARCH'|'`
DEFAULT_KERNEL=`grubby --default-kernel 2>/dev/null`
KERNEL_NAME=`uname -r \
  | awk '/PAE$/ { print "kernel-PAE"; next; } { print "kernel" }'`

if [ -z "$DEFAULT_KERNEL" ]; then
  LATEST_PACKAGE=`\
    /usr/bin/rpmquery --qf \
        '%{CHANGELOGTIME} %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n' \
      $KERNEL_NAME 2>/dev/null \
      | sort -n | tail -n 1 | cut -d" " -f2 \
  `
  if [ -z "$LATEST_PACKAGE" ]; then
    # unable to determine lastest kernel, exit silently
    exit 0
  fi
else
  #KERNEL_NAME=`/usr/bin/rpmquery -f --qf '%{NAME}' $DEFAULT_KERNEL`
  #LATEST_PACKAGE=`/usr/bin/rpmquery -f $DEFAULT_KERNEL`
  LATEST_VERSION=`echo $DEFAULT_KERNEL \
    | sed -e 's|\.PAE$||' -e 's|^/boot/vmlinuz-||'
  `
  LATEST_PACKAGE="$KERNEL_NAME-$LATEST_VERSION"
fi

CURRENT_PACKAGE="$KERNEL_NAME-$CURRENT_VERSION"

if [ ! "$CURRENT_PACKAGE" == "$LATEST_PACKAGE" ]; then
  echo "Current: $CURRENT_PACKAGE"
  echo "Latest:  $LATEST_PACKAGE"
  #echo "Status:  REBOOT REQUIRED !!!"
#else
#  echo "Your booted kernel is latest [$CURRENT_PACKAGE]."
fi
