2024-05-19 17:46:25 +02:00
//
2024-05-19 13:05:04 +02:00
// Remember to start writing at line 2. This is my second attempt at Firefox
// autoconfig after being taught by LibreAwoo, but this time I am trying to
// avoid duplicating my browser policy, which you can find from the same
// repository, etc/firefox/policies/policies.json
// If autoconfig is not found, fallback. Also means this file.
2024-05-19 19:38:32 +02:00
lockPref ( "autoadmin.failover_to_cached" , true ) ;
lockPref (
2024-05-19 13:05:04 +02:00
"autoadmin.global_config_url" ,
"https://gitea.blesmrt.net/mikaela/shell-things/raw/branch/master/conf/firefox-forbidden-policies.js" ,
) ;
2024-05-19 19:38:32 +02:00
lockPref ( "autoadmin.offline_failover" , true ) ;
lockPref ( "autoadmin.refresh_interval" , 120 ) ;
2024-05-19 13:05:04 +02:00
// Automatically click cookiebanners although uBlock Origin might block them
2024-05-19 19:38:32 +02:00
lockPref ( "cookiebanners.bannerClicking.enabled" , true ) ;
lockPref ( "cookiebanners.service.mode" , 2 ) ;
lockPref ( "cookiebanners.service.mode.privateBrowsing" , 2 ) ;
2024-05-19 13:05:04 +02:00
2024-05-19 19:19:35 +02:00
// I can set my preferred fonts in an order! :O
// but obviously this is forbidden in policies.json!
2024-05-25 10:53:01 +02:00
lockPref ( "font.default.el" , "serif" ) ;
lockPref ( "font.default.x-cyrillic" , "serif" ) ;
2024-06-09 20:32:52 +02:00
//lockPref("font.default.x-western", "serif");
lockPref ( "font.default.x-western" , "sans-serif" ) ;
2024-05-25 10:26:46 +02:00
// lockPref(
// "font.name-list.monospace.x-cyrillic",
// "Noto Shanns Mono, monospace",
// );
// lockPref("font.name-list.monospace.x-western", "Noto Shanns Mono, monospace");
// lockPref("font.name-list.sans-serif.x-cyrillic", "Noto Sans, sans-serif");
2024-06-09 20:32:52 +02:00
lockPref (
"font.name-list.sans-serif.x-western" ,
"Comic Neue, Liberation Sans, Arimo, Arial, Noto Sans, sans-serif" ,
) ;
2024-05-25 10:26:46 +02:00
// lockPref("font.name-list.serif.x-cyrillic", "Noto Serif, serif");
// lockPref("font.name-list.serif.x-western", "Noto Serif, serif");
clearPref ( "font.name-list.monospace.x-cyrillic" ) ;
2024-06-09 20:32:52 +02:00
//clearPref("font.name-list.monospace.x-western");
2024-05-25 10:26:46 +02:00
clearPref ( "font.name-list.sans-serif.x-cyrillic" ) ;
clearPref ( "font.name-list.sans-serif.x-western" ) ;
clearPref ( "font.name-list.serif.x-cyrillic" ) ;
clearPref ( "font.name-list.serif.x-western" ) ;
2024-05-25 10:47:29 +02:00
//
lockPref ( "font.name.monospace.el" , "Liberation Mono" ) ;
lockPref ( "font.name.monospace.x-cyrillic" , "Liberation Mono" ) ;
lockPref ( "font.name.monospace.x-western" , "Liberation Mono" ) ;
//
2024-06-09 20:32:52 +02:00
//lockPref("font.name.sans-serif.el", "Liberation Sans");
clearPref ( "font.name.sans-serif.el" ) ;
2024-05-25 10:47:29 +02:00
lockPref ( "font.name.sans-serif.x-cyrillic" , "Liberation Sans" ) ;
lockPref ( "font.name.sans-serif.x-western" , "Liberation Sans" ) ;
//
lockPref ( "font.name.serif.el" , "Liberation Serif" ) ;
lockPref ( "font.name.serif.x-cyrillic" , "Liberation Serif" ) ;
lockPref ( "font.name.serif.x-western" , "Liberation Serif" ) ;
2024-06-09 17:39:55 +02:00
// Allow these fonts regardless of the fingerprinting resistance
lockPref (
"font.system.whitelist" ,
"Liberation Serif, Tinos, Times New Roman, Liberation Sans, Arimo, Arial, Liberation Mono, Cousine, Courier New, Noto Sans, Noto Serif, Noto Mono, OpenDyslexic, Noto Emoji, Noto Color Emoji, Comic Neue" ,
) ;
2024-05-19 19:19:35 +02:00
2024-05-19 13:05:04 +02:00
// Play animated images only once, accessibility.
2024-05-19 19:38:32 +02:00
lockPref ( "image.animation.mode" , "once" ) ;
2024-05-19 13:05:04 +02:00
// Spoof en-US as language to scripts
2024-05-19 19:38:32 +02:00
lockPref ( "javascript.use_us_english_locale" , true ) ;
2024-05-19 13:05:04 +02:00
// DNT although PrivacyBadger from policy handles this
2024-05-19 19:38:32 +02:00
lockPref ( "privacy.donottrackheader.enabled" , true ) ;
lockPref ( "privacy.donottrackheader.value" , 1 ) ;
2024-05-19 13:05:04 +02:00
// More tunable privacy.resistfingerprinting. I have lost the privacy game
2024-05-21 16:42:56 +02:00
// many times before this point, so this is nothing. For the options,
// refer to https://searchfox.org/mozilla-central/source/toolkit/components/resistfingerprinting/RFPTargets.inc
lockPref ( "privacy.fingerprintingProtection" , true ) ;
2024-05-19 19:00:31 +02:00
// Somehow I cannot clearPref this, so...
//clearPref("privacy.fingerprintingProtection");
2024-05-21 16:42:56 +02:00
//lockPref("privacy.fingerprintingProtection", false);
pref (
"privacy.fingerprintingProtection.overrides" ,
2024-05-21 17:59:51 +02:00
"+AllTargets,-KeyboardEvents,-SpeechSynthesis,-CSSPrefersColorScheme,-CSSPrefersReducedMotion,-NavigatorUserAgent,-JSDateTimeUTC" ,
2024-05-21 16:42:56 +02:00
) ;
//clearPref("privacy.fingerprintingProtection.overrides");
lockPref ( "privacy.fingerprintingProtection.pbmode" , true ) ;
//clearPref("privacy.fingerprintingProtection.pbmode");
2024-05-19 13:05:04 +02:00
// (Incompatible with the above)
2024-05-21 16:42:56 +02:00
lockPref ( "privacy.resistFingerprinting" , false ) ;
//clearPref("privacy.resistFingerprinting");
lockPref ( "privacy.resistFingerprinting.block_mozAddonManage" , true ) ;
//clearPref("privacy.resistFingerprinting.block_mozAddonManage");
2024-05-19 13:05:04 +02:00
// Letterboxing from Tor Browser, I like it in general.
2024-05-19 17:46:25 +02:00
lockPref ( "privacy.resistFingerprinting.letterboxing" , true ) ;
2024-05-19 13:05:04 +02:00
// Still Incompatible with the above
2024-05-19 19:38:32 +02:00
//lockPref("privacy.resistFingerprinting.pbmode", false);
2024-05-19 17:46:25 +02:00
clearPref ( "privacy.resistFingerprinting.pbmode" ) ;
2024-05-19 13:05:04 +02:00
// Enables reading mode for all pages (at least in theory)
2024-05-19 19:38:32 +02:00
lockPref ( "reader.parse-on-load.force-enabled" , true ) ;
2024-05-19 13:05:04 +02:00
// Ensure OCSP stapling is enabled, especially if the server has it
2024-05-19 19:38:32 +02:00
lockPref ( "security.ssl.enable_ocsp_must_staple" , true ) ;
2024-05-19 13:05:04 +02:00
// TODO: Consider removing this when ESR updates as only it needs this for
// ECH, which is otherwise the default=
2024-05-19 19:38:32 +02:00
lockPref ( "security.tls.ech.grease_http3" , true ) ;
2024-05-19 13:05:04 +02:00
2024-05-23 05:57:13 +02:00
// New sidebar
lockPref ( "sidebar.revamp" , true ) ;
2024-05-19 13:05:04 +02:00
// No making configuration on the last line of the file!
//