Cut power during update, system no longer boots properly

Hi! I’ve been running an EndeavourOS install on my laptop for almost two years, but I’m not too smart or techy.

Yesterday, I ran yay and my laptop froze on one of the last steps. About ten minutes after it froze, I saw that the on-screen clock was wrong. Feeling stuck, I held the power button to cut the power. When I turned it back on… GRUB loaded, I selected the EndeavourOS option, and it told me error: file 'boot/vmlinuz-linux' not found. and that I needed to load the kernel. When I was updating, the kernel was one that had an update available, so I didn’t find this too surprising.

I did a few things trying to fix this on my own in chroot… I reinstalled Linux with sudo pacman -S linux --overwrite '*' and then ran the command to remake the GRUB config. I also tried to yay but it told me that there was nothing to do.

When I pick EndeavourOS in GRUB now, it loads halfway but it stopped after [ OK ] Finished Notify about reboot on special conditions.. Before that, it says that it failed to start Avahi mDNS/DNS-SD Stack, User Login Management, and D-Bus System Message Bus. Various other tasks [ OK ]'d, though.

Not really sure what to do next, I powered off and opened chroot again to run pacman -Qk 2>/dev/null | grep -v ' 0 missing files' at a friend’s suggestion. It output endeavouros-theming: 27 total files, 1 missing file. He also suggested paccheck --list-broken --files which output only endeavouros-theming.

When I tried pacman -S base it skipped a lot of files that were reported as “empty, not checked.” The output of LANG= pacman -Qkk 2>&1 | grep "^warning: .*: /usr/lib.*Size mismatch" | cut -d: -f2 (also run at my friend’s suggestion) was at least 30 lines of jdk17-openjdk and one line of vlc. Also in the upgrade yesterday, I was prompted to replace JRE with JDK (don’t remember clearly, it could have been the reverse) and gave it the okay. Could that be related to this output?

I’m really stumped on what to do next. Any advice would be much appreciated. I’d prefer to be able to recover this two-year-old install if possible… call it sentiment?