hi. a month ago i ran out of room on my root file system, so relocated /var/cache/pacman to /home, and left behind a symlink. (…) “/var/cache/pacman” is owned by pacman and is supposed to be a directory. If you have removed the directory and create a symlink instead, the next update has simply overwritten it with proper contents. Since it has been overwritten, it’s now an empty directory that contains nothing and pacman can’t find “pacman-5.2.1.6-x86_64.pkg.tar.zst” there. It seems that in the process you have deleted “/usr/bin/pacman” and, because pacman can’t install things from non-existend archive, you are also missing pacman now. Reinstall pacman using Arch ISO.
As for moving the cache, it should be done using `CacheDir` in the config, not through symlink. However, moving it to “/home” seems fishy. Where exactly is it in “/home”? If your private home directory, you are opening yourself to attacks. The cache should be in a location accessible only to the root (or another user has sufficient privileges to run `pacman` without further authentication).