Fixing a broken system
If you performed a partial upgrade, and the system is broken enough that you are unable to run pacman, boot using a monthly Arch ISO from a USB flash drive, an optical disc or a network with PXE. (Don't follow any of the rest of the installation guide.)
Mount your root filesystem:
[ISO] # mount /dev/rootFilesystemDevice /mnt
Mount any other partitions that you created separately, adding the prefix /mnt to all of them, i.e.:
[ISO] # mount /dev/bootDevice /mnt/boot
Try using your system's pacman:
[ISO] # arch-chroot /mnt
[chroot] # pacman -Syu
If that fails, exit the chroot, and try:
[ISO] # pacman -Syu --sysroot /mnt
If that fails, try:
[ISO] # pacman -Syu --root /mnt --cachedir /mnt/var/cache/pacman/pkg
I followed Mioriin's suggestion and pressed e at the GRUB prompt to edit the config. Then I found the line starting with linux and ending with splash and added a 3 to the end. Then I pressed F10 to boot.
This brought me to a textual TTY screen where I could enter my username/pass and was able to run CLI commands normally. I ran pacman -Syu, hoping that if I let it update itself successfully the problem would magically go away.
It appears that the python package dateutils was installed, and was causing pacman's update to fail. It seems that pacman tries to do big updates in a single transaction, to avoid partial update state due to interruptions, but despite this I think my system got borked by the update attempt.
I uninstalled dateutils with pip uninstall python-dateutils. Then I ran pacman -Syu again and it completed successfully. I ran pacman -Syyu just to make sure that the update was good, and it reported no out-of-date packages. I then also ran pacaur -Syu in the same fashion. After this I checked dateutils with pip list and it appears to have been installed back by the pacman update.
I rebooted and my computer, including GUI, worked as before.
Due to the overabundance of threads on cydia crashing, I have decided to create one large source for fixes. If you have a problem that is not on th...