From c0e703794103e1001c3d043a52c67ce2c30ce542 Mon Sep 17 00:00:00 2001 From: Peter Bui Date: Sat, 21 Oct 2017 04:00:41 -0400 Subject: [PATCH] base-files: vkpurge should detect arch specific kernel image (#8360) On aarch64, kernel images are named `/boot/vmlinux-` rather than `/boot/vmlinuz-`. This update checks which architecture we are running on and selects the appropriate kernel image format. This fixes #7697. --- srcpkgs/base-files/files/vkpurge | 11 ++++++++--- srcpkgs/base-files/template | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/srcpkgs/base-files/files/vkpurge b/srcpkgs/base-files/files/vkpurge index 6d46d12cad..26fd2ee280 100644 --- a/srcpkgs/base-files/files/vkpurge +++ b/srcpkgs/base-files/files/vkpurge @@ -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}..." diff --git a/srcpkgs/base-files/template b/srcpkgs/base-files/template index 0446ec519f..098f650591 100644 --- a/srcpkgs/base-files/template +++ b/srcpkgs/base-files/template @@ -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"