Updating to Firefox 96

Yesterday we announced a new partnership with Mozilla and a transition to Mozilla default settings in Firefox 96. If you didn’t read this announcement yet, please visit https://blog.linuxmint.com/?p=4244.

Today, in preparation for Firefox 96 I want to make one more blog post, this time to talk specifically about technical details and to help people before, through and after the transition.

Firefox 96 is out today but we’ll publish the update on Friday January 14th. This will give everyone a few days to read this post, prepare for the update and get an opportunity to ask questions and seek help before the transition.

Introduction

Impacted releases

This post is relevant for users of Linux Mint 19x, 20, 20.1, 20.2 and LMDE 4.

In Linux Mint 20.3 the transition already took place with Firefox 95 during the BETA (https://github.com/linuxmint/mint20.3-beta/issues/47).

Impacted browsers

Only the repository version of Firefox is impacted.

The flatpak version of Firefox already uses the Mozilla default settings. The Mozilla version (downloaded from their site) obviously also already uses it as well, and so do versions from PPA (ESR or not).

Other browsers are not impacted.

Nature of the changes

If you used Firefox in Windows or other Linux distributions you’re already familiar with Mozilla’s default settings.

We’re transitioning towards the same configuration as the one which is used everywhere else. The most noticeable changes are the search engines, the start page, and the preferences settings.

Impact on configuration (technical explanation)

The main impact is on the configuration. Because of the way settings work in Firefox, only settings which value is different from the default value are actually stored in your profile. As the default value changes, you can lose some configuration.

Say a particular setting defaults to A in Linux Mint but B in Mozilla. If you set it to C, then your profile contains a custom value. As we transition the default from A to B, you keep your C custom value.

Now, say you have it set to A. Since it’s identical to the default value, it is not custom, and so it’s not stored in your profile. To you it may look like something you set, but really you’re just using the default value, so this is actually not “set”. As we transition the default value from A to B, you simply transition from no custom value to no custom value, and thus also transition from A to B. From your own point of view this can create a gap between your expectation and the resulting configuration.

Before the update

Before the transition, make a backup copy of your profile and perform a system snapshot. This guarantees you’ll be able to go back and essentially removes any risk of losing anything.

System snapshot

To create a snapshot, open Timeshift and hit the Create button.

Profile backup

To make a backup copy of your profile, open a terminal and type:

cp -R .mozilla .mozilla-backup

Custom Policy file

Our packages will provide a policy file in /usr/lib/firefox/distribution/policies.json.

If you created a file under that path, it will be overwritten. Make a copy of it.

After the transition you can place your policy in /etc/firefox/policies instead.

After the update

Review your settings

In Firefox click on Settings and go through the tabs on the left to review your settings.

Set things to your liking and select your favorite search engine.

Spell check and dictionaries

On any website, right-click in a text area (i.e. a zone where you can enter text) and select “Languages”.

If you don’t see your language, select “Add Dictionaries…”.

Alternative solution

Alternatively, reinstall the package for your Firefox language pack. Type this command in a terminal to list your language packs:

dpkg -l firefox-l*

And then for each pack:

apt reinstall pack-name

Replace pack-name with the appropriate pack name. For instance, to reinstall the French language pack in Linux Mint, the command would be:

apt reinstall firefox-locale-fr

If you had added words to your dictionary and they are missing, look for a file called persdict.dat in your profile backup and copy it to your profile.

Custom Chrome CSS

If you had a custom chrome/userContent.css file and it goes missing, copy it over from your backup profile and enable the following setting in about:config:

toolkit.legacyUserProfileCustomizations.stylesheets

Warning messages

Firefox cannot handle its own updates. It doesn’t know how to check the repositories and doesn’t have admin privileges anyway. In Linux Mint this is the job of the Update Manager so Firefox is told not to handle updates.

In the past, this was done via code changes. We patched Firefox not to do it and not to show any warning about it. This is how it is in Debian and Ubuntu as well.

With this transition this is done via a policy file, i.e. via system-wide configuration. Firefox shows the following messages in the preferences and in the about dialog as a result:

These messages can be quite confusing, especially the first one. Please ignore them for now. We’ll be reporting the issue to get it fixed upstream.

Comments section

The comments section on this post is exclusively dedicated to support. If you have questions, or you need help about the technical aspects of this transition then this is the right place.

We can’t “move” off-topic comments to the appropriate post here with WordPress. If something is off-topic we can either let it harm the topic or moderate it. Please respect this so we have this space to interact on support and technical questions don’t get lost.

To talk about Firefox in general or the partnership with Mozilla comment at https://blog.linuxmint.com/?p=4244 instead.

For any other topics use the forums or the other posts on this blog.

Thank you for your understanding and if you’re waiting on this update for your patience. I wish you all a smooth update and I hope you’ll enjoy your experience with Mint and Firefox after this transition as much or even more than before.

Posted by Linux Admin