Обновлять:Теперь доступно новое и очень общее решение. Оно работает с Firefox и другими приложениями GTK, запущенными в KDE. СмотритеОтвет ДК Бозе.
Исходный вопрос:
Я хочу использовать файловые диалоги KDE (открытие файла, сохранение файла) в Firefox в Kubuntu 12.04.
Для этого требуется что-то вроде древнего скрипта KGtk, но для KDE 4.x и последних версий Firefox.
OpenSuse предлагает такую функциональность. Kubuntu от нее отказался, но наверняка кто-то работал над тем, чтобы вернуть ее в Kubuntu (я надеюсь).
Заметьте, я не спрашиваю о темах/внешнем виде. Я спрашиваю о фактическом использовании диалогов файлов KDE вместо диалогов XUL или GTK.
И параметр ui.allow_platform_file_picker на это не влияет. Я уже пробовал устанавливать его в true и false. Ни один из вариантов не приводит к использованию диалогов KDE.
решение1
Решение было дано вэтотТема форума. Конкретный ответ зарыт где-то в этой теме. Но я предоставлю шаги здесь. Тем не менее, эта тема форума будет держать вас в курсе событий по мере их развития. Эти шаги позволяют использовать диалоги KDE с Firefox в Kubuntu 12.04 (другие дистрибутивы KDE также поддерживаются — см. тему форума).
Мое решение (приведено ниже) — этовсестороннийрешение. Если количество деталей здесь вас смущает, посмотрите ветку форума или задайте вопросы здесь.
Во-первых, вам нужно добавить PPA в Kubuntu. Я знаю два подходящих PPA. blue-shell
является основным, но alexey-ivanov
также доступен. Пожалуйста, проверьте тему на форуме (или выполните поиск), чтобы узнать, являются ли упомянутые здесь PPA лучшим выбором. (ОБНОВЛЕНИЕ: ответы ниже предполагают, что PPA alexey-ivanov может быть уже не функционирует.) Я ожидаю, что он blue-shell
останется хорошим выбором, поскольку они являются значительным игроком KDE.
Предостережение: пока в PPA есть пакет Firefox, ему следует отдать приоритет перед другими (не KDE) версиями из Ubuntu (по умолчанию). Но если в PPA нет пакета, будет установлен обычный (не KDE) Firefox. Это обычно не нравится пользователям KDE.
Есть несколько простых решений для этой незначительной неприятности. (Вы даже можете проигнорировать возможность, упомянутую в моем предостережении, и воспользоваться более простым подходом, но я предлагаю комплексное решение в этом ответе. Я также обсуждаю несколько других вариантов в теме форума, упомянутой выше.)
Я рекомендую решение добавить оба PPA, упомянутых выше. (Добавление двух почти так же просто, как и добавление одного.) Если есть проблема с одним PPA, Firefox с поддержкой KDE можно вытащить из другого PPA. Решение не идеальное, но разумное. (Опять же, см. тему для подробного обсуждения.)
Ниже приведен URL-адрес, относящийся к каждому PPA, а также код, который можно выполнить в терминале для добавления PPA.
http://www.bluemintlinux.com/2012/08/kubuntu-gets-kde-support-in-firefox.html:
sudo apt-add-repository ppa:blue-shell/firefox-kde
https://launchpad.net/~alexey-ivanov/+archive/firefox-kde:
sudo apt-add-repository ppa:alexey-ivanov/firefox-kde
Как уже упоминалось, я добавил оба PPA в свою систему, и я думаю, что это хорошая стратегия. Но вы можете следовать этим инструкциям только для одного из PPA, пропустив шаги, связанные с другим.
Теперь установите приоритет установки каждого PPA следующим образом:
sudo nano /etc/apt/preferences.d/blue-shell-firefox-kde-pin-1001
Этот файл должен содержать следующий текст:
Package: *
Pin: release o=LP-PPA-blue-shell-firefox-kde
Pin-Priority: 1001
Сделайте то же самое для других PPA, если вы добавили оба:
sudo nano /etc/apt/preferences.d/alexey-ivanov-firefox-kde-pin-1000
Вот текст, который находится во втором файле:
Package: *
Pin: release o=LP-PPA-alexey-ivanov-firefox-kde
Pin-Priority: 1000
Обратите внимание, что значения Pin-Priority не одинаковы. Я дал более высокий приоритет blue-shell. (Если вы устанавливаете только один PPA, просто используйте для него значение 1000.)
Теперь выполните этот код в терминале:
sudo apt-get update
В этот момент вымогустановить или обновить Firefox (используя apt-get install
). Но я хочу показать еще один шаг, который я включаю. Перед запуском apt-get install
я выполняю эту команду:
apt-cache policy firefox
Вывод будет выглядеть примерно так (конечно, с другими номерами версий):
Installed: 16.0.2+build1-0ubuntu0.12.04.1+ppa1 Candidate: 17.0+build2-0ubuntu0.12.04.2~ppa2 Version table: 17.0.1+build1-0ubuntu0.12.04.1 0 500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages 500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages 17.0+build2-0ubuntu0.12.04.2~ppa2 0 1001 http://ppa.launchpad.net/blue-shell/firefox-kde/ubuntu/ precise/main amd64 Packages *** 16.0.2+build1-0ubuntu0.12.04.1+ppa1 0 11.0+build1-0ubuntu4 0 500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
Три звездочки выше указывают на тот, который установлен. "Кандидат" показывает, какой из них будет установлен, если вы запустите apt-get install
. Быстрый просмотр этого поможет вам избежать любых сюрпризов (например, потери версии Firefox с поддержкой KDE, если PPA не работает).
Резюме (tl;dr)
Если вы делаете это в первый раз, выполните все эти шаги:
- sudo add-apt-repository ppa:XXXXXXXXXXXXX (как указано выше)
- отредактируйте файл /etc/apt/preferences.d/XXXX для каждого PPA (задайте приоритет)
- sudo apt-get обновление
- apt-cache политика firefox
- sudo apt-get установить firefox firefox-kde-support
Для последующих обновлений вручную, если вы не используете автоматические обновления, выполните следующие действия:
- sudo apt-get обновление
- (необязательно) apt-cache политика firefox
- sudo apt-get установить firefox firefox-kde-support
решение2
Для новейших версий (текущая 54.0) ppa:plasmazilla/releases
работает просто отлично:
https://launchpad.net/~plasmazilla/+archive/ubuntu/releases
Просто беги:
sudo add-apt-repository ppa:plasmazilla/releases
sudo apt-get update
sudo apt-get install firefox-plasma thunderbird-plasma
и наконец, если у вас возникли проблемы с установкой, firefox-plasma
выполните:
sudo aptitude install firefox-plasma
решение3
Я не уверен, что это то, что ищет OP, но kde-config-gtk
пакет позволяет вам применять тему QT к приложениям GTK. Это не изменит диалоги, сделав их идентичными, но это может быть то, что вам нужно.