Estoy trabajando en código así queBOINCEl cliente puede detectar el entorno de escritorio utilizado por el usuario (principalmente GNOME, KDE Plasma, XFCE, LXDE/LXQT). Esta característica será necesaria por varias razones que están fuera de tema.
Una idea es utilizarGDBusescanear DBus para detectar la ejecución de Otra sugerencia que recibí es usar la XDG_SESSION_DESKTOP
variable de entorno. El problema de esta solución es que boinc-client se ejecuta como un servicio con su propio usuario, por lo que no podrá leer las XDG_SESSION_DESKTOP
sesiones definidas en otros usuarios.
De hecho, me pregunto si buscar ejecutables específicos como, por ejemplo, /usr/bin/plasmashell o escanear procesos en ejecución sería la mejor idea.