Compare commits

..

102 Commits

Author SHA1 Message Date
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
3264fbd9c3 finalize 60 2018-05-31 01:27:20 +00:00
b8b3a4f7ed enable DNT header by default
pros and cons: see https://github.com/ghacksuserjs/ghacks-user.js/issues/422#issuecomment-392789507 + follow-up comments
2018-05-29 19:06:06 +02:00
7f1f9e124b updated 29-May-2018 2018-05-29 16:12:07 +00:00
9b1cf28e89 0101: cleanup laterrun #434 2018-05-29 16:09:02 +00:00
acc5a1c2df 0101 welcomes+whatsnew -> 5000s #434 2018-05-29 02:25:54 +00:00
9a4032f4cd updated 27-May-2018 2018-05-27 21:43:38 +00:00
f113cf84c3 0101: cleanup rights.3 #434 2018-05-27 21:40:47 +00:00
c92ece7960 updated 26-May-2018 2018-05-26 18:49:44 +00:00
3e5667fb34 0101: more cleanup, #434 2018-05-26 18:48:38 +00:00
2bf238f384 updated to 26-May-2018 2018-05-26 16:49:39 +00:00
3edf7af85e 0101: cleanup, see #434 2018-05-26 16:45:46 +00:00
4b8b2d81a0 Create ghacks-clear-[removed].js 2018-05-26 05:00:04 +12:00
fde8035332 Delete ghacks-clear-FF60inclusive-[removed].js 2018-05-26 04:58:53 +12:00
01bd2a4f6d 0422: TP block lists: deduplicate, fixes #434 2018-05-25 15:44:27 +00:00
6d4b49d061 Update ghacks-clear-FF60inclusive-[removed].js 2018-05-25 14:53:11 +00:00
8e60f412e4 Update ghacks-clear-FF60inclusive-[removed].js 2018-05-25 14:52:22 +00:00
f60a87f97f 2730s: cleanup/removal #434
2732 was just enforcing default since at least FF52, and 2733 has never been used, was only there for info. Offline Cache or appCache (2730) is already behind a prompt (2731), and is already limited (in FF60+) to HTTPS (2730b).
2018-05-25 14:44:44 +00:00
449e32a8ca 2202: cleanup #434
both these removed prefs are enforcing the default in ESR52.x and FF60+ (and I assume FF52+) branches
2018-05-25 04:28:03 +00:00
35a9d3d1e1 0505: system add-on updates, fixes #172
Note: I am not 100% sure what happens with an app update. If this is divorced from that check now, you should be able to get FF updated without any system addons. We'll have to wait until 62 needs an update to test it. In the meantime I've edited the [NOTE]. I've also left this inactive (eg imagine if they pushed a critical update for formfill), so this is an end-user decision. Added to sticky to revisit this pref
2018-05-25 04:03:59 +00:00
c66d1b08e7 remove network.http.fast-fallback-to-IPv4 #433
the default is true anyway for ESR52.x and FF60+ (and I assume for FF52+) branches
2018-05-25 02:07:10 +00:00
0a63b6545d 4500: tweak 2018-05-23 17:53:16 +00:00
a8051b88e4 1803: 3rd time's a charm 2018-05-23 17:41:25 +00:00
87ce12925d 1803: tweak 2018-05-23 17:21:49 +00:00
d6a7531c67 1803: flash/java/npapi fixes #433 2018-05-23 17:05:29 +00:00
3a77e18ae8 RFP: OS locale & HTTP Accept-Language header
https://bugzilla.mozilla.org/show_bug.cgi?id=1459089 . When/if it gets uplifted to 61, I'll update.
2018-05-23 11:07:06 +00:00
a635ae5dfb 2730 + 2750: Storage API + Offline Cache
https://bugzilla.mozilla.org/show_bug.cgi?id=1450448
2018-05-23 08:55:19 +00:00
02bac31e6a nits (#423) 2018-05-17 04:31:28 +12:00
7 changed files with 308 additions and 268 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

@ -14,7 +14,7 @@ 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.

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,6 +1,7 @@
/***
This will reset the preferences that have been removed completely
from the ghacks user.js up to and including release 60-beta
This will reset the preferences that have been removed completely from the ghacks user.js.
Last updated: 30-Sept-2018
For instructions see:
https://github.com/ghacksuserjs/ghacks-user.js/wiki/3.1-Resetting-Inactive-Prefs-[Scripts]
@ -85,6 +86,26 @@
'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',
/* 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

439
user.js

File diff suppressed because it is too large Load Diff