How to downgrade a package?

I’ve updated my system yesterday and now I’ve got Firefox 90 which has completely broken it’s printing feature.

How can I downgrade to a pre v90 version of firefox?

You can install an older version from your cache, but it might not launch because of dependency versions have also changed.

sudo pacman -U /var/cache/pacman/pkg/firefox-$pkgver*

1 Like

thanks for the amazingly fast reply!

tried what you suggested, though I have problems with depending packages. Can I downgrade them at the same time?

$ sudo pacman -U /var/cache/pacman/pkg/firefox-89.0.2-0.1-x86_64.pkg.tar.zst 
loading packages...
warning: downgrading package firefox (90.0-1 => 89.0.2-0.1)
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing firefox (89.0.2-0.1) breaks dependency 'firefox>=90.0' required by firefox-i18n-de
:: installing firefox (89.0.2-0.1) breaks dependency 'firefox>=90.0' required by firefox-i18n-en-us

ah, yes, I was able to downgrade using this:

$ cd /var/cache/pacman/pkg
$ sudo pacman -U firefox-89.0.2-0.1-x86_64.pkg.tar.zst firefox-i18n-de-89.0.2-1-any.pkg.tar.zst firefox-i18n-en-us-89.0.2-1-any.pkg.tar.zst

But now it doesn’t want to load my profile anymore and I could only start with a different profile :frowning:

image

ahh, there’s an -allow-downgrade parameter :smiley:
https://support.mozilla.org/en-US/questions/1287075

Before I forget again:

Downgrading packages creates what is know as a “partial update” state, which is not supported by Arch or Manjaro.

All the packages in the repository, are built againt what is currently in the repository, which changes all the time on a rolling release. So holding back an update, like you just did by installing an older version, will likely break at some point because of dependency versions changing.

In the example of Firefox, it depends on nss and it can break if nss updates and firefox is not rebuilt againt that version of nss. And downgrading might break other packages depending on that version of nss. And now you are in a loop of partial updated dependencies.

So the general rule is, always update everything. If you don’t like how something changed, it might be time to look for an alternative application or even Operating System.

PS: Firefox 90 is able to print just fine. Just printed one of the webpaged I have open as a test.

3 Likes

well, for me it doesn’t print fine, at least not all pages it did print fine before the upgrade.
And I’m not the only one with this issue:

Luckily for me, for now the downgraded firefox still works on my Manjaro system.

I understand that once it stops beeing so easy to use the previous version by downgrading using the locally cached package (because of more complex dependencies / incompatibilities), I will have to look for alternative solutions.

But I kind of hope they fix the printing feature before that happens.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.