Mozilla reboots with Firefox 57
Breakthrough

What’s new in Firefox 57 Quantum – and why does it matter so much?
Firefox 57 Quantum is probably the most important release in the Mozilla browser's 15-year history. Firefox 57 (FF57) is the biggest upgrade cycle yet for Firefox and the stakes are high: Public acceptance of FF57 is important for Mozilla's future health.
Market observers say the overall Firefox marketshare is somewhere between 8 and 12 percent. By comparison, Google Chrome weighs in closer to 60 percent. Firefox fares better within the Linux community, though, where many users prefer it for ideological reasons while others are attracted to its impressive range of extensions. But even among the Linux crowd, Chrome has been closing the gap in recent years.
Setting the Stage
One mistake Mozilla made was the failed excursion into Firefox OS. Mozilla spent a great deal of money on the ill-fated mobile OS, and the Firefox OS effort used up valuable developer resources, thus slowing down work on Mozilla's flagship browser. In addition, integrating the online bookmarking service Pocket and the WebRTC service Hello added more bloat. Mozilla also annoyed some customers by displaying ads on the New Tab page and by collecting too much data.
However, the biggest reason for Firefox's decline in popularity is its 15-year-old technical substructure, which locked the entire browser into a single process. Chrome, which benefits from a more modern architecture, has gained a reputation for offering better performance.
The Firefox developers have known for years that they must take action if they want to keep the browser relevant for a new generation of users.
Over the last several years, Firefox has gradually undergone some extensive modifications. Firefox developers have been slowly completing revisions that have been in the experimental phase for years, including the Servo browser engine written in Rust [1].
The browser has also undergone two facelifts. The first new design – and the start of an unprecedented overhaul – was known as Australis [2]. Originally planned for Firefox 24, Australis only appeared with Firefox 28 in April 2014. The overhaul still divides the user base today, but it succeeded in delivering a more usable and feature-rich interface.
Work on the Servo browser engine began in 2012. The developers leveraged the parallelization capabilities of Rust, which is syntactically similar to C, to enable a multiprocess architecture with multiple threads on several cores, as well as GPU-supported browsing.
With the Servo engine, Firefox moved away from the single-process architecture that prevented it from keeping up with the speed and stability of other modern browsers. Rust is faster than C++; it also makes applications less vulnerable by preventing memory access errors and buffer overflows. At the same time, Rust is designed to rule out the most frequent causes of crashes and avoid race conditions.
Servo is not fully implemented in the official Firefox release version; however, Mozilla began using parts of Servo in its previous web engine, Gecko, some time ago. The first component to replace the previous C++ code in Firefox 48 (FF48) was the MP4 metadata parser. Replacing the metadata parser let the developers leverage Rust's security benefits in an area that is constantly under attack.
Quantum Brings Everything Together
Over a year ago, Mozilla released the Quantum [3] project, a new web engine bolstered with Servo technologies. Quantum's goal is to provide a foundation for multiprocessing that will improve performance, as well as prevent a frozen tab or a crashed web page from paralyzing the entire browser.
A subset of Quantum called Electrolysis has actually been around since 2009 (E10S) [4]. Development was interrupted several times and then picked up speed again in 2014 with a strengthened team. In FF48, a very limited number of users were allowed to test the new architecture, but only without add-ons. At first, only two processes were used, one each for the interface and content. E10S was successively distributed to other users in later releases. The goal was sandboxing for tabs and isolation of extensions in separate processes. In FF57, the developers have further strengthened the sandbox to avoid endangering the entire system in the event of a security threat. It is thus no longer possible for the sandbox to access your home directory.
Add-Ons and Other Changes
Mozilla has also been working to make Firefox extensions more compatible with other browsers, which will make it easier to develop add-ons. The name of the project behind this change is WebExtensions API [5]. Many developers have complained that Mozilla mainly provides high-level APIs, while many add-ons require low-level APIs. The WebExtensions API, which is required for FF57 onwards, forces you to convert all add-ons to the new system. Most of the widely used extensions are available now in WebExtensions format, but the change has caused some programmers to walk away from Firefox add-on development. Others have tried to rewrite their extensions, but have failed because of missing or incomplete interfaces.
Many users have been worried about preserving their favorite add-ons. Add-on support is especially important for Mozilla because its popular extension library is one of the main reasons for using Firefox.
As of FF57, popular add-ons, such as DownThemAll, Beyond Australis, OmniSidebar, Puzzle Bars, Classic Toolbar Buttons, and Forecast Plus, are no longer available, at least for the time being. Other popular add-ons, such as Tab Mix Plus (Figure 1), are in transition to the new format.

However, in the long run, the switch to the new add-on architecture appears to be an essential step. The previously used technologies, such as the XML User Interface Language (XUL), were outdated and incompatible with other extension standards, often causing browser crashes.
With the Photon UI [6] project, developers have modified the user interface, menus, and settings. Among other things, Photon UI is intended to work better with high-resolution displays. In addition, the technology detects whether the input comes from a mouse or a touch screen and adjusts the menu sizes accordingly. Here, too, the developers initially faced rejection.
A new CSS engine written in Rust runs in parallel on several CPU cores, both on the desktop and on mobile devices. In recent months, the developers have also eliminated almost 500 bugs that affected browser performance.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you've found an article to be beneficial.
News
-
2024 Open Source Professionals Job Survey Now Open
Share your expectations regarding open source jobs.
-
Arch Linux 2023.12.01 Released with a Much-Improved Installer
If you've ever wanted to install Arch Linux, now is your time. With the latest release, the archinstall script vastly simplifies the process.
-
Zorin OS 17 Beta Available for Testing
The upcoming version of Zorin OS includes plenty of improvements to take your PC to a whole new level of user-friendliness.
-
Red Hat Migrates RHEL from Xorg to Wayland
If you've been wondering when Xorg will finally be a thing of the past, wonder no more, as Red Hat has made it clear.
-
PipeWire 1.0 Officially Released
PipeWire was created to take the place of the oft-troubled PulseAudio and has finally reached the 1.0 status as a major update with plenty of improvements and the usual bug fixes.
-
Rocky Linux 9.3 Available for Download
The latest version of the RHEL alternative is now available and brings back cloud and container images for ppc64le along with plenty of new features and fixes.
-
Ubuntu Budgie Shifts How to Tackle Wayland
Ubuntu Budgie has yet to make the switch to Wayland but with a change in approaches, they're finally on track to making it happen.
-
TUXEDO's New Ultraportable Linux Workstation Released
The TUXEDO Pulse 14 blends portability with power, thanks to the AMD Ryzen 7 7840HS CPU.
-
AlmaLinux Will No Longer Be "Just Another RHEL Clone"
With the release of AlmaLinux 9.3, the distribution will be built entirely from upstream sources.
-
elementary OS 8 Has a Big Surprise in Store
When elementary OS 8 finally arrives, it will not only be based on Ubuntu 24.04 but it will also default to Wayland for better performance and security.