Как предотвратить обновления Firefox для каждой версии приложения (настройки вне папки профиля)?

Firefox в Ubuntu 14.04 только что обновился до v 47, и это сломало некоторые вещи, над которыми я работал. Это, однако, не так уж и важно, подумал я, потому что я могу просто скачать предыдущую версию и работать с ней, подумал я. Итак, я делаю что-то вроде этого:

wget https://ftp.mozilla.org/pub/firefox/releases/46.0.1/linux-i686/en-US/firefox-46.0.1.tar.bz2
tar xjvf firefox-46.0.1.tar.bz2
mv firefox firefox-46.0.1
./firefox-46.0.1/firefox # to run

Пока все хорошо, но, к сожалению, как только я нажимаю Alt / Help / About Firefox, проклятая вещь начинает обновляться:

firefox updating

... и меня это даже не спрашивает, что я считаю крайне неуважительным.

Проблема в том, что при запуске даже эта версия использует профиль «Пользователь по умолчанию», который используется моей обычной системой Firefox. Теперь я мог бы создать отдельную папку профиля только для этого Firefox, но тогда мне нужно управлять большим количеством вещей - что я не считаю нужным, поскольку все, что я хочу сделать в любом случае, это просто остановить обновления.

Итак, я немного поднял глаза:

Вы можете установить эти префы в about: config, чтобы отключить автоматическое обновление:
app.update.auto - false
app.update.enabled - false
app.update.silent - false
....
Вы можете создать новый файл в текстовом редакторе ... с именем user.js ... Поместите этот файл в свою папку профиля.
// turn off application updates:
user_pref("app.update.enabled", false);

Это было бы хорошо, если бы я хотел использовать отдельный каталог профиля, но, как я уже сказал, я не (и я не Я тоже не хочу связываться с моим профилем "Default User". Затем я нашел это:

/ defaults / profile

Хорошо, так что это что-то вне папки Profile, и в каталоге приложения это I может использовать, но все еще работает? В настоящее время у меня есть это:

$ find firefox-46.0.1/ -name '*.js'
firefox-46.0.1/defaults/pref/channel-prefs.js
$ cat firefox-46.0.1/defaults/pref/channel-prefs.js
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

pref("app.update.channel", "release");

Ну, я подумал, если этот файл будет прочитан, то я могу просто добавить настройки, чтобы остановить обновления здесь?

$ cat >> firefox-46.0.1/defaults/pref/channel-prefs.js << 'EOF'
> pref("app.update.auto", false);
> pref("app.update.enabled", false);
> pref("app.update.silent", false);
> EOF

Перезапустить Firefox , как только я вижу Справка / О программе, она снова начинает обновляться :(

Пробовала также добавить их в отдельный файл user.js в том же каталоге:

$ cat >> firefox-46.0.1/defaults/pref/user.js << 'EOF'
> pref("app.update.auto", false);
> pref("app.update.enabled", false);
> pref("app.update.silent", false);
> EOF

.. но все еще не игра в кости - снова Firefox начинает обновляться немедленно, как только я вижу Справку / О программе; и даже about:config указывает, что эти предпочтения не изменились по сравнению с их значениями по умолчанию.

Итак, есть ли способ остановить обновления этой «внешней» версии Firefox на уровне «приложения» (то есть в папке приложения), так что он по-прежнему использует профиль «Пользователь по умолчанию», в противном случае пользователь является основным Версия Firefox?

3
задан 10 June 2016 в 22:12

2 ответа

Хорошо, вот обходное решение, пока надлежащий ответ не прибывает; понятие:

  • Создают папку для "определенного" профиля в папке приложения
  • , Создают сценарий удара, который будет работать firefox от папки приложения с "определенным" профилем, созданным ранее (в 46, и firefox и firefox-bin, файлы являются двоичными)
  • , После того как эта "определенная" папка профиля инициализируется, создайте user.js, внутренняя часть с необходимыми предпочтениями

Вот является всем этим в bash сценарий:

wget https://ftp.mozilla.org/pub/firefox/releases/46.0.1/linux-i686/en-US/firefox-46.0.1.tar.bz2
tar xjvf firefox-46.0.1.tar.bz2
mv firefox firefox-46.0.1

# create a new, "specific" profile folder
mkdir firefox-46.0.1/profile-46

# create a new bash script to run firefox:
cat > firefox-46.0.1/firefox46.sh <<'EOF'
#!/usr/bin/env bash
# set -x
# SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # nowork 4 symlink
SCRIPT_DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
cd ${SCRIPT_DIR} # just in case
# -no-remote implies --new-instance.
exec "${PWD}/firefox" -profile "${PWD}/profile-46" -new-instance
EOF

# make bash script executable:
chmod +x firefox-46.0.1/firefox46.sh

# run once, just to init the profile-46 directory, then exit manually:
./firefox-46.0.1/firefox46.sh

# create user.js to override; firefox-46.0.1/profile-46/prefs.js should not be edited manually
# (https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/A_brief_guide_to_Mozilla_preferences)
# (http://practical-admin.com/blog/firefox-customization-file/)
cat > firefox-46.0.1/profile-46/user.js << 'EOF'
pref("app.update.auto", false);
pref("app.update.enabled", false);
pref("app.update.silent", false);
EOF

# finally, symlink to /usr/bin:
sudo ln -s $PWD/firefox-46.0.1/firefox46.sh /usr/bin/firefox46

Теперь, каждый раз, когда я запускаю firefox46 с терминала, Firefox 46 запускается с правильного профиля и не хочет обновлять больше, который является тем, что я хотел...

1
ответ дан 10 June 2016 в 22:12

Можно просто удалить исполняемый файл Updater в папке Firefox. Больше никаких обновлений. Когда-либо.

-1
ответ дан 1 December 2019 в 22:39

Другие вопросы по тегам:

Похожие вопросы: