GNOME、KDE、またはその他のデスクトップ固有のプログラム/ライブラリ/ファイルを使用せずに、ユーザーアイコンのテーマをどのように決定できますか?
pyxdg
ユーザーアイコンのテーマを決定する方法のライブラリまたはxdg仕様には何もありません。
xdg-*コマンドラインツールもこれを実行できません。特に次のようになります。
$ xdg-settings --list
Known properties:
default-web-browser Default web browser
これが「知っている」唯一の設定です!
GNOME の場合、以下を使用してこれを行うことができます。
$ gsettings list-recursively | grep icon-theme
org.gnome.desktop.interface icon-theme 'ubuntu-mono-dark'
しかし、これは他の場所では動作しません!
具体的に言えば、私の問題は、pyxdg
テーマ名を明示的に渡したり、ライブラリの対応するグローバル変数を直接設定しない限り、ライブラリが多くのアプリケーションのアイコンを返さないということです。だから私は
- インストールされているすべてのテーマを直接見つける必要があり(追加の醜いコードが多く、pyxdgもそうしない)、すべてのテーマを検索する必要があるかもしれません(遅い)。
- それとも、現在のテーマの名前を探す必要があります(デスクトップ環境に応じて、追加の見苦しいコード、xmonadなどのカスタマイズ/最小設定はどうですか?)。
したがって、これはpyxdg
xdg標準を実装すると主張するにもかかわらずこれを行いません。これにより、指定されていない理由/理由が気になります。
答え1
グローバルアイコンのテーマ設定がないため、原則としてはできません。 KDEアイコンテーマを変更しても、GNOMEアプリケーションのアイコンは変更されません。
KDE アプリケーションは、GNOME デスクトップ環境で実行するときに GNOME テーマ設定を使用します。これは、グローバル設定のためではなく、QtツールキットがGNOMEテーマを検出して使用するメカニズムを追加したためです。これは最終的にGNOME固有の設定であり、他のデスクトップ環境に切り替えても維持されません。