So basically:
- Update your system, don't reboot yet
mkinitcpio.conf
--> make sure you havemicrocode
after theautodetect
in theHOOKS
line/etc/mkinitcpio.d/<kernel>.preset
--> remove the lineALL_microcode=(/boot/*-ucode.img)
- systemd-boot users:
arch.conf
--> remove or comment out theinitrd /amd-ucode.img (or intel-ucode.img)
line - Run
sudo mkinitcpio -p <kernel>
to generate your new initrd, and then reboot
Optional: run grep microcode /proc/cpuinfo
before and after the reboot to verify that your microcode version hasn't changed after the reboot - which means that the new microcode loading method is working correctly.
On a tangential note, the above is a perfect example of why I don't recommend Arch (and so-called "easy" derivatives like EndeavourOS) for newbies (ie people who don't RTFM / keep up with Arch news / inspect their .pacnew files etc). Feel free to link this post in your future internet arguments. :)