linux-surface/pkg/fedora/kernel-surface/files/linux-surface-default-watchdog.sh

24 lines
595 B
Bash
Executable file

#!/bin/bash
set -euo pipefail
# Get list of surface kernels with timestamp
KERNELS="$(
find /boot -maxdepth 1 -name 'vmlinuz-*.surface.*' -print0 | xargs -0 -I '{}' \
stat -c "%W %n" {}
)"
# Sort by timestamp
KERNELS="$(echo "${KERNELS}" | sort -n)"
# Get latest kernel (last line) and extract the path
VMLINUX="$(echo "${KERNELS}" | tail -n1 | cut -d' ' -f2)"
echo "${VMLINUX}"
# update GRUB config
grubby --set-default "$(grub2-mkrelpath "${VMLINUX}")"
# Update timestamp for rEFInd
# Ensure it's marked as latest across all kernels, not just surface ones
touch "${VMLINUX}"