Difference between revisions of "Downgrading packages"
Revamped existing content and integrated content from Using_Downgrade into this page
imported>Dalto m (Dalto moved page Downgrading packages with Pacman & friends to Downgrading packages: Made more general) |
imported>Dalto (Revamped existing content and integrated content from Using_Downgrade into this page) |
||
Line 1: | Line 1: | ||
{{warning|Downgrading packages will almost always leave you in an unsupported partial upgrade state. These instructions are intended for advanced users who understand the consequences of downgrading packages}} | |||
__TOC__ | |||
=Introduction= | =Introduction= | ||
There are sometimes circumstances that require downgrading a package temporarily. While this should not be an issue for Manjaro users on the stable branch, it is sometimes needed when using the unstable branch. | |||
=The easy way using downgrade= | |||
'''downgrade''' is an application that helps automate the process of locating and downgrading packages. | |||
==Installing Downgrade== | |||
First you need to install Downgrade, which is available in the official repositories of Manjaro. This can be done with the following command: | |||
pamac install downgrade | |||
==Using Downgrade== | |||
To use '''downgrade''' simply run the command followed by the name of the package you want to downgrade. For example: | |||
downgrade firefox | |||
This will result in output which looks like this: | |||
Available packages: | |||
1) firefox 55.0.3 1 x86_64 (remote) | |||
2) firefox 60.0.1 1 x86_64 (remote) | |||
3) firefox 64.0.2 1 x86_64 (remote) | |||
4) firefox 64.0.2 1 x86_64 (local) | |||
5) firefox 65.0 1 x86_64 (remote) | |||
6) firefox 65.0 2 x86_64 (remote) | |||
7) firefox 65.0.1 1 x86_64 (remote) | |||
8) firefox 65.0.2 1 x86_64 (remote) | |||
- 9) firefox 66.0 0 x86_64 (local) | |||
10) firefox 66.0 1 x86_64 (remote) | |||
11) firefox 66.0.1 1 x86_64 (remote) | |||
12) firefox 66.0.2 1 x86_64 (remote) | |||
13) firefox 66.0.3 1 x86_64 (remote) | |||
14) firefox 66.0.4 1 x86_64 (remote) | |||
+ 15) firefox 66.0.5 1 x86_64 (remote) | |||
+ 16) firefox 66.0.5 1 x86_64 (local) | |||
The entries listed as "local" are versions from your local package cache. The entries identified as "remote" are available from the Arch Linux Archive(ALA). | |||
{{warning|Installing packages from the ALA is inherently dangerous as sometimes Manjaro needs custom versions of certain packages. Doing this can result in a broken system. As a result, downgrading from the ALA is disabled by default on the stable branch. If needed, you can enable it by setting the environment variable <pre>DOWNGRADE_FROM_ALA=1</pre>}} | |||
==Adding packages to the ignore list== | |||
[ | After downgrading the package, you should see a message similar to this: | ||
add firefox to IgnorePkg? [y/n] | |||
If you answer "y", the package will no long be upgraded in future updates until you manually remove it from the '''IgnorePkg''' line of '''/etc/pacman.conf''' | |||
=Downgrading packages manually= | |||
The directory '''/var/cache/pacman/pkg''' contains old versions of packages. First look for the package that you wish to downgrade is this directory then use ```pacman -U``` to install it. For example, it could look like this: | |||
We have to use the following command to install the previously installed version of the packages that need to be downgraded: | |||
sudo pacman -U /var/cache/pacman/pkg/firefox-64.0.2-1-x86_64.pkg.tar.xz | |||
==Ensuring downgraded packages won't be upgraded again== | |||
In order to stop these packages from being upgraded the next time you run updates, you can add them to the ignore list in '''/etc/pacman.conf'''. Look for the section that looks like this: | |||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup | |||
# IgnorePkg = | |||
Remove the comment in front of '''IgnorePkg''' and add the package name to the list. When you are done it should look like this: | |||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup | # Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup | ||
IgnorePkg | IgnorePkg = firefox | ||
Once this is done the package will no long be upgraded in future updates until you manually remove it from the '''IgnorePkg''' line of '''/etc/pacman.conf''' | |||
[[Category:Contents Page]] | [[Category:Contents Page]] |