base-files: vkpurge should detect arch specific kernel image (#8360)
On aarch64, kernel images are named `/boot/vmlinux-<version>` rather than `/boot/vmlinuz-<version>`. This update checks which architecture we are running on and selects the appropriate kernel image format. This fixes #7697.
This commit is contained in:
parent
c65ebc73c2
commit
c0e7037941
2 changed files with 9 additions and 4 deletions
|
@ -5,6 +5,11 @@
|
|||
#
|
||||
: ${progname:=$(basename $0)}
|
||||
|
||||
case "$(xbps-uhelper arch)" in
|
||||
aarch64*) KIMAGE="vmlinux";;
|
||||
*) KIMAGE="vmlinuz";;
|
||||
esac
|
||||
|
||||
usage()
|
||||
{
|
||||
cat <<_EOF
|
||||
|
@ -25,7 +30,7 @@ list_kernels()
|
|||
{
|
||||
local k kpkg installed kver _f
|
||||
|
||||
for k in /boot/vmlinuz-*; do
|
||||
for k in /boot/$KIMAGE-*; do
|
||||
_f=$(basename $k)
|
||||
kver=$(echo ${_f}|sed -e 's|-rc|rc|')
|
||||
installed=$(xbps-query -o "$k" 2>/dev/null)
|
||||
|
@ -54,7 +59,7 @@ remove_kernel()
|
|||
local rmkver="$1"
|
||||
local installed f kfile
|
||||
|
||||
if [ ! -f /boot/vmlinuz-${rmkver} -a ! -d /lib/modules/${rmkver} ]; then
|
||||
if [ ! -f /boot/$KIMAGE-${rmkver} -a ! -d /lib/modules/${rmkver} ]; then
|
||||
echo "Kernel ${rmkver} not installed."
|
||||
exit 0
|
||||
fi
|
||||
|
@ -68,7 +73,7 @@ remove_kernel()
|
|||
# Execute pre-remove kernel hooks.
|
||||
run_hooks pre-remove $rmkver
|
||||
# Remove kernel files in /boot.
|
||||
for f in config System.map vmlinuz; do
|
||||
for f in config System.map $KIMAGE; do
|
||||
kfile="/boot/${f}-${rmkver}"
|
||||
[ ! -f "${kfile}" ] && continue
|
||||
echo "Removing ${kfile}..."
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'base-files'
|
||||
pkgname=base-files
|
||||
version=0.139
|
||||
revision=8
|
||||
revision=9
|
||||
bootstrap=yes
|
||||
depends="xbps-triggers"
|
||||
short_desc="Void Linux base system files"
|
||||
|
|
Loading…
Reference in a new issue