web-dev-qa-db-ja.com

GtkアプリでKDEダイアログを使用する方法

Kubuntu 12.04のFirefoxでK​​DEファイルダイアログ(ファイルを開く、ファイルを保存する)を使用したい。

これには、古代のKGtkスクリプトのようなものが必要ですが、KDE ​​4.xおよび最近のFirefoxバージョン用です。

OpenSuseはこの種の機能を提供します。 Kubuntuはそれを落としましたが、確かに誰かがこれをKubuntuに戻す作業をしました(私は願っています)。

注意してください、私はテーマ/外観については聞いていません。私は実際にXULまたはGTKダイアログの代わりにKDEファイルダイアログを使用することについて尋ねています。

また、設定ui.allow_platform_file_pickerはこれに影響しません。既にtrueとfalseに設定しようとしました。どちらのオプションもKDEダイアログを使用しません。

ありがとう。

4
MountainX

最新バージョン(現在は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
1

ソリューションは this フォーラムトピックで提供されています。具体的な答えは、そのスレッドのどこかに埋もれています。ただし、ここで手順を説明します。ただし、そのフォーラムトピックは、状況の変化に応じて最新情報を提供します。これらの手順により、Kubuntu 12.04のFirefoxでK​​DEダイアログを使用できます(他のKDEディストリビューションもサポートされています-フォーラムのトピックを参照してください)。

私の解決策(以下に示す)は、包括的な解決策です。ここで詳細がわからない場合は、フォーラムスレッドを参照するか、ここで質問してください。

まず、KubuntuにPPAを追加する必要があります。 2つの適切なPPAを知っています。 blue-Shellがプライマリですが、alexey-ivanovも使用できます。フォーラムのトピックを確認(または検索)して、ここに記載されているPPAが依然として最良の選択であるかどうかを確認してください。 (更新:以下の回答は、alexey-ivanov PPAが現在廃止されている可能性があることを示唆しています。)blue-Shellは、重要なKDEプレーヤーであるため、適切な選択肢であり続けると思います。

警告:PPAにFirefoxパッケージがある限り、Ubuntuの他の(非KDE)バージョンよりも優先される必要があります(デフォルト)。ただし、PPAにパッケージがない場合、通常の(非KDE)Firefoxがインストールされます。それは一般的にKDEユーザーを不幸にします。

その小さな迷惑にはいくつかの簡単な解決策があります。 (私の注意事項に記載されている可能性を無視して、よりシンプルなアプローチを取ることもできますが、この回答では包括的なソリューションを提供しています。上記のフォーラムトピックで他のオプションについても説明します。)

私が推奨する解決策は、上記の両方のPPAを追加することです。 (2つの追加は1つの追加とほとんど同じくらい簡単です。)1つのPPAに問題がある場合、KDE対応Firefoxを他のPPAからプルできます。解決策は完全ではありませんが、合理的です。 (繰り返しますが、詳細についてはトピックを参照してください。)

これは、各PPAに関連するURLと、端末で実行してPPAを追加できるコードです。

  1. http://www.bluemintlinux.com/2012/08/kubuntu-gets-kde-support-in-firefox.html

    須藤apt-add-repository ppa:blue-Shell/firefox-kde

  2. https://launchpad.net/~alexey-ivanov/+archive/firefox-kde

    須藤apt-add-repository ppa:alexey-ivanov/firefox-kde

前述のように、両方のPPAをシステムに追加しましたが、これは良い戦略だと思います。ただし、他のPPAに関連する手順を省略することにより、PPAの1つだけについてこれらの指示に従うことができます。

次に、各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

2番目のファイルに含まれるテキストは次のとおりです。

Package: *
Pin: release o=LP-PPA-alexey-ivanov-firefox-kde
Pin-Priority: 1000

ピン優先度の値は同じではないことに注意してください。ブルーシェルを優先しました。 (PPAを1つだけインストールする場合は、1000の値を使用します。)

次に、ターミナルでこのコードを実行します。

Sudo apt-get update

この時点でcould 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

上記の3つのアスタリスクは、インストールされているものを指します。 「候補」は、apt-get installを実行するとインストールされるものを示します。これをすばやく確認すると、不意の事態(PPAがダウンした場合にFirefoxのKDE対応バージョンを失うなど)を避けるのに役立ちます。

要約(tl; dr)

初めてこれを行うときは、次のすべての手順を使用します。

  1. Sudo add-apt-repository ppa:XXXXXXXXXXX(上記のように)
  2. 各PPAの/etc/apt/preferences.d/XXXXファイルを編集します(優先度を設定)
  3. 須藤apt-getアップデート
  4. apt-cacheポリシーfirefox
  5. Sudo apt-get install firefox firefox-kde-support

後で手動で更新する場合、自動更新を使用しない場合は、次を実行します。

  1. 須藤apt-getアップデート
  2. (オプション)apt-cacheポリシーfirefox
  3. Sudo apt-get install firefox firefox-kde-support
3
MountainX