Why does rebooting between Windows and Linux disable all of my extensions? (ESR 38.x.x worked, ESR 45.2.0 doesn't)
Ever since installing Firefox 45.2.0ESR, rebooting between Windows and Linux and running Firefox with the same profile between them disables all of my extensions (in add-ons). In this previous ESR, this did not happen. How can I prevent this behavior? Specifically, I have a profile which I share between my partitions. It is hosted on the Windows partition. A symbolic link is created to it from my Linux /home partition. This setup worked perfectly with all previous ESR's. But now when I reboot between Firefox installs of the same ESR version, all of my extensions are disabled, and I must manually step through re-enabling each one of them.
(And no, I don't want to use any online synchronization services to work around this issue.)
Izabrano rješenje
The extensions were not uninstalled. Nor was Firefox unable to find them. The extensions.json and extensions.ini files were just fine. After all, this approach has worked for me for about 15 years without problems. The extensions also work right, they merely get disabled in the above scenario using the newest versions of Firefox.
Anyway, I figured the answer out on my own. Firefox 44 introduced a feature wherein it disables extensions if it believes that an external program installed the extension. Unfortunately its implementation also disables extensions even if another copy of Firefox "installed" the extensions, and that even goes for if it was the exact same version number of Firefox that installed them. Basically, if anything but that one particular copy of Firefox "installed" the extensions, then the extensions get disabled.
Pročitaj ovaj odgovor u kontekstu 👍 0Svi odgovori (5)
Some add-ons do not work on all systems. Check the support page of the troublemakers.
That's not it. All of the extensions work on the current ESR of Firefox for both Windows and Linux. But when booting from Windows into Linux, /or/ Linux into Windows, Firefox decides it wants to deactivate all of the extensions. There's no message, no warning, it just silently deactivates them all. I then have to go through reactivating each one one-by-one. This happens whenever I switch OS's.
Firefox stores the information about extensions in the extensions.json file. There is also the extensions.ini file that stores the file paths of the extensions. If you double boot an OS then the paths stored in these files will become invalid and how Firefox behaves is unpredictable. It would be safer to use Sync to sync data between profiles.
Odabrano rješenje
The extensions were not uninstalled. Nor was Firefox unable to find them. The extensions.json and extensions.ini files were just fine. After all, this approach has worked for me for about 15 years without problems. The extensions also work right, they merely get disabled in the above scenario using the newest versions of Firefox.
Anyway, I figured the answer out on my own. Firefox 44 introduced a feature wherein it disables extensions if it believes that an external program installed the extension. Unfortunately its implementation also disables extensions even if another copy of Firefox "installed" the extensions, and that even goes for if it was the exact same version number of Firefox that installed them. Basically, if anything but that one particular copy of Firefox "installed" the extensions, then the extensions get disabled.
Extensions installed globally via the Windows registry wont be detected on Linux and will be removed from the installed extensions. If you boot Windows again then there is no guarantee that they will be reinstalled and enabled automatically.