Detailed configuration of the Firefox browser

For a couple of years now, I have been recommending all my friends to use Firefox as a browser for everyday surfing the Internet. I love this browser for its customization flexibility, speed and privacy concerns. Many times on the forums I was asked about some individual cases of setting, so I decided to write an article with a detailed description of the settings, as a cheat sheet for myself and to share it in case of new questions.





I hope it will help a little in popularizing this wonderful browser.





As soon as I had the Internet many years ago, I immediately, on the advice of friends, began to experiment with different browsers. I don’t remember exactly, but I was constantly jumping between the opera and firelis. And then chrome appeared, which was on every corner and climbed from all the cracks. At first he was rather damp, and I often spent time at the firelis, abandoning the opera altogether. But over time, chrome began to work faster and I finally switched only to it. And now a couple of years ago I worked in a company where I had a work laptop with 8 Gb RAM, on ** Ubuntu ** and with a mandatory virtual machine for * Windows *, since the company used * Outlook * and * Skype for Business * ... Of course, I did not work for a long time in such conditions, but while I was working, everything was constantly hanging, chrome with * Intellij Idea * + the virtual machine devoured all memory and leaving * swap * by the evening was a common routine,





Since I had nothing to lose, I decided to try to return to my once favorite browser. And what was my surprise when the speed of  Firefox  ceased to be inferior to chrome. Since I did not use many add-ons, I easily transferred all my bookmarks to the new browser and began to actively use it.





And then another surprise awaited me. My work laptop stopped going to swap every day. I was pleasantly surprised.





During the transition, I came across several articles on customizing  Firefox  and wondered how much more flexible it is than chrome. It is this flexibility that I will try to describe to you.





Setting options

, -, , .  Firefox  . -  Preferences ( ).





Preferences

, . .





  • General -> Fonts & Colors -> Advanced , ,   , . ,  Hack  . , , . ( , ).





  • General -> Network Settings -> Connection settings





  • Search -> Search Bar ,





  • Privacy & security -> Permissions -> Notifications ,





, .





about:config





Firefox ,  about:about





, . , .





  • about:support , user-agent, .





(Profile Directory). , . , , ( ) `/data/data/org.mozilla.firefox/files/mozilla/*.default` 2 - * - ( ) + .default -





  • about:memory , , web frontend





  • about:addons , .





  • about:networking , dns websockets. web .





  • about:config , ,   -





user.js

 user.js  ,  about:support.  about:config. , - , about:config? .





,  about:config   prefs.js  . user.js. ( ), -  user.js. ,  user.js   prefs.js  - , (  prefs.js), , .





, , . ,  Firefox   user.js  , . , , ().





.





 about:config  , .  user.js, , , javascript . :





user_pref("browser.bookmarks.restore_default_bookmarks", false);

      
      



user_pref - , .





, "browser.bookmarks.restore_default_bookmarks" - .





.





, , , /(true/false).





. , .









user_pref("browser.bookmarks.showMobileBookmarks", true);

      
      



, . ()





user_pref("browser.ctrlTab.previews", true);

      
      



. ()





user_pref("browser.download.autohideButton", false);
user_pref("browser.download.panel.shown", true);

      
      



, . ()





user_pref("browser.library.activity-stream.enabled", false);
user_pref("browser.newtabpage.activity-stream.feeds.places", true);
user_pref("browser.newtabpage.activity-stream.feeds.section.highlights", false);
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
user_pref("browser.newtabpage.activity-stream.filterAdult", false);
user_pref("browser.newtabpage.activity-stream.prerender", false);
user_pref("browser.newtabpage.activity-stream.showSponsored", false);
user_pref("browser.newtabpage.activity-stream.telemetry", false);
user_pref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", "");
user_pref("browser.newtabpage.activity-stream.tippyTop.service.endpoint", "");
user_pref("browser.newtabpage.activity-stream.topSitesRows", 3);
user_pref("browser.newtabpage.enhanced", true);

      
      



activity-stream . "newtabpage" - . , "feeds.places", . , , "endpoint" , . , .





user_pref("browser.ping-centre.telemetry", false);

      
      



, . , , . , , . .





user_pref("browser.safebrowsing.blockedURIs.enabled", false);
user_pref("browser.safebrowsing.downloads.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.block_dangerous", false);
user_pref("browser.safebrowsing.downloads.remote.block_dangerous_host", false);
user_pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
user_pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("browser.safebrowsing.enabled", false);
user_pref("browser.safebrowsing.malware.enabled", false);
user_pref("browser.safebrowsing.phishing.enabled", false);
user_pref("browser.safebrowsing.provider.google.advisoryURL", "");
user_pref("browser.safebrowsing.provider.google.gethashURL", "");
user_pref("browser.safebrowsing.provider.google.lists", "");
user_pref("browser.safebrowsing.provider.google.pver", "");
user_pref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.provider.google.reportPhishMistakeURL", "");
user_pref("browser.safebrowsing.provider.google.reportURL", "");
user_pref("browser.safebrowsing.provider.google.updateURL", "");
user_pref("browser.safebrowsing.provider.google4.advisoryName", "");
user_pref("browser.safebrowsing.provider.google4.advisoryURL", "");
user_pref("browser.safebrowsing.provider.google4.dataSharingURL", "");
user_pref("browser.safebrowsing.provider.google4.gethashURL", "");
user_pref("browser.safebrowsing.provider.google4.lastupdatetime", "");
user_pref("browser.safebrowsing.provider.google4.lists", "");
user_pref("browser.safebrowsing.provider.google4.nextupdatetime", "");
user_pref("browser.safebrowsing.provider.google4.pver", "");
user_pref("browser.safebrowsing.provider.google4.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.provider.google4.reportPhishMistakeURL", "");
user_pref("browser.safebrowsing.provider.google4.reportURL", "");
user_pref("browser.safebrowsing.provider.google4.updateURL", "");
user_pref("browser.safebrowsing.provider.mozilla.gethashURL", "");
user_pref("browser.safebrowsing.provider.mozilla.lists", "");
user_pref("browser.safebrowsing.provider.mozilla.pver", "");
user_pref("browser.safebrowsing.provider.mozilla.updateURL", "");

      
      



"safebrowsing" - , . .( @dartraiden ) . . , , Windows, .





user_pref("browser.search.countryCode", "US");
user_pref("browser.search.geoSpecificDefaults", false);
user_pref("browser.search.geoSpecificDefaults.url", "");
user_pref("browser.search.geoip.url", "");
user_pref("browser.search.hiddenOneOffs", "Bing,Amazon.com,Twitter");
user_pref("browser.search.region", "US");
user_pref("geo.wifi.uri", "");

      
      



. US, . ("geo").





user_pref("browser.tabs.loadInBackground", false);
user_pref("browser.tabs.tabMinWidth", 30);
user_pref("browser.tabs.warnOnClose", false);

      
      



. "tabMinWidth". , , .  Firefox  . , , . , , .





user_pref("browser.urlbar.clickSelectsAll", true);
user_pref("browser.urlbar.maxRichResults", 15);
user_pref("browser.urlbar.trimURLs", false);

      
      



, . https .





user_pref("datareporting.healthreport.uploadEnabled", false);
user_pref("datareporting.policy.dataSubmissionEnabled", false);
user_pref("datareporting.policy.firstRunURL", "");

      
      



Mozilla





user_pref("device.sensors.enabled", false);
user_pref("device.sensors.motion.enabled", false);
user_pref("device.sensors.orientation.enabled", false);

      
      



, - .





user_pref("devtools.aboutdebugging.showSystemAddons", true);
user_pref("devtools.onboarding.telemetry.logged", false);
user_pref("devtools.theme", "dark");
user_pref("devtools.toolbox.splitconsoleEnabled", false);

      
      



. ()





user_pref("dom.push.enabled", false);
user_pref("permissions.default.desktop-notification", 2);
user_pref("permissions.default.geo", 2);

      
      







user_pref("experiments.activeExperiment", false);
user_pref("experiments.enabled", false);
user_pref("experiments.supported", false);

      
      



. ).





user_pref("extensions.pocket.enabled", false);
user_pref("extensions.ui.dictionary.hidden", false);
user_pref("extensions.ui.experiment.hidden", true);
user_pref("extensions.ui.locale.hidden", true);
user_pref("extensions.webextensions.remote", true);

      
      



. Pocket .





user_pref("findbar.highlightAll", true);
user_pref("font.internaluseonly.changed", true);
user_pref("font.minimum-size.x-western", 10);
user_pref("font.name.monospace.x-western", "Hack");
user_pref("font.name.sans-serif.x-western", "Hack");
user_pref("font.name.serif.x-western", "Hack");

      
      



, .





user_pref("general.smoothScroll.currentVelocityWeighting", "0");
user_pref("general.smoothScroll.durationToIntervalRatio", 1000);
user_pref("general.smoothScroll.lines.durationMaxMS", 150);
user_pref("general.smoothScroll.lines.durationMinMS", 0);
user_pref("general.smoothScroll.mouseWheel.durationMaxMS", 150);
user_pref("general.smoothScroll.mouseWheel.durationMinMS", 0);
user_pref("general.smoothScroll.mouseWheel.migrationPercent", 0);
user_pref("general.smoothScroll.msdPhysics.continuousMotionMaxDeltaMS", 250);
user_pref("general.smoothScroll.msdPhysics.enabled", true);
user_pref("general.smoothScroll.msdPhysics.motionBeginSpringConstant", 450);
user_pref("general.smoothScroll.msdPhysics.regularSpringConstant", 450);
user_pref("general.smoothScroll.msdPhysics.slowdownMinDeltaMS", 50);
user_pref("general.smoothScroll.msdPhysics.slowdownMinDeltaRatio;0", 4);
user_pref("general.smoothScroll.msdPhysics.slowdownSpringConstant", 5000);
user_pref("general.smoothScroll.other", true);
user_pref("general.smoothScroll.other.durationMaxMS", 150);
user_pref("general.smoothScroll.other.durationMinMS", 0);
user_pref("general.smoothScroll.pages.durationMaxMS", 150);
user_pref("general.smoothScroll.pages.durationMinMS", 0);
user_pref("general.smoothScroll.pixels", true);
user_pref("general.smoothScroll.pixels.durationMaxMS", 150);
user_pref("general.smoothScroll.pixels.durationMinMS", 0);
user_pref("general.smoothScroll.scrollbars.durationMaxMS", 600);
user_pref("general.smoothScroll.scrollbars.durationMinMS", 0);
user_pref("general.smoothScroll.stopDecelerationWeighting", "0.2");

      
      



, .





user_pref("general.useragent.override", "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/64.0");
user_pref("general.useragent.vendor", "");
user_pref("general.useragent.vendorSub", "");

      
      



User agent, ,





user_pref("general.warnOnAboutConfig", false);

      
      



 about:config





user_pref("gfx.use_text_smoothing_setting", true);
user_pref("gfx.webrender.enabled", true);
user_pref("gfx.webrender.highlight-painted-layers", false);
user_pref("layers.acceleration.force-enabled", true);

      
      



.





user_pref("intl.accept_languages", "en-us,en,ru");
user_pref("intl.locale.requested", "en-US");

      
      



, . .





user_pref("layout.css.devPixelsPerPx", "1.25");
user_pref("layout.css.osx-font-smoothing.enabled", true);
user_pref("layout.word_select.stop_at_punctuation", true);

      
      



"devPixelsPerPx". . "1".





user_pref("media.autoplay.enabled", false);
user_pref("media.av1.enabled", true);

      
      



, .  AV1.





user_pref("network.allow-experiments", false);
user_pref("network.cookie.prefsMigrated", true);
user_pref("network.dns.disablePrefetch", true);
user_pref("network.dns.echconfig.enabled", true);
user_pref("network.http.speculative-parallel-limit", 0);
user_pref("network.predictor.enabled", false);
user_pref("network.prefetch-next", false);
user_pref("network.tcp.tcp_fastopen_enable", true);
user_pref("network.trr.mode", 2);
user_pref("network.trr.uri", "https://mozilla.cloudflare-dns.com/dns-query");
user_pref("network.warnOnAboutNetworking", false);

      
      



.





"dns.disablePrefetch" "predictor.enabled" , , - . , , - .





"tcp.tcp_fastopen_enable"  TCP Fast Open "trr.mode"  DNS Over HTTPS. 0 DoH; 1 - DNS DoH, , ; 2 - DoH , DNS ; 3 - DoH; 4 - DoH DNS .





"trr.uri" , IP .





"network.dns.echconfig.enabled"  Encrypted Client Hello





user_pref("privacy.donottrackheader.enabled", true);
user_pref("privacy.firstparty.isolate", true);
//       
user_pref("privacy.resistFingerprinting", true);
user_pref("privacy.resistFingerprinting.autoDeclineNoUserInputCanvasPrompts", false);

      
      



. ,





user_pref("privacy.userContext.enabled", true);
user_pref("privacy.userContext.longPressBehavior", 2);
user_pref("privacy.userContext.ui.enabled", true);

      
      



"userContext"  Multi-Account Containers. () . , . , . ,  Multi-Account Containers, . , , , . .





user_pref("reader.color_scheme", "dark");
user_pref("reader.content_width", 12);

      
      



 Firefox  , , . , , .





user_pref("security.ssl.errorReporting.automatic", true);
user_pref("toolkit.identity.enabled", false);
user_pref("toolkit.telemetry.archive.enabled", false);
user_pref("toolkit.telemetry.bhrPing.enabled", false);
user_pref("toolkit.telemetry.coverage.opt-out", false);
user_pref("toolkit.telemetry.enabled", false);
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false);
user_pref("toolkit.telemetry.hybridContent.enabled", false);
user_pref("toolkit.telemetry.infoURL", "");
user_pref("toolkit.telemetry.newProfilePing.enabled", false);
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
user_pref("toolkit.telemetry.server", "");
user_pref("toolkit.telemetry.shutdownPingSender.enabled", false);
user_pref("toolkit.telemetry.unified", false);
user_pref("toolkit.telemetry.updatePing.enabled", false);

      
      



. :)





user_pref("widget.chrome.allow-gtk-dark-theme", true);
user_pref("widget.content.allow-gtk-dark-theme", true);
// user_pref("widget.content.gtk-theme-override", "Adwaita:light");

      
      



gtk .() , input textarea, , . "widget.content.gtk-theme-override" .





, , )  ShadowFox. . . ,  uBlock  uMatrix





,  Quantum   Xul  WebExtentions, , . , , . , .





, , .





  • user.js





  • Hack Tech News





  • mozilla user.js docs





  • ghacksuserjs





  • CustomCSSforFx ( @agmt)








All Articles