Before downgrading a single or multiple packages, consider why you wish to do so. If it is due to a bug, search the bug tracker for existing tasks. If there is none, add a new task; it is better to correct bugs, or at least warn other users of possible issues.
- Downgrading one package may require that its dependencies be downgraded as well. When the number of packages to downgrade is large, consider using a snapshot. See Arch Linux Archive#How to restore all packages to a specific date.
- Be careful with changes to configuration files and scripts. For now pacman will handle this for us, as long as we do not bypass its safeguards.
- If the downgrading involve a soname change, all dependency may need downgrading or rebuild too.
Return to an earlier package version
Using the pacman cache
If a package was installed at an earlier stage, and the pacman cache was not cleaned, install an earlier version from
This process will remove the current package and install the older version. Dependency changes will be handled, but pacman will not handle version conflicts. If a library or other package needs to be downgraded with the packages, please be aware that you will have to downgrade this package yourself as well.
# pacman -U /var/cache/pacman/pkg/package-old_version.pkg.tar.xz
Once the package is reverted, temporarily add it to the IgnorePkg section of
pacman.conf, until the difficulty with the updated package is resolved.
Downgrading the kernel
If you are unable to boot after a kernel update, then you can downgrade the kernel via a live CD. Use a fairly recent Arch Linux installation medium. Once it has booted, mount the partition where your system is installed to
/mnt, and if you have
/var on separate partitions, mount them there as well (e.g.
mount /dev/sdc3 /mnt/boot). Then chroot into the system:
# arch-chroot /mnt /bin/bash
Here you can go to
/var/cache/pacman/pkg and downgrade the packages. At least downgrade , and any kernel modules. For example:
# pacman -U linux-3.5.6-1-x86_64.pkg.tar.xz linux-headers-3.5.6-1-x86_64.pkg.tar.xz virtualbox-host-modules-4.2.0-5-x86_64.pkg.tar.xz
Exit the chroot (with
exit), reboot and you should be done.
Arch Linux Archive
Rebuild the package
For packages from the official repositories, retrieve the PKGBUILD with ABS and change the software version. Alternatively, find the package on the Packages website, click "View Changes", and navigate to the desired version. The files are available through a
.tar.gz snapshot, and via the Tree view.
Old AUR packages can be built by checking out an old commit in the AUR package Git repository. For pre-2015 AUR3 PKGBUILDs, see Arch User Repository#Git repositories for AUR3 packages.
The Arch Rollback Machine. See
man downgrade for details.