#!/bin/sh
#
#   remove-kernel
#

main()
{
local scriptversion="remove-kernel 0.1.1 (May 2005)"
local fname0=$(basename $0)

if [ "$1" = "" ]; then
	echo $scriptversion
	echo "Usage: $fname0 <kernel-name>"
	echo "Possible values for <kernel-name> (use with caution!):"
	rpmquery -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}\n' | grep kernel-image
	return 1
fi

IsInstalled() {
	rpmquery -q "$1" 2>&1 >/dev/null
}

RemovePackages() {
	sudo -H rpm -e "$@"
}

if ! IsInstalled "$1"; then
	echo "Error: no package $1 installed, exit."
	return 1
fi

local nk=$(rpmquery -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}\n' | grep kernel-image | wc -l)
if [ "$nk" -eq 1 ]; then
	echo -e "ERROR: only one kernel instance found, cannot remove it!!!\a"
	return 1
fi

# return 0

echo "Possibly, 'sudo' asks your password now..."

LANG=en RemovePackages "$1" 2>&1 \
| grep ' needed by ' \
| sed -e 's/.* needed by //' \
| uniq \
| DURING_INSTALL=yes xargs -r RemovePackages \
&& IsInstalled "$1"
&& RemovePackages "$1"

}

main "$@"

## EOF ##
