セッション外から現在のデスクトップ環境を検出する

セッション外から現在のデスクトップ環境を検出する

私はコードに取り組んでいるのでボインククライアントは、ユーザーが使用するデスクトップ環境 (主に GNOME、KDE ​​Plasma、XFCE、LXDE/LXQT) を検出できます。この機能は、トピック外のさまざまな理由で必要になります。

一つのアイデアとしては、GDBusDBus をスキャンして実行中のディスクを検出する別の提案として、環境変数を使用するというものがあります。この解決策の問題点は、boinc-client が独自のユーザーを持つサービスとして実行されるため、他のユーザーのセッションで定義されているものXDG_SESSION_DESKTOPを読み取ることができないことです。XDG_SESSION_DESKTOP

私は実際に、たとえば/usr/bin/plasmashellのような特定の実行可能ファイルをチェックしたり、実行中のプロセスをスキャンしたりすることが最善のアイデアであるかどうか疑問に思っています。

関連情報