Compare commits

...

108 Commits

Author SHA1 Message Date
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
6717bc0674 1024: toolkit.winRegisterApplicationRestart 2018-09-09 20:46:35 +00:00
11a94c7e32 4503: add bugzilla 2018-09-09 20:43:56 +00:00
b7c0e816a0 remove ESR52 grouping in 9999 (#499) 2018-09-10 08:33:43 +12:00
8b5547a973 4504: browser.startup.blankWindow 2018-09-08 17:23:48 +00:00
f0c29cf8a6 62-beta 2018-09-08 16:37:12 +00:00
e7a71143a8 oophs
these two prefs were moved to deprecated, not removed from the user.js itself
2018-09-08 14:14:46 +00:00
9e342deaf2 update 1803 after Java removal (#494) 2018-09-06 04:59:04 +12:00
109d4cf916 removed plugin.state.java 2018-09-05 09:33:29 +00:00
c805dd8b3b 62 deprecated/removed prefs 2018-09-05 09:30:42 +00:00
a89e8fc1e0 removed browser.cache.frecency_experiment 2018-08-29 17:12:13 +00:00
f2065a463c move 1007 to 9999 (#493)
`browser.cache.frecency_experiment` is a dead pref since FF59: https://bugzilla.mozilla.org/1430197

proof: https://dxr.mozilla.org/mozilla-esr60/search?q=frecency_experiment
 - the pref still exists but is not used anymore ie dead pref
2018-08-30 05:10:28 +12:00
299489c701 1000s: cache description/info, closes #436 2018-08-28 08:27:45 +00:00
50a578c32a remove extra spaces 2018-08-28 07:57:21 +00:00
7d417da5fd 0701: IPv6 info tweak, closes #437 2018-08-25 06:09:28 +00:00
e6a13e5a93 removed security.tls.version.fallback-limit 2018-08-20 14:54:47 +00:00
9a46fafb53 1203: remove TLS fallback-limit
Currently enforcing the default at 3, it gets changed to 4 for FF62, and will get deprecated some stage soon - https://bugzilla.mozilla.org/show_bug.cgi?id=1479501
2018-08-20 14:52:06 +00:00
6fb2f25e65 4700: revamp, closes #485 2018-08-17 09:09:01 +00:00
9e67f982ab 2720: enforce IDB=enabled 2018-08-17 07:50:33 +00:00
5b6ed92da4 0701: disable IPv6, closes #437 2018-08-17 07:15:47 +00:00
2969c6660f removed browser.urlbar.autoFill.typed 2018-08-16 14:36:48 +00:00
776e32c27f 0850d: remove browser.urlbar.autoFill.typed
It is deprecated in FF62 ( https://bugzilla.mozilla.org/show_bug.cgi?id=1239708 ), and is already covered by the other pref in 0850d (for ESR60.x users)
2018-08-16 14:34:32 +00:00
9e1c368cd9 move dom.battery.enabled back to 2500 from 9999 (#486)
* move dom.battery.enabled back to 2500 from 9999

* make it inactive, clear out old links
2018-08-16 07:04:25 +12:00
572d16d5a5 change cookies from block all to allow 1st party (#477)
* change cookies from block all to allow 1st party

see https://github.com/ghacksuserjs/ghacks-user.js/issues/439

* and fixup readme as well
2018-08-15 17:56:40 +12:00
29e2461cd1 fix -updatebatch (#484) 2018-08-13 12:39:24 +00:00
f39112f914 P*tches for B*tches (#483)
* replace /V with global VERIFY ON

* change working dir to script dir
The working dir doesn't necessarily match the script's path, depending on how the script is called. All relative paths and conditional statements using EXIST will fail whenever the working dir is not the script's own location. This fixes that.

* minimal stuff, mostly cosmetic

* prompt to run prefsCleaner under very specific circumstances

* improve -updatebatch option

* add version variable + display new script version on update
2018-08-12 11:56:47 +00:00
0145ccfec3 add empty lines for subgroups in 0400 + 1200 (#482) 2018-08-12 15:11:23 +12:00
c2c8e6227c more info for 2026-28 (#481) 2018-08-12 15:01:03 +12:00
ab404680df remove [SETTING-ESR52] lines (#475) 2018-08-09 15:30:57 +12:00
cfa2da8fea start 62 commits 2018-08-09 03:28:54 +00:00
b3b3ae4660 finalize 61 2018-08-08 14:34:08 +00:00
c4d131aaf9 Add files via upload (#474) 2018-08-06 23:33:07 +00:00
9c975b318a store file with CRLF
I think there's no way to get rid of ^M but hopefully with `*.bat -text` in `.gitattributes` it shouldn't be a problem because git won't do any line conversion on check-in/out.
This way the raw link as well as the file within the zip download should be in proper MSDOS CRLF format, and git status shouldn't report the file as modified either. ***fingerscrossed!!***
2018-08-06 23:27:41 +00:00
a1638868ea Update .gitattributes 2018-08-06 22:31:21 +00:00
3806ccc68c Introduce end-of-line normalization (#471)
fix for #469
2018-08-06 22:06:30 +00:00
06b69bb95a Delete test-LF.bat 2018-08-06 19:34:33 +00:00
d8bfdaa058 Delete test-CRLF.bat 2018-08-06 19:34:26 +00:00
03efb99754 Delete test-CR.bat 2018-08-06 19:34:18 +00:00
b390d9787b Add files via upload 2018-08-06 19:27:07 +00:00
2e908f38d2 Update prefsCleaner.bat 2018-08-06 19:25:25 +00:00
f973422581 Delete prefsCleaner2.bat 2018-08-06 19:23:36 +00:00
5bcbe56f4b Add files via upload 2018-08-06 19:19:22 +00:00
833f816b99 Add files via upload 2018-08-06 19:17:48 +00:00
5ccea3262f Update updater.bat 2018-08-06 19:14:56 +00:00
9611eac1cf test
test
2018-08-06 18:52:30 +00:00
43119694fb Update .gitattributes 2018-08-05 13:02:34 +00:00
cbea3adc7e FPI & IP addresses FF63+ 2018-07-17 02:58:51 +00:00
4813aa549b Update user.js 2018-07-11 13:59:52 +02:00
96706cf11e ghacks-clear-[removed].js : Fix JS syntax (#460)
* Fix syntax

* updated 06-July-2018
2018-07-07 01:44:53 +12:00
a81d013e45 61-beta 2018-07-06 12:25:41 +00:00
857cbd8c24 Use wget if curl is not available (#451)
* Use wget if curl is not available
On most GNU/Linux distributions wget is often preinstalled, while curl
is not.
* Bump updater.sh version
2018-07-06 14:06:01 +02:00
c9543519c7 0100s: startpage, home+newwindow, newtab
FF61 introduced quite a few changes, including removing the ability to set a blank startpage in the UI, and a new Home options tab with unified Activity Stream (AS) defaults and dropdown options. Because the only way to stop AS on startup is to enforce a blank page (pref 0102), and setting this auto changes `home+newwindow` (0103) and `newtab` (0104) to a blank page, then we're just going to go ahead and enforce that on all of them.

For more info see the discussion in #426
2018-07-05 15:32:19 +00:00
d34894e965 2730 + 2750: Storage API + Offline Cache
ESR52.x doesn't use the new site storage UI. FF61+ the issue is resolved, so let's enforce offline cache (2730) as false again
2018-07-05 10:16:20 +00:00
70abeda9d4 2730 + 2750: Storage API + Offline Cache
https://bugzilla.mozilla.org/show_bug.cgi?id=1450448#c20
2018-07-04 16:49:26 +00:00
dceef9d1db 0503: disable savant 2018-07-04 12:53:21 +00:00
9386fb5581 61 deprecated/removed prefs 2018-07-04 09:41:30 +00:00
56acb4cff5 disable UNC paths 2018-07-04 09:15:44 +00:00
1eac4185d2 4500: RFP geo reverted 63+ 2018-06-26 03:48:47 +00:00
05021ac62e 2300: workers, fixes #446 2018-06-20 05:05:48 +00:00
a2b5e1e7cf updated 03-Jun-2018 2018-06-04 00:28:43 +00:00
d9a1c83300 updated 03-Jun-2018 2018-06-04 00:27:20 +00:00
a4a9b9a675 cleanup #426
Both deprecated in FF61, but we'll remove them from the user.js
- `services.blocklist.signing.enforced` is default true since FF50
- `browser.storageManager.enabled` only controls "Site Data" UI visibility
2018-06-04 00:23:16 +00:00
c61e633236 0707: added ref link 2018-06-01 04:32:52 +00:00
8783ae9ce8 start 61 commits 2018-05-31 01:35:51 +00:00
9 changed files with 377 additions and 276 deletions

17
.gitattributes vendored
View File

@ -1,14 +1,15 @@
## * text=auto
* text=auto
*.js text=auto
*.md text=auto
*.yml text=auto
*.txt text=auto
*.sh text=auto
*.bat eol=crlf
*.js text
*.md text
*.yml text
*.txt text
*.sh text
## *.bat text eol=crlf
*.bat -text
*.png binary
.gitattributes export-ignore
*.yml export-ignore
wikipiki export-ignore
/wikipiki export-ignore

View File

@ -1,21 +1,23 @@
### ![](https://github.com/ghacksuserjs/ghacks-user.js/blob/master/wikipiki/bullet01.png) user.js
### ![][b] 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.
### ![](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).
### ![][b] ghacks user.js
The `ghacks 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).
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.
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)
### ![](https://github.com/ghacksuserjs/ghacks-user.js/blob/master/wikipiki/bullet01.png) acknowledgments
### ![][b] acknowledgments
Literally thousands of sources, references and suggestions. That said...
* 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
* The 12bytes article now uses this user.js and supplements it with an additonal JS hosted at [GitLab](https://gitlab.com/labwrat/Firefox-user.js/tree/master)
<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.
### ![](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)
### ![][b] [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[b]: https://raw.githubusercontent.com/ghacksuserjs/ghacks-user.js/master/wikipiki/bullet01.png

View File

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

View File

@ -3,7 +3,9 @@ TITLE prefs.js cleaner
REM ### prefs.js cleaner for Windows
REM ## author: @claustromaniac
REM ## version: 2.1
REM ## version: 2.2
CD /D "%~dp0"
:begin
ECHO:
@ -11,7 +13,7 @@ ECHO:
ECHO ########################################
ECHO #### prefs.js cleaner for Windows ####
ECHO #### by claustromaniac ####
ECHO #### v2.1 ####
ECHO #### v2.2 ####
ECHO ########################################
ECHO:
CALL :message "This script should be run from your Firefox profile directory."

View File

@ -1,7 +1,7 @@
/***
This will reset the preferences that have been removed completely from the ghacks user.js.
Last updated: 27-May-2018
Last updated: 30-Sept-2018
For instructions see:
https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
@ -90,13 +90,22 @@
'browser.laterrun.enabled',
'browser.offline-apps.notify',
'browser.rights.3.shown',
'browser.slowStartup.maxSamples'
'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',
/* reset parrot: check your open about:config after running the script */
'_user.js.parrot'
]

View File

@ -3,11 +3,16 @@ TITLE ghacks user.js updater
REM ## ghacks-user.js updater for Windows
REM ## author: @claustromaniac
REM ## version: 4.5
REM ## version: 4.6
REM ## instructions: https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.3-Updater-Scripts
SET v=4.7
VERIFY ON
CD /D "%~dp0"
SET _myname=%~n0
SET _myparams=%*
:parse
IF "%~1"=="" (GOTO endparse)
IF /I "%~1"=="-unattended" (SET _ua=1)
@ -20,17 +25,21 @@ IF /I "%~1"=="-singlebackup" (SET _singlebackup=1)
SHIFT
GOTO parse
:endparse
IF DEFINED _updateb (
REM The normal flow here goes from phase 1 to phase 2 and then phase 3.
IF NOT "!_myname:~0,9!"=="[updated]" (
IF EXIST "[updated]!_myname!.bat" (
REM ## Phase 3 ##: The new script, with the original name, will:
REM * Delete the [updated]*.bat script
REM * Delete the [updated]*.bat and *.bat.old scripts
REM * Begin the normal routine
FC "[updated]!_myname!.bat" "!_myname!.bat.old" >nul
IF NOT "!errorlevel!"=="0" (
CALL :message "Script updated to version !v!"
TIMEOUT 3 >nul
)
REN "[updated]!_myname!.bat" "[updated]!_myname!.bat.old"
DEL /F "[updated]!_myname!.bat.old"
CALL :message "Script updated^!"
TIMEOUT 3 >nul
DEL /F "!_myname!.bat.old" "[updated]!_myname!.bat.old"
GOTO begin
)
REM ## Phase 1 ##
@ -38,10 +47,10 @@ IF DEFINED _updateb (
REM * Start that script in a new CMD window
REM * Exit
CALL :message "Updating script..."
REM Uncomment the next line and comment the powershell call for testing.
REM COPY /B /V /Y "!_myname!.bat" "[updated]!_myname!.bat"
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/ghacksuserjs/ghacks-user.js/master/updater.bat', '[updated]!_myname!.bat')"
) >nul 2>&1
IF EXIST "[updated]!_myname!.bat" (
START /min CMD /C "[updated]!_myname!.bat" !_myparams!
@ -55,19 +64,17 @@ IF DEFINED _updateb (
TIMEOUT 300 >nul
) ELSE (
REM ## Phase 2 ##: The [updated]*.bat script will:
REM * Copy itself overwriting the original batch
REM * Start that script in a new CMD instance
REM * Rename the old script and make a copy of itself with the original name.
REM * Run that copy in a new CMD instance
REM * Exit
IF EXIST "!_myname:~9!.bat" (
REN "!_myname:~9!.bat" "!_myname:~9!.bat.old"
DEL /F "!_myname:~9!.bat.old"
)
COPY /B /V /Y "!_myname!.bat" "!_myname:~9!.bat"
IF EXIST "!_myname:~9!.bat" ( REN "!_myname:~9!.bat" "!_myname:~9!.bat.old" )
COPY /B /Y "!_myname!.bat" "!_myname:~9!.bat"
START CMD /C "!_myname:~9!.bat" !_myparams!
)
)
EXIT /B
)
:begin
CLS
ECHO:
@ -75,7 +82,7 @@ ECHO:
ECHO: ########################################
ECHO: #### user.js Updater for Windows ####
ECHO: #### by claustromaniac ####
ECHO: #### v4.5 ####
ECHO: #### v!v! ####
ECHO: ########################################
ECHO:
SET /A "_line=0"
@ -121,7 +128,7 @@ 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/ghacksuserjs/ghacks-user.js/master/user.js', 'user.js.new')"
) >nul 2>&1
IF EXIST user.js.new (
IF DEFINED _multi (
@ -129,18 +136,18 @@ IF EXIST user.js.new (
IF NOT ERRORLEVEL 1 (
IF DEFINED _merge (
CALL :message "Merging..."
COPY /B /V /Y user.js-overrides\*.js user-overrides-merged.js
COPY /B /Y user.js-overrides\*.js user-overrides-merged.js
CALL :merge user-overrides-merged.js
COPY /B /V /Y user.js.new+user-overrides-merged.js user.js.new
COPY /B /Y user.js.new+user-overrides-merged.js user.js.new
CALL :merge user.js.new
) ELSE (
CALL :message "Appending..."
COPY /B /V /Y user.js.new+"user.js-overrides\*.js" user.js.new
COPY /B /Y user.js.new+"user.js-overrides\*.js" user.js.new
)
) ELSE (CALL :message "No override files found.")
) ELSE (
IF EXIST "user-overrides.js" (
COPY /B /V /Y user.js.new+"user-overrides.js" "user.js.new"
COPY /B /Y user.js.new+"user-overrides.js" "user.js.new"
IF DEFINED _merge (
CALL :message "Merging user-overrides.js..."
CALL :merge user.js.new
@ -169,6 +176,7 @@ IF EXIST user.js.new (
) ELSE (
REN user.js.new user.js
CALL :message "Update complete."
SET "_changed=true"
)
)
) ELSE (
@ -176,7 +184,15 @@ IF EXIST user.js.new (
ECHO: No changes were made.
)
IF NOT DEFINED _log (
IF NOT DEFINED _ua (PAUSE)
IF NOT DEFINED _ua (
IF EXIST prefsCleaner.bat (
IF "!_changed!"=="true" (
CALL :message "Would you like to run the prefsCleaner now?"
CHOICE /C YN /N /M "(Y/N) "
IF "1"=="!errorlevel!" ( START "" cmd.exe /C "prefsCleaner.bat" )
) ELSE (PAUSE)
) ELSE (PAUSE)
)
)
EXIT /B
@ -188,6 +204,7 @@ ECHO: %~1
IF NOT "2"=="%_log%" (ECHO:)
ENDLOCAL
GOTO :EOF
REM ############ Merge function ############
:merge
SETLOCAL DisableDelayedExpansion
@ -226,6 +243,7 @@ FOR /F tokens^=2^,^*^ delims^=^' %%G IN ('FINDSTR /R /C:"^//// --- comment-out -
MOVE /Y updatertempfile "%~1" >nul
ENDLOCAL
GOTO :EOF
REM ############### Help ##################
:showhelp
MODE 80,46
@ -260,4 +278,3 @@ CALL :message ""
PAUSE
MODE 80,25
GOTO :begin
REM #####################################

View File

@ -1,8 +1,8 @@
#!/usr/bin/env bash
### ghacks-user.js updater for Mac/Linux
## author: @overdodactyl
## version: 1.3
## author: @overdodactyl, @ema-pe
## version: 1.4
## DON'T GO HIGHER THAN VERSION x.9 !! ( because of ASCII comparison in check_for_update() )
@ -12,6 +12,15 @@ update_pref=${1:--ask}
currdir=$(pwd)
DOWNLOAD_TO_STDOUT="curl -s"
DOWNLOAD_TO_FILE="curl -O"
# Use wget if curl is not available.
if [[ -z $(command -v "curl") ]]; then
DOWNLOAD_TO_STDOUT="wget --quiet --output-document=-"
DOWNLOAD_TO_FILE="wget"
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)
@ -24,7 +33,7 @@ cd "$(dirname "${sfp}")"
## Used to check if a new version of updater.sh is available
update_available="no"
check_for_update () {
online_version="$(curl -s ${updater} | sed -n '5 s/.*[[:blank:]]\([[:digit:]]*\.[[:digit:]]*\)/\1/p')"
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
@ -36,8 +45,8 @@ check_for_update () {
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")"
curl -O ${updater} && echo -e "\nThe latest updater script has been downloaded\n"
$DOWNLOAD_TO_FILE ${updater} && echo -e "\nThe latest updater script has been downloaded\n"
# make new file executable
chmod +x updater.sh
@ -60,7 +69,7 @@ main () {
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: $(curl -s ${ghacksjs} | sed -n '4p')"
echo " Available online: $($DOWNLOAD_TO_STDOUT ${ghacksjs} | sed -n '4p')"
echo " Currently using: $(sed -n '4p' user.js)"
else
echo "A user.js file does not exist in this profile. If you continue, the latest ghacks version from github will be downloaded."
@ -80,7 +89,7 @@ main () {
# download latest ghacks user.js
echo "downloading latest ghacks user.js file"
curl -O ${ghacksjs} && echo "ghacks user.js has been downloaded"
$DOWNLOAD_TO_FILE ${ghacksjs} && echo "ghacks user.js has been downloaded"
if [ -e user-overrides.js ]; then
echo "user-overrides.js file found"
@ -94,6 +103,7 @@ main () {
cd "${currdir}"
}
update_pref="$(echo $update_pref | tr '[A-Z]' '[a-z]')"
if [ $update_pref = "-donotupdate" ]; then
main

511
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