Как сделать из Firefox-а человека

Это – продолжение моей заметки на ннм более двух лет назад. С тех пор многое изменилось в мире лисы. Дело в том, что начиная с 57-й версии, Firefox уже не тот. И не просто другой, а очень даже "не тот". Старые XUL плагины — результат многолетнего труда многих и многих "лисятников" уже не работают на новом Firefox-e. В дополнение, в новом Firefox-e добавлена целая куча скрытых пакостных функций. Сделано явно намеренно. Решить проблему со старыми плагинами уже никто не сможет, а вот как привести Firefox в божеский вид и заставить его делать то, что надо нам, а не "им", рассказано ниже. Доводить будем 61-ю версию.

----------------------<cut>----------------------

В наши дни к борьбе с вирусами и прочей гадостью в инете добавилась еще и новая напасть. Сами разработчики софта соревнуются, кто круче напичкает свои "шедеверы" вирусами, троянами и т.д. (не в прямом смысле, конечно). Вместо того, чтобы бороться с багами, похоже все помешались на том, как забраться в компьютеры доверчивых юзеров и хозяйничать там, стучать обо всем, что юзер делает, не пускать ходить на те сайты, которые "плохие" с их точки зрения и т.п. Оно и понятно. Запрещать, шпионить и "рекомендовать" – основные рычаги управления массовым сознанием, особенно в наш век поголовного интернета. К тому же информация, в частности личная, в наши дни стоит очень дорого и на нее большой спрос.
Достаточно посмотреть в какой огромный трояно-вирус мелкософтовцы превратили свою Win10, отслеживающую, стучащую и даже контролирующую действия пользователя. Примечание: не тешьте себя надеждами, что все это отключается. Та же история и с гугловским Андроидом, Хромом. Причем все это делается "для удобства и безопасности". Не остались в стороне и более мелкие "творцы", в частности FFox браузера, с котором мы сегодня попытаемся разобраться. Заметим, что FFox-вская команда сейчас находится под крылышком Гугла. И именно уничтожение огромной библиотеки XUL плагинов к фоксу – результат такого "сотрудничества". Зато тепеть Googl-овские хром-плагины с незначительными изменениями могут работать на "обновленном" Firefox-е. Ну, а чем в наши дни занимается Google в интернете, думаю, известно каждому. Дальше продолжать или и так понятно?

С точки зрения "сувания" своего носа во все дырки Вашего компьютера FFox начал "портиться" с 20-й версии. Потом туда добавились изменения GUI с улично-гопнутым стилем. Дошло до того, что последние версии просто диктуют Вам, что надо делать. Например, без Вашего ведома могут отключить плагины на том основании, что они либо не имеют "signature", либо устарели. Или, например, не соединяют с каким-либо сайтом на том основании, что двинутый FFox не получил какого-то там сертификата или сайт находится в черном списке, заботливо составленном кое-кем.
Слушайте, фоксовцы, какое нафиг ваше дело на какой сайт я пришел? С какого перепугу я должен ходить только на те сайты, которые нравятся вам и вашим спонсорам? А как последние версии фокса стучат о всей Вашей активности в интернете! Не верите? Введите в адресной строке about:config, а затем в поле введите "http". Ну что? Это то, куда Firefox стучит, докладывая до единого клика всю Вашу активность в интернете. Список впечатлит любого. Причем оплата траффика этого стукачества на самого себя идет из Вашего кармана.
Уже слышу глубокомысленные возражения насчет алюминивых шапочек. Отвечу. Если вам нечего скрывать, то сделайте в своем туалете и в спальне, где занимаетесь сексом, стены из стекла, а потом поговорим о чем-то личном, что есть у каждого и что выставлять это личное на всеобщее обозрение противоречит здравой психике.

Как сделать из Firefox-а человека

На картинке выше Вы видите конечный продукт наших усилий. Итак, засучим рукава и вперед.

В качестве примера возьмем 61-ю portable версю, скачанную с portableapps.com. Там сидять толковые ребята и очень качественно портабилизируют бесплатный софт.
Все нижеизложенное является чисто моим личным мнением и подходом. Вопросы типа:"А почему ты сделал так?" или "Ведь по-другому будет лучше, круче, и т.п." — оставьте себе, так как если обьяснять каждый пунктик, то не хватит и десятка подобных заметок. Предлагаемые изменения 100% относятся и к устанавливаемой версии FFox-а. Очень советую забекапить свой profile папку "до того как". В случае проблем, буквально двумя кликами Вы вернете свой бесценный новый FFox в оригинальное состояние. Profile папка у устанавливаемой версии находится здесь:

C:\Users\<имя user-a>\AppData\Roaming\Mozilla\Firefox\Profiles\<папка со случайной комбинацией букв и цифр в названии>

в portable версии здесь:

....\Data\profile\

Скриншот сделан с полностью настроенного и налаженного браузера, поэтому, если у Вас возникнут какие-то проблемы – ищите косяк у себя. Тем, для кого все, что ниже покажется сложным, вот линк на уже готовый проверенный и рабочий 61-й portable Firefox со всеми описанными здесь изменениями и uBlock плагином с добавленными русскими фильтрами –

https://my-files.ru/evy1wr

Если вам не нравятся uBlock, Вы можете удалить его. Это не повлияет на другие изменения, только не забудьте перед удалением почистить кеш uBlock-а. Ну, что же — поехали.

1. Распаковать FFox, сгруженный с Portable Apps.com.
2. Запустить и закрыть FFox.
3. Скопировать файл FirefoxPortable.ini из папки \Other в корень (туда, где файл FirefoxPortable.exe).
4. В скопированный файл FirefoxPortable.ini добавить последней строкой:

AlwaysUse32Bit=true

В том же файле изменить:

DisableSplashScreen=true

И проверить наличие строки:

RunLocally=false

Если нет – то добавить ее или скорректировать.
5. Удалить папку \App\Firefox64, запустить FFox и и закрыть его.
6. Удалить из следующго списка папок и файлов все, что присутствует:

FirefoxPortable\Other
FirefoxPortable\help.html
FirefoxPortable\App\Firefox\blocklist.xml
FirefoxPortable\Data\profile\blocklist.xml
FirefoxPortable\App\Firefox\browser\blocklist.xml
FirefoxPortable\Data\profile\blocklist.xml
FirefoxPortable my\App\DefaultData\profile\directoryLinks.json
FirefoxPortable\DefaultData\profile\directoryLinks.json
FirefoxPortable\<в любом месте>\user.js
FirefoxPortable\App\Firefox\crashreporter.exe
FirefoxPortable\App\Firefox\crashreporter.ini
FirefoxPortable\App\Firefox\maintenanceservice.exe
FirefoxPortable\App\Firefox\maintenanceservice_installer.exe
FirefoxPortable\App\Firefox\updater.exe
FirefoxPortable\App\Firefox\updater.ini
FirefoxPortable\Data\profile\addons.json
FirefoxPortable\Data\profile\containers.json
FirefoxPortable\Data\profile\content-prefs.sqlite
FirefoxPortable\Data\profile\datareporting
FirefoxPortable\Data\profile\directoryLinks.json
FirefoxPortable\Data\profile\saved-telemetry-pings
FirefoxPortable\Data\profile\sessionstore.js
FirefoxPortable\Data\profile\sessionstore-backups
FirefoxPortable\Data\profile\storage.sqlite
FirefoxPortable\Data\profile\Telemetry.FailedProfileLocks.txt

7. Удалить следующие строки из файла "FirefoxPortable\App\Firefox\application.ini":

[Crash Reporter]
Enabled=1
ServerURL=https://crash-reports.mozilla.com/submit?id={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&version=61.0.1&buildid=20180704003137

замечание:
после id={xxxxxxxxx ....
могут стоять другие знаки

8. Теперь займемся настройками. Работать с about:config, надеюсь, все умеют. Если какой-либо стринг (не цепляйтесь к словам, это оригинальное название) отсутствует, то ничего страшного. В противном случае в скобках будет отдельно указано с какими параметрами его необходимо создать.

about:config --> ввести "http" --> в каждом стринге --> Modify --> убрать все, начинающееся с "http".

9. about:config --> ввести "mozilla.org" --> в каждом стринге --> Modify --> убрать все, начинающееся с "http". Не удалять содержимое следующего стринга (если он есть):

identity.fxaccounts.remote.webchannel.uri

Изменить его содержимое:

about:config --> identity.fxaccounts.remote.webchannel.uri
--> Modify --> paste "https://accounts.firefo.com/"

10. about:config --> ввести "url" --> в каждом стринге --> Modify --> убрать все, начинающееся с "http".

11. about:config --> в перечисленных стрингах, которые присутствуют, изменить содержимое, как указано:

browser.safebrowsing.downloads.remote.timeout_ms --> 1
browser.sessionhistory.max_entries --> 15
browser.sessionstore.cleanup.forget_closed_after --> 5000000
browser.sessionstore.interval --> 5000000
network.http.pipelining.maxrequests --> 8
urlclassifier.gethash.timeout_ms --> 1
urlclassifier.update.response_timeout_ms --> 1
urlclassifier.update.timeout_ms --> 1

12. about:config --> в перечисленных стрингах, которые присутствуют, изменить содержимое на 0 (ноль, не "о"):

app.update.lastUpdateTime.telemetry_modules_ping
app.update.mode
browser.sessionstore.max_resumed_crashes
browser.sessionstore.max_serialize_back
browser.sessionstore.max_serialize_forward
browser.sessionstore.max_tabs_undo
browser.sessionstore.max_windows_undo
browser.sessionstore.upgradeBackup.maxUpgradeBackups
browser.urlbar.maxRichResults
network.dnsCacheEntries
network.dnsCacheExpiration
network.dnsCacheExpirationGracePeriod
network.http.speculative-parallel-limit
security.OCSP.enabled
toolkit.telemetry.log.level
toolkit.telemetry.log.level toolkit.telemetry.log.level (если данный стринг отсутствует, то создать новый string с value = 0)
urlclassifier.gethashnoise

13. about:config --> в перечисленных стрингах, которые присутствуют --> Modify --> удалить все из "value":

app.update.interval
app.update.lastUpdateTime.addon-background-update-timer
app.update.lastUpdateTime.background-update-timer
app.update.lastUpdateTime.blocklist-background-update-timer
app.update.lastUpdateTime.browser-cleanup-thumbnails
app.update.lastUpdateTime.datareporting-healthreport-lastDailyCollection
app.update.lastUpdateTime.experiments-update-timer
app.update.lastUpdateTime.search-engine-update-timer
app.update.lastUpdateTime.xpi-signature-verification
app.update.promptWaitTime
app.update.timerFirstInterval
browser.newtabpage.activity-stream.telemetry.ping.endpoint
browser.safebrowsing.appRepURL
browser.safebrowsing.id
browser.safebrowsing.malware.reportURL
browser.safebrowsing.provider.google.lastupdatetime
browser.safebrowsing.provider.google.lists
browser.safebrowsing.provider.google.nextupdatetime
browser.safebrowsing.provider.google.pver
browser.safebrowsing.provider.google4.pver
browser.safebrowsing.provider.mozilla.lastupdatetime
browser.safebrowsing.provider.mozilla.lastupdatetime
browser.safebrowsing.provider.mozilla.lists
browser.safebrowsing.provider.mozilla.lists
browser.safebrowsing.provider.mozilla.lists.base.description
browser.safebrowsing.provider.mozilla.lists.base.description
browser.safebrowsing.provider.mozilla.lists.base.name
browser.safebrowsing.provider.mozilla.lists.base.name
browser.safebrowsing.provider.mozilla.lists.content.description
browser.safebrowsing.provider.mozilla.lists.content.description
browser.safebrowsing.provider.mozilla.lists.content.name
browser.safebrowsing.provider.mozilla.lists.content.name
browser.safebrowsing.provider.mozilla.lists.mozfull.description
browser.safebrowsing.provider.mozilla.lists.mozfull.name
browser.safebrowsing.provider.mozilla.lists.mozstd.description
browser.safebrowsing.provider.mozilla.lists.mozstd.name
browser.safebrowsing.provider.mozilla.nextupdatetime
browser.safebrowsing.provider.mozilla.nextupdatetime
browser.safebrowsing.provider.mozilla.nextupdatetime
browser.safebrowsing.provider.mozilla.pver
browser.safebrowsing.reportPhishURL
browser.sessionstore.upgradeBackup.latestBuildID
datareporting.healthreport.lastDataSubmissionRequestedTime
datareporting.healthreport.nextDataSubmissionTime
datareporting.policy.dataSubmissionPolicyNotifiedTime
datareporting.policy.firstRunTime
datareporting.sessions.current.firstPaint
datareporting.sessions.current.main
datareporting.sessions.current.sessionRestored
datareporting.sessions.current.startTime
datareporting.sessions.current.totalTime
datareporting.sessions.currentIndex
datareporting.sessions.prunedIndex
devtools.telemetry.supported_performance_marks
devtools.telemetry.tools.opened.version
dom.mozApps.signed_apps_installable_from
extensions.lastAppVersion (это номер версии FFox-a, можете сохранить его, если хотите)
lightweightThemes.recommendedThemes
noscript.inclusionTypeChecking.exceptions
plugins.update.url
services.kinto.base
social.manifest.facebook
social.whitelist
toolkit.telemetry.cachedClientID
toolkit.telemetry.infoURL
toolkit.telemetry.previousBuildID
toolkit.telemetry.server
toolkit.telemetry.prompted;2
toolkit.telemetry.server_owner
urlclassifier.blockedTable
urlclassifier.disallow_completions
urlclassifier.downloadAllowTable
urlclassifier.downloadBlockTable
urlclassifier.flashAllowExceptTable
urlclassifier.flashAllowTable
urlclassifier.flashExceptTable
urlclassifier.flashInfobarTable
urlclassifier.flashSubDocExceptTable
urlclassifier.flashSubDocTable
urlclassifier.flashTable
urlclassifier.malwareTable
urlclassifier.phishTable
urlclassifier.trackingTable
urlclassifier.trackingWhitelistTable

14. about:config --> кликнуть на каждый из перечисленных стрингов, если присутствует, и установить его статус на "true":

accessibility.blockautorefresh
devtools.onboarding.telemetry.logged
dom.storage.enabled
extensions.legacy.enabled
extensions.screenshots.upload-disabled
network.dns.disableIPv6
network.dns.disablePrefetch
network.http.pipelining
network.http.proxy.pipelining
plugins.hide_infobar_for_missing_plugin (если данный стринг отсутствует, то создать новый boolean со статусом "true")
plugins.hide_infobar_for_outdated_plugin (если данный стринг отсутствует, то создать новый boolean со статусом "true")
privacy.firstparty.isolate
toolkit.telemetry.rejected
webgl.disabled

15. about:config --> кликнуть на каждый из перечисленных стрингов, если присутствует, и установить его статус на "false":

app.update.auto
app.update.enabled
app.update.service.enabled
app.update.service.enabled
browser.cache.disk.enable
browser.cache.memory.enable
browser.cache.offline.enable
browser.newtabpage.activity-stream.feeds.telemetry
browser.newtabpage.activity-stream.telemetry
browser.ping-centre.telemetry
browser.ping-centre.telemetry
browser.safebrowsing.blockedURIs.enabled
browser.safebrowsing.downloads.enabled
browser.safebrowsing.downloads.remote.block_dangerous
browser.safebrowsing.downloads.remote.block_dangerous_host
browser.safebrowsing.downloads.remote.block_potentially_unwanted
browser.safebrowsing.downloads.remote.block_uncommon
browser.safebrowsing.downloads.remote.enabled
browser.safebrowsing.enabled (добавить boolean, если нет)
browser.safebrowsing.malware.enabled
browser.sessionstore.restore_on_demand
browser.sessionstore.restore_pinned_tabs_on_demand
browser.sessionstore.resume_from_crash
browser.showQuitWarning
browser.tabs.animate
browser.tabs.remote.autostart (если данный стринг отсутствует, то создать новый boolean со статусом "false")
browser.tabs.remote.autostart.2 (если данный стринг отсутствует, то создать новый boolean со статусом "false")
browser.tabs.warnOnClose
browser.tabs.warnOnCloseOtherTabs
browser.taskbar.lists.enabled
browser.uitour.enabled
browser.urlbar.oneOffSearches
browser.warnOnQuit
datareporting.healthreport.service.enabled (если данный стринг отсутствует, то создать новый boolean со статусом "false")
datareporting.healthreport.service.firstRun (если данный стринг отсутствует, то создать новый boolean со статусом "false")
datareporting.healthreport.uploadEnabled
datareporting.policy.dataSubmissionEnabled
device.sensors.enabled
dom.indexedDB.enabled
dom.indexedDB.logging.details
dom.indexedDB.logging.enabled
experiments.activeExperiment
toolkit.telemetry.archive.enabled
toolkit.telemetry.bhrPing.enabled
toolkit.telemetry.enabled
toolkit.telemetry.firstShutdownPing.enabled
toolkit.telemetry.newProfilePing.enabled
toolkit.telemetry.reportingpolicy.firstRun
toolkit.telemetry.shutdownPingSender.enabled
toolkit.telemetry.unified
toolkit.telemetry.updatePing.enabled
datareporting.healthreport.uploadEnabled
nsITelemetry.canRecordBase
nsITelemetry.canRecordExtended
browser.newtabpage.activity-stream.feeds.telemetry
browser.newtabpage.activity-stream.telemetry
experiments.enabled
experiments.supported
extensions.blocklist.enabled (если данный стринг отсутствует, то создать новый boolean со статусом "false")
extensions.getAddons.cache.enabled
geo.enabled
media.peerconnection.enabled
network.dns.blockDotOnion
network.dns.get-ttl
network.prefetch-next
nsITelemetry.canRecordBase
nsITelemetry.canRecordExtended
privacy.trackingprotection.pbmode.enabled
security.insecure_field_warning.contextual.enabled
security.ssl.enable_ocsp_stapling
services.blocklist.update_enabled
services.sync.prefs.sync.browser.safebrowsing.enabled
services.sync.prefs.sync.browser.safebrowsing.malware.enabled
services.sync.prefs.sync.browser.sessionstore.restore_on_demand
services.sync.prefs.sync.xpinstall.whitelist.required (если данный стринг отсутствует, то создать новый boolean со статусом "false")
toolkit.telemetry.archive.enabled
toolkit.telemetry.bhrPing.enabled
toolkit.telemetry.enabled
toolkit.telemetry.firstShutdownPing.enabled
toolkit.telemetry.newProfilePing.enabled
toolkit.telemetry.optoutSample
toolkit.telemetry.reportingpolicy.firstRun
toolkit.telemetry.shutdownPingSender.enabled
toolkit.telemetry.unified
toolkit.telemetry.updatePing.enabled
webgl.enable-webgl2
xpinstall.signatures.required
xpinstall.whitelist.required

16. Изменить меню-установки самого FFox-a. Все картинки кликабельные:

Как сделать из Firefox-а человека

Как сделать из Firefox-а человека

Как сделать из Firefox-а человека

Как сделать из Firefox-а человека

Как сделать из Firefox-а человека

Как сделать из Firefox-а человека

17. Перезапустить FFox, убедиться, что все работает и закрыть браузер. Не пугайтесь внешнего вида. Этим мы займемся чуть позже. Еще раз проверить и удалить все из списка ниже (на тот случай, не прописал ли браузер чего нового):

FirefoxPortable\\App\Firefox\browser\blocklist.xml
FirefoxPortable\<в любом месте>\user.js
FirefoxPortable\App\DefaultData\profile\directoryLinks.json
FirefoxPortable\App\Firefox\browser\blocklist.xml
FirefoxPortable\App\Firefox\crashreporter.exe
FirefoxPortable\App\Firefox\crashreporter.ini
FirefoxPortable\App\Firefox\maintenanceservice.exe
FirefoxPortable\App\Firefox\maintenanceservice_installer.exe
FirefoxPortable\App\Firefox\updater.exe
FirefoxPortable\App\Firefox\updater.ini
FirefoxPortable\Data\profile\addons.json
FirefoxPortable\Data\profile\blocklist.xml
FirefoxPortable\Data\profile\blocklist.xml
FirefoxPortable\Data\profile\containers.json
FirefoxPortable\Data\profile\content-prefs.sqlite
FirefoxPortable\Data\profile\directoryLinks.json
FirefoxPortable\Data\profile\sessionstore.js
FirefoxPortable\Data\profile\storage.sqlite
FirefoxPortable\DefaultData\profile\directoryLinks.json
FirefoxPortable\Data\profile\Telemetry.FailedProfileLocks.txt

18. Еще раз проверить и удалить содержимое всех перечисленных ниже папок (на тот случай, не прописал ли браузер чего нового), если папка присутствует. Вообще, очень желательно удалять их содержимое после каждого перезапуска FFox-a. Сделать это лучше всего с помощью CCleaner-a или другого какого-нибудь "чистильщика". В случае CCleaner-a надо просто указать ему путь к этим папкам в Options – Include настройках.

FirefoxPortable\Data\profile\blocklists\
FirefoxPortable\Data\profile\bookmarkbackups\
FirefoxPortable\Data\profile\cache2\
FirefoxPortable\Data\profile\crashes\
FirefoxPortable\Data\profile\datareporting\
FirefoxPortable\Data\profile\healthreport\
FirefoxPortable\Data\profile\jumpListCache\
FirefoxPortable\Data\profile\OfflineCache\
FirefoxPortable\Data\profile\safebrowsing\
FirefoxPortable\Data\profile\saved-telemetry-pings\
FirefoxPortable\Data\profile\sessionstore-backups\
FirefoxPortable\Data\profile\startupCache\
FirefoxPortable\Data\profile\storage\default\
FirefoxPortable\Data\profile\storage\temporary\
FirefoxPortable\Data\profile\thumbnails\
FirefoxPortable\App\DefaultData\profile\bookmarkbackups\
FirefoxPortable\App\DefaultData\profile\cache2\
FirefoxPortable\App\DefaultData\profile\crashes\
FirefoxPortable\App\DefaultData\profile\healthreport
FirefoxPortable\App\DefaultData\profile\OfflineCache\

19. Все перечисленное выше не касалось внешнего вида FFox-a. Чтобы придать ему "человеческий" облик (классический стиль) придется повозиться. Дело это муторное и долгое. До 57-го FFox-a был хороший плагин "Classic Theme Restorer". Теперь он, естественно, не работает. Поэтому мы сделаем проще. Скачайте с этого линка архив в котором уже включены мои изменения:

https://my-files.ru/s3d0di

Там будет всего одна папка "chrome". Поместите ее целиком как есть в "profile" папку вашего 61-го:

FirefoxPortable\Data\profile\

Запустите FFox. Как видите, теперь наш FFox приобрел и внешнюю и внутреннюю стать.

Данную папку "chrome" и приведенные выше твики можно будет использовать и в последующих версиях браузера. Если, конечно, фоксовцам не стукнет в голову очередной залет.