Определить текущую среду рабочего стола вне сеанса

Определить текущую среду рабочего стола вне сеанса

Я работаю над кодом, поэтомуБОИНКклиент может определять среду рабочего стола, используемую пользователем (в основном GNOME, KDE Plasma, XFCE, LXDE/LXQT). Эта функция будет необходима по разным причинам, не относящимся к теме.

Одна из идей — использоватьGDBusдля сканирования DBus для обнаружения запущенного de Другое предложение, которое я получил, — использовать XDG_SESSION_DESKTOPпеременную окружения. Проблема этого решения в том, что boinc-client работает как служба со своим собственным пользователем, поэтому он не сможет читать XDG_SESSION_DESKTOPопределенные в сеансах других пользователей.

На самом деле мне интересно, будет ли лучшей идеей проверка определенных исполняемых файлов, например, /usr/bin/plasmashell, или сканирование запущенных процессов.

Связанный контент