Укрощаем 14-го «лиса» заново: правильные настройки по умолчанию

    После обновления на Firefox 14 (Windows) хорошее впечатление от улучшений сменилось недоумением, а затем и осознанием проблемы: файл настроек prefs.js в defaults\pref ранее работавший со всеми версиями от 4й до 13й перестал подгружаться. Ставились самые разные опыты — и всё безуспешно: включен антифишинг, автообновление и прочие признаки дурного тона.

    Делаю поиск строки «defaults» по всем файлам, находится много файлов, но первое внимание падает на xul.dll. Открываю его в Olly, ищу то же самое. И вот — я вижу любопытные детали
    ...
    100196C2   MOV ECX,xul.10BE1CF0                      ASCII "greprefs.js"
    100196D5   PUSH xul.10BE1CFC                         ASCII "defaults/pref/*.js$"
    10019744   PUSH xul.10BB0D28                         ASCII "PrfDef"
    10019799   PUSH xul.10BE1D10                         ASCII "defaults/preferences/*.js$"
    10019849   PUSH xul.10BB0EF4                         ASCII "PrefDL"
    ...
    и еще вот:
    1073043C  MOV EDI,xul.10BE1B94                   ASCII "defaults/preferences/*.(J|j)(S|s)$"

    Пробую создать директорию preferences в defaults и перенести туда мой prefs.js. Запускаю… Есть! Все настройки на месте. Итак: наш файл настроек js должен лежать в Mozilla Firefox\defaults\preferences. Любопытно, что defaults\pref в дистрибутиве по-прежнему есть, но, похоже, channel-prefs.js там не отрабатывает. Но не суть, оставил как есть. Заглянул потом в Linux — оказывается, там уже в 10-м Фоксе в defaults вложена директория preferences (не prefs)! Вот вам и ответ на вопрос, почему Mozilla ломает (уже во 2й раз) привычный, устоявшийся порядок вещей — ради единства компоновки под разными платформами.

    А вот мой файл настроек, созданный на основе известных рекомендаций, их критики и собственных исследований. И, да — использую плагин imglikeopera против рекламы, часть соответствующих настроек — для него.
    # Mozilla User Preferences
    pref("browser.shell.checkDefaultBrowser", false);
    pref("app.update.enabled", false);
    pref("browser.cache.memory.max_entry_size", 4096);
    pref("browser.display.show_image_placeholders", false);
    pref("browser.download.useDownloadDir", false);
    pref("browser.feeds.showFirstRunUI", false);
    pref("browser.places.importBookmarksHTML", false);
    pref("browser.rights.3.shown", true);
    pref("browser.safebrowsing.enabled", false);
    pref("browser.safebrowsing.malware.enabled", false);
    pref("browser.search.update", false);
    pref("browser.sessionhistory.max_total_viewers", 1);
    pref("browser.startup.page", 0);
    pref("browser.tabs.animate", false);
    pref("config.trim_on_minimize", true);
    pref("content.notify.backoffcount", 5);
    pref("extensions.shownSelectionUI", true);
    pref("extensions.update.enabled", false);
    pref("extensions.update.notifyUser", false);
    pref("extensions.pendingOperations", false);
    pref("toolkit.telemetry.prompted", true);
    pref("gfx.direct2d.force-enabled", true);
    pref("layers.acceleration.force-enabled", true);
    pref("imglikeopera.default.policy", 1);
    pref("imglikeopera.experimental.options", true);
    pref("imglikeopera.expiration.time", 604800);
    pref("imglikeopera.flash.block", true);
    pref("imglikeopera.policy.patterns", "yandex.net/ 1  yandex.st/lego/ 1  ");
    pref("imglikeopera.policy.switchModes", "1,2");
    pref("intl.charsetmenu.browser.cache", "windows-1251, UTF-8");
    pref("network.cookie.prefsMigrated", true);
    pref("network.dns.disableIPv6", true);
    pref("network.http.max-persistent-connections-per-server", 8);
    pref("network.http.pipelining", true);
    pref("network.http.proxy.pipelining", true);
    pref("privacy.sanitize.migrateFx3Prefs", true);
    pref("privacy.sanitize.timeSpan", 0);
    pref("security.warn_entering_weak", false);
    pref("security.warn_viewing_mixed", false);
    pref("ui.submenuDelay", 0);
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 15
    • +8
      спасибо, держите нас в курсе.
      • +2
        Зря ёрничаете, с этим браузером постоянно что-нибудь ломается от версии к версии — и для пользователя, и для разработчика.
        • +2
          тему вы затронули полезную, но пост ваш выдержан в стиле «я и мой сраный Firefox». Написали бы подробнее что ли: зачем какая настройка нужна.
          • –2
            Назначение настроек — это другая тема, автор мог бы их и не приводить. А главное — он нашёл и рассказал, что там надо поковырять руками, чтобы заработало. Мне в этом браузере постоянно приходится тестировать и аддоны содержать для разработок, поэтому тема вызывает интерес. К тому же он обещает продолжение про настройки в комментарии ниже — хорошо, ждём.
      • +16
        А вот мой файл настроек, созданный на основе известных рекомендаций, их критики и собственных исследований.
        Для публики было бы познавательно увидеть от Вас отдельную блогозапись с краткою выжимкою этих рекомендаций, и критики, и исследований — по каждой из строчек конфигурации. А не то, быть может, не все понимают их.
        • 0
          да, продолжение следует
        • +1
          Маленький оффтопик: наблюдать, какие файлы открывает (или пытается открыть) приложение, удобно с помощью утилиты ProcessMonitor. Позволяет обойтись без хардкора с hex и Olly и сэкономить время. Там мониторится не только файловая система, но и реестр, что тоже бывает полезно.
          • +10
            Пользователи Olly настолько суровы, что пользуются ею даже тогда, когда есть доступ к сорцам.
            • 0
              Что быстрее: запустить имеющийся под рукой Olly(или подобную утилиту) или выкачать сорцы и попытаться найти в них искомое? ;)
              • +1
                Вроде бы есть у firefox(mozilla) репозиторий с поиском? Хотя могу ошибиться
            • –10
              у Chrome таких проблем нет
              • +7
                Может, их нет просто потому, что у Хрома сама возможность кастомизации (сразу для всех возможных юзерских аккаунтов в системе) — вообще напрочь отсутствует?
              • 0
                Спасибо за подробности.
                Посмотрел у себя: есть несколько юзерских аккаунтов. Есть (путь в Program files к Файрфоксу, версия 14.0.1)\defaults\pref\ с единственным файлом channel-prefs.js и строчками
                //@line 2 "e:\builds\moz2_slave\rel-m-rel-w32-bld\build\browser\app\profile\channel-prefs.js"
                pref("app.update.channel", "release");
                

                Это нормально? А prefs.js лежит в профиле, в (путь к профилю)\defaults\preferences\, со всеми настройками. Или для того, чтобы настройки действовали для всех профилей, его руками надо выложить во вручную созданный defaults\preferences\?
                А то меня несколько напрягло, что он автообновился с 13-й версии, хотя никто его не просил, и подумал, что надо сделать своё исследование по этим вопросам.
                • 0
                  Да, «чтобы настройки действовали для всех профилей, его руками надо выложить во вручную созданный defaults\preferences\». Название практически любое, расширение js.
                  • 0
                    Спасибо за ссылку. Тогда больше понятно, почему они забыли о такой своей фиче и не подчистили — ей пользуются мало людей. Но, пишут, какие-то настоящие баги (в смысле, из штатных настроек) в 14.0.1 у части людей тоже есть, такие, что приходится откатывать до 12-й.

                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.