diff --git a/bin/omarchy-update-restart b/bin/omarchy-update-restart index 2f9a93cb..4501212b 100755 --- a/bin/omarchy-update-restart +++ b/bin/omarchy-update-restart @@ -1,9 +1,14 @@ #!/bin/bash -if [ "$(uname -r | sed 's/-arch/\.arch/')" != "$(pacman -Q linux | awk '{print $2}')" ]; then - gum confirm "New Linux kernel requires reboot. Ready?" && omarchy-state clear re*-required && sudo reboot now +# Check for kernel package updates since last boot +boot_time=$(date -d "$(uptime -s)" '+%Y-%m-%d %H:%M') +recent_kernel_updates=$(awk -v boot_time="$boot_time" '$0 >="["boot_time' /var/log/pacman.log | grep -E "\[ALPM\] (upgraded|installed) (linux|linux-zen|linux-lts|linux-hardened)\b" || true) +if [ -n "$recent_kernel_updates" ]; then + gum confirm "Linux kernel has been updated. Reboot?" && omarchy-state clear re*-required && sudo reboot now + elif [ -f "$HOME/.local/state/omarchy/reboot-required" ]; then gum confirm "Updates require reboot. Ready?" && omarchy-state clear re*-required && sudo reboot now + elif [ -f "$HOME/.local/state/omarchy/relaunch-required" ]; then gum confirm "Updates require Hyprland relaunch. Ready?" && omarchy-state clear re*-required && uwsm stop fi