Compare commits

..

594 Commits

Author SHA1 Message Date
c367beabe3 81-beta 2020-09-23 12:20:59 +00:00
e1d336a178 standardize some error codes
* 0 : successful termination
* 2 : command line syntax error
* 1 : catchall for general errors

Plus a few text improvements based on unmerged PR 4fbb2be98d
2020-09-15 13:36:39 +00:00
ee3e5f0186 v4.12: arkenfox 2020-09-15 12:04:54 +00:00
42b7650d42 v2.8: arkenfox 2020-09-15 11:58:52 +00:00
f61d4a0d38 Update prefsCleaner.sh 2020-09-15 11:55:28 +00:00
7fe9784bf8 we no longer have github pages 2020-09-15 06:18:54 +00:00
ed05c64482 we no longer have github pages 2020-09-15 06:18:33 +00:00
16c3658040 align look with TZP 2020-09-15 06:17:44 +00:00
515d6ff874 v2.3: update repo name 2020-09-15 06:11:35 +00:00
fc65052286 migration: cleanup code references 2020-09-15 06:07:32 +00:00
6a107d4d2f migration: cleanup code references 2020-09-15 06:06:32 +00:00
eff4b74130 migration: cleanup code references 2020-09-15 06:05:33 +00:00
2532ddcc18 update name 2020-09-15 05:59:51 +00:00
44e22835c1 update name 2020-09-15 05:58:39 +00:00
1f545312fd update names + links 2020-09-15 05:57:30 +00:00
637e5964db update links 2020-09-15 05:56:00 +00:00
26bca612d7 rename as arkenfox 2020-09-15 05:54:22 +00:00
6fdda5fb62 rename as arkenfox 2020-09-15 05:53:09 +00:00
ed5b158777 Rename ghacks-clear-RFP-alternatives.js to arkenfox-clear-RFP-alternatives.js 2020-09-15 05:52:28 +00:00
4c4270f1d7 migration changes 2020-09-15 04:33:50 +00:00
af51631597 Update LICENSE.txt 2020-09-15 04:19:03 +00:00
ae0c980d25 migration 2020-09-15 04:15:03 +00:00
3e4c56cf27 arkenfox support
also fixes mixed line endings
2020-09-13 12:16:21 +00:00
18112f9ae8 last F time :) update TZP links 2020-09-11 21:55:12 +00:00
c8eee094e0 update links 2020-09-11 03:23:55 +00:00
78a7c194eb update ref links 2020-09-10 07:33:50 +00:00
f606c8b866 2203 values
see https://bugzilla.mozilla.org/show_bug.cgi?id=1663500 where they reverted https://bugzilla.mozilla.org/show_bug.cgi?id=1661643 where they said value 1 didn't do anything - all changes in FF82, so nothing to see here folks ... move along
2020-09-08 23:49:22 +00:00
9c98972d14 misc2 (#1010)
* forceMediaMemoryCache breakage

* add back ESR68-EOL for prefsCleaner users
2020-09-05 15:42:34 +00:00
75a03df0f7 miscellaneous (#1007)
- less active prefs
   - now that ESR68 is EOL, at least a whopping two (0602, 1273)
   - also I don't know when the default changed - another whopping whole one (1240)
   - and where we do enforce/reset a pref to default, lets say that
   - this is not a definitive list, sing out if there is anything else
- IPv6 info
   - especially for Iron Heart who likes to claim that this pref breaks 5% of sites
- cleanup of settings tags now we only care abut ESR78+
2020-09-05 15:20:46 +00:00
76019e6fbe ESR78 unhidden prefs
also, the note about WebExt + SVG only applies to people using outdated versions .. so that can go too
2020-09-03 13:27:25 +00:00
3c2bd930c3 start 81-alpha, EOL for ESR68 2020-09-03 13:11:16 +00:00
ed993d5502 80 final 2020-09-03 13:04:31 +00:00
22d2d702be 1409: obsolete RFP mention 2020-09-03 13:02:09 +00:00
8dacf6e91f fix typo (#1005) 2020-08-31 21:47:57 +00:00
fbe1d48fe2 2203: open_newwindow values
- FYI: https://bugzilla.mozilla.org/show_bug.cgi?id=1661643
- https://hg.mozilla.org/integration/autoland/rev/12d62b074178
2020-08-31 19:49:00 +00:00
5fd7f6de7e 80-alpha 2020-08-28 18:27:20 +00:00
592b959c24 Updater.sh rework 2 (#1000)
* rework DOWNLOAD_METHOD, download_file, open_file

* remove legacy command leftover line

* return empty string if download fails and return/exit if this happens and show error message

* fix IFS var typo

* bump version

* add quotes

Co-authored-by: TotallyLeGIT <bbkqx24kxlgvgbss@mailban.de>
2020-08-28 10:51:15 +00:00
c6f53c8768 2201 deprecated (dead prefs removed in 82), #979 (#1002) 2020-08-26 11:28:47 +00:00
38d772e4c8 https-only mode updates (#1001) 2020-08-25 14:59:41 +00:00
cfce521919 1409: RFP changes in FF81+ (#998) 2020-08-23 14:37:18 +00:00
a5ab3e23d6 Update README.md 2020-08-22 22:16:27 +00:00
b3eee6c9fd improve readability, remove lots of unnecessary echo commands, remove legacy arguments (#997)
Co-authored-by: TotallyLeGIT <bbkqx24kxlgvgbss@mailban.de>
2020-08-22 12:07:13 +00:00
8d6d17d46b 1244: HTTPS-only mode: FF80+ site exceptions
The option is not shown if https-only-mode is not being applied. I tested with `http://asmjs.org/` since it doesn't redirect/upgrade to secure.
2020-08-21 21:05:08 +00:00
9a37e1340c 0905: add reference, #982 2020-08-20 17:18:22 +00:00
f1e0203ef4 0105b, cleaner value, see #992 2020-08-15 01:56:01 +00:00
726d5bde30 0105b: stop console error, closes #992 2020-08-14 14:12:28 +00:00
f9f0fffd27 Update README.md 2020-08-14 09:01:14 +00:00
93840ca181 0602 not hidden in ESR78 2020-08-13 15:37:25 +00:00
99aa5af356 password master->primary 2020-08-13 15:34:26 +00:00
0358fdac8b 80-alpha 2020-08-13 15:32:45 +00:00
815c3026b5 79 final 2020-08-13 15:30:36 +00:00
5ed3047b7a references cleanup 2020-08-13 15:22:38 +00:00
e16ede1cdf 79-beta 2020-08-13 14:44:27 +00:00
6905187b3e 0207/0208: region/search (#989) 2020-08-13 04:39:38 +00:00
172118e61b RFP+Alts: fixup sequential numbering, see #987 2020-08-05 01:35:10 +00:00
8452edb94b 4600: see #987 2020-08-04 10:25:29 +00:00
0f6957bbd4 4600: add missing version section 2020-08-04 10:18:29 +00:00
8c2bcc0352 1007: bump to 64mb, see #941 2020-08-03 22:50:58 +00:00
bc832575d8 1003: kibibytes 2020-08-03 14:52:21 +00:00
c4b7e07691 4500: site partitioning 2020-08-02 01:47:48 +00:00
58fb1db838 HTTPS-Only Mode UI 2020-08-02 01:27:30 +00:00
2809854802 font visibility / RFP (#985) 2020-08-01 11:03:17 +00:00
091a71aade browser.urlbar.usepreloadedtopurls.enabled 2020-07-29 02:22:09 +00:00
117ab133b1 remove 0809
not deprecated, just hidden: default is false anyway
2020-07-29 02:19:20 +00:00
c4a06c4689 missing comma 2020-07-23 12:23:14 +00:00
0d27689c64 update to ESR78
and this time add the file extension
2020-07-23 12:22:20 +00:00
771e57480a Delete ghacks-clear-RFP-alternatives 2020-07-23 12:21:10 +00:00
f8fd03482d 79 deprecated 2020-07-23 11:19:49 +00:00
10cc1224d0 Create ghacks-clear-removed.js 2020-07-23 11:00:23 +00:00
52926cca7a Delete ghacks-clear-[removed].js 2020-07-23 10:59:19 +00:00
be64819ce7 update to ESR78 2020-07-23 10:58:22 +00:00
24c228df92 update to ESR78 2020-07-23 10:57:12 +00:00
892b3d9d69 Delete ghacks-clear-FF68inclusive-[deprecated].js 2020-07-23 10:53:38 +00:00
df21798b81 Delete ghacks-clear-FF68inclusive-[RFP-alternatives].js 2020-07-23 10:53:25 +00:00
46d03279d3 79 start, fixup 2429 default info 2020-07-22 12:35:13 +00:00
fe0af3bb34 remove 0709 duplicate, 78 final 2020-07-21 10:40:01 +00:00
84997386c1 78-beta 2020-07-20 05:24:18 +00:00
1a389c0214 dnsResolveSingleWordsAfterSearch (#968) 2020-07-10 10:09:13 +00:00
d0060fed3c 2031: use exceptions if you need to, #969 2020-07-08 13:18:38 +00:00
3d18af19e3 various, #959 (#967)
Co-authored-by: rusty-snake
2020-07-05 14:02:25 +00:00
b5b04454e0 0850a search keywords fixup 2020-07-01 03:46:52 +00:00
618f7bed3f 0850a: add top sites FF78+ 2020-06-29 15:49:11 +00:00
488a825626 update weak ciphers/tests etc, closes #931 (#963)
- adds the new tests including the non-JS JA3

Co-authored-by: rusty-snake <41237666+rusty-snake@users.noreply.github.com>
Co-authored-by: earthlng <earthlng@users.noreply.github.com>
2020-06-28 15:48:13 +00:00
aaf6cb33d7 4617 restart
- at least for disabling chrome animations
2020-06-27 12:37:32 +00:00
77ecef8be3 78 deprecated, add 2032 (#962) 2020-06-27 12:16:57 +00:00
4be0a80720 update trac tor tickets (#958)
and some other minor tweaks
2020-06-24 17:26:25 +00:00
f573200aa8 ciphers in ESR78
[1496639](https://bugzilla.mozilla.org/show_bug.cgi?id=1496639)
2020-06-18 02:29:54 +00:00
48f258ff53 start 78-alpha 2020-06-14 10:28:32 +00:00
b9100488cb 77 final 2020-06-14 10:26:10 +00:00
9d78e050ee 77-beta 2020-06-12 17:39:28 +00:00
b07cf1f03d remove extra line from last commit, save one byte 2020-06-05 03:10:09 +00:00
683ef63b37 RFP alts: prefers-reduced-motion 2020-06-05 03:08:16 +00:00
05580f5e99 0709 hotfix, #923, #951 2020-06-02 20:48:41 +00:00
ecc62554e5 2608: remote debugging: default value, closes #950 2020-06-01 15:27:38 +00:00
f6e6de8444 77 deprecated 2020-05-29 12:41:59 +00:00
f69d92e6dd 1244: https upgrade local 2020-05-29 12:23:17 +00:00
3edc48da56 fix updater.sh when dealing with multiple overrides (#947)
thanks @mloberg !
2020-05-26 11:54:55 +00:00
868882ae33 start 77-alpha 2020-05-24 18:11:55 +00:00
ff9bf76e52 76 final, save some bytes in RFP section 2020-05-24 18:09:46 +00:00
4bc5b89cfe 4500: RFP changes 78+ re canvas 2020-05-15 23:18:11 +00:00
bb1e5bfd54 76-beta 2020-05-07 14:56:49 +00:00
27d72eda9e 1244: https-only-mode 2020-05-07 06:20:10 +00:00
07117c65c1 RFP spoofs FF78+ 2020-05-07 05:13:19 +00:00
919d4bfe96 godamnit, also move related reference 2020-05-04 10:52:25 +00:00
e38e253c25 oophs, forgot deprecation source 2020-05-04 10:49:07 +00:00
14aaec71fb 76 deprecated 2020-05-04 07:34:23 +00:00
c0780df24d 1401: PDF breakage, closes #937 2020-04-30 21:50:50 +00:00
0ea1605642 start 76-alpha, 2605 default 2020-04-30 18:52:27 +00:00
bd384622db Update troubleshooter.js (#935)
extensions.blocklist.pingCountTotal is not used anymore in FF76+
2020-04-29 12:00:10 +00:00
3366e0aa16 75 final 2020-04-23 08:52:48 +00:00
W
dff5bb478a 0211: add possible breakage for CJK input methods 2020-04-16 04:04:13 +00:00
d455c500a6 75-beta 2020-04-15 14:44:14 +00:00
b90e72370c 1007 fixup what FF75+ applies to 2020-04-14 00:28:00 +00:00
dd162d9f48 1007 fixups 2020-04-14 00:16:03 +00:00
d7c276b3fe 2402: clipboardevents -> inactive, #887 2020-04-13 06:17:54 +00:00
394b691599 2421: grammar fix 2020-04-13 04:55:10 +00:00
ba83c555cc geo default search engines
browser.search.geoip.url is deprecated in 75, the prefs are only used on first run, and we don't mess with search engines as that is a user choice
2020-04-12 18:10:34 +00:00
b695468c7e remove 0205 2020-04-12 18:07:12 +00:00
deae6e14f9 75 deprecated 2020-04-12 16:38:12 +00:00
97c5378e52 1007: *forceMediaMemoryCache PB mode 2020-04-12 16:23:48 +00:00
d2dd0c2ab4 tls stats update
- Go to https://telemetry.mozilla.org/
- click `measurement dashboard`
- select `SSL_HANDSHAKE_VERSION`

I looked at Nightly 75 (0.26 and 0.01) and Nightly 76 (0.2 and 0)
2020-04-11 02:51:17 +00:00
8c7149c6a5 2421: Ion/JIT trusted principals, closes #914 2020-04-09 06:07:13 +00:00
d2da48c215 revert top sites, see #922 2020-04-08 08:01:07 +00:00
7e71b6663c 75-alpha, add 105e, closes #922 2020-04-08 07:12:14 +00:00
94c83519f2 74 final 2020-04-08 07:08:36 +00:00
e7d20867cb 2623 delegation 2421 ion/jit tweak 2020-04-06 00:39:52 +00:00
55ae994972 2421 fixup Ion/Jit note 2020-03-28 13:18:34 +00:00
f0945743b7 2662: clarify 4503 needed, #912 2020-03-27 16:20:41 +00:00
ee35d7c70d 2421: ion/jit and extensions note 2020-03-27 12:44:06 +00:00
fe1b03bd2a tls downgrades -> session only 2020-03-27 12:36:16 +00:00
187692af66 enforce disabled system + prefixed colors 2020-03-19 11:36:03 +00:00
b6e2a3f64f one of the 2012 webgl prefs deprecated 2020-03-12 14:44:14 +00:00
6f7e09ad43 1704 deprecated, add 1703 2020-03-12 05:23:57 +00:00
4ddf60cf32 0203: make sure users know these are 74+ prefs 2020-03-12 03:56:13 +00:00
24777c9ac2 FF74: 0203 updates (#904) 2020-03-12 03:44:52 +00:00
615ebeda2f start 74-alpha 2020-03-12 03:43:31 +00:00
4139630635 73 final 2020-03-12 03:37:46 +00:00
a542701ba5 Update troubleshooting-help.md 2020-02-25 00:21:42 +00:00
e67a0c868d Update troubleshooting-help.md 2020-02-25 00:20:19 +00:00
1afd52de6e 0306: minor tweak
There is no "show more details about an addon" anymore since they moved to the new html/card layout
2020-02-22 13:56:30 +00:00
64f34f1471 73-beta 2020-02-15 12:55:59 +00:00
5f3e3b2691 VR default prompt, RFP info, start 73-alpha 2020-02-14 01:00:02 +00:00
1ce1f74494 Update user.js 2020-02-12 12:03:29 +00:00
03f558b09c nit: 0517 SETTING
we don't include `Options>` in [SETTING] lines
2020-02-10 17:12:08 +00:00
cd9fc110b0 v1.2
look for `lock` file instead of `webappsstore.sqlite-shm` to detect if firefox is running or not (with this profile)

see https://github.com/ghacksuserjs/ghacks-user.js/pull/405#issuecomment-581447586 and follow-up comments.

Thanks @atomGit for reporting the issue and @rusty-snake for confirming it.
2020-02-10 16:47:17 +00:00
7619e312de 72 final 2020-01-24 16:48:16 +00:00
5d2c5de11c fixup deprecated ESR-cycle version 2020-01-15 02:53:07 +00:00
e1022c2e72 72-beta 2020-01-14 17:38:22 +00:00
e431b324c8 FF72 deprecated 2020-01-08 02:53:25 +00:00
18ad40a5c6 systemUsesDarkTheme -> RFP Alts 2019-12-25 02:14:49 +00:00
315de066ec typo (#870) 2019-12-24 11:49:19 +00:00
85273d0f19 0517: setting tag 2019-12-22 07:13:48 +00:00
ef293b57a7 5000s: add ui.systemUsesDarkTheme 2019-12-22 06:14:25 +00:00
79d316fd22 remove old deprecations 2019-12-19 16:37:19 +00:00
ed60588473 72-alpha start 2019-12-19 16:34:44 +00:00
07c128a190 71 final 2019-12-19 16:31:51 +00:00
5b1d56933b middlemouse.paste, see #735 2019-12-19 16:21:21 +00:00
34cfcedc1b 2402+2403, finally closes #735 2019-12-19 16:19:39 +00:00
f9146fdf24 update setting tags, minor tweaks 2019-12-18 09:46:21 +00:00
a1cdbc8324 1408 graphite, closes #1408 and 2619 puncyode 2019-12-18 07:46:44 +00:00
cd07641a9d 2701: make sure cookieBehavior is always honored (#866)
see #862
2019-12-18 05:02:25 +00:00
9c02949e04 0000: config.xhtml in FF73+ (#865) 2019-12-17 15:00:34 +00:00
1ef62a1036 media.block-autoplay-until-in-foreground #840 2019-12-12 01:24:12 +00:00
5672bc8cc8 2032 removed, 4002 inactive, closes #840 2019-12-12 01:21:17 +00:00
df1732745d 0308: seach engine updates: better info #840 2019-12-10 22:07:23 +00:00
30daf8640c FPI stuff 2019-12-09 20:18:42 +00:00
4074a37e1d 1201 + 1270 update (#859)
trim by a line, remove extra space, fixup on red, indicate it only applies if 1201 is false
2019-12-07 18:26:39 +00:00
97043b0ce1 71-beta 2019-12-06 12:19:21 +00:00
42ea484017 71 deprecated (#856) 2019-12-04 14:13:49 +13:00
3f6340b69c OMG!! 2019-12-03 14:51:44 +00:00
884e84a4cb about:config warning back to the top + active (#855) 2019-12-04 03:44:59 +13:00
560acfc94f 70 final 2019-12-03 07:31:47 +00:00
fb263f5624 favicons: 1031 better info, 1032 inactive #840 (#851) 2019-12-02 23:04:09 +13:00
19b392b83d 70-beta 2019-11-24 05:23:10 +00:00
2db76c95c3 1603: breaks icloud, closes #850 2019-11-23 16:19:09 +00:00
b6fbf77dde Create ghacks-clear-FF68inclusive-[RFP-alternatives].js 2019-11-23 03:04:14 +00:00
a4ba22e912 Delete ghacks-clear-FF60inclusive-[RFP-alternatives].js 2019-11-23 03:02:59 +00:00
163e18ce6d Create ghacks-clear-FF68inclusive-[deprecated].js 2019-11-23 02:57:26 +00:00
a13027905e Delete ghacks-clear-FF60inclusive-[deprecated].js 2019-11-23 02:56:30 +00:00
8f76d9439f 2002: add FF70 bugzilla link 2019-11-22 15:26:38 +00:00
f0980b5cb8 2002: add proxy_only_if_behind_proxy 2019-11-22 15:19:37 +00:00
450c9a9e0f simplify ciphers, closes #839 (#844)
* simplify ciphers

- let's not encourage (remove options 1, 2) changing your cipher suite FP
- remove "it's quite technical ..." (everything is technical to someone), trim to one line
- add test link so users can just see that it's FP'able
- reinforce not to fuck with the cipher suite in the cipher's sub-section
2019-11-23 03:23:08 +13:00
6acfdaccbd RFP stuff 2019-11-20 04:48:15 +00:00
a0e0a2a6c9 2680 tweak #840 2019-11-19 16:26:14 +00:00
f67e729197 whatsNewPanel correct version 2019-11-19 06:39:08 +00:00
19526b573c 2805 note, FPI change (#842) 2019-11-19 16:31:48 +13:00
b0221ec838 1576254 version fixup 2019-11-17 10:33:02 +00:00
a3611b7cf8 changes to prefs affecting extensions
also first word on pdfjs.disabled, to be consistent
2019-11-14 02:39:48 +00:00
bff1e84afa v1.6.0 2019-11-11 15:10:14 +00:00
1d31da40ec missing comma
thanks @sebp  - 0d57cfc44a (commitcomment-35890867)
2019-11-11 13:00:01 +00:00
0d57cfc44a about_newtab_segregation.enabled 2019-11-09 23:25:52 +00:00
0cfb2fb06d 1703: remove
default true since FF61, and ESR60 is now EOL
2019-11-09 23:23:34 +00:00
d5f297ed42 5000s: disable what's new 2019-11-08 18:06:35 +00:00
c13dbdf40d 1201 update (#838)
https://wiki.mozilla.org/Security:Renegotiation describes

> **the new default behaviour** that was introduced in experimental mozilla-central nightly versions on 2010-02-08

where the last step is

> - should the server (or a MITM) request **renegotiation**, Mozilla will terminate the connection with an error message

and then after talking about breakage ...

> The above defaults may break some client/server environments where a Server is still using old software and requires renegotiation.

mentions workarounds to reduce said breakage:

> In order to give such environments a way to keep using Firefox (et.al.) to connect to their vulnerable server infrastructure, the following preferences are available:

specifically talking about the first 2 prefs listed there, one allowing to specify a list of hosts "where renegotiation may be performed" and the 2nd one "completely disables the new protection mechanisms".
But both those prefs were removed in FF38, meaning that since then it's no longer possible to disable the default behaviour that is "should the server (or a MITM) request **renegotiation**, Mozilla will terminate the connection with an error message".

But all of this is about the **re**-negotiation part and not negotiation. And nowhere does it say "insecure" renegotiation, which, as I read it, means that FF will terminate the connection for any kind of **renegotiation**, safe or unsafe.

1201 controls the negotiation part:

> This pref controls the behaviour during the initial negotiation between client and server.
> If set to true, a Mozilla client will reject all connection attempts to servers that are still using the old SSL/TLS protocol and which might be vulnerable to the attack.
> Setting this preference to “true” is the only way to guarantee full protection against the attack.

I think "servers that are still using the old SSL/TLS protocol" actually means servers that **only** support the old protocols.
Servers still supporting those old protocols in addition to some new protocol versions should not be affected by this pref because FF will be able to negotiate to use one of the newer protocol versions.

Ergo lets fix the title and remove the line about renegotiation support because I think that's irrelevant.


ps. the sslpulse link is nice and I'd like to keep it somewhere but it doesn't really fit in 1201 IMO so I moved it to 1202.
2019-11-09 05:42:21 +13:00
6173104a9e re-add relevant deprecated items for ESR users (#837)
makes the prefsCleaner scripts useful again for users updating from ESR60 to ESR68
2019-11-09 05:30:03 +13:00
0c79b8b45b Update README.md 2019-11-08 13:46:20 +00:00
895f8d01d5 FF70+: shield studies no longer tied to FHR (#836)
https://bugzilla.mozilla.org/1569330
2019-11-09 02:01:33 +13:00
65dfad5c76 2701: UI changes 2019-11-06 11:37:24 +00:00
fdaf22780f Update README.md 2019-11-02 16:00:12 +00:00
16756646bb remove DoH, closes #790 2019-10-31 09:49:12 +00:00
e4f80225d8 FF72: FPI & IPv6 2019-10-28 12:12:52 +00:00
67eec9c85c pbmode insecure text/icon
see `1273`
- we already make **all** windows do this (which overrides the pb mode setting), and these were inactive
- in FF70+ the icon pref (for PB mode and all windows) is now default true
2019-10-27 04:50:59 +00:00
539750d2f2 FF70 hidden/default changes 2019-10-27 04:41:27 +00:00
d91226ed55 tweakin' 2019-10-20 23:59:16 +00:00
301fcd059d 1003: capacity no longer hidden 2019-10-20 23:36:48 +00:00
1cc9a08a18 remove ESR60.x deprecated
These are archived in #123
2019-10-20 22:40:53 +00:00
5d1857ddd8 start 70 commits 2019-10-20 22:32:37 +00:00
226af6f679 69 final 2019-10-20 22:20:50 +00:00
7f2c92f654 webgl.dxgl.enabled 2019-10-15 09:28:52 +00:00
5b82afd5bd webgl.dxgl.enabled, closes #814 2019-10-15 09:27:44 +00:00
d7b1877a1f browser.sessionhistory.max_entries see #808 2019-10-14 01:14:50 +00:00
1b6239eab8 remove 0804, closes #808
if anyone can show me how this stops history leaks, then I'll put it back with a note saying it's been broken since FF61
2019-10-14 01:13:27 +00:00
ad0187122d some SB were reinstated, closes #806 2019-10-07 16:20:03 +00:00
624e50faac replace ` with ' 2019-10-05 17:51:34 +00:00
a9e9392172 add some SB back, see #803 2019-10-05 17:47:25 +00:00
201210111e char fix 2019-10-05 15:12:21 +00:00
53f8578749 see #807 2019-10-05 15:09:19 +00:00
dc4d9e4dae revamp 0200s (#807), closes #0806
- split geo related vs language/locale related
- rip out intl.locale.requested
- rip out intl.regional_prefs.use_os_locales
- add intl.charset.fallback.override
2019-10-06 04:04:41 +13:00
e1b0eae740 goodbye http and other stuff (#801)
* goodbye http and other stuff

* dead link

* put back asmjs [1] ref

* 0805 test

* typo

* 1222 refs

* 1222 FF version

FYI: https://bugzilla.mozilla.org/show_bug.cgi?id=629558

* 2684: security delay ref

* ESR stuff

* ping ref

* 2684 ref

* 0606: give the standard it's correct name

https://html.spec.whatwg.org/multipage/links.html#hyperlink-auditing

* 0805 test instructions

* tweakin'
2019-09-21 16:20:10 +00:00
be0ccf6460 2300: service workers, closes #786 2019-09-17 12:43:50 +12:00
7c0a327b06 cache, closes #778 2019-09-16 15:25:30 +00:00
a35cba3914 2651: android UI breakage, closes #795 2019-09-12 16:22:09 +00:00
e16425310f 0320+0321: redundant prefs, #793 2019-09-12 15:52:46 +00:00
d503d96db0 0320+0321: redundant prefs, closes #793 2019-09-12 15:50:54 +00:00
335299a0cf browser.cache.disk_cache_ssl 2019-09-09 21:45:33 +00:00
7311cfdf84 remove 1002, closes #792 2019-09-09 21:43:50 +00:00
3a9440aeea 0707: Add mode 5 (#789) 2019-09-08 11:38:37 +00:00
3210ab0ca8 370: pocket -> 5000s, closes #787 2019-09-07 07:22:32 +00:00
2c734612f6 ummm .. beta
OK, did that all back to front... alpha is when we're working on the diffs .. beta is when we finished it
2019-09-04 21:40:04 +00:00
a12dd83b1f 69-alpha, fixes #766 2019-09-04 21:36:50 +00:00
44d9ceaf05 various tidyups 2019-09-04 01:40:33 +12:00
be9d9ac9ca 2701: tidyup 2019-09-03 03:34:16 +00:00
66cdb72927 FF69: deprecated 2019-09-02 07:07:50 +00:00
953b96431e 4000: RFP info re 1330467
it rode the train in 69... after a bumpy ride in 68 where it was backed out. Note: it still has some issues. Suggest users wipe the site permissions once upgraded to 69
2019-09-02 06:45:30 +00:00
4d72ad90b0 2701: cookies default FF69+ 2019-09-02 18:33:00 +12:00
cccb5b10b4 plugin.sessionPermissionNow.intervalInMinutes 2019-09-01 21:06:10 +00:00
810045eb39 1802: remove intervalInMinues
with `plugins.click_to_play` deprecated in FF69, no-one here is sure if `intervalInMinutes` still applies to Flash or even works, and no-one here cares about Flash. Happy to let Mozilla just keep restricting it more and more until it's deprecated in early 2020. Note: we already disable flash anyway in pref 1803.
2019-09-01 21:03:53 +00:00
b47982bb9a 2030: again 2019-09-01 20:32:53 +00:00
0691b8babe 2032: fix description
from earthlng 
> it blocks **all media** autoplay "until in foreground", not just audio.
> Source: https://dxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/browser-custom-element.js#1141
2019-09-01 19:22:28 +00:00
8d1c95c650 2030: autoplay changes
When ESR60 hits end of life, we should remove that value 2
2019-09-01 19:16:36 +00:00
19484e1a56 2805: see #774 2019-09-01 14:47:17 +00:00
755ebf88fb start 69 commits 2019-09-01 06:27:24 +00:00
d26ea4f39e 68 final 2019-08-31 14:51:08 +00:00
a0f3da208f 0390: better reference
- EFF has pretty pictures and stuff and explains the issues (replaces wikipedia which people can still search for)
- tor issue doesn't hold anything important (out it goes)
- moz wiki page I'll leave in for the bugzilla links if someone wants to research how it's all meant to work
2019-08-28 16:33:06 +00:00
5166811bd5 1003: closes #772 2019-08-21 13:01:12 +00:00
86bfdd1470 tweak: middlemouse.paste for Linux 2019-08-21 04:08:40 +00:00
90ef9e63eb oophs I meant 68-beta 2019-08-19 04:54:30 +00:00
f2200fd442 68-alpha (for earthlng diffs) 2019-08-19 04:52:53 +00:00
aff595b6ea 1704: remove the obvious 2019-08-04 19:17:38 +00:00
6618bf5f76 media.autoplay.allow-muted, closes #756 2019-07-23 14:02:26 +00:00
9aa8e27ef4 68 deprecated 2019-07-17 10:09:39 +00:00
9c782fbf57 2032: add default 2019-07-15 17:07:35 +00:00
931462b30b RFP stuff
https://hg.mozilla.org/mozilla-central/rev/c96e81ba64f3#l1.14
2019-07-15 16:16:39 +00:00
217553b367 dom.forms.datetime
https://bugzilla.mozilla.org/show_bug.cgi?id=1492587
2019-07-15 15:54:23 +00:00
469bbc1ab3 remove 0864 (#760)
https://bugzilla.mozilla.org/show_bug.cgi?id=1492587
2019-07-16 03:49:14 +12:00
11dcc54b61 0321 tweak
`url` and `discover` prefs stop the recommendations, the `enabled` pref hides the leftover recommended section and "Find more add-ons" button
2019-07-09 03:16:40 +00:00
d40d7dbabd 0805 test info 2019-06-30 10:32:38 -03:00
b80c515e88 2010: WebGL setup tag #605 2019-06-29 02:52:41 +00:00
ed735f875c 2001: WebRTC setup tag #605 2019-06-29 02:44:37 +00:00
55b720faec letterboxing, add setup tag see #728 2019-06-28 05:30:43 +00:00
31567c7938 0321: recommendations discovery in about:addons 2019-06-28 05:00:19 +00:00
8f939c91fe 0320: UI change : get add-ons->recommendations 2019-06-28 04:47:55 +00:00
27bd07d496 5000s: userChrome / userContent 2019-06-28 04:22:50 +00:00
42281a9e52 2212: popup events 2019-06-28 04:15:54 +00:00
8f40c97fd1 the return of the jedi
https://bugzilla.mozilla.org/show_bug.cgi?id=1444133
2019-06-28 04:11:46 +00:00
9642452c48 Update troubleshooting-help.md (#749) 2019-06-28 02:30:10 +12:00
8f1c3018ca Update user-js.md (#750) 2019-06-28 02:29:58 +12:00
f85eb9d0c2 update issue templates 2019-06-26 23:09:01 -03:00
408a992893 Update .gitattributes 2019-06-26 13:32:12 +00:00
23c884a5f8 prefs no longer hidden 2019-06-26 10:14:24 +00:00
51089fbad9 start 68-alpha 2019-06-26 10:12:48 +00:00
83b4ada670 67 archive 2019-06-26 09:05:08 +00:00
7df6c676be Update issue templates 2019-06-25 18:59:58 -03:00
e338186953 4500 fix alignment 2019-06-15 16:47:25 +00:00
fa61a7c25b 1202: cleanup
I don't think we need a 4 yr old article to explain the concept of `.min` (or `.max`), it's pretty self explanatory (and SSL 3 is obsolete). Three lines of text culled, and one of the remaining http links eliminated as a bonus. Enjoy the saved bytes and mouse-scrolling.
2019-06-15 16:34:29 +00:00
dafd0894e6 refactoring, mostly
De-duplicates many lines because the -ESR and -RFPalts options require too much boilerplate garbage. The script was unreadable enough without repeating code.

I don't think these changes deserve opening yet another PR, but please let me know if you disagree.
2019-06-12 18:30:08 -03:00
06cf53d63e layout.css.font-loading-api.enabled #744, #731 2019-06-12 13:35:05 +00:00
fc545b4d27 remove 1406 css font loading api #744, #731 2019-06-12 13:33:58 +00:00
3c5f58b812 Update updater.bat 2019-06-12 10:52:46 +00:00
7d7f580bfc add -RFPalts option (#745) 2019-06-12 10:51:25 +00:00
ca5d6b3317 1402: inactive prefs for default fonts, #744 2019-06-11 15:50:08 +00:00
9e7f9de56f remove 1402, see #744 2019-06-11 15:47:34 +00:00
8a204b5db0 font.blacklist.underline_offset, #744 2019-06-11 15:10:44 +00:00
690a93b71d remove: 1407, see #744 2019-06-11 15:09:24 +00:00
0da3835a49 updater.bat -ESR option (#742) 2019-06-11 12:43:27 +00:00
a92c4086bb 2622: middlemouse.paste, closes #735 2019-06-10 00:38:20 +00:00
9b7771fe76 1401: document fonts => active, see #731
- https://github.com/ghacksuserjs/ghacks-user.js/issues/731#issuecomment-500255686
- reverting my change from last release
2019-06-10 00:06:15 +00:00
2265b73521 1406: css.font-loading-api=> inactive, closes #731 2019-06-09 23:56:40 +00:00
01aae1b346 2426: IntersectionObserver=> inactive, closes #737 2019-06-09 23:29:58 +00:00
c2dbdcd4ec toolkit.telemetry.cachedClientID, #739 2019-06-07 17:51:49 +00:00
f53b996cfa toolkit.telemetry.cachedClientID, closes #739
Read the linked issue
2019-06-07 17:49:42 +00:00
a633622d11 67-beta 2019-05-28 14:45:07 +00:00
caaf76e3fb remove 2705 2019-05-28 14:42:44 +00:00
8811a28c56 2705: document.cookie max lifetime
https://bugzilla.mozilla.org/show_bug.cgi?id=1529836
2019-05-28 14:04:09 +00:00
fdc9db9a08 1600s revamp
- no need to enforce defaults (except the second cross-origin) = less items in prefs and about:support
- simplify header info
- add in that you need an extension for real control: i.e for most people, e.g I use uMatrix and have never can to whitelist anything. Kolanich has been on settings of 2 for years and only found one broken site: these are anecdotal and don;t reflect the real world: which is why the settings are pretty relaxed
- move the broken info out of header and onto the pref in a setup tag
- reference: https://github.com/ghacksuserjs/ghacks-user.js/issues/716#issuecomment-488527274
- thanks Kolanich and 🐈
2019-05-26 08:43:12 +00:00
c079c3c632 0110: clean up 2019-05-26 06:07:41 +00:00
6f76a9bfd2 2030 new default 2019-05-26 05:51:13 +00:00
dfab1516ef FF67+ deprecated 2019-05-26 05:33:57 +00:00
57339d09b1 2618 -> RFP ALTs 2019-05-26 05:16:17 +00:00
ed23a88c08 save 87bytes 2019-05-24 22:50:24 +00:00
dae1087082 2660 enabledScopes, closes #729 2019-05-23 21:11:45 +00:00
7a103b0c23 FPI: 1330467 backed out
now that stable has landed.. I'll leave the text in place
2019-05-21 22:23:23 +00:00
5d5a9acaa4 FPI: 69+ isolate pdfjs range-based requests 2019-05-14 06:48:49 +00:00
76c476ee3c 2204: replace [test]
old test: https://developer.mozilla.org/samples/domref/fullscreen.html
- for me the video comes up as "no video with supported format and mime type", so may not be practical for all users
2019-05-12 13:52:53 +00:00
b3c6561ba8 2203: change [test]
It's the same test (thanks gk)
2019-05-12 13:44:12 +00:00
a4c2bb80aa 2429 remove default tag 2019-05-12 02:48:06 +00:00
a173d30d4e RFP 68+ isolate site permissions 2019-05-10 22:34:24 +00:00
fc801db06a RFP stuff 2019-05-08 15:43:41 +00:00
61ce537f20 Delete exceptions03.png 2019-05-08 09:19:55 +00:00
7a766cd2a7 Delete exceptions02.png 2019-05-08 09:19:45 +00:00
842a78692e Delete exceptions01.png 2019-05-08 09:19:32 +00:00
540f5ce868 FF68+ letterboxing changes 2019-05-08 05:18:16 +00:00
be7c50c198 spring cleaning, part 3: closes #716 2019-05-05 17:33:16 +00:00
473e88c784 spring cleaning, part 3: see #716 2019-05-05 17:28:47 +00:00
da4cfce10f RFP: OS spoof changes FF68+ 2019-05-03 13:19:55 +00:00
2a30436905 moar fixups 2019-05-03 07:49:47 +00:00
7f6d7c6a52 fixups 2019-05-03 07:48:12 +00:00
720253eca3 dom.imagecapture.enabled 2019-05-03 07:36:55 +00:00
7394f2f553 2027: remove, #716
default false since forever
2019-05-03 07:36:04 +00:00
ccec62f66b SB reporting URLs, closes #710
- the two reportURLs required the user to actively opt to send a report
- the other five reporting URLs use Mozilla domains, which is not a problem. Not entirely sure if they get used or how, don't care
- the dataSharingURL is not needed, the corresponding .enabled pref is sufficent
2019-05-03 02:09:35 +00:00
329719fe25 0400s: more cleanup, see #710 2019-05-03 02:03:56 +00:00
57f4bd46e9 spring cleaning, closes #716 2019-05-03 00:41:08 +00:00
59a85bcdda spring cleaning, part 2: see #716
- 0910 same as default for desktop. Android is the opposite, must be for a reason. Android is not really my concern.
- 1005: always been inactive: one less warning to deal with
- 1008: always been inactive. defaults are 60, 60
2019-05-03 00:35:04 +00:00
dab27cd143 spring cleaning, part 1: see #716
All of these are the same as default, checked back to ESR60 and Ff60. Except 2211 which is not considered an issue by TB for example, and it doesn't enhance anything IMO
2019-05-03 00:09:05 +00:00
1ff14e31c0 1201: TLS max -> inactive
Lets be consistent, we don't make min active as it alters your FP, and the risk is super low (updated the telemetry stat: down from 2% to 0.5%). Default max is now 4 anyway (don't care about ESR - they should be using the v60 archive).
2019-05-02 00:47:14 +00:00
c55ecbd8b2 0701: IPv6, MOAR info 2019-05-02 00:30:27 +00:00
99eb835e7a merge 0603 + 0608
- also remove reference which is pretty much useless
2019-04-30 14:26:48 +00:00
1e0b3d74f9 browser.urlbar.userMadeSearchSuggestionsChoice
- a user can click the one-off prompt when they first see it
- it's also set when you go changing search suggestions in options
2019-04-30 13:51:13 +00:00
7bb0bfefe1 combine search suggestions, add tag, see #609
also remove `browser.urlbar.userMadeSearchSuggestionsChoice`
2019-04-30 13:46:41 +00:00
f1d28f3878 pedantic aphabetical sorting 2019-04-30 10:10:59 +00:00
57618a31dc fixups 2019-04-30 10:05:03 +00:00
600f9677e9 1820+1825+1830 changes, closes #709 2019-04-30 09:10:42 +00:00
0d40613268 2 x update prefs, see #709 2019-04-30 08:26:59 +00:00
11f40f8a84 1800s remove: gmp/cdm update prefs, see #709 2019-04-30 08:25:06 +00:00
c3a74a7c6e 2615: remove obsolete note
1445942 was resolved in FF66
2019-04-30 07:21:08 +00:00
4dd40bddcc 2 x gmp openh264 2019-04-29 18:22:39 +00:00
9da3cf4be8 1840: openh264: remove, see #709
Instead of being inactive, remove this. WebRTC is already blocked. And it can also be controlled by 1820. Redundant and does nothing extra for privacy, security etc
2019-04-29 18:21:01 +00:00
50869a734f [setup-*] always goes after [notes] 2019-04-29 18:13:47 +00:00
bb788682c9 fixup: remove duplicate pref 2019-04-29 17:44:53 +00:00
50afeb1861 0205: -> inactive, closes #0707 2019-04-29 17:14:23 +00:00
0eb107abf3 3 x plugin prefs, see #714 2019-04-29 11:14:50 +00:00
675577fb8d 1800: remove redundant flash prefs, closes #714 2019-04-29 11:12:05 +00:00
b28677a594 1825: widevine update to inactive, see #709
- at worse, the update pref causes a security risk. I'll leave it in for now
2019-04-29 06:32:47 +00:00
48f3dfec84 browser.safebrowsing.downloads.remote.url 2019-04-29 05:31:17 +00:00
59930d4697 0402, remove redundant pref, see #709 2019-04-29 05:29:53 +00:00
579aa3aa9c 0402: tidy up, see #710 2019-04-29 05:27:16 +00:00
ed687fc7ca 1820: update -> inactive, see #709
At best disabling the background update of gmp means not only an extra item for those who wish to use it (e.g widevine, netflix) to have to deal with, but also a time delay in getting the actual download. At worst, it could cause users to use an old dll (security risk).

I will leave it in, for now, but am seriously considering removing it, so don't cry if I do.
2019-04-29 05:06:43 +00:00
ce3d5a8cbe 24 inactive SB+TP prefs, see #710 2019-04-29 04:52:58 +00:00
8ffbd81813 remove SB & TP see #710
- SB: disabling it nothing to enhance privacy/security etc if changed from default
- SB: I will not provide the prefs or encourage users to disable these, especially given that there is a UI
- SB: the urls are redundant
- SB: note: the binary checks stays
- TP section is out of date (or soon will be), I'm not maintaining it, it has a UI and is best handled there
2019-04-29 04:30:59 +00:00
4119be3a86 typo 2019-04-28 13:10:04 +00:00
8d874401fa pre FF61 deprecated -> archive
This is all archived in the sticky at the end of the first post
2019-04-28 12:56:27 +00:00
b4a4856223 3 x GMP prefs, see #709 2019-04-28 11:12:11 +00:00
8a86097997 1820s: GMP: remove three prefs, see #709 2019-04-28 11:10:15 +00:00
7a9763d129 2740: add setup tag etc, closes #706 2019-04-28 04:30:38 +00:00
a39516ff0e case consistency when using service worker* 2019-04-28 04:02:19 +00:00
3e5e1bfdd2 2740 -> inactive, see #706 2019-04-28 03:48:55 +00:00
7b667db766 2304 + 2305 -> inactive, see #706 2019-04-28 03:37:07 +00:00
8f1a489e36 3 update prefs, see #708 2019-04-28 02:58:35 +00:00
6f8d0263df 0303 + 0304 + 0305: remove, closes #708 2019-04-28 02:55:45 +00:00
25b8b404fb 2305+2306: musical chairs #706 2019-04-27 19:02:14 +00:00
528d0de6b4 2305: permission also applies to push 2019-04-27 17:39:53 +00:00
c9c1671e4a 2010+2012: simplify WebGL, closes #699 2019-04-27 16:18:48 +00:00
8765231de0 0801: keyword.enabled, closes #702
- explain pitfalls, add keyword tip, add setup tag
- given the searchbar is hidden by default in new FF installs, a lot of people could find this incredibly annoying (not being able to hit enter), including users who have changed their search engine - hence the setup tag
2019-04-27 16:12:25 +00:00
e6017af4bd 3 disk cache prefs
see 053808ba97
2019-04-27 14:06:48 +00:00
053808ba97 1001: remove dead wood
- these are not needed, you can view your cache in about:cache, or look at your `profile/cache2` folder (at least for portable Firefox), the remaining pref is enough to achieve the desired result
- browser.cache.disk.smart_size.first_run is set internally (for me it got automatically reset to modified false)
- the other two prefs are just more things for users to have deal with if they want to use disk cache
2019-04-27 14:03:02 +00:00
2d0182ce6e 1001: add setup tag
- remove tag from section header (chrome)
- add tag to pref (perf)
- mention that we clear on close
2019-04-27 13:53:02 +00:00
98f65da430 remove dead setup tags 2019-04-27 07:33:30 +00:00
6a0c44d0a4 2517: should be warning, not setup
If it's inactive then it's a warning. We can still go through the js and add setup-harden tags for a few inactive items, which I will do
2019-04-27 07:03:28 +00:00
882d25f725 2610: SVG: should be warning, not setup 2019-04-27 07:00:40 +00:00
c3210d1be9 1241: insecure passive: add setup tag 2019-04-27 06:55:58 +00:00
d4f7590c83 2212: add setup tag
- doesn't need any more than that. users can fiddle with it to find what works for them: I'm sure this breaks a lot of website "features"
2019-04-24 08:39:11 +00:00
d6ccf7ba64 0860 form history: add setup tag / warning
- Used setup-web since it relates to actual web pages, even though it doesn't break them
- Added the tag because it's an item that is likely to get attention / troubleshooting
- Added a warning tag to make the risk more apparent.
- Slight edit to the 2803 references
2019-04-24 08:12:31 +00:00
0922215670 1840 openh264 -> inactive
WebRTC is already disabled
2019-04-24 07:46:47 +00:00
f849e1c602 WOFF2 -> inactive 2019-04-24 06:39:59 +00:00
986c900193 RFP tidy up 2019-04-23 05:50:35 +00:00
b8367959da mathml: a better test 2019-04-23 05:33:06 +00:00
b05cfc32de HTTP2 tweak 2019-04-23 04:04:22 +00:00
358ddfdfce pdfjs - add setup tag 2019-04-22 15:38:26 +00:00
8a68fc48c5 pdfjs.enableWebGL 2019-04-22 15:21:16 +00:00
87959d621c 2010: remove pdf webgl
it's default false, and I want to simplify webgl 2010+2012
2019-04-22 15:20:16 +00:00
8b07fd57d0 canvas.capturestream.enabled 2019-04-22 14:35:51 +00:00
4989928c1e 2026: remove (canvas.capture*)
Disabled back when first added as a stop gap measure, never checked on since. TB has this at true, so I think we can get rid of it
2019-04-22 14:34:07 +00:00
c2775a3441 0860 form history info, closes #691 2019-04-22 14:15:58 +00:00
50d31a7aa2 2701 cookies add setup-web tag 2019-04-22 13:31:15 +00:00
9fbe3080c5 2651: add setup-chrome tag 2019-04-22 13:28:07 +00:00
8a98cd1890 tidying up 2019-04-22 13:12:47 +00:00
2d62b9f729 2654 (open with) -> inactive 2019-04-22 12:23:39 +00:00
bb7f8df647 2650 -> inactive 2019-04-22 12:16:33 +00:00
373602f0f0 mathml -> inactive 2019-04-22 12:12:30 +00:00
e56665ecd1 HWA -> inactive 2019-04-22 12:05:21 +00:00
59d056de27 document fonts -> inactive 2019-04-22 12:00:46 +00:00
d41372a7f0 2421 should be a warning
it's not setup tag, because any change (it is inactive) does not help performance, in fact the opposite
2019-04-22 11:50:01 +00:00
f62f781645 HTTP2 -> inactive 2019-04-22 11:41:34 +00:00
408d1d0e26 FPI 68+ change 2019-04-19 05:54:57 +00:00
d491cf1e89 readme changes 2019-04-19 02:11:21 +00:00
ca0f2a5a88 0302b-> inactive: ext auto-updates closes #690 2019-04-19 01:39:07 +00:00
fd10c35049 0606 some default info 2019-04-17 03:31:27 +00:00
6ed3581cb0 5000s: CRF 67+ 2019-04-15 16:31:17 +00:00
c2034617f0 2429 default true 67+ 2019-04-15 14:59:23 +00:00
6231d6ebed 5000s add new about:config warning pref 2019-04-15 14:54:55 +00:00
411805b05c 2618 no longer hidden 67+ 2019-04-15 14:49:22 +00:00
8c12f4bb14 1840 no longer hidden 67+ 2019-04-15 14:46:39 +00:00
e3349d0f07 2212 defaults [67+ change] 2019-04-15 14:17:52 +00:00
92082621d6 start 67 commits 2019-04-15 14:15:54 +00:00
54f86f4be6 Update user.js 2019-04-15 12:55:15 +00:00
585415b534 RFP: prefers-color-scheme 67+ 2019-04-11 02:02:26 +00:00
99586c4a3b enabled scopes breakage info, closes #674 2019-04-08 14:24:41 +00:00
8419b4d71b autoplay option "Prompt" was removed in FF66 (#686)
* autoplay option "Prompt" was removed in FF66
source: https://hg.mozilla.org/integration/autoland/rev/2e48b6769911
2019-04-09 01:44:11 +12:00
79e316a26f 2618: better info, #682 2019-04-03 10:50:59 +00:00
26a70f3cd7 2618: setup-chrome tag, closes #682 2019-04-03 10:43:44 +00:00
bee47f33cd 66-beta 2019-03-27 04:35:42 +00:00
2fcec590b4 Update user.js (#676)
- to avoid confusion with the setting tag, split the prefs into separate numbers, thus shove 2031->2031, reuse 2031
- remove the default value notation as Mozilla will roll out default change gradually to users
2019-03-26 19:05:55 +00:00
3c4b312cc7 2030: default didn't change
not putting the setup-web tag back in, as users now have site exceptions
2019-03-19 19:58:15 +00:00
0354895a2e 2030: add [setting] for autoplay 2019-03-19 09:00:39 +00:00
462db2062c 2030: remove setup tag
If Firefox see fit to set this as 1 by now, then breakage is probably rare, and I'm not encouraging users to reduce security/privacy etc from default
2019-03-17 22:43:27 +00:00
d9e24e5095 Update user.js (#667) 2019-03-18 07:07:15 +13:00
b1aa1f5619 2030: default change 2019-03-16 22:51:58 +00:00
a349662f69 66 deprecated prefs 2019-03-16 22:44:24 +00:00
28a7226235 4510: clarify this is the chrome 2019-03-16 22:36:31 +00:00
97f08ad3cd 4504: RFP letterboxing, closes #659 2019-03-16 22:34:45 +00:00
68584a3397 some 2505+RFP clarity, closes #661 2019-03-13 15:15:23 +00:00
8b4f45774a 4607+RFP clarity, closes #656 2019-03-13 14:46:33 +00:00
f8428dcc0a a better test
- more metrics covered/displayed
- test page site is https
2019-03-07 14:55:03 +00:00
6d6cd5f410 2802 applies to 2803, closes #658 2019-03-05 03:26:39 +00:00
eae8434853 start 66 commits 2019-02-26 07:53:21 +00:00
2cff24f12e 65 final 2019-02-26 05:42:32 +00:00
60be8be5ec UNC and extensions, closes #651 2019-02-17 03:51:44 +00:00
981dd83c15 clarify themes info, closes #648 2019-02-17 16:34:34 +13:00
5c703f0262 65-beta 2019-02-09 10:05:45 +00:00
de0ebbed21 0343: even MOAR clarification 2019-02-08 11:38:17 +00:00
e448015704 0343: clarify where
TAAR is extension recommendations in the "Add-ons Manager" (not sure how it's displayed)
CFR is extension recommendations as you browse the web, via a drop down panel
2019-02-07 16:55:04 +00:00
d3b1ed45ad RFP: UA spoof is now 60+8's 2019-02-07 15:14:08 +00:00
ed140425ea move shit around 2019-02-08 03:41:23 +13:00
3847f97f41 some more 65+ diffs, #610 2019-02-07 13:41:15 +00:00
d81e8ae583 i need a break 2019-02-07 11:11:16 +00:00
7a8381d894 typo 2019-02-07 11:01:31 +00:00
649699ad22 0609: disable connectivity service #610 2019-02-07 11:00:07 +00:00
1d5289dd94 RFP 67+ 2019-02-06 16:59:28 +00:00
74c8f294d6 0306: extension metadata, closes #615 2019-02-05 04:51:07 +00:00
a0508eccf6 capital letter after [note] 2019-02-04 13:41:56 +00:00
25acd9f63e 2703 again
- description needs to stay changed from just cookies since it also clears site data
- keep the info about n days out of it, it's just messy (ESR users should be on version 60)
- get the values correct (I mixed them up earlier)
- fixup [setting] path
- leave in one (of two) extra [notes] I previously added
2019-02-04 13:40:45 +00:00
74a08114a8 2701: refix setting 2019-02-04 13:28:29 +00:00
71ffc661b2 2701 again 2019-02-04 13:26:19 +00:00
e432a22693 0306: moar info #615
see https://github.com/ghacksuserjs/ghacks-user.js/issues/615#issuecomment-460243162 - checking for updates is not a trigger, having an update **and** applying it is
2019-02-04 13:08:41 +00:00
f06c78f897 update cookie settings info 2019-02-05 02:00:19 +13:00
847eb80877 0306 => inactive, closes #615
whatever we thought it may have done in the past, it doesn't do that now as far as we know. And it's not an issue since we allow extension update-CHECKs anyway.
2019-02-04 06:39:29 +00:00
ec0e58099f pointer events -> RFP ALTS 2019-02-01 13:53:04 +00:00
e6eb473071 dom.storage_access.enabled
regardless of this pref setting: the permissions.sqlite file will still be abused to store a flag for this for every single site you connect to (as third party?) - fun.
2019-02-01 13:41:00 +00:00
f1b892bc1c clean up "Firefox Data Collection & Use" (#627)
* clean up "Firefox Data Collection & Use"
  - telemetry prefs to 330's
  - Firefox Data Collection & Use prefs to 340's (but leave crash reports in 350s)
  - move `app.shield.optoutstudies.enabled` to 330's - this is an internal pref which controls if you get the system addon
  - make notes that `datareporting.healthreport.uploadEnabled` controls studies and ext recommendations
  - split crash reports better to reflex the UI setting
2019-02-02 00:57:22 +13:00
524b5f79dc setting changes re cookies 2019-01-31 18:42:59 +00:00
24f2e1d982 disable storage access api
see: https://old.reddit.com/r/firefox/comments/alnn3f/storageaccessapi_permissions/effg5tp/
2019-01-31 16:16:59 +00:00
c6060e5645 storage access api 2019-01-31 16:03:39 +00:00
d0b8a08a4b browser.urlbar.maxHistoricalSearchSuggestions
default 0 in ESR60 and FF60+
2019-01-30 16:16:12 +00:00
f047fe93c0 remove 0850f
`browser.urlbar.maxHistoricalSearchSuggestions` is default 0 is FF60 thru to FF66. It is also default 0 in ESR60.1 thru 60.5. (at least on Windows)

IDK if this has ever been used, maybe android, in which case it's probably useful?
2019-01-30 16:14:39 +00:00
6147fed61c and the rest of the 0850's
The location bar dropdown cannot be disabled via prefs except with css, in which case the whole thing is hidden regardless of he above prefs. So there is no point in making any of them active. This is also in line with what we can achieve with relaxed and hardened tags / sticky issues - that is we can find a better balance, Shoulder surfers is a low risk, not even Tor Browser disables this stuff. People need to take responsibility and/or use common sense. Sure, we can leave em in for users to know about and enable if they want. End of story.

userChrome.css code is
```css
/* locationbar dropdown FF65+ */
#PopupAutoCompleteRichResult {display: none!important;}
```
2019-01-30 15:44:08 +00:00
54f79604da Make Firefox Great Again (#626)
* location bar changes
* if the dropdown is going to be used, then no point hiding search engines on the bottom line
2019-01-30 15:06:32 +00:00
2f351fa5ce 0702: http2 websockets
might as well add it: needs t be taken into consideration when looking at the whole http2 thing. Will be interesting to see what Tor Browser does with it in ESR68
2019-01-30 14:09:39 +00:00
5dc3ea66cd browser.contentblocking.enabled
only existed for FF63+64, default true anyway
2019-01-30 12:38:07 +00:00
d9a87b3ac4 FF65 removals (#624) 2019-01-30 12:27:53 +00:00
95b75a065d up date info on what cookies control #622 2019-01-30 10:23:42 +00:00
8c96432eb8 Update updater.sh (#618)
Closes #616 + #617
2019-01-25 14:28:00 +00:00
1c09ec36e3 0306: extra info, closes #615 2019-01-18 04:24:13 +00:00
f1e6d164f7 start 65 commits 2019-01-17 05:19:11 +00:00
3b90e6e592 end of v64 2019-01-17 05:11:29 +00:00
45bd5ccc02 PB Mode: ref added 2019-01-16 02:07:06 +00:00
7bf5790f2b RFP: FF66 changes to UA HTTP Headers 2019-01-11 05:14:59 +00:00
075d6fe6e4 2615: s/cut keys: bug fix in 66+ 2019-01-11 05:09:14 +00:00
4604cf0d4e references to other prefs s/be explicit 2018-12-21 11:02:40 +00:00
b845f8fe3a Update README.md
OK, I give up. I would've removed those commits by force-pushing, but the branch is protected. #NotMyFault
2018-12-20 19:53:48 +00:00
96063027ba Update README.md
second attempt at fixing the weird title...
2018-12-20 19:44:27 +00:00
186fb1c9be Update README.md
fix for the weird page title ![][b]
https://ghacksuserjs.github.io/ghacks-user.js/
2018-12-20 19:42:28 +00:00
ac4e764c37 http2, altsvc, ssl session ids vs FPI vs TB #571 2018-12-18 15:54:57 +00:00
5b0952f60a network.auth.subresource-http-auth-allow 2018-12-17 13:00:27 +00:00
5bd5f6b28e 0912: HTTP Auth sub-resources #585 (#602) 2018-12-18 01:41:37 +13:00
55c2cacbce 0335: toolkit.telemetry.coverage.opt-out (#600) 2018-12-17 22:43:45 +13:00
4badc42879 0105b: kill snippets endpoint #528
it's too hard to follow AS changes, and work out if disabling showing items (basic toggling of show/hide sections etc) actually stops downloading a localized local copy etc. For items we actually want to block, let the endpoint slaughter begin.
2018-12-17 09:36:26 +00:00
6946a01232 Update troubleshooter.js 2018-12-17 08:19:14 +00:00
da80e39064 0105s: description s/be self explanatory #578
when filtered and 0105a is not shown, AS doesn't mean anything
2018-12-16 17:37:42 +00:00
c1d6d81528 add PERF tags to wasm, asm.js, closes #599 2018-12-16 14:10:32 +00:00
d5ece0f6f4 1700s: revamp Containers header #585 (#596) 2018-12-14 07:05:43 +00:00
f6ea20a8b0 0335: Telemetry Coverage endpoint
let's just coverage-our-ass on this one

While I don't mind telemetry (development needs meaningful feedback to better the product), and I trust the data is not PII, and/or anonymized into buckets etc (you can check this you know), and I understand this one needs to be outside the Telemetry pref in order to gather the one-time ping ... and I trust Mozilla's motives ... I'm starting to get a little annoyed at the non-stop incessant increasing telemetry bullshittery and ass-fuckery around sending data home, and the lengths some Mozilla devs will go to, to hide this info (hidden prefs, access denied tickets to hide discussion of what should be public, and even **not even adhering to their own documentation**).

I will also be killing as many Activity Stream endpoints as well - as long as they are in line with our js - pocket, snippets, onboarding etc. And I will add those from personal as inactive for end-users - eg cfr
2018-12-13 17:28:16 +00:00
645492e82f grammar, case, etc, closes #594
thanks @Just-me-ghacks
2018-12-14 04:49:50 +13:00
15c68dc344 disable System Add-on updates (#595)
remember the new Coverage Telemetry shit? with a **hidden** opt-out pref? guess what, they are already collecting for 3 months ...

https://bugzilla.mozilla.org/show_bug.cgi?id=1487578 - **3 months ago**: "I see data coming in that looks reasonable"

guess what else ...

"It has also replaced the previous version that was there (from bug 1480194)" and oh, surprise surprise, 1480194 is ACCESS DENIED!

they're not just using private tickets to hide security critical information from potential hackers and blackhats, no they also use it to hide shady AF things. Things that they fully know are shady as fuck and that they absolutely know a lot of people would not like. There's simply no other reason why they'd do that

but wait, that's not all. If you think an opt-out pref that 99% of people wouldn't know about even if it showed up in about:config BUT ALSO HAPPENS TO BE HIDDEN is kind of questionable, well ... the system addon that they use for this shit apparently looked or still looks for `toolkit.telemetry.coverage.opt-out` [1] instead of `toolkit.coverage.opt-out` as their documentation [2] claims

[1] https://github.com/mozilla/one-off-system-add-ons/pull/131/files#diff-6e0cbf76986d04383ccb32a29ef27a7aR25
[2] https://hg.mozilla.org/mozilla-central/file/tip/toolkit/components/telemetry/docs/data/coverage-ping.rst#l32

It's time to opt out of all that shit for good. Disable system addon updates and kill it at the root

> In FF61 and lower, you will not get any System Add-on updates except when you update Firefox

on its own that's not true. You will get SA updates unless you disable app update checks + auto install. Let's just remove that as well.
2018-12-14 03:21:57 +13:00
04b797f1aa 0209: remove trailing space
@Just-me-ghacks 💋
2018-12-13 11:14:44 +00:00
e60abd6c44 64-beta 2018-12-12 17:17:33 +00:00
d55b8176ad dyslexia and/or dementia 2018-12-12 16:52:12 +00:00
31adbba774 5000s: disable CFR 2018-12-12 16:34:27 +00:00
3c247a2c5b Update ghacks-clear-[removed].js 2018-12-12 13:22:58 +00:00
879f0abf28 2201: more garbage 2018-12-12 13:21:24 +00:00
d97d0ec0f5 media.peerconnection*
covered by user_pref("media.peerconnection.enabled", false);
2018-12-12 13:09:03 +00:00
3916e38681 taking out the garbage (#590) 2018-12-13 02:02:38 +13:00
51ac69874b 0105* remove // has setting 2018-12-12 11:58:48 +00:00
2d956d04f3 move 1260 to 122x (#591)
* move 1260 to 122x

"disable or limit SHA-1 certificates" is about certs, not ciphers.
Because CERTS is 1st in the title I moved it to the 1st item there because it's arguably also the most important of the lot (and renumbered the rest)
We can also drop HSTS from the subgroup title because there's nothing HSTS left atm.
2018-12-13 00:52:49 +13:00
9d6bfb650c disable Telemetry Coverage (#589) 2018-12-13 00:29:29 +13:00
ccdd4decf0 Pocket: 0510->0370
Pocket is no longer a System Add-on in FF64+
2018-12-12 08:25:25 +00:00
f0fbfd3086 network.auth.subresource-img-cross-origin-http-auth-allow #585 2018-12-11 17:44:19 +00:00
88b747ef36 0911: remove it, #585
it is default false in FF59+
2018-12-11 17:42:19 +00:00
c6ebe36165 1022: resume from crash=>inactive, closes #575 2018-12-11 17:28:21 +00:00
7684e83aba 0102 add SR info #575 2018-12-11 17:18:26 +00:00
4f37975566 browser.sessionstore.max_windows_undo #575 2018-12-11 16:49:38 +00:00
26b874bed7 1020: remove max_windows #575 2018-12-11 16:43:11 +00:00
61be5ae563 all Deprecations + new ADB extension prefs (#587) 2018-12-12 05:07:28 +13:00
ef1e61ebcd start 64-alpha 2018-12-11 16:05:07 +00:00
205c48d9d3 final 63 release 2018-12-11 15:49:31 +00:00
0e1b0a4b6e move 0370 to 0105b (#586) 2018-12-12 04:40:29 +13:00
778dc89bb6 2002 WebRTC tests #580
FYI, the https://www.privacytools.io/webrtc.html test in our wiki is 404, so I gave it a strikethru and added this one. This is also handy for 2001, but do we need to double up on it? We're only disabling WebRTC because of IP leaks, so I don't see the point in testing if WebRTC is disabled.
2018-12-11 00:40:03 +00:00
23733097a9 2302 FF version 2018-12-11 00:13:07 +00:00
71a2d393f3 minor wording changes (#583) 2018-12-11 11:23:00 +13:00
74ebacc0dd obey rules for [setting] tag location #578
all setting tags must be between `/* ... ***/`
2018-12-10 19:52:48 +00:00
45e3b3a0e0 2682: put correct version back
0a67cdec8b (comments)
2018-12-10 19:35:41 +00:00
8172f730d3 Update README.md 2018-12-10 19:26:17 +00:00
5c85e61bb4 4000: remove old FPI notes (#581) 2018-12-10 18:36:07 +00:00
0a67cdec8b #578 cleanups (#576)
- cleanup of tags placement, order consistency, and to use square brackets (allows usage elsewhere to not get tagged, eg 1402)
- other bits and bobs
2018-12-11 07:18:26 +13:00
b85668c2cd make description & info & notes concurrent #574 2018-12-08 04:10:13 +13:00
786839ffc1 2701: fix split multi-[notes] 2018-12-06 08:16:01 +00:00
8313f2e01a 1020: fix description
Session Restore cannot be disabled in Normal mode, it is also used internally. FYI: PB Mode does not use Session Restore. The description is still not 100%, as it refers to what is restored, not what is kept in the recovery.jsonlz4 (at least for tabs)
2018-12-06 05:41:25 +00:00
0a87c99a0e 1203: ssl session ids are 24hrs 2018-12-05 20:58:07 +00:00
91fed43fc7 0703 atl-svc, better ref, #571 2018-12-05 20:36:20 +00:00
74f029566e enforce DOMHighResTimeStamp API #491
flipped true in FF54: https://bugzilla.mozilla.org/show_bug.cgi?id=1026804 but unsure when the pref itself was introduced. note: other timing prefs were always in 2400's see 4602: [2411] disable resource/navigation timing / 4603: [2412] disable timing attacks
2018-12-04 10:34:02 +00:00
571be93ae0 proper case convention after tags
Can't believe I did this. Out of 32 `[setup*` and  9 `[warning]` tags (excluding the readme), I let one capital letter get past me, the bastard!
2018-12-04 10:26:44 +00:00
11b16c9c6d move PB mode into STARTUP section #567 2018-12-04 08:51:19 +00:00
c4ec4dbc77 move 0000 to personal #567
it has zero to do with privacy etc, and in fact most users will only ever encounter it once (and check the box) when they first go to about:config, so it's not even useful as an override or a new profile IMO. This removes one of three numbers that don't have a section
2018-12-04 08:34:36 +00:00
67998eb4af section naming convention consistency 2018-12-04 08:27:52 +00:00
834857b564 tag sections #567 2018-12-04 20:03:19 +13:00
25923f1acd add index #567 2018-12-04 06:03:11 +00:00
85eaba2571 TAG! You're it! #545 2018-12-04 18:36:03 +13:00
51237f6889 updater.sh: add -e option for ESR users (#565) 2018-12-01 14:47:58 +00:00
74e753d0c5 fix profile check (#564) 2018-12-01 14:18:38 +00:00
db56940422 typos 2018-11-29 14:10:08 +00:00
400d764a93 Update updater.sh (#558)
* just some polishing
2018-11-27 16:57:51 +00:00
f3e2bfa76d browser.crashReports.unsubmittedCheck.autoSubmit 2018-11-26 15:33:36 +00:00
d4907faa8e updater.sh v2.1 (#554)
when argument `-l` is used, parse profiles.ini instead of just listing folders in the default profiles dir.
This allows to select profiles located outside of the default profiles directory and makes selection easier because it also shows the profile name (and selection is by number instead of having to copy-paste a path)
2018-11-26 14:44:52 +00:00
62351bfbf5 updater.sh v2.0 (#543)
* lots of new arguments

`usage: ./updater.sh [-h] [-p PROFILE] [-u] [-d] [-s] [-n] [-b] [-c] [-v] [-r] [-o OVERRIDE]`

Args can be written separately or together. Examples:

```txt
./updater.sh -sdc
./updater.sh -sd -o relaxed.js
./updater.sh -s -d
```

Deprecated arguments still work (for now!)
2018-11-25 17:16:05 +00:00
b182946ae4 Tor-related warnings (#551)
Also reworded some stuff.
2018-11-24 05:19:24 +00:00
2ae3a3e4e1 1700s: enable containers, #438
AFAIK there's no technical reasons for containers to be disabled in FF63+
2018-11-21 23:53:00 +00:00
0ff610c056 there is no spoon 2018-11-20 18:14:23 +00:00
661a314e28 RFP: pointerEvent.pointerid 2018-11-20 17:36:04 +00:00
106f46d053 updater.sh restructuring/re-write (#541)
* Uses `perl` as a last resort if `curl` and `wget`  are not available (fixes #537)
* Aborts and notifies user if none of the above are installed 
* Better use of functions
* When version numbers are checked, the contents are immediately saved to a temp dir.  This allows us to skip using wget/curl/perl a second time
* Improved messages for users
* Added various font colors for ease of use and aesthetics
2018-11-19 17:34:14 +00:00
643cba63cf Activity Stream is no longer a System Add-on 2018-11-19 03:00:40 +00:00
b5c5d8e9d1 removed browser.eme.ui.enabled 2018-11-19 00:37:42 +00:00
36b90cd5e6 1830: remove hiding the DRM UI
out of interest, it no longer requires a restart
2018-11-19 00:34:56 +00:00
299a03663f 0351: move *autoSubmit to deprecated
https://github.com/ghacksuserjs/ghacks-user.js/issues/302#issuecomment-359245047
2018-11-19 00:12:07 +00:00
13550d18a1 update [SETTING] info (#538) 2018-11-19 12:56:12 +13:00
c12eb0fdc6 0201b+2305 Permissions API info 2018-11-18 12:56:51 +00:00
acbf881b1f saving the world bytes at a time 2018-11-15 15:47:21 +00:00
7351e561c4 1243: mixed OBJECT_SUBREQUESTS 2018-11-15 07:06:34 +00:00
4e42bad6a1 0201: default geo=> inactive, #533 2018-11-14 17:12:03 +00:00
b85e748b53 2204: FS API=>inactive, #533 2018-11-13 18:56:51 +00:00
0cc4007eda 1202: tls.min => inactive #533
TLS 1.0 and 1.1 are still secure. Sure, later versions are more secure, but 98% of the web is already upgraded - less than 2% of sites use < v1.2. So it's not very likely you would come across a site that requires it, but if you did, what's the point in breaking it. Mozilla and Chrome already have plans to deprecate TLS 1.0 & 1.1, and force that last 2% of sites.

TLS settings can be FP'ed without JS. By sticking with the defaults, I do not see any security issues, but an increase in potential anti-FPing. TBH, the chances of either (i.e being FP'ed with TLS as a entropy point, or being compromised due to TLS<1.2) are slim to non anyway.

Any arguments, please see @earthlng
2018-11-13 16:19:23 +00:00
3003f2dd85 make up yer mind
stick it back in for two releases - pref gets removed in FF65 anyway
2018-11-13 15:30:39 +00:00
ce48306a0d finalize beta 2018-11-13 15:12:20 +00:00
3423d39fa9 2517 Media Capabilities => inactive
see f214e4bc4e (comments)
2018-11-13 15:11:01 +00:00
4834472107 remove 0426 content blocking 2018-11-13 15:01:35 +00:00
f214e4bc4e 2517: disable Media Capabilities API (for now) 2018-11-13 08:42:49 +00:00
8fd6061bcc 0426: enforce CB 2018-11-13 08:19:19 +00:00
92acb6b2f7 saving the world, one byte at a time 2018-11-12 00:06:19 +00:00
b6b9733afa remove old information (#531)
Pants said "We do not need to keep anything for ESR users. ESR users are on v60, and we have an archived 60 for them."
This isn't even affecting ESR60 but only older versions.
2018-11-08 04:14:32 +13:00
89bc0bee16 scheme+host+path+port -> scheme+host+port+path (#530) 2018-11-04 14:44:20 +00:00
f8fc465d0a 2701: add new descriptions and new value (#527) 2018-10-30 04:40:24 +13:00
58fa4e9b6d 0514: disable snippets, top stories, telemetry 2018-10-29 14:26:49 +00:00
afee555045 FPI: isolate postMessage... 2018-10-28 16:46:22 +00:00
5a36b4e016 Update README.md 2018-10-28 15:58:47 +00:00
7b3e6f5143 Update README.md 2018-10-28 15:20:41 +00:00
452c717502 Update README.md 2018-10-28 11:09:47 +00:00
661af196d9 Update README.md 2018-10-28 11:08:18 +00:00
39a30d710b Update README.md 2018-10-27 16:30:38 +00:00
8f10300c15 Update _config.yml 2018-10-27 16:29:34 +00:00
806d047729 Update README.md 2018-10-27 16:28:15 +00:00
0efebe3e83 Update README.md 2018-10-27 16:17:25 +00:00
49d9314b0a Update README.md 2018-10-27 15:00:10 +00:00
b4b5e3a068 Add files via upload 2018-10-28 03:57:54 +13:00
29d832e350 Update README.md 2018-10-27 14:55:15 +00:00
Mtq
68e44285c5 Update README.md (#524)
+ compressed
2018-10-28 03:52:19 +13:00
e8bfa93696 0410s: SBv4 & cookies, #520 2018-10-25 00:13:50 +00:00
1abe1fd4df 4702: buildID cleanup, closes 518 2018-10-24 10:15:37 +00:00
24f7847f73 2703: make value 3 info clearer 2018-10-23 16:13:23 +00:00
56206f77ba removed, renamed or hidden in v63.0 (#523)
* removed, renamed or hidden in v63.0

- 0301a - do you want to add the `[NOTE] Firefox currently checks every 12 hrs  ...` to `0302a` ? The problem is it also checks for updates every time you open/reload about:preferences and in Menu>Help>About Firefox regardless of when the last check was.

- 0513 - removed because follow-on-search is no longer a deletable system addon

- 2703 - do we just remove `3=for n days` or add a [NOTE] that value 3 was remove in FF63 or something?

- `browser.ctrlTab.recentlyUsedOrder` replaces `browser.ctrlTab.previews` but it now defaults to true. No need to list the new one under 5000 IMO

* Update user.js

* 1031 add more info

https://bugzilla.mozilla.org/show_bug.cgi?id=1453751#c28

* 0301a: remove update-check timing info

* 2703: add version deprecation for value 3
2018-10-24 04:45:31 +13:00
587194ce84 1403: icon fonts: flip, make inactive, closes #521 2018-10-20 01:35:37 +00:00
7aac6d476a 1270: link to 1201, #519 2018-10-16 12:01:42 +00:00
9e073ea5d5 1201: SSL renegotiation -> active, closes #519 2018-10-16 11:57:32 +00:00
732c438148 0710: disable GIO... #442 2018-10-14 12:11:56 +00:00
58931bc15d start 63 commits 2018-10-11 11:25:03 +00:00
21b18cbe49 finalize 62 2018-10-11 10:46:35 +00:00
cbcd293e68 RFP: spoof/suppress Pointer Events
https://bugzilla.mozilla.org/show_bug.cgi?id=1363508
2018-10-11 05:50:09 +00:00
aacf5d4a0b update 1031 description 2018-09-30 15:30:32 +00:00
ec5fb6e3a1 removed privacy.trackingprotection.ui.enabled 2018-09-30 15:24:33 +00:00
b2fc9bc266 remove 0421: privacy.trackingprotection.ui.enabled
- pref removed in FF63 (https://bugzilla.mozilla.org/1476879)
- when we added it the default was false
- default is true since FF57
- it's only an UI thing

ergo we don't need to move it to 9999
2018-09-30 15:20:36 +00:00
ca1cc2001f Update README.md 2018-09-20 23:40:29 +00:00
f88af1dac6 Update README.md 2018-09-20 23:39:44 +00:00
1c6c5ea2ff 1000s: cache header section #496 2018-09-13 05:09:07 +00:00
2d316ceedd removed *webextensions.keep* 2018-09-12 22:27:26 +00:00
36c791c4bc remove 2661: *webextensions.keep*
Added in FF51 with defaults false and never changed since
2018-09-12 22:23:59 +00:00
ee213f2bab infos about default values (#504)
* more infos

* add colons

not all EOL comments for defaults start with `// default` (23). The common string is `default:` (27 incl. these ones) with or without preceding or trailing spaces
2018-09-13 10:17:56 +12:00
01a978e33a add 0864: dom.forms.datetime, closes #495 2018-09-11 16:43:18 +00:00
23 changed files with 2001 additions and 1759 deletions

1
.gitattributes vendored
View File

@ -13,3 +13,4 @@
.gitattributes export-ignore
*.yml export-ignore
/wikipiki export-ignore
/.github export-ignore

18
.github/ISSUE_TEMPLATE/tools.md vendored Normal file
View File

@ -0,0 +1,18 @@
---
name: Tools
about: Report issues with the updaters, the troubleshooter, or any other tools.
title: ''
labels: ''
assignees: ''
---
<!--
Please specify:
- the name of the file (i.e. updater.bat, updater.sh)
- steps to reproduce the issue
- actual result
- expected result
Blank out this field before typing, or start typing after the next line.
-->

View File

@ -0,0 +1,29 @@
---
name: Troubleshooting help
about: Ask for help to solve problems with user.js
title: ''
labels: ''
assignees: ''
---
Before you proceed...
- Issues will be closed as invalid if you do not [troubleshoot](https://github.com/arkenfox/user.js/wiki/1.4-Troubleshooting), including
- confirming the problem is caused by the `user.js`
- searching the `[Setup` tags in the `user.js`
- Search the GitHub repository. The information you need is most likely here already.
- Note: We do not support forks
See also:
- Extension breakage due to prefs [issue 391](https://github.com/arkenfox/user.js/issues/391)
- Prefs vs Recommended Extensions: Co-Existance+Enhancement | Conflicts [issue 350](https://github.com/arkenfox/user.js/issues/350)
- The extension CSP header modification game [issue 664](https://github.com/arkenfox/user.js/issues/664)
If you still need help, help us help you by providing relevant information:
- browser version
- Steps to Reproduce (STR)
- actual result
- expected result
- anything else you deem worth mentioning
Clear all of this when you're ready to type.

15
.github/ISSUE_TEMPLATE/user-js.md vendored Normal file
View File

@ -0,0 +1,15 @@
---
name: user.js
about: Suggest changes to user.js
title: ''
labels: ''
assignees: ''
---
We value feedback in general, but we value feedback from informed users more. There is no need for you to be an expert to participate (most of us aren't), but we hope that you at least understand our decisions before questioning them. We discuss all changes openly, and we do not make changes lightly. So, if you don't understand why we decided to add/remove/change a certain pref, search the repo. The answer is most certainly here.
If some change we made took you by surprise (in the wrong way), remember that keeping track of changes is your responsibility. Watch the repo, read the [changelogs](https://github.com/arkenfox/user.js/issues?utf8=✓&q=is%3Aissue+label%3Achangelog), compare [releases](https://github.com/arkenfox/user.js/releases) as you update your copy of user.js, or use any other method you prefer.
Clear all of this when you're ready to type.

View File

@ -1,6 +1,6 @@
MIT License
Copyright (c) 2017 ghacksuserjs
Copyright (c) 2020 arkenfox
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@ -1,21 +1,28 @@
### ![](https://github.com/ghacksuserjs/ghacks-user.js/blob/master/wikipiki/bullet01.png) user.js
A `user.js` is a configuration file that can control hundreds of Firefox settings. For a more technical breakdown and explanation, you can read more on the [overview](https://github.com/ghacksuserjs/ghacks-user.js/wiki/1.1-Overview) wiki page.
### 🟪 user.js
A `user.js` is a configuration file that can control hundreds of Firefox settings. For a more technical breakdown and explanation, you can read more on the [overview](https://github.com/arkenfox/user.js/wiki/1.1-Overview) wiki page.
### ![](https://github.com/ghacksuserjs/ghacks-user.js/blob/master/wikipiki/bullet01.png) ghacks user.js
The `ghacks user.js` is a **template**, which, as provided, aims to provide as much privacy and enhanced security as possible, and to reduce tracking and fingerprinting as much as possible - while minimizing any loss of functionality and breakage (but it will happen).
### 🟩 the arkenfox user.js
Everyone, experts included, should at least read the [implementation](https://github.com/ghacksuserjs/ghacks-user.js/wiki/1.3-Implementation) wiki page, as it contains important information regarding a few `ghacks user.js` settings.
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
Sitemap: [Releases](https://github.com/ghacksuserjs/ghacks-user.js/releases), [changelogs](https://github.com/ghacksuserjs/ghacks-user.js/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3Achangelog), [Wiki](https://github.com/ghacksuserjs/ghacks-user.js/wiki), [stickies](https://github.com/ghacksuserjs/ghacks-user.js/issues?q=is%3Aissue+is%3Aopen+label%3A%22sticky+topic%22). [diffs](https://github.com/ghacksuserjs/ghacks-user.js/issues?q=is%3Aissue+label%3Adiffs)
The `arkenfox user.js` is a **template** which aims to provide as much privacy and enhanced security as possible, and to reduce tracking and fingerprinting as much as possible - while minimizing any loss of functionality and breakage (but it will happen).
### ![](https://github.com/ghacksuserjs/ghacks-user.js/blob/master/wikipiki/bullet01.png) acknowledgments
Literally thousands of sources, references and suggestions. That said...
Everyone, experts included, should at least read the [implementation](https://github.com/arkenfox/user.js/wiki/1.3-Implementation) wiki page, as it contains important information regarding a few `user.js` settings.
* Martin Brinkmann at [ghacks](https://www.ghacks.net/) <sup>1</sup>
* The ghacks community and commentators
* [12bytes](http://12bytes.org/tech/firefox/firefoxgecko-configuration-guide-for-privacy-and-performance-buffs)
* The 12bytes article now uses this user.js and supplements it with an additonal JS hosted right [here](https://github.com/atomGit/Firefox-user.js) at github
Note that we do *not* recommend connecting over Tor on Firefox. Use the [Tor Browser](https://www.torproject.org/projects/torbrowser.html.en) if your [threat model](https://www.torproject.org/about/torusers.html.en) calls for it, or for accessing hidden services.
<sup>1</sup> The ghacks user.js was an independent project by [Thorin-Oakenpants](https://github.com/Thorin-Oakenpants) started in early 2015 and was [first published](https://www.ghacks.net/2015/08/18/a-comprehensive-list-of-firefox-privacy-and-security-settings/) at ghacks in August 2015. With Martin Brinkmann's blessing, it will keep the ghacks name.
Also be aware that the `arkenfox user.js` is made specifically for desktop Firefox. Using it as-is in other Gecko-based browsers can be counterproductive, especially in the Tor Browser.
### 🟧 sitemap
- [Releases](https://github.com/arkenfox/user.js/releases)
- [changelogs](https://github.com/arkenfox/user.js/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3Achangelog)
- [Wiki](https://github.com/arkenfox/user.js/wiki)
- [stickies](https://github.com/arkenfox/user.js/issues?q=is%3Aissue+is%3Aopen+label%3A%22sticky+topic%22)
- [diffs](https://github.com/arkenfox/user.js/issues?q=is%3Aissue+label%3Adiffs)
### 🟥 acknowledgments
Literally thousands of sources, references and suggestions. Special mention to:
* This [12bytes article](https://12bytes.org/articles/tech/firefox/firefoxgecko-configuration-guide-for-privacy-and-performance-buffs) which uses the `arkenfox user.js` and supplements it with an additional JS hosted at [Codeberg](https://codeberg.org/12bytes.org/Firefox-user.js-supplement)
### ![](https://github.com/ghacksuserjs/ghacks-user.js/blob/master/wikipiki/bullet01.png) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

View File

@ -1 +1,3 @@
theme: jekyll-theme-midnight
theme: jekyll-theme-midnight
title: user.js
description: An ongoing comprehensive user.js template for configuring and hardening Firefox privacy, security and anti-fingerprinting

View File

@ -3,7 +3,7 @@ TITLE prefs.js cleaner
REM ### prefs.js cleaner for Windows
REM ## author: @claustromaniac
REM ## version: 2.2
REM ## version: 2.3
CD /D "%~dp0"
@ -13,7 +13,7 @@ ECHO:
ECHO ########################################
ECHO #### prefs.js cleaner for Windows ####
ECHO #### by claustromaniac ####
ECHO #### v2.2 ####
ECHO #### v2.3 ####
ECHO ########################################
ECHO:
CALL :message "This script should be run from your Firefox profile directory."
@ -101,7 +101,7 @@ ECHO add-ons disabled. Then, restart it again normally, and see if the
CALL :message " problems were solved."
ECHO:
CALL :message "If you are able to identify the cause of your issues, please bring it up"
ECHO on ghacks-user.js GitHub repository.
ECHO on arkenfox user.js GitHub repository.
ECHO:
ECHO:
PAUSE

View File

@ -2,7 +2,7 @@
## prefs.js cleaner for Linux/Mac
## author: @claustromaniac
## version: 1.1
## version: 1.3
## special thanks to @overdodactyl and @earthlng for a few snippets that I stol..*cough* borrowed from the updater.sh
@ -27,7 +27,7 @@ fQuit() {
fFF_check() {
# there are many ways to see if firefox is running or not, some more reliable than others
# this isn't elegant and might not be future-proof but should at least be compatible with any environment
while [ -e webappsstore.sqlite-shm ]; do
while [ -e lock ]; do
echo -e "\nThis Firefox profile seems to be in use. Close Firefox and try again.\n"
read -p "Press any key to continue."
done
@ -58,7 +58,7 @@ echo -e "\n\n"
echo " ╔══════════════════════════╗"
echo " ║ prefs.js cleaner ║"
echo " ║ by claustromaniac ║"
echo " ║ v1.1 ║"
echo " ║ v1.3 ║"
echo " ╚══════════════════════════╝"
echo -e "\nThis script should be run from your Firefox profile directory.\n"
echo "It will remove any entries from prefs.js that also exist in user.js."
@ -90,7 +90,7 @@ select option in Start Help Exit; do
echo "4. Rename or copy your latest backup to prefs.js."
echo "5. Run Firefox and see if you notice anything wrong with it."
echo "6. If you do notice something wrong, especially with your extensions, and/or with the UI, go to about:support, and restart Firefox with add-ons disabled. Then, restart it again normally, and see if the problems were solved."
echo -e "If you are able to identify the cause of your issues, please bring it up on ghacks-user.js GitHub repository.\n"
echo -e "If you are able to identify the cause of your issues, please bring it up on the arkenfox user.js GitHub repository.\n"
;;
Exit)
fQuit 0

View File

@ -1,10 +1,12 @@
/***
This will reset the preferences that are under sections 4600 & 4700 in the ghacks user.js
up to and including release 60-beta. These are the prefs that are no longer necessary,
or they conflict with, privacy.resistFingerprinting if you have that enabled.
Version: up to and including FF/ESR78
This will reset the preferences that are under sections 4600 & 4700 in the
arkenfox user.js. These are the prefs that are no longer necessary, or they
conflict with, privacy.resistFingerprinting if you have that enabled.
For instructions see:
https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
https://github.com/arkenfox/user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
***/
(function() {
@ -22,6 +24,10 @@
'dom.w3c_touch_events.enabled',
'media.ondevicechange.enabled',
'webgl.enable-debug-renderer-info',
'dom.w3c_pointer_events.enabled',
'ui.use_standins_for_native_colors',
'ui.systemUsesDarkTheme',
'ui.prefersReducedMotion',
/* section 4700 */
'general.useragent.override',
'general.buildID.override',

View File

@ -1,19 +1,81 @@
/***
Version: up to and including FF/ESR78
This will reset the preferences that have been deprecated by Mozilla
and used in the ghacks user.js up to and including release 60-beta
and used in the arkenfox user.js
It is in reverse order, so feel free to remove sections that do not apply
For instructions see:
https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
https://github.com/arkenfox/user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
***/
(function() {
let ops = [
/* deprecated */
/* ESR52.x users can remove sections 53-60 but it is not
crucial as your user.js will reinstate them */
/* 78 */
'media.autoplay.enabled.user-gestures-needed',
'toolkit.cosmeticAnimations.enabled',
/* 77 */
'browser.urlbar.oneOffSearches',
'browser.tabs.remote.allowLinkedWebInFileUriProcess',
/* 76 */
'extensions.blocklist.url',
/* 74 */
'geo.wifi.uri',
'geo.wifi.logging.enabled',
'privacy.userContext.longPressBehavior',
'webgl.disable-extensions',
/* 72 */
'browser.newtabpage.activity-stream.telemetry.ping.endpoint',
'toolkit.telemetry.hybridContent.enabled',
'dom.indexedDB.enabled',
/* 71 */
'devtools.webide.enabled',
'devtools.webide.autoinstallADBExtension',
'offline-apps.allow_by_default',
/* 69 */
'gfx.downloadable_fonts.woff2.enabled',
'plugins.click_to_play',
'media.autoplay.allow-muted',
/* 68 */
'browser.newtabpage.activity-stream.disableSnippets',
'browser.aboutHomeSnippets.updateUrl',
'lightweightThemes.update.enabled',
'security.csp.experimentalEnabled',
/* F67 */
'dom.event.highrestimestamp.enabled',
'browser.newtabpage.activity-stream.asrouter.userprefs.cfr',
/* 66 */
'browser.chrome.errorReporter.enabled',
'browser.chrome.errorReporter.submitUrl',
'network.allow-experiments',
/* 65 */
'browser.urlbar.autocomplete.enabled',
'browser.fixup.hide_user_pass',
/* 64 */
'browser.onboarding.enabled',
'devtools.webide.autoinstallADBHelper',
'devtools.webide.adbAddonURL',
'security.csp.enable_violation_events',
/* 63 */
'browser.search.countryCode',
'app.update.enabled',
'shield.savant.enabled',
'browser.chrome.favicons',
'media.autoplay.enabled',
'network.cookie.lifetime.days',
'browser.ctrlTab.previews',
/* 62 */
'plugin.state.java',
/* 61 */
'experiments.enabled',
'experiments.manifest.uri',
'experiments.supported',
'experiments.activeExperiment',
'network.jar.block-remote-files',
'network.jar.open-unsafe-types',
/* 60 */
'browser.newtabpage.directory.source',
'browser.newtabpage.enhanced',
@ -22,7 +84,6 @@
'extensions.shield-recipe-client.api_url',
'browser.newtabpage.activity-stream.enabled',
'dom.workers.enabled',
'view_source.tab',
/* 59 */
'intl.locale.matchOS',
'general.useragent.locale',
@ -36,7 +97,8 @@
'camera.control.face_detection.enabled',
'dom.disable_window_status_change',
'dom.idle-observers-api.enabled',
/* 58 : nothing */
/* 58 */
'browser.crashReports.unsubmittedCheck.autoSubmit',
/* 57 */
'social.whitelist',
'social.toast-notifications.enabled',
@ -75,8 +137,6 @@
'plugin.scan.WindowsMediaPlayer',
'media.getusermedia.screensharing.allow_on_old_platforms',
'dom.beforeAfterKeyboardEvent.enabled',
/* End of ESR52.x section */
/* 52 */
'network.http.sendSecureXSiteReferrer',
'media.gmp-eme-adobe.enabled',

View File

@ -0,0 +1,253 @@
/***
This will reset the preferences that have been removed completely from the arkenfox user.js.
Last updated: 14-Sept-2020
For instructions see:
https://github.com/arkenfox/user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
***/
(function() {
let ops = [
/* removed in arkenfox user.js v52-57 */
/* 52-alpha */
'browser.search.reset.enabled',
'browser.search.reset.whitelist',
/* 54-alpha */
'browser.migrate.automigrate.enabled',
'services.sync.enabled',
'webextensions.storage.sync.enabled',
'webextensions.storage.sync.serverURL',
/* 55-alpha */
'dom.keyboardevent.dispatch_during_composition', // default is false anyway
'dom.vr.oculus.enabled', // covered by dom.vr.enabled
'dom.vr.openvr.enabled', // ditto
'dom.vr.osvr.enabled', // ditto
'extensions.pocket.api', // covered by extensions.pocket.enabled
'extensions.pocket.oAuthConsumerKey', // ditto
'extensions.pocket.site', // ditto
/* 56-alpha: none */
/* 57-alpha */
'geo.wifi.xhr.timeout', // covered by geo.enabled
'browser.search.geoip.timeout', // ditto
'media.webspeech.recognition.enable', // default is false anyway
'gfx.layerscope.enabled', // default is false anyway
/* 58-alpha */
// excluding these e10 settings
// 'browser.tabs.remote.autostart',
// 'browser.tabs.remote.autostart.2',
// 'browser.tabs.remote.force-enable',
// 'browser.tabs.remote.separateFileUriProcess',
// 'extensions.e10sBlocksEnabling',
// 'extensions.webextensions.remote',
// 'dom.ipc.processCount',
// 'dom.ipc.shims.enabledWarnings',
// 'dom.ipc.processCount.extension',
// 'dom.ipc.processCount.file',
// 'security.sandbox.content.level',
// 'dom.ipc.plugins.sandbox-level.default',
// 'dom.ipc.plugins.sandbox-level.flash',
// 'security.sandbox.logging.enabled',
'dom.presentation.controller.enabled',
'dom.presentation.discoverable',
'dom.presentation.discovery.enabled',
'dom.presentation.enabled',
'dom.presentation.receiver.enabled',
'dom.presentation.session_transport.data_channel.enable',
/* 59-alpha */
'browser.stopReloadAnimation.enabled',
'browser.tabs.insertRelatedAfterCurrent',
'browser.tabs.loadDivertedInBackground',
'browser.tabs.loadInBackground',
'browser.tabs.selectOwnerOnClose',
'browser.urlbar.clickSelectsAll',
'browser.urlbar.doubleClickSelectsAll',
'media.flac.enabled',
'media.mediasource.enabled',
'media.mediasource.mp4.enabled',
'media.mediasource.webm.audio.enabled',
'media.mediasource.webm.enabled',
'media.mp4.enabled',
'media.ogg.enabled',
'media.ogg.flac.enabled',
'media.opus.enabled',
'media.raw.enabled',
'media.wave.enabled',
'media.webm.enabled',
'media.wmf.amd.vp9.enabled',
'media.wmf.enabled',
'media.wmf.vp9.enabled',
'ui.submenuDelay',
/* 60-beta - these were all at default anyway */
'device.storage.enabled',
'general.useragent.compatMode.firefox',
'network.dns.blockDotOnion',
'network.stricttransportsecurity.preloadlist',
'security.block_script_with_wrong_mime',
'security.fileuri.strict_origin_policy',
'security.sri.enable',
/* 61-beta */
'browser.laterrun.enabled',
'browser.offline-apps.notify',
'browser.rights.3.shown',
'browser.slowStartup.maxSamples',
'browser.slowStartup.notificationDisabled',
'browser.slowStartup.samples',
'browser.storageManager.enabled',
'dom.allow_scripts_to_close_windows',
'dom.disable_window_flip',
'network.http.fast-fallback-to-IPv4',
'offline-apps.quota.warn',
'services.blocklist.signing.enforced',
/* 62-beta */
'browser.urlbar.autoFill.typed',
'security.tls.version.fallback-limit',
/* 63-beta */
'extensions.webextensions.keepStorageOnUninstall',
'extensions.webextensions.keepUuidOnUninstall',
'privacy.trackingprotection.ui.enabled',
/* 64-beta */
'browser.eme.ui.enabled',
'browser.sessionstore.max_windows_undo',
'network.auth.subresource-img-cross-origin-http-auth-allow',
'media.peerconnection.ice.tcp',
'media.peerconnection.identity.enabled',
'media.peerconnection.identity.timeout',
'media.peerconnection.turn.disable',
'media.peerconnection.use_document_iceservers',
'media.peerconnection.video.enabled',
'media.navigator.video.enabled',
/* 65-beta */
'browser.contentblocking.enabled',
'browser.urlbar.maxHistoricalSearchSuggestions',
/* 67-beta */
'app.update.service.enabled',
'app.update.silent',
'app.update.staging.enabled',
'browser.cache.disk.capacity',
'browser.cache.disk.smart_size.enabled',
'browser.cache.disk.smart_size.first_run',
'browser.cache.offline.insecure.enable',
'browser.safebrowsing.downloads.remote.url',
'browser.safebrowsing.provider.google.reportMalwareMistakeURL',
'browser.safebrowsing.provider.google.reportPhishMistakeURL',
'browser.safebrowsing.provider.google.reportURL',
'browser.safebrowsing.provider.google4.dataSharing.enabled',
'browser.safebrowsing.provider.google4.dataSharingURL',
'browser.safebrowsing.provider.google4.reportMalwareMistakeURL',
'browser.safebrowsing.provider.google4.reportPhishMistakeURL',
'browser.safebrowsing.provider.google4.reportURL',
'browser.safebrowsing.reportPhishURL',
'browser.sessionhistory.max_total_viewers',
'browser.urlbar.filter.javascript',
'canvas.capturestream.enabled',
'dom.imagecapture.enabled',
'dom.popup_maximum',
'gfx.offscreencanvas.enabled',
'javascript.options.shared_memory',
'media.gmp-gmpopenh264.autoupdate',
'media.gmp-gmpopenh264.enabled',
'media.gmp-manager.updateEnabled',
'media.gmp-manager.url',
'media.gmp-manager.url.override',
'media.gmp.trial-create.enabled',
'media.gmp-widevinecdm.autoupdate',
'network.cookie.leave-secure-alone',
'network.cookie.same-site.enabled',
'network.dnsCacheEntries',
'network.dnsCacheExpiration',
'network.proxy.autoconfig_url.include_path',
'pdfjs.enableWebGL',
'plugin.default.state',
'plugin.defaultXpi.state',
'plugin.scan.plid.all',
'security.data_uri.block_toplevel_data_uri_navigations',
'security.insecure_field_warning.contextual.enabled',
'security.insecure_password.ui.enabled',
'signon.autofillForms.http',
'signon.storeWhenAutocompleteOff',
'xpinstall.whitelist.required',
/* 67-beta: Blocklist, SB & TP cleanup: these were all inactive */
'browser.safebrowsing.downloads.remote.block_dangerous',
'browser.safebrowsing.downloads.remote.block_dangerous_host',
'browser.safebrowsing.blockedURIs.enabled',
'browser.safebrowsing.provider.google.gethashURL',
'browser.safebrowsing.provider.google.updateURL',
'browser.safebrowsing.provider.google4.gethashURL',
'browser.safebrowsing.provider.google4.updateURL',
'browser.safebrowsing.provider.mozilla.gethashURL',
'browser.safebrowsing.provider.mozilla.updateURL',
'browser.urlbar.userMadeSearchSuggestionsChoice',
'privacy.trackingprotection.annotate_channels',
'privacy.trackingprotection.enabled',
'privacy.trackingprotection.lower_network_priority',
'privacy.trackingprotection.pbmode.enabled',
'services.blocklist.addons.collection',
'services.blocklist.gfx.collection',
'services.blocklist.onecrl.collection',
'services.blocklist.plugins.collection',
'services.blocklist.update_enabled',
'urlclassifier.trackingTable',
/* 68-beta */
'dom.forms.datetime',
'font.blacklist.underline_offset',
'font.name.monospace.x-unicode',
'font.name.monospace.x-western',
'font.name.sans-serif.x-unicode',
'font.name.sans-serif.x-western',
'font.name.serif.x-unicode',
'font.name.serif.x-western',
'layout.css.font-loading-api.enabled',
'toolkit.telemetry.cachedClientID',
/* 69-beta */
'plugin.sessionPermissionNow.intervalInMinutes',
/* 70-beta */
'browser.cache.disk_cache_ssl',
'browser.sessionhistory.max_entries',
'dom.push.connection.enabled',
'dom.push.serverURL',
'extensions.getAddons.discovery.api_url',
'extensions.htmlaboutaddons.discover.enabled',
'extensions.webservice.discoverURL',
'intl.locale.requested',
'intl.regional_prefs.use_os_locales',
'privacy.usercontext.about_newtab_segregation.enabled',
'security.insecure_connection_icon.pbmode.enabled',
'security.insecure_connection_text.pbmode.enabled',
'webgl.dxgl.enabled',
/* 71-beta */
'media.block-autoplay-until-in-foreground',
'middlemouse.paste',
/* 75-beta */
'browser.search.geoip.url',
'browser.search.region',
/* 79-beta */
'browser.urlbar.usepreloadedtopurls.enabled',
/* reset parrot: check your open about:config after running the script */
'_user.js.parrot'
]
if("undefined" === typeof(Services)) {
alert("about:config needs to be the active tab!");
return;
}
let c = 0;
for (let i = 0, len = ops.length; i < len; i++) {
if (Services.prefs.prefHasUserValue(ops[i])) {
Services.prefs.clearUserPref(ops[i]);
if (!Services.prefs.prefHasUserValue(ops[i])) {
console.log("reset", ops[i]);
c++;
} else { console.log("failed to reset", ops[i]); }
}
}
focus();
let d = (c==1) ? " pref" : " prefs";
if (c > 0) {
alert("successfully reset " + c + d + "\n\nfor details check the Browser Console (Ctrl+Shift+J)");
} else { alert("nothing to reset"); }
})();

View File

@ -1,132 +0,0 @@
/***
This will reset the preferences that have been removed completely from the ghacks user.js.
Last updated: 08-Sept-2018
For instructions see:
https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
***/
(function() {
let ops = [
/* removed in ghacks user.js v52-57 */
/* 52-alpha */
'browser.search.reset.enabled',
'browser.search.reset.whitelist',
/* 54-alpha */
'browser.migrate.automigrate.enabled',
'services.sync.enabled',
'webextensions.storage.sync.enabled',
'webextensions.storage.sync.serverURL',
/* 55-alpha */
'dom.keyboardevent.dispatch_during_composition', // default is false anyway
'dom.vr.oculus.enabled', // covered by dom.vr.enabled
'dom.vr.openvr.enabled', // ditto
'dom.vr.osvr.enabled', // ditto
'extensions.pocket.api', // covered by extensions.pocket.enabled
'extensions.pocket.oAuthConsumerKey', // ditto
'extensions.pocket.site', // ditto
/* 56-alpha: none */
/* 57-alpha */
'geo.wifi.xhr.timeout', // covered by geo.enabled
'browser.search.geoip.timeout', // ditto
'media.webspeech.recognition.enable', // default is false anyway
'gfx.layerscope.enabled', // default is false anyway
/* 58-alpha */
// excluding these e10 settings
// 'browser.tabs.remote.autostart',
// 'browser.tabs.remote.autostart.2',
// 'browser.tabs.remote.force-enable',
// 'browser.tabs.remote.separateFileUriProcess',
// 'extensions.e10sBlocksEnabling',
// 'extensions.webextensions.remote',
// 'dom.ipc.processCount',
// 'dom.ipc.shims.enabledWarnings',
// 'dom.ipc.processCount.extension',
// 'dom.ipc.processCount.file',
// 'security.sandbox.content.level',
// 'dom.ipc.plugins.sandbox-level.default',
// 'dom.ipc.plugins.sandbox-level.flash',
// 'security.sandbox.logging.enabled',
'dom.presentation.controller.enabled',
'dom.presentation.discoverable',
'dom.presentation.discovery.enabled',
'dom.presentation.enabled',
'dom.presentation.receiver.enabled',
'dom.presentation.session_transport.data_channel.enable',
/* 59-alpha */
'browser.stopReloadAnimation.enabled',
'browser.tabs.insertRelatedAfterCurrent',
'browser.tabs.loadDivertedInBackground',
'browser.tabs.loadInBackground',
'browser.tabs.selectOwnerOnClose',
'browser.urlbar.clickSelectsAll',
'browser.urlbar.doubleClickSelectsAll',
'media.flac.enabled',
'media.mediasource.enabled',
'media.mediasource.mp4.enabled',
'media.mediasource.webm.audio.enabled',
'media.mediasource.webm.enabled',
'media.mp4.enabled',
'media.ogg.enabled',
'media.ogg.flac.enabled',
'media.opus.enabled',
'media.raw.enabled',
'media.wave.enabled',
'media.webm.enabled',
'media.wmf.amd.vp9.enabled',
'media.wmf.enabled',
'media.wmf.vp9.enabled',
'ui.submenuDelay',
/* 60-beta - these were all at default anyway */
'device.storage.enabled',
'general.useragent.compatMode.firefox',
'network.dns.blockDotOnion',
'network.stricttransportsecurity.preloadlist',
'security.block_script_with_wrong_mime',
'security.fileuri.strict_origin_policy',
'security.sri.enable',
/* 61-beta */
'browser.laterrun.enabled',
'browser.offline-apps.notify',
'browser.rights.3.shown',
'browser.slowStartup.maxSamples',
'browser.slowStartup.notificationDisabled',
'browser.slowStartup.samples',
'browser.storageManager.enabled',
'dom.allow_scripts_to_close_windows',
'dom.disable_window_flip',
'network.http.fast-fallback-to-IPv4',
'offline-apps.quota.warn',
'services.blocklist.signing.enforced',
/* 62-beta */
'browser.urlbar.autoFill.typed',
'security.tls.version.fallback-limit',
/* reset parrot: check your open about:config after running the script */
'_user.js.parrot'
]
if("undefined" === typeof(Services)) {
alert("about:config needs to be the active tab!");
return;
}
let c = 0;
for (let i = 0, len = ops.length; i < len; i++) {
if (Services.prefs.prefHasUserValue(ops[i])) {
Services.prefs.clearUserPref(ops[i]);
if (!Services.prefs.prefHasUserValue(ops[i])) {
console.log("reset", ops[i]);
c++;
} else { console.log("failed to reset", ops[i]); }
}
}
focus();
let d = (c==1) ? " pref" : " prefs";
if (c > 0) {
alert("successfully reset " + c + d + "\n\nfor details check the Browser Console (Ctrl+Shift+J)");
} else { alert("nothing to reset"); }
})();

View File

@ -1,65 +1,11 @@
/*** ghacks-user.js troubleshooter.js v1.5 ***/
/*** arkenfox user.js troubleshooter.js v1.6.1 ***/
(function() {
if("undefined" === typeof(Services)) {
alert("about:config needs to be the active tab!");
return;
}
if ("undefined" === typeof(Services)) return alert('about:config needs to be the active tab!');
function getMyList(arr) {
let aRet = [];
let dummy = 0;
for (let i = 0, len = arr.length; i < len; i++) {
if (Services.prefs.prefHasUserValue(arr[i])) {
dummy = Services.prefs.getPrefType(arr[i]);
switch (dummy) {
case 32: // string (see https://dxr.mozilla.org/mozilla-central/source/modules/libpref/nsIPrefBranch.idl#31)
dummy = Services.prefs.getCharPref(arr[i]);
aRet.push({'name':arr[i],'value': dummy,'type':32});
break;
case 64: // int
dummy = Services.prefs.getIntPref(arr[i]);
aRet.push({'name':arr[i],'value': dummy,'type':64});
break;
case 128: // boolean
dummy = Services.prefs.getBoolPref(arr[i]);
aRet.push({'name':arr[i],'value': dummy,'type':128});
break;
default:
console.log("error detecting pref-type for '"+arr[i]+"' !");
}
}
}
return aRet;
}
function reapply(arr) {
for (let i = 0, len = arr.length; i < len; i++) {
switch (arr[i].type) {
case 32: // string
Services.prefs.setCharPref(arr[i].name, arr[i].value);
break;
case 64: // int
Services.prefs.setIntPref(arr[i].name, arr[i].value);
break;
case 128: // boolean
Services.prefs.setBoolPref(arr[i].name, arr[i].value);
break;
default:
console.log("error re-appyling value for '"+arr[i].name+"' !"); // should never happen
}
}
}
function myreset(arr) {
for (let i = 0, len = arr.length; i < len; i++) {
Services.prefs.clearUserPref(arr[i].name);
}
}
let ops = [
const aPREFS = [
/* known culprits */
'network.cookie.cookieBehavior',
@ -82,7 +28,6 @@
'dom.push.enabled',
'dom.push.serverURL',
'dom.serviceWorkers.enabled',
'dom.workers.enabled',
'dom.webnotifications.enabled',
'dom.webnotifications.serviceworker.enabled',
@ -116,6 +61,7 @@
/* Audio + Video */
'dom.webaudio.enabled',
'media.autoplay.enabled',
'media.autoplay.default', // FF63+
/* Forms */
'browser.formfill.enable',
@ -125,7 +71,6 @@
/* HTTPS */
'security.cert_pinning.enforcement_level',
'security.family_safety.mode',
'security.mixed_content.use_hsts',
'security.OCSP.require',
'security.pki.sha1_enforcement_level',
'security.ssl.require_safe_negotiation',
@ -152,7 +97,7 @@
'dom.popup_maximum',
'layout.css.visited_links_enabled',
'mathml.disabled',
'network.auth.subresource-img-cross-origin-http-auth-allow',
'network.auth.subresource-http-auth-allow',
'network.http.redirection-limit',
'network.protocol-handler.external.ms-windows-store',
'privacy.trackingprotection.enabled',
@ -161,56 +106,108 @@
'last.one.without.comma'
]
// any runtime-set pref that everyone will have and that can be safely reset
const oFILLER = { type: 64, name: 'app.update.lastUpdateTime.browser-cleanup-thumbnails', value: 1580000000 };
// reset prefs that set the same value as FFs default value
let aTEMP = getMyList(ops);
myreset(aTEMP);
reapply(aTEMP);
function getMyList(arr) {
const aRet = [];
for (const sPname of arr) {
if (Services.prefs.prefHasUserValue(sPname)) {
const ptype = Services.prefs.getPrefType(sPname);
switch (ptype) {
case 32: // string (see https://dxr.mozilla.org/mozilla-central/source/modules/libpref/nsIPrefBranch.idl#31)
aRet.push({'type':ptype,'name':sPname,'value':Services.prefs.getCharPref(sPname)});
break;
case 64: // int
aRet.push({'type':ptype,'name':sPname,'value':Services.prefs.getIntPref(sPname)});
break;
case 128: // boolean
aRet.push({'type':ptype,'name':sPname,'value':Services.prefs.getBoolPref(sPname)});
break;
default:
console.log("error detecting pref-type for '"+sPname+"' !");
}
}
}
return aRet;
}
const aBACKUP = getMyList(ops);
//console.log(aBACKUP.length, "user-set prefs from our list detected and their values stored.");
function reapply(arr) {
for (const oPref of arr) {
switch (oPref.type) {
case 32: // string
Services.prefs.setCharPref(oPref.name, oPref.value);
break;
case 64: // int
Services.prefs.setIntPref(oPref.name, oPref.value);
break;
case 128: // boolean
Services.prefs.setBoolPref(oPref.name, oPref.value);
break;
default:
console.log("error re-appyling value for '"+oPref.name+"' !"); // should never happen
}
}
}
let myArr = aBACKUP;
let found = false;
let aDbg = [];
focus();
myreset(aBACKUP); // reset all detected prefs
if (confirm("all detected prefs reset.\n\n!! KEEP THIS PROMPT OPEN AND TEST THE SITE IN ANOTHER TAB !!\n\nIF the problem still exists, this script can't help you - click cancel to re-apply your values and exit.\n\nClick OK if your problem is fixed.")) {
aDbg = myArr;
reapply(aBACKUP);
myreset(myArr.slice(0, parseInt(myArr.length/2)));
while (myArr.length >= 2) {
function myreset(arr) {
for (const oPref of arr) Services.prefs.clearUserPref(oPref.name);
}
function resetAllMatchingDefault(arr) {
const aTmp = getMyList(arr);
myreset(aTmp);
reapply(aTmp);
}
function _main(aALL) {
const _h = (arr) => Math.ceil(arr.length/2);
let aTmp = aALL, aDbg = aALL;
reapply(aALL);
myreset(aTmp.slice(0, _h(aTmp)));
while (aTmp.length) {
alert("NOW TEST AGAIN !");
if (confirm("if the problem still exists click OK, otherwise click cancel.")) {
myArr = myArr.slice(parseInt(myArr.length/2));
if (myArr.length == 1) {
alert("The problem is caused by more than 1 pref !\n\nNarrowed it down to "+ aDbg.length.toString() +" prefs, check the console ...");
break;
}
aTmp = aTmp.slice(_h(aTmp));
} else {
myArr = myArr.slice(0, parseInt(myArr.length/2));
aDbg = myArr;
if (myArr.length == 1) { found = true; break; }
aTmp = aTmp.slice(0, _h(aTmp));
aDbg = aTmp; // update narrowed down list
if (aDbg.length == 1) break;
}
reapply(aBACKUP);
myreset(myArr.slice(0, parseInt(myArr.length/2))); // reset half of the remaining prefs
reapply(aALL);
myreset(aTmp.slice(0, _h(aTmp))); // reset half of the remaining prefs
}
reapply(aBACKUP);
reapply(aALL);
if (aDbg.length == 1) return alert("narrowed it down to:\n\n"+aDbg[0].name+"\n");
if (aDbg.length == aALL.length) {
let msg = "Failed to narrow it down beyond the initial "+aALL.length+" prefs. The problem is most likely caused by at least 2 prefs!\n\n";
msg += "Either those prefs are too far apart in the list or there are exactly 2 culprits and they just happen to be at the wrong place.\n\n";
msg += "In case it's the latter, the script can add a dummy pref and you can try again - Try again?";
if (confirm(msg)) return _main([...aALL, oFILLER]);
} else if (aDbg.length > 10 && confirm("Narrowed it down to "+aDbg.length+" prefs. Try narrowing it down further?")) {
return _main(aDbg.reverse());
}
alert("Narrowed it down to "+ aDbg.length.toString() +" prefs, check the console ...");
console.log("The problem is caused by 2 or more of these prefs:");
for (const oPref of aDbg) console.log(oPref.name);
}
else {
reapply(aBACKUP);
resetAllMatchingDefault(aPREFS); // reset user-set prefs matching FFs default value
const aBAK = getMyList(aPREFS);
//console.log(aBAK.length, "user-set prefs from our list detected and their values stored.");
focus();
myreset(aBAK);
if (!confirm("all detected prefs reset.\n\n!! KEEP THIS PROMPT OPEN AND TEST THE SITE IN ANOTHER TAB !!\n\nIF the problem still exists, this script can't help you - click cancel to re-apply your values and exit.\n\nClick OK if your problem is fixed.")) {
reapply(aBAK);
return;
}
if (found) {
alert("narrowed it down to:\n\n"+myArr[0].name+"\n");
myreset(myArr); // reset the culprit
}
else {
console.log("the problem is caused by a combination of the following prefs:");
for (let i = 0, len = aDbg.length; i < len; i++) {
console.log(aDbg[i].name);
}
}
_main(aBAK);
})();

View File

@ -1,12 +1,12 @@
@ECHO OFF & SETLOCAL EnableDelayedExpansion
TITLE ghacks user.js updater
TITLE arkenfox user.js updater
REM ## ghacks-user.js updater for Windows
REM ## arkenfox user.js updater for Windows
REM ## author: @claustromaniac
REM ## version: 4.6
REM ## instructions: https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.3-Updater-Scripts
REM ## version: 4.12
REM ## instructions: https://github.com/arkenfox/user.js/wiki/3.3-Updater-Scripts
SET v=4.7
SET v=4.12
VERIFY ON
CD /D "%~dp0"
@ -22,6 +22,8 @@ IF /I "%~1"=="-multioverrides" (SET _multi=1)
IF /I "%~1"=="-merge" (SET _merge=1)
IF /I "%~1"=="-updatebatch" (SET _updateb=1)
IF /I "%~1"=="-singlebackup" (SET _singlebackup=1)
IF /I "%~1"=="-esr" (SET _esr=1)
IF /I "%~1"=="-rfpalts" (SET _rfpalts=1)
SHIFT
GOTO parse
:endparse
@ -50,7 +52,7 @@ IF DEFINED _updateb (
REM Uncomment the next line and comment out the PowerShell call for testing.
REM COPY /B /Y "!_myname!.bat" "[updated]!_myname!.bat" >nul
(
PowerShell -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/ghacksuserjs/ghacks-user.js/master/updater.bat', '[updated]!_myname!.bat')"
PowerShell -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/arkenfox/user.js/master/updater.bat', '[updated]!_myname!.bat')"
) >nul 2>&1
IF EXIST "[updated]!_myname!.bat" (
START /min CMD /C "[updated]!_myname!.bat" !_myparams!
@ -82,7 +84,7 @@ ECHO:
ECHO: ########################################
ECHO: #### user.js Updater for Windows ####
ECHO: #### by claustromaniac ####
ECHO: #### v!v! ####
ECHO: #### v!v! ####
ECHO: ########################################
ECHO:
SET /A "_line=0"
@ -98,7 +100,10 @@ IF NOT EXIST user.js (
)
:exitloop
IF NOT "!_name!"=="" (
IF /I NOT "!_name!"=="!_name:ghacks=!" (
SET "_tempvar="
IF /I NOT "!_name!"=="!_name:ghacks=!" SET _tempvar=1
IF /I NOT "!_name!"=="!_name:arkenfox=!" SET _tempvar=1
IF !_tempvar! EQU 1 (
CALL :message "!_name! !_version:~2!,!_date!"
) ELSE (CALL :message "Current user.js version not recognised.")
) ELSE (CALL :message "Current user.js version not recognised.")
@ -106,7 +111,7 @@ IF NOT EXIST user.js (
ECHO:
IF NOT DEFINED _ua (
CALL :message "This batch should be run from your Firefox profile directory."
ECHO: It will download the latest version of ghacks user.js from github and then
ECHO: It will download the latest version of arkenfox user.js from github and then
CALL :message "append any of your own changes from user-overrides.js to it."
CALL :message "Visit the wiki for more detailed information."
ECHO:
@ -128,9 +133,17 @@ IF DEFINED _log (
IF EXIST user.js.new (DEL /F "user.js.new")
CALL :message "Retrieving latest user.js file from github repository..."
(
PowerShell -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/ghacksuserjs/ghacks-user.js/master/user.js', 'user.js.new')"
PowerShell -Command "(New-Object Net.WebClient).DownloadFile('https://raw.githubusercontent.com/arkenfox/user.js/master/user.js', 'user.js.new')"
) >nul 2>&1
IF EXIST user.js.new (
IF DEFINED _rfpalts (
CALL :message "Activating RFP Alternatives section..."
CALL :activate user.js.new "[SETUP-non-RFP]"
)
IF DEFINED _esr (
CALL :message "Activating ESR section..."
CALL :activate user.js.new ".x still uses all the following prefs"
)
IF DEFINED _multi (
FORFILES /P user.js-overrides /M *.js >nul 2>&1
IF NOT ERRORLEVEL 1 (
@ -196,7 +209,7 @@ IF NOT DEFINED _log (
)
EXIT /B
REM ########### Message Function ###########
::::::::::::::: Message :::::::::::::::
:message
SETLOCAL DisableDelayedExpansion
IF NOT "2"=="%_log%" (ECHO:)
@ -205,7 +218,28 @@ IF NOT "2"=="%_log%" (ECHO:)
ENDLOCAL
GOTO :EOF
REM ############ Merge function ############
::::::::::::::: Activate Section :::::::::::::::
:activate
:: arg1 = file
:: arg2 = line substring
SETLOCAL DisableDelayedExpansion
(
FOR /F "tokens=1,* delims=:" %%G IN ('FINDSTR /N "^" "%~1"') DO (
SET "_temp=%%H"
SETLOCAL EnableDelayedExpansion
IF "!_temp:%~2=!"=="!_temp!" (
ENDLOCAL & ECHO:%%H
) ELSE (
ECHO://!_temp:~2!
ENDLOCAL
)
)
)>updatertempfile
MOVE /Y updatertempfile "%~1" >nul
ENDLOCAL
GOTO :EOF
::::::::::::::: Merge :::::::::::::::
:merge
SETLOCAL DisableDelayedExpansion
FOR /F tokens^=2^,^*^ delims^=^'^" %%G IN ('FINDSTR /R /C:"^user_pref[ ]*\([ ]*[\"'].*[\"'][ ]*,.*\)[ ]*;" "%~1"') DO (SET "[%%G]=%%H")
@ -244,11 +278,13 @@ MOVE /Y updatertempfile "%~1" >nul
ENDLOCAL
GOTO :EOF
REM ############### Help ##################
::::::::::::::: Help :::::::::::::::
:showhelp
MODE 80,46
MODE 80,54
CLS
CALL :message "Available arguments (case-insensitive):"
CALL :message " -esr"
ECHO: Activate ESR related preferences
CALL :message " -log"
ECHO: Write the console output to a logfile (user.js-update-log.txt)
CALL :message " -logP"
@ -272,7 +308,9 @@ ECHO: Run without user input.
CALL :message " -singleBackup"
ECHO: Use a single backup file and overwrite it on new updates, instead of
ECHO: cumulative backups. This was the default behaviour before v4.3.
CALL :message " -updatebatch"
CALL :message " -rfpAlts"
ECHO: Activate RFP Alternatives section
CALL :message " -updateBatch"
ECHO: Update the script itself on execution, before the normal routine.
CALL :message ""
PAUSE

View File

@ -1,129 +1,399 @@
#!/usr/bin/env bash
### ghacks-user.js updater for Mac/Linux
## author: @overdodactyl, @ema-pe
## version: 1.4
## arkenfox user.js updater for macOS and Linux
## DON'T GO HIGHER THAN VERSION x.9 !! ( because of ASCII comparison in check_for_update() )
## version: 2.8
## Author: Pat Johnson (@overdodactyl)
## Additional contributors: @earthlng, @ema-pe, @claustromaniac
ghacksjs="https://raw.githubusercontent.com/ghacksuserjs/ghacks-user.js/master/user.js"
updater="https://raw.githubusercontent.com/ghacksuserjs/ghacks-user.js/master/updater.sh"
update_pref=${1:--ask}
## DON'T GO HIGHER THAN VERSION x.9 !! ( because of ASCII comparison in update_updater() )
currdir=$(pwd)
readonly CURRDIR=$(pwd)
DOWNLOAD_TO_STDOUT="curl -s"
DOWNLOAD_TO_FILE="curl -O"
sfp=$(readlink -f "${BASH_SOURCE[0]}" 2>/dev/null || greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null)
[ -z "$sfp" ] && sfp=${BASH_SOURCE[0]}
readonly SCRIPT_DIR=$(dirname "${sfp}")
# Use wget if curl is not available.
if [[ -z $(command -v "curl") ]]; then
DOWNLOAD_TO_STDOUT="wget --quiet --output-document=-"
DOWNLOAD_TO_FILE="wget"
#########################
# Base variables #
#########################
# Colors used for printing
RED='\033[0;31m'
BLUE='\033[0;34m'
BBLUE='\033[1;34m'
GREEN='\033[0;32m'
ORANGE='\033[0;33m'
CYAN='\033[0;36m'
NC='\033[0m' # No Color
# Argument defaults
UPDATE='check'
CONFIRM='yes'
OVERRIDE='user-overrides.js'
BACKUP='multiple'
COMPARE=false
SKIPOVERRIDE=false
VIEW=false
PROFILE_PATH=false
ESR=false
# Download method priority: curl -> wget
DOWNLOAD_METHOD=''
if [[ $(command -v 'curl') ]]; then
DOWNLOAD_METHOD='curl --max-redirs 3 -so'
elif [[ $(command -v 'wget') ]]; then
DOWNLOAD_METHOD='wget --max-redirect 3 --quiet -O'
else
echo -e "${RED}This script requires curl or wget.\nProcess aborted${NC}"
exit 1
fi
## get the full path of this script (readlink for Linux, greadlink for Mac with coreutils installed)
sfp=$(readlink -f "${BASH_SOURCE[0]}" 2>/dev/null || greadlink -f "${BASH_SOURCE[0]}" 2>/dev/null)
## fallback for Macs without coreutils
if [ -z "$sfp" ]; then sfp=${BASH_SOURCE[0]}; fi
## change directory to the Firefox profile directory
cd "$(dirname "${sfp}")"
## Used to check if a new version of updater.sh is available
update_available="no"
check_for_update () {
online_version="$($DOWNLOAD_TO_STDOUT ${updater} | sed -n '5 s/.*[[:blank:]]\([[:digit:]]*\.[[:digit:]]*\)/\1/p')"
path_to_script="$(dirname "${sfp}")/updater.sh"
current_version="$(sed -n '5 s/.*[[:blank:]]\([[:digit:]]*\.[[:digit:]]*\)/\1/p' "$path_to_script")"
if [[ "$current_version" < "$online_version" ]]; then
update_available="yes"
fi
show_banner () {
echo -e "${BBLUE}
############################################################################
#### ####
#### arkenfox user.js ####
#### Hardening the Privacy and Security Settings of Firefox ####
#### Maintained by @Thorin-Oakenpants and @earthlng ####
#### Updater for macOS and Linux by @overdodactyl ####
#### ####
############################################################################"
echo -e "${NC}\n"
echo -e "Documentation for this script is available here: ${CYAN}https://github.com/arkenfox/user.js/wiki/3.3-Updater-Scripts${NC}\n"
}
## Used to backup the current script, and download and execute the latest version of updater.sh
update_script () {
echo -e "This script will be backed up and the latest version of updater.sh will be executed.\n"
mv updater.sh "updater.sh.backup.$(date +"%Y-%m-%d_%H%M")"
$DOWNLOAD_TO_FILE ${updater} && echo -e "\nThe latest updater script has been downloaded\n"
#########################
# Arguments #
#########################
# make new file executable
chmod +x updater.sh
# execute new updater script
./updater.sh -donotupdate
# exit script
usage() {
echo
echo -e "${BLUE}Usage: $0 [-bcdehlnrsuv] [-p PROFILE] [-o OVERRIDE]${NC}" 1>&2 # Echo usage string to standard error
echo -e "
Optional Arguments:
-h Show this help message and exit.
-p PROFILE Path to your Firefox profile (if different than the dir of this script)
IMPORTANT: If the path contains spaces, wrap the entire argument in quotes.
-l Choose your Firefox profile from a list
-u Update updater.sh and execute silently. Do not seek confirmation.
-d Do not look for updates to updater.sh.
-s Silently update user.js. Do not seek confirmation.
-b Only keep one backup of each file.
-c Create a diff file comparing old and new user.js within userjs_diffs.
-o OVERRIDE Filename or path to overrides file (if different than user-overrides.js).
If used with -p, paths should be relative to PROFILE or absolute paths
If given a directory, all files inside will be appended recursively.
You can pass multiple files or directories by passing a comma separated list.
Note: If a directory is given, only files inside ending in the extension .js are appended
IMPORTANT: Do not add spaces between files/paths. Ex: -o file1.js,file2.js,dir1
IMPORTANT: If any file/path contains spaces, wrap the entire argument in quotes.
Ex: -o \"override folder\"
-n Do not append any overrides, even if user-overrides.js exists.
-v Open the resulting user.js file.
-r Only download user.js to a temporary file and open it.
-e Activate ESR related preferences."
echo
exit 1
}
#########################
# File Handling #
#########################
main () {
## create backup folder if it doesn't exist
mkdir -p userjs_backups;
# Download files
download_file () { # expects URL as argument ($1)
declare -r tf=$(mktemp)
echo -e "\nThis script should be run from your Firefox profile directory.\n"
$DOWNLOAD_METHOD "${tf}" "$1" && echo "$tf" || echo '' # return the temp-filename or empty string on error
}
echo -e "Updating the user.js for Firefox profile:\n$(pwd)\n"
if [ -e user.js ]; then
echo "Your current user.js file for this profile will be backed up and the latest ghacks version from github will take its place."
echo -e "\nIf currently using the ghacks user.js, please compare versions:"
echo " Available online: $($DOWNLOAD_TO_STDOUT ${ghacksjs} | sed -n '4p')"
echo " Currently using: $(sed -n '4p' user.js)"
open_file () { # expects one argument: file_path
if [ "$(uname)" == 'Darwin' ]; then
open "$1"
elif [ "$(uname -s | cut -c -5)" == "Linux" ]; then
xdg-open "$1"
else
echo "A user.js file does not exist in this profile. If you continue, the latest ghacks version from github will be downloaded."
echo -e "${RED}Error: Sorry, opening files is not supported for your OS.${NC}"
fi
}
readIniFile () { # expects one argument: absolute path of profiles.ini
declare -r inifile="$1"
declare -r tfile=$(mktemp)
if [ $(grep '^\[Profile' "$inifile" | wc -l) == "1" ]; then ### only 1 profile found
grep '^\[Profile' -A 4 "$inifile" | grep -v '^\[Profile' > $tfile
else
grep -E -v '^\[General\]|^StartWithLastProfile=|^IsRelative=' "$inifile"
echo ''
read -p 'Select the profile number ( 0 for Profile0, 1 for Profile1, etc ) : ' -r
echo -e "\n"
if [[ $REPLY =~ ^(0|[1-9][0-9]*)$ ]]; then
grep '^\[Profile'${REPLY} -A 4 "$inifile" | grep -v '^\[Profile'${REPLY} > $tfile
if [[ "$?" != "0" ]]; then
echo "Profile${REPLY} does not exist!" && exit 1
fi
else
echo "Invalid selection!" && exit 1
fi
fi
echo -e "\nIf a user-overrides.js file exists in this profile, it will be appended to the user.js.\n"
declare -r profpath=$(grep '^Path=' $tfile)
declare -r pathisrel=$(grep '^IsRelative=' $tfile)
read -p "Continue Y/N? " -n 1 -r
echo -e "\n\n"
rm "$tfile"
if [[ $REPLY =~ ^[Yy]$ ]]; then
if [ -e user.js ]; then
# backup current user.js
bakfile="userjs_backups/user.js.backup.$(date +"%Y-%m-%d_%H%M")"
mv user.js "${bakfile}" && echo "Your previous user.js file was backed up: ${bakfile}"
fi
# download latest ghacks user.js
echo "downloading latest ghacks user.js file"
$DOWNLOAD_TO_FILE ${ghacksjs} && echo "ghacks user.js has been downloaded"
if [ -e user-overrides.js ]; then
echo "user-overrides.js file found"
cat user-overrides.js >> user.js && echo "user-overrides.js has been appended to user.js"
fi
# update global variable
if [[ ${pathisrel#*=} == "1" ]]; then
PROFILE_PATH="$(dirname "$inifile")/${profpath#*=}"
else
echo "Process aborted"
PROFILE_PATH="${profpath#*=}"
fi
}
getProfilePath () {
declare -r f1=~/Library/Application\ Support/Firefox/profiles.ini
declare -r f2=~/.mozilla/firefox/profiles.ini
if [ "$PROFILE_PATH" = false ]; then
PROFILE_PATH="$SCRIPT_DIR"
elif [ "$PROFILE_PATH" = 'list' ]; then
local ini=''
if [[ -f "$f1" ]]; then
ini="$f1"
elif [[ -f "$f2" ]]; then
ini="$f2"
else
echo -e "${RED}Error: Sorry, -l is not supported for your OS${NC}"
exit 1
fi
readIniFile "$ini" # updates PROFILE_PATH or exits on error
#else
# PROFILE_PATH already set by user with -p
fi
}
#########################
# Update updater.sh #
#########################
# Returns the version number of a updater.sh file
get_updater_version () {
echo $(sed -n '5 s/.*[[:blank:]]\([[:digit:]]*\.[[:digit:]]*\)/\1/p' "$1")
}
# Update updater.sh
# Default: Check for update, if available, ask user if they want to execute it
# Args:
# -d: New version will not be looked for and update will not occur
# -u: Check for update, if available, execute without asking
update_updater () {
if [ $UPDATE = 'no' ]; then
return 0 # User signified not to check for updates
fi
## change directory back to the original working directory
cd "${currdir}"
declare -r tmpfile="$(download_file 'https://raw.githubusercontent.com/arkenfox/user.js/master/updater.sh')"
[ -z "${tmpfile}" ] && echo -e "${RED}Error! Could not download updater.sh${NC}" && return 1 # check if download failed
if [[ $(get_updater_version "${SCRIPT_DIR}/updater.sh") < $(get_updater_version "${tmpfile}") ]]; then
if [ $UPDATE = 'check' ]; then
echo -e "There is a newer version of updater.sh available. ${RED}Update and execute Y/N?${NC}"
read -p "" -n 1 -r
echo -e "\n\n"
[[ $REPLY =~ ^[Nn]$ ]] && return 0 # Update available, but user chooses not to update
fi
else
return 0 # No update available
fi
mv "${tmpfile}" "${SCRIPT_DIR}/updater.sh"
chmod u+x "${SCRIPT_DIR}/updater.sh"
"${SCRIPT_DIR}/updater.sh" "$@" -d
exit 0
}
update_pref="$(echo $update_pref | tr '[A-Z]' '[a-z]')"
if [ $update_pref = "-donotupdate" ]; then
main
else
check_for_update
if [ $update_available = "no" ]; then
main
#########################
# Update user.js #
#########################
# Returns version number of a user.js file
get_userjs_version () {
[ -e $1 ] && echo "$(sed -n '4p' "$1")" || echo "Not detected."
}
add_override () {
input=$1
if [ -f "$input" ]; then
echo "" >> user.js
cat "$input" >> user.js
echo -e "Status: ${GREEN}Override file appended:${NC} ${input}"
elif [ -d "$input" ]; then
SAVEIFS=$IFS
IFS=$'\n\b' # Set IFS
FILES="${input}"/*.js
for f in $FILES
do
add_override "$f"
done
IFS=$SAVEIFS # restore $IFS
else
## there is an update available
if [ $update_pref = "-update" ]; then
## update without asking
update_script
else
read -p "There is a newer version of updater.sh available. Download and execute? Y/N? " -n 1 -r
echo -e "\n\n"
if [[ $REPLY =~ ^[Yy]$ ]]; then
update_script
else
main
fi
echo -e "${ORANGE}Warning: Could not find override file:${NC} ${input}"
fi
}
remove_comments () { # expects 2 arguments: from-file and to-file
sed -e 's/^[[:space:]]*\/\/.*$//' -e '/^\/\*/,/\*\//d' -e '/^[[:space:]]*$/d' -e 's/);[[:space:]]*\/\/.*/);/' "$1" > "$2"
}
# Applies latest version of user.js and any custom overrides
update_userjs () {
declare -r newfile="$(download_file 'https://raw.githubusercontent.com/arkenfox/user.js/master/user.js')"
[ -z "${newfile}" ] && echo -e "${RED}Error! Could not download user.js${NC}" && return 1 # check if download failed
echo -e "Please observe the following information:
Firefox profile: ${ORANGE}$(pwd)${NC}
Available online: ${ORANGE}$(get_userjs_version $newfile)${NC}
Currently using: ${ORANGE}$(get_userjs_version user.js)${NC}\n\n"
if [ $CONFIRM = 'yes' ]; then
echo -e "This script will update to the latest user.js file and append any custom configurations from user-overrides.js. ${RED}Continue Y/N? ${NC}"
read -p "" -n 1 -r
echo -e "\n"
if [[ $REPLY =~ ^[Nn]$ ]]; then
echo -e "${RED}Process aborted${NC}"
rm $newfile
return 1
fi
fi
# Copy a version of user.js to diffs folder for later comparison
if [ "$COMPARE" = true ]; then
mkdir -p userjs_diffs
cp user.js userjs_diffs/past_user.js &>/dev/null
fi
# backup user.js
mkdir -p userjs_backups
local bakname="userjs_backups/user.js.backup.$(date +"%Y-%m-%d_%H%M")"
[ $BACKUP = 'single' ] && bakname='userjs_backups/user.js.backup'
cp user.js "$bakname" &>/dev/null
mv "${newfile}" user.js
echo -e "Status: ${GREEN}user.js has been backed up and replaced with the latest version!${NC}"
if [ "$ESR" = true ]; then
sed -e 's/\/\* \(ESR[0-9]\{2,\}\.x still uses all.*\)/\/\/ \1/' user.js > user.js.tmp && mv user.js.tmp user.js
echo -e "Status: ${GREEN}ESR related preferences have been activated!${NC}"
fi
# apply overrides
if [ "$SKIPOVERRIDE" = false ]; then
while IFS=',' read -ra FILES; do
for FILE in "${FILES[@]}"; do
add_override "$FILE"
done
done <<< "$OVERRIDE"
fi
# create diff
if [ "$COMPARE" = true ]; then
pastuserjs='userjs_diffs/past_user.js'
past_nocomments='userjs_diffs/past_userjs.txt'
current_nocomments='userjs_diffs/current_userjs.txt'
remove_comments $pastuserjs $past_nocomments
remove_comments user.js $current_nocomments
diffname="userjs_diffs/diff_$(date +"%Y-%m-%d_%H%M").txt"
diff=$(diff -w -B -U 0 $past_nocomments $current_nocomments)
if [ ! -z "$diff" ]; then
echo "$diff" > "$diffname"
echo -e "Status: ${GREEN}A diff file was created:${NC} ${PWD}/${diffname}"
else
echo -e "Warning: ${ORANGE}Your new user.js file appears to be identical. No diff file was created.${NC}"
[ $BACKUP = 'multiple' ] && rm $bakname &>/dev/null
fi
rm $past_nocomments $current_nocomments $pastuserjs &>/dev/null
fi
[ "$VIEW" = true ] && open_file "${PWD}/user.js"
}
#########################
# Execute #
#########################
if [ $# != 0 ]; then
# Display usage if first argument is -help or --help
if [ $1 = '--help' ] || [ $1 = '-help' ]; then
usage
else
while getopts ":hp:ludsno:bcvre" opt; do
case $opt in
h)
usage
;;
p)
PROFILE_PATH=${OPTARG}
;;
l)
PROFILE_PATH='list'
;;
u)
UPDATE='yes'
;;
d)
UPDATE='no'
;;
s)
CONFIRM='no'
;;
n)
SKIPOVERRIDE=true
;;
o)
OVERRIDE=${OPTARG}
;;
b)
BACKUP='single'
;;
c)
COMPARE=true
;;
v)
VIEW=true
;;
e)
ESR=true
;;
r)
tfile="$(download_file 'https://raw.githubusercontent.com/arkenfox/user.js/master/user.js')"
[ -z "${tfile}" ] && echo -e "${RED}Error! Could not download user.js${NC}" && exit 1 # check if download failed
mv $tfile "${tfile}.js"
echo -e "${ORANGE}Warning: user.js was saved to temporary file ${tfile}.js${NC}"
open_file "${tfile}.js"
exit 0
;;
\?)
echo -e "${RED}\n Error! Invalid option: -$OPTARG${NC}" >&2
usage
;;
:)
echo -e "${RED}Error! Option -$OPTARG requires an argument.${NC}" >&2
exit 2
;;
esac
done
fi
fi
show_banner
update_updater $@
getProfilePath # updates PROFILE_PATH or exits on error
cd "$PROFILE_PATH" && update_userjs
cd "$CURRDIR"

2443
user.js

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="78" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="78" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h47v20H0z"/><path fill="#dfb317" d="M47 0h31v20H47z"/><path fill="url(#b)" d="M0 0h78v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="110"> <text x="245" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="370">license</text><text x="245" y="140" transform="scale(.1)" textLength="370">license</text><text x="615" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="210">MIT</text><text x="615" y="140" transform="scale(.1)" textLength="210">MIT</text></g> </svg>

After

Width:  |  Height:  |  Size: 950 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB