Firefox 70

Mozilla’s work to make Firefox robust and fast with all their efforts in Electrolysis, Quantum and Rust created many improvements for every user. With Rust they created a new programming language with multi-treading and security in mind. The long open major bugs are missing hardware acceleration by default and video acceleration on Linux. Milestones:

  • Firefox 65 offers AV1 video support by default and WebP image support
  • Wayland can be enabled with an environment variable
  • Touchscreen can be activated
  • Hardware acceleration can be enabled

Stable channel

sudo pacman -Sy firefox

The developer edition is like the beta version plus several useful development tools integrated into the browser.

sudo pacman -Sy firefox-developer-edition

The Firefox release schedule can be found here https://wiki.mozilla.org/Release_Management/Calendar.

If you are curios about new features and you want to support Firefox testing then you can run the Firefox-Nightly. From my experience it is quite stable, never had real issues running at least in the default configuration, enabling test features will show from time to time some bugs. Firefox-Nightly is always 2 version in front of the stable release and every crash will be reported straight to the developers (if not disabled by the user).

yay firefox-nightly

The key can be added with the following command, if it is unknown and verified.

gpg --recv-keys KEYVALUE

It is recommended to set some environment variables directly by editing the following file:

sudo nano /etc/environment
# Enable Wayland
export MOZ_ENABLE_WAYLAND=1
# For Plasma integration
export GTK_USE_PORTAL=1
# Enable Touchscreen
export MOZ_USE_XINPUT2=1

Firefox Nightly does run now on Plasma on Wayland, but Plasma still has to fix the subsurface bug to avoid that not visible windows overlay currently visible ones.

Bugs

  • Wayland support (https://bugzilla.mozilla.org/show_bug.cgi?id=635134). On Plasma-Wayland 5.12.5 you see just a white empty page in Firefox and you cannot move the mouse https://bugzilla.mozilla.org/show_bug.cgi?id=1444437 and replaced with https://bugzilla.mozilla.org/show_bug.cgi?id=1478283. Now Firefox on Wayland works fine, input works, browsing websites works well, rendering is fine, Gtk sandwich button works, it only is quite in-stable if resizing the window, mouse cursor is too small with scaling enabled, scaling is not considered.
  • Touch screen support/scrolling missing on Linux. Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1268599 and https://bugzilla.mozilla.org/show_bug.cgi?id=1422994. Workaround, add a environement variable, run it from the terminal like this MOZ_USE_XINPUT2=1 firefox-nightly (or adjust the shortcut in the menu).
  • Hardware accelerated rendering is still deactivated on Linux, even for Mesa drivers where issues could be fixed quite fast. Bug https://bugzilla.mozilla.org/show_bug.cgi?id=1280523
  • Video acceleration
  • Native Qt build/better KDE integration – There has been an effort to build Firefox instead with Gtk3 with Qt, but it discontinued. The KDE team started a new approach to better integrate Firefox and to provide native notification and save dialog, but you should install the Plasma extension.
  • Dark Theme Firefox issues on Linux. To make the dark theme work as well in Firefox you need to find a fix for yourself at the moment. It seems to be a common issue with dark GTK themes. Firefox shows dark input fields with dark text (e.g. Google) or white input fields with white texts (e.g. Youtube). This is annoying. To fix this there is a workaround… but sadly not the one from Mozilla:
    1. Go to the folder /home/USERNAME/.mozilla/firefox/PROFILEID.default
    2. Create a folder “chrome” (Firefox is case sensitive)
    3. Create a text file with called “userContent.css” (Firefox is case sensitive)
    4. Insert the following content, save, close Firefox and reopen it:
textarea, input, select {
   background-color: white !important;
   color: black !important;
  -moz-appearance: none !important;
 }

Extensions

  • If you use Firefox on KDE Plasma in version 5.13 or greater, install the extension “Plasma Integration” in Firefox https://addons.mozilla.org/en-US/firefox/addon/plasma-integration/?src=search. Make sure, that you have the package “plasma-browser-integration” installed as well in your Linux distribution. Starting with Firefox 64 you should run Firefox with desktop integration for KDE, run it with e.g. the following command “GTK_USE_PORTAL=1 firefox-nightly”.

Privacy Extensions

  • HTTPS Everywhere – If the site is known to work with HTTPS, Firefox will automatically create an encrypted connection to the server and the certificate is cross checked with the EFF database.
  • uBlock Origin – Block advertising and tracking.
    • uBlock Setting: Block remote fonts, disable Forward local IP address via WebRTC
    • 4rd-party filter: add Adblock Warning Removal List, Basic Tracking List by Disconnect, Mavertising Filters by Disconnect, Malware Filter list by Disconnect, Malware domains (long lived), Fanboy’s Anoyance List, Fanboy’s Social Blocking List, EU: Prebake – Filter obstrusive cookie notices, EasyList COUNTRYNAME
  • uMatrix – Block scripts and content from third party domains
  • Password Hasher Plus (Compatible with Firefox 57+) – With this I don’t need to remember any password anymore and even if there is one bad website developer cracking one of your password he will only see a hash. Basically you can define a Key plus a password to create a unique password based on the website name. At the moment the translation of the password to the hash value is done in the password field and theoretically a bad site could leak the original password, this security issue is investigated, but for now I don’t think it is critical as I’m entering my password only on trusted sites and as without this add-on I would enter anyway my real password and I would even send it to the website.
  • Buster – Captcha Solver for Humans

Comfort Extensions:

  • Easy Youtube Video Downloader Express – Download videos to watch them offline.

Customizing Firefox

  • Block all 3rd party site cookies – Go to Options / Privacy & Security and change the field Accept third-party cookies to Never. Block as well Cryptominers and Fingerprinting (available in Firefox Beta/Nightly 67+)
  • Tracking Protection – Go to Options / Privacy & Security and set Tracking Protection to Always.
  • Hardware accelerated rendering is deactivated in Linux, it can be activated by setting in about:config the key layers.acceleration.force-enabled to true. After restarting Firefox on the page about:support the Compositing should be something like OpenGL.
  • Disable in Options /  General / Use recommended performance settings and enable there use hardware acceleration when available. Here you can increase the threads from 4 to 7 if you have plenty of RAM (key dom.ipc.processCount). You can force enable multi treading (e10s electrolysis) via about:config by setting/creating the key browser.tabs.remote.force-enable to the boolean value true.
  • Remove search engines (only keep privacy respecting engines like DuckDuckGo, Ecosia and Wikipedia).
  • Use Firefox Sync for non-critical data like (Bookmarks, Add-ons, Preferences). I don’t like to sync open tabs as I have a work and private profile. Sync the History is from my point of view not required. Passwords are really critical as they are stored on a web server in the US even if encrypted by your hopefully not cracked password.
  • Decide which Report data you want to send (Health Report, Telemetry and/or Crash Reports, usually I want to provide at least my crash reports)
  • Disable Play DRM Content (digital restriction management, remote media control)
  • Set Prevent accessibility services from accessing your browse to disallow e.g. virus scanners to inspect Firefox with external plugins, helpful on Windows to prevent negative impact of proprietary tools.
  • SSL
    • security.ssl3.rsa_des_ede3_sha = false (it is weak according to http://www.ssllabs.com)
    • security.tls.version.min = 3 (soon Firefox-nightly will disable TLS 1.0 and 1.1)
    • security*_sha => Disable SHA1 that are not required anymore, e.g. DHE
    • Make sure that security.enterprise_roots.enabled is set to false to avoid MITM attacks from corporate firewalls as for security there shouldn’t be anybody listening especially not with the possibility of modifying data.
  • Firefox 62+ offers a new mode to do DNS over https, to enable the test with one DNS over https provider, change the network.trr.mode = 2, network.trr.uri = https://mozilla.cloudflare-dns.com/dns-query and network.trr.bootstrapAddress = 1.1.1.1. https://www.ghacks.net/2018/04/02/configure-dns-over-https-in-firefox. In about:networking in DNS you can review if TRR is used for the DNS requests.
  • browser.tabs.closeTabByDblclick = true, to close tabs with a double click
  • browser.urlbar.clickSelectsAll = true
  • security.tls.version.min = 1 (1=TLS1.0, 2=TLS1.1, 3=TLS1.2, 4=TLS1.3)
  • geo.enabled = FALSE
  • media.peerconnection.enabled = FALSE (It would forward the real IP even if connected via VPN)

Improve privacy settings (ideas):

  • SessionStorage: How to delete the session storage? Bug https://bugzilla.mozilla.org/show_bug.cgi?id=527667
  • Block/delete LSO cookies
  • dom.storage.enabled = FALSE
  • Disconnect (Compatible with Firefox 57+, Webextension) – Block third party content like tracking pictures, enhanced function of the Firefox integrated Tracking Protection.
  • User Agent Switcher (Compatible with Firefox 57+, Webextension) – Change to a commonly used User Agent to reduce the tracking identification.
  • An add-on with a white list for cookies might be helpful, so all cookies that are not whitelisted will be removed when closing Firefox.

Improved features (ideas):

  • Download manager with advanced resume capabilities (DownThemAll or use e.g. the desktop integrated KDE download manager)
  • GNU LibreJS (LEGACY, waiting for update) – Block non-free javascript code by default

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Create a free website or blog at WordPress.com.

Up ↑

%d bloggers like this: